national standards at Object Management Group, and has contributed to
three core standards.
A comparably significant effort at
Infosys has been the development of
the Infosys DevOps Platform (IDP)d
that helps organizations accelerate
their agile and DevOps journey in
quality, at scale, and at speed. It has
ready-to-use pipelines for more than
25 technologies and prebuilt integration with over 70 open source or commercial tools. IDP is built on open
source resources and is available as
an open source project. It has made
a huge impact in software development processes across the world in
terms of its adoption—more than
100 projects in 30+ organizations
worldwide, with more than 5,000
Infosys engineers trained and serving
various clients.
In addition to these industry-led
efforts, there are several exciting software engineering projects happening in Indian academic labs as well.
Automated usability evaluation of
mobile applications is one such project from IIIT Hyderabad. Usability is
considered one of the primary factors
for end users to adopt mobile de-vices/applications. The IIITH group’s
research led to the development of a
code analysis-based usability evaluation framework for mobile apps that
can be used at the predesign stage to
enhance productivity or at the post-design stage to check conformance
to specific usability guidelines.
Automated evaluation of the mobile
application is done using quantitative
metrics and AI/ML-based methods.
Program Analysis and Verification
Going beyond CMM and software
engineering, program analysis and
formal verification are increasingly
viewed as technologies that add value
to enterprise and mission-critical
software, both during its development
and as an end product. This is particularly true for software that runs on
potentially unreliable hardware and
yet must provide guarantees of performance, security, functionality, and so
on. Industrial and academic research
groups in India have been consistently
pushing the frontiers of program
d http://bit.ly/2XDNQiZ, page 12
niques for managing them. Indian
companies shared their experience in
conferences, workshops, seminars,
as well as through books like CMM in
Practice and Software Project Management in Practice (both authored by
Pankaj Jalote), which were translated
in various languages such as Chinese,
Japanese, Korean, and French.
Strides in Software Engineering
Software engineering is yet another
pillar on which India’s software
success story rests. Research groups
in Indian companies and universi-
ties today are exploring problems in
several areas such as foundations
of software engineering, quality
assurance, architecture and design,
security, software engineering for
the cloud and mobile environments,
software engineering education,
and applying AI/ML in the software
engineering domain. Here, we
highlight a few of these prominent
activities:
The Research & Innovation unit
of Tata Consultancy Services (TCS)
has been developing MasterCraft,c a
toolset for supporting model-driven
software development, for close to
17 years. MasterCraft is comprised of
three major components. First, it has
a set of meta-models to specify layers
of a typical distributed architecture
such as graphical user interfaces,
services layer, and data manager
layer, among others. Next, to facilitate smooth integration, MasterCraft
provides component abstraction
that helps view a software system as
a set of interdependent components
that can be specified, developed,
and tested independently. Finally,
MasterCraft incorporates a set of core
technologies such as meta modeling, model editing, ensuring model
well-formedness as well as internal
consistency, and model-to-model and
model-to-text transformation.
MasterCraft has made a huge business impact, delivering more than 70
large business applications across the
world on a multitude of technology
platforms and architectures. Its use
has also led to 50+ top-tier publications and 20+ patents. Much of this
research also found its way into inter-
c https://mastercraft.tcs.com/
Developing and
delivering software
solutions at
this scale across
diverse domains
requires constant
effort to improve
the processes,
tools, and
platforms.