By implementing ALM, teams are able to increase collaboration, improve quality, accelerate development, increase flexibility and provide project transparency, especially within large and geographically dispersed project teams. The proposed CCID ALM environment encompasses multiple tools such as Rational, CVS and Eclipse.
At the initial phases of projects, collecting, documenting and analyzing user requirements are key activities. A business analyst will engage stakeholders and subject matter experts to gather and validate user requirements. These requirements need to be catalogued, refined versioned and eventually converted to uses cases. The engineering team begins the process of developing the systems using an Integrated Development Environment (IDE) used to maximize the developers’ productivity. It typically provides functionality for version control, database access, defect tracking, modeling and refactoring. A Version Control System is used by software engineering to mange and track development artifacts which in most cases are source code files. These tools provide a way to track revisions, roll-back to prior version, branch projects, and tag and version files. During unit, integration and acceptance testing, software defects are an inevitable part of software development and it is important to provide a mechanism to log and track defects when needed. A continuous integration process is established to allow nightly builds of the applications. The results of the builds and various reports are subsequently published to a web server and made available to the teams thus completing the ALM process.