07 Lecture Flashcards
Why Configuration Management?
- Multiple people work on artifacts that are changing
- More than one version of the artifact has to be supported
- Software Configuration Management (SCM)
Definition of Software Configuration Management
- A set of management disciplines within a software engineering process to develop a baseline*
- Software Configuration Management encompasses the disciplines and techniques of initiating, evaluating and controlling change to work products during and after a
software project
IEEE Standard for Configuration Management in Systems
and Software Engineering
IEEE 828-2012
Configuration Management Roles
- Configuration Manager
- Change Control Board Member
- Developer
- Auditor
Responsibilities of the Configuration Manager
- Responsible for identifying configuration items
* Also often responsible for defining the procedures (workflows) for creating promotions and releases
Responsibilities of the Change Control Board Member
Responsible for approving or rejecting change requests
Responsibilities of the Developer
Creates promotions triggered by change requests or the normal activities of development. The developer checks in changes and resolves conflicts
Responsibilities of the Auditor
Responsible for the selection and evaluation of promotions for release and for ensuring the consistency and completeness of this release
What is a Configuration Item
An aggregation of software, hardware, or both, designated for configuration management and treated as a single entity in the configuration management process
Which SCM Directory are there
- Programmer’s Directory
- Master Directory
- Software Repository
What is the Programmer’s Directory?
(IEEE 1042: Dynamic Library)
• Also called working copy
• Library for holding newly created or modified software entities
• The programmer’s workspace is controlled by the programmer only
What is the Master Directory?
(IEEE 1042: Controlled Library)
• Manages the current baseline(s) and is for controlling changes made to them
• Changes must be authorized
What is the Software Repository
(IEEE 1042: Static Library)
• Archive for the various baselines released for general use
• Copies of these baselines may be made available to requesting organizations
Define Version
An initial release or re-release of a configuration item associated with a complete compilation or recompilation of the item. Different versions have different functionality
Define Release
The formal (external) distribution of an approved version, e.g. a potentially shippable product increment in Scrum