Software development Hot words continue to evolve, Cmmi,agile , lean, continuous delivery, continuous integration, grayscale ... But there is a word that has always been there, supporting a variety of new hotspots, it is # Software configuration Management #. It is also a major factor affecting the efficiency of team software development.
English abbreviation SCM
SCM from the birth of software engineering, even before the birth is there, because the program code documents are always stored.
SCM Development after a lot of stages, try to do seven levels of state classification
the first weight of the seven-heavy realm
Share directories, copy to handle multi-person collaboration, daily or weekly backups under. There is only one person in charge of each part. The compilation is handled manually on the shared directory.
Key version In addition catalog stored, or engraved version
the second weight of the seven-heavy realm
Using the Configuration management tool, there are no branches, and each section allows only the specified person to modify, and the document files are stored in the tool after finalization.
Release version can be traced
the third weight of the seven-heavy realm
The document starts with the Configuration management tool, with the file name with the version number, and multiple people in the same component/Project project.
Intermediate milestone baselines are identified
Adopt configuration Management Three libraries: development library, Static library (Stable library), publishing library (product library)
the four dimensions of the seven -heavy Realm
Documents and code can be managed under a unified baseline, with all filenames without version numbers, and using the tool's Tag/label function to manage baselines, the code can be compiled with one click.
seven weight of the realm of the five
There is a clear backbone branching strategy, which is to build a branch for publishing purposes, rather than building a branch per person, with automated daily builds, or/and continuous integration, and the component version number is automatically associated with the baseline so that the explicit version number can be traced to the code baseline
Seven the weight of the realm of the six
Automatically get 2 or more versions per day, automated deployment of test reports, different engineers submit code in 1 hours to confirm the coexistence of the same at the same baseline, make full use of the backbone, feature switches, virtual backbone and so on methods
the seventh weight of the seven-heavy realm
Beyond the 6th-heaviest configuration management?
Candidate
Documents and code are developed under a unified file tool, which is a tool for document management and a tool for configuration management, and all changes are directly related, just like Requiz Pro or Dors
UML MDA from the document directly to the code, can run
Software configuration Management Seven heavy realm