By Chris O'Brien
Application Lifecycle Management (ALM) is a huge topic, and, not surprisingly, there are various definitions and perspectives. Most definitions emphasize the relationship between software engineering and other aspects of software projects, such as requirements gathering and change management. On MSDN, Microsoft defines ALM as follows:
Application Lifecycle Management is the coordination of all aspects of software engineering — including the formulation and communication of business and technical requirements, code design and architecture, project tracking, change management, coding, testing, debugging, and release management — by using tools that facilitate and track collaboration among and within work teams.
One useful simplification is that ALM is the consideration of all aspects of an application throughout its lifecycle. This emphasizes the fact that ALM concerns more than just the Software Development Lifecycle phase (that is, the initial build), and incorporates considerations right from the conception phase at the beginning, to maintenance aspects more relevant after the application has gone live. Frequently, when people refer to ALM, they are focusing on the maintenance aspects. In particular, issues surrounding updating the application, change control processes, and maintaining application integrity are common discussion points.
Undoubtedly, SharePoint has special considerations regarding ALM when compared ...