2024: Domino Containers - The Next Step. News from the Domino Container commu...
Maximize the Value of Applications with ALM – Part I
1. Maximize the Value of Applications with ALM – Part I
This is a two-part article that takes a closer look at ALM. In the first part of this article, we will
understand the term ALM and its importance.
According to Gartner, in today’s highly competitive business environment, organizations that adopt agile
practices, utilize globally distributed teams, or exploit complex processes and technologies would
benefit a lot if they use Application Lifecycle management (ALM) tools to manage their development
activities. In their report, “MarketScope for Application Life Cycle Management”, Gartner states “ALM
solutions are evolving to enable enhanced planning, measurement, control and reporting of activities in
all the stages of all the various application delivery life cycles.“ However, before delving further into the
topic, let’s first understand the term application lifecycle management or simply ALM.
Wikipedia defines ALM as “the process of managing the life of an application through governance,
development and maintenance.” ALM is considered a union of business management and software
engineering “made possible by tools that facilitate and integrate requirements
management, architecture, coding, testing, tracking and release management.” ALM tools can be
categorized into:
Build management
Change management
Design and Feature management
Issue management
Modeling
Monitoring and reporting
Open source license management
Project management
Release management
Requirements analysis
Requirements management
Revision control (an aspect of software configuration management)
Software configuration management
2. Software deployment
Software information management (for ALM tool integration)
Software testing
Workflow
ALM is often confused with software development life cycle (SDLC) but there are fundamental
differences between the two. SDLC deals only with the development of the software product and unlike
ALM, it has nothing to do with the maintenance and the management of the application until the end of
its life. Hence, ALM has much a bigger role to play than SDLC.
ALM plays a vital role in software development process in the sense that it provides a way for achieving
the challenging objective of developing quality software that not only conforms to the requirements and
business needs of the customers but also increases the business value of the custom software
throughout its entire life. As mentioned above, it is quite a challenging objective since to get it right,
there is the need of effective ALM tools that integrate horizontally as well as vertically.
In the second and final part of this article, we will look at the benefits of ALM and the features of a best
of the breed ALM solutions.