What Is Software Release Management?
Software release management is a process through which software is made available to and obtained by its users and developers. It evolved in support of geographically dispersed software engineers who collaborate on software development projects. Each engineer works on a given component of the software and, at some point, all of the components must come together and inter-operate seamlessly. The software release management process is designed to help manage this development process.
-
Purpose
-
As the Internet and Web 2.0 collaborative platforms evolve, software development processes are often distributed among geographically dispersed software engineers. The software developers could be employees of a large multinational corporation or independent software engineers working across an open source development platform. As a result, the need exist for adequate integration resources to facilitate development, testing, deployment and distribution.
History
-
Prior to the Internet and distributed development, project managers would do the software integration task. All of the software engineers were co-located and it was easier to manage component development and integration. However, due to the distributed and technical nature of today's software development, the complexity and the number of software components feeding one application, more dedicated solutions are required.
-
Process
-
The software release management process is best defined by a process map similar to the one illustrated at Taskmap.com. The map shows how a given software release must be planned, built, tested and sent back to the development process until it's completed. Each individual task is broken down into sub-tasks. All tasks and sub-tasks require close coordination and collaboration among developers.
Release Manager
-
For every software project, whether it's a geographically dispersed multinational or open-source environment, someone must serve as a release manager. The job of a release manager is to manage the release process. They must have detailed knowledge of the software application and development process, the software development life cycle and be tuned into the various business and marketing activities associated with the project. Generally, the release manager reports to the project manager.
Tools
-
There are several software tools on the market to support software release management activity. One such tool in the Software Release Manager developed by the University of Colorado Computer Science Department. This and other tools are available to release managers to help them manage the software release process.
-
Resources
- Photo Credit durchblick image by Carmen Steiner from Fotolia.com