The larger the organisation and the more people involved in application development, the more vital ALM is likely to be.
But even the smallest firms can benefit. They are however, unlikely to be able to cost-justify the more extensive ALM tool sets.
It doesn't matter if the firm doesn't develop applications in-house, since many aspects of ALM - defining requirements, customisation and configuration, testing, deployment and performance management - are just as applicable to packaged software.
It's also possible to build up ALM in stages rather than implementing it all at once. Some firms begin by formalising the definition and management of user requirements, or the testing process, or the management of change requests, and add other aspects later.
What else?
ALM isn't just, or even primarily, about software tools. It's principally an attitude of mind.
In the smallest businesses, where only a few people are involved in specifying, developing, and maintaining its systems, the software can be added later, or may even be superfluous. ALM can also be outsourced to a third party and can even be used by the client organisation to help manage its outsourcing contracts.
Most ALM implementations require some customisation though, and vendors generally recommend taking consultancy and training in order to get the most from their products.
However, success or failure is in large part down to the user organisation itself. Board-level commitment is essential, as is ongoing communication between the business and its technology function. If everyone can be persuaded to buy into ALM and the culture of communication that underpins it, it's possible to unify the efforts and aims of the business and IT functions as never before.
Where can I get hold of it?
A number of vendors sell ALM solutions including Borland, IBM, Microsoft, Aldon, MKS, Polarion, and Serena. Some offer enough functions to build up into a complete ALM system, others provide a range of specialist tools.
However, by standardising on an open platform such as Eclipse, firms can often mix-and-match ALM tools from different vendors, or even obtain open-source tools for free, and formal interoperability standards - such as the Eclipse Application Lifecycle Framework -
are beginning to be implemented.
Key stages in the application lifecycle
- Business needs definition
- Requirements management
- Specification
- Modelling
- Design
- Development
- Unit testing
- Integration and configuration
- System testing
- Version control
- Deployment
- Live system management
- Change request management
- Project management