Current software engineering processes face a growing need for a transparent view into change. A transparent view into change is a view that allows accessing essential information about change throughout the application lifecycle, from capturing requirements to building and deploying production binaries. Such transparency is dictated by both natural and administrative needs and helps answer the question of who, why, when, where and how in detail.
Application Lifecycle Management (ALM) Infrastructure: No Standards, Still
A Quality Control team wants to know into what build a fix to a bug was included. An analyst wants to know when a requirement was implemented. Projects managers want to know if a codeline is stable enough for a code freeze. Quality Assurance engineers want to review changes in files associated with an implementation of a given feature. Software engineers would like to know if a change should be integrated into other codelines. This list is just a brief example of requirements towards an ALM infrastructure functioning as a whole.
New laws such as Sarbanes-Oxley Act (SOX) force administrative needs for transparent view into application lifecycle.
Picture 1. Current State Of ALM Infrastructure: No Standards Available
Though CM has come a long way, it managed to stay away from standardization processes. The lack of standards restricts an ability of CM vendors to provide transparent, integral view into change, forcing them into custom development of integration adapters for each and other third-party component of ALM infrastructure. Consider a vendor of a modern version control system that would have to deliver about twenty adapters to be able to push information about changes into third-party issue tracking systems used by its customers. Vendors of other pieces of ALM infrastructure, namely build management, issue tracking and requirements management systems are in no better position. Such void in standards space either delays or prevents delivery of transparent view into change.
Enabling Transparent Change With Future CM Standards
Standardization of exchange of information between components of ALM infrastructure should allow for rapid advancement of existing CM products in area of providing transparent view into change throughout the application lifecycle. A vendor would have to develop only a single integration adapter per a collaborating component. Thanks to the standard, such an adapter would work with all other pieces of ALM infrastructure, without regard to a particular vendor.
Picture 2. Enabling Transparent Change
Such a standard minimally has to cover set of entities, such as, but no limited to: requirements, changes, issues, builds and links between them. The standard should also define a protocol of access to CM information.
A transparent view into change throughout the application lifecycle is an important attribute of modern CM. A critical step towards enabling transparent view into change is developing an open standard for information exchange between components of ALM infrastructure. CM vendors should work together to deliver the standard.