Problems Configuration Ambiguity as to what thing is meant Management Inconsistent combinations Lost files, lost changes Software Engineering & Technology Tom Verhoeff Undocumented, unapproved changes Not knowing the composition of released sw Not being able to go back to previous version Sw Configuration SCM Management Goals Identifying and defining the configuration items in a system Both managerial and technical Controlling the release and change of these items throughout the system life cycle Software quality control Recording and reporting the status of Requires planning configuration items and change requests Verifying the completeness and correctness
Configuration Items Baseline Treated as single entity: atomic or composite A ‘baseline’ is a document or a product that has been formally reviewed and agreed upon, Source code file, test input file, … and is a basis for further development. Document: Requirements, test plan, A baseline is an assembly of configuration agenda, minutes, progress report, … items. Tools, … Formal change control procedures are required to modify a baseline. Relationships, version, revision, variant Sw Libraries Change Control Repository, Workspace Development Library (dynamic) Master Library (controlled) Applies to approved items (baselines) Archive Library (static) Problem report, comment, decision, change request, approval, modification record How to structure/store, how to manage Who can change it, under what conditions
Status Accounting Tools What items, which versions, which baselines What is the quality: Version control: CVS, Subversion, … How complete is the item Defect/issue tracking What problems exist where, in what state of handling CVS, Subversion: How to use tools Concepts, Terminology Create repository, connect, working copy Tools by themselves are not enough Check out, update, add, check in (commit), Need to use them well Versions, numbering, status, diff Train users Conflicts Set rules: e.g. only check in tested code Tags, branches, merging Metadata, log files
Repository Organization Literature D. A. Lamb. Software Engineering: Planning for Change. Prentice-Hall, 1988. Ch. 17 Trunk: src, doc, db, data, util, vendor J. Fairclough (Ed.). Software Engineering Branches: release, bug fix, experiment Guides. Prentice Hall, 1996. Guide to Tags: release, pre-bugfix, post-bugfix Software Configuration Management. How to deal with builds A. Leon. Software Configuration Management Handbook (2nd Ed.). Artech House, 2005.
Recommend
More recommend