Home   About   Contact 
 Ecommerce Overview 
 Business Activities 
  Market Research 
  Online Marketing 
  Search Engine Marketing 
  Online Storefront 
  Online Payment 
  Order Fulfillment 
  Customer Support 
  Web Design 
  Application Development 
  Web Hosting 
  WebSite Monitoring 
  Internet Security 
 Business Law 

Software Configuration Management - Version Control, Build, Release Management and Process Control


Software Configuration Management is the process of keeping track of your progress and history for applications you develop. It is a daunting task, but critical to the quality and overall success of application development. Web-based ecommerce development experiences rapid change and many iterations of development within short period of time as a result of ever changing marketplace..

Configuration management does places extra burden on web development teams, use of software configuration management tool can ease the process and improve the quality and productivity of ecommerce application development.

The principles of software configuration management revolve around four key areas: version control, build management, release management, and process control.

Version Control Version control tracks the changes of a particular file over time so that the developers can roll back to a previous version of a the file as needed, compare two versions of a file for differences, or create branches for parallel development. Branching is not recommended as it requireds effort of merging branches. Branching can be avoided by proper project management.
All version control software maintain one copy of the file in a repository and track the changes to that file for each version. Each time someone needs to edit a file, they check it out for exclusive editing and then check it back in to the repository when finished, thus creating a new version.

Build Management Build refers to the action of assembling software components into a workable software system. Build is usually automated in build scripts. While version control is at individual file level, build management deals versions at software system level.

Release Management Release management is closely tied to build management. It is the process of moving a version of build into production environment. Release management includes the deployment process outlined in a deployment plan. Post production testing is performed to ensure the proper deployment of software systems. After the successful release of a software system, all file in version or source control repository are marked for that software version.

Process Control Process control is the institutionalization of best practice in configuration management - version control, build management and release management. It is not about the control of the processes. A problematical process is worse than luck of the process since it limits the freedom of following common sense in software development.

Related Topics
Java Application Servers for Web Development
Development Processes and Technical Environments
Software Testing - Unit Testing, Integration Testing, Regression Testing, System Testing and User Testing
Software Testing Procedures


Copyright © 2003 insightin.com. All rights reserved.