Innovation at work for SCM
July 15, 2009 —
(Page 1 of 6)
Related Search Term(s): SCM
When it comes to software development, software configuration management (SCM) serves as the eyes on the assembly line. It is the task of tracking and controlling changes throughout the software development life cycle, and reproducing actions in order to simplify development.
Making development processes easier, however, isn’t so simple these days, as systems being developed become more complex and the development process gets more complicated with larger, distributed teams.
Several main SCM providers are trying to rise to the occasion in easing these complications. Some companies have tried to open up SCM to non-coders, while others are focused on merge features, because easing complications around merging branches is seen as an important ability with more and more companies branching code.
Daniel Magid, Aldon’s chief technology strategist, said that its strength in tracking the software life cycle lies in a strong repository. Aldon has what he called a two-part repository for SCM.
The first part is a database repository that stores copies of the parts of the development life cycle being managed. It contains all build results and artifacts around application development.
“Developers can say, ‘Show me everything related to the payroll application,’ and they can see all the artifacts related to payroll, whether those things are all on one platform or they have some Windows parts, Unix parts or Linux parts,” Magid said. “They can have all those things and say, ‘I’m interested in seeing the current status of our payroll application,’ and they can see everything regardless of where it might be stored.”
The second part of the repository consists of the metadata associated with the software being managed. The metadata, which is both user-defined and information that Aldon keeps track of, is about how software is built and deployed.
Aldon puts a great deal of focus on automation, and Magid said the company has always tried to figure out how to automate the process of moving a development project through the life cycle. This is done by having the developer identify the process rules about how each stage is managed; who has the permissions move something into a particular stage; and who can request and approve moves into a stage. Then the developer identifies how he or she wants software and applications deployed.