| Software development process | |
|---|---|
| Activities and steps | |
| Requirements · Specification Architecture · Design Implementation · Testing Deployment · Maintenance |
|
| Models | |
| Agile · Cleanroom · DSDM Iterative · RAD · RUP · Spiral Waterfall · XP · Scrum · Lean V-Model · FDD · TDD |
|
| Supporting disciplines | |
| Configuration management Documentation Quality assurance (SQA) Project management User experience design |
|
| Tools | |
| Compiler · Debugger · Profiler GUI designer Integrated development environment |
|
Application lifecycle management (ALM) is the marriage of business management to software engineering made possible by tools that facilitate and integrate requirements management, architecture, coding, testing, tracking, and release management.[1]
Contents |
Benefits
Proponents of application lifecycle management claim that it
- Increases productivity, as the team shares best practices for development and deployment, and developers need focus only on current business requirements
- Improves quality, so the final application meets the needs and expectations of users
- Breaks boundaries through collaboration and smooth information flow
- Accelerates development through simplified integration
- Cuts maintenance time by synchronizing application and design
- Maximizes investments in skills, processes, and technologies
- Increases flexibility by reducing the time it takes to build and adapt applications that support new business initiatives
Categories of ALM tools
As application development has evolved over time, more and more tools have been introduced. Initially, software development was supported with individual point tools, and then simple suites of tools emerged with loose integrations. Now we have modern comprehensive lifecycle tools that are fully integrated and provide capabilities for most of the roles in ALM. The most recent innovation is the discussion around ALM 2.0 which describes a vision for the application development infrastructure needed to meet the needs of the most modern development communities.[2]
As the complexity and sophistication of the software development task has grown it has been matched by increasing numbers of tools. The initial set of tools started with version control tools at the heart of the lifecycle and have grown out from there. Although the industry has not yet formally defined what precisely constitutes an ALM tool[3], for which the list gets longer every day, the generally accepted categories include:[citation needed]
- Requirements Analysis
- Requirements Management
- Feature management
- Modeling
- Design
- Project Management
- Change management
- Configuration Management
- Software Information Management (for ALM Tool Integration)
- Build management
- Software Testing
- Release Management
- Software Deployment
- Issue management
- Monitoring and reporting
- Workflow
As the Integrated Development Environment (IDE) continues to evolve, tool vendors are increasingly integrating their products to deliver suites. IDEs are giving way to tools that reach outside of pure coding and into the architectural, deployment, and management phases of the application lifecycle, providing full Application Lifecycle Management. The hallmark of these suites is a common user interface, meta model, and process engine that also enable ALM team members to communicate using standards-based architectures and technologies such as Unified Modeling Language (UML).[citation needed]
Notable ALM products
Notable ALM products include:
| Name | Vendor |
|---|---|
| StarTeam - Change and Configuration Management | Borland |
| HP Quality Center | HP |
| CodeBeamer | Intland Software |
| Visual Studio Team System | Microsoft |
| MKS Integrity | MKS Inc. |
| Parasoft Concerto | Parasoft |
| IBM Rational Team Concert | IBM |
| Change - Software Change and Configuration Management | IBM |
| DOORS - Requirements Management | IBM |
| workspace.com | workspace.com |
| Codendi | XEROX |
References
- ^ deJong, Jennifer (2008-04-15). "Mea culpa, ALM toolmakers say". SDTimes. http://www.sdtimes.com/SearchResult/31952. Retrieved 2008-11-22.
- ^ The Changing Face of Application Lifecycle Management by Carey Schwaber, Forrester Research, Inc. August 2006. [1]
- ^ "ALM: A 'bastardized' term?" by Jeff Feinman, SDTimes, August 12 2009
See also
This entry is from Wikipedia, the leading user-contributed encyclopedia. It may not have been reviewed by professional editors (see full disclaimer)




