Dynamsoft released SCM Anywhere Standalone 2.0. It is a SQL Server-based software configuration management (SCM) tool with fully integrated version control, bug tracking and build automation. It is for teams looking for an integrated solution to manage the whole software development life cycle. This is home page of SCM Anywhere. http://www.scmsoftwareconfigurationmanagement.com/
SCM - More than just a version control tool! - Presentation Transcript
Software Configuration Management More than just a version control tool! Emile van de Logt (emile.van.de.logt@cmg.nl) CMG Trade Transport & Industry B.V. (ATI-20) Espinode presentation, 12-04-1999
Agenda
Introduction of speaker
Relevant standards
What is Configuration Management?
Configuration Identification
Configuration Control
Configuration Status Accounting
Configuration Audits
Software baselines
Other items of interest...
Summary
Introduction of speaker
TU Eindhoven: Electrical Engineering
Holec Ridderkerk, (senior) software engineer
Holec Ridderkerk, SPI co-ordinator
CMG Trade Transport & Industry, SPI consultant
SEPG Signaal Communications Huizen
Instructor of several CMG courses (CMM & SPI, PSP, Testing)
Member of SPIder’s “SPI for embedded software”
Relevant Standards
MIL-STD-973: Configuration Management
MIL-STD-498: Software Development & Documentation
Capability Maturity Model (CMM), V1.1
Maturity Level 2: Repeatable
KPA: Software Configuration Management (SCM)
Commitment to Perform: 1 key practice
Ability to Perform: 5 key practices
Activities Performed: 10 key practices
Measurement & Analysis: 1 key practice
Verifying Implementation: 4 key practices
CMM KPA Structure Ability to Perform (5) Commitment to Perform (1) Measurement and Analysis (1) Verifying Implementation (4) Activities Performed (10) Preconditions Implementation Verification Goals (4)
What is Configuration Management?
IEEE-STD-610 / MIL-STD-973
Identification of configuration items
Control changes to configuration items
Record and approve the status of configuration items
Verification if procedures / standards are followed
CMM, KPA Software Configuration Management
Purpose : establish & maintain integrity of products throughout the software life cycle
1: SCM activities are planned
2: SW is identified, controlled & available
3: Changes to software work products are controlled
4: Affected groups and individuals are informed of status & content of software baselines
CMM Cross Reference
Software Development Policies
Configuration Management
Configuration Identification
Configuration Control
Configuration Status Accounting & Baselines
Quality Assurance
FCA & PCA
Project audits
Project Management
Project Planning / SDP
Project Tracking
Training Program
CVS Tool
CO.01
AC.04
AB.01, AB.02, AB.03, AC.05
AC.06, AC.07, AC.08, AC.09
AC.10
AC.10, VE.03, VE.04
AC.01, AC.02
ME.01, VE.01, VE.02
AB.04, AB.05
AC.03
Configuration Identification
AC.04: work products are identified
Configuration items are:
System
Hardware Configuration Item (HWCI)
Prime Item
Critical Item
Computer Software Configuration Item (CSCI)
Software unit
Unique identification by:
a 12NC number
a unique name
Basic CSCI documentation: SRS, SDD, STD, SCL, VDD
Configuration Control
AB.01: authority for managing baselines exists or is established
AB.02: responsibility for co-ordinating / implementing SCM exists
AB.03: Adequate resources & funding are provided
AC.05: Change requests / problem reports are initiated, reviewed, approved & tracked to closure
Problem / Change Form (PCF)
Supported by PRINS tool
CMB administrates all PCFs
A Change Control Board (CCB) is present for every project
7. Close PCF Evaluated, Change Category II Rejected Change proposal approved new change proposal 5. CCB to decide 2 Evaluated, Change Category I 1. Initiate PCF 3. CCB to decide 1 rejected more detailed analysis needed 2. Analyse PCF 4. Propose change 6. Implement and Test PCF
Status Accounting & Baselines
AC.06: Changes to baselines are controlled according to a documented procedure
AC.07: Products from the baseline are created and their release is controlled according to a documented procedure
AC.08: status of CIs is recorded according to a documented procedure
AC.09: Standard reports of SCM activities & baseline content are developed and made available
All changes to baselines are done with a PCF
Status and content is recorded with:
Release Notes (beta versions)
Release Bulletin (baseline versions)
Version Description Document (VDD)
Project Progress Report contains a configuration index
Configuration Audits
AC.10: Baseline audits are conducted
Functional Configuration Audits (FCA)
Validate that the product documentation
is according to the plan(s)
describes a product that meets the requirements
Physical Configuration Audits (PCA)
Validate that the product physically can be build using the documentation
Baseline audits
Check integrity of CVS
CVS contents compliant with actual documentation?
Configuration Baselines
Functional baseline
Initially approved documentation describing system characteristics
Allocated baseline
Initially approved documentation describing an item’s characteristics that are allocated from a higher level CI
Product baseline
Initially approved documentation describing all characteristics
Actual equipment and software
Configuration Baselines
FBL ABL PBL
System SSS - FBL +
SSDD ATP,ATD,ATR
IRS,IDD ITP,ITD,ITR
CSCI - SRS ABL +
STP,STD,STR
SDD,SUM,VDD
Tailoring options
Small CSCI:
use consolidated documents (C-SDD, C-STD)
Separate interface documents needed for a CSCI:
IRS & IDD -> part of Allocated Baseline
Only one CSCI to develop:
SRS defines the Functional Baseline
No Allocated baseline
Tailoring options -> Software Development Plan (SDP)
Other items of interest...
Metrics collection is necessary:
Time spent on SCM activities (compare with plan!)
Status of problem reports
Completion of milestones (e.g. baselines established)
SCM policy is needed
Training program is needed
SCM in general
CVS tool
Project plan should contain a section on SCM
Establish good working relations with:
senior management
software engineers
QA department (!)
Summary / Lessons Learned
Configuration management consists of 4 aspects
Much more than just a version control tool!
Easy to make it bureaucratic!
Software metrics should be collected
Everybody must be involved:
Project managers
QA
Software engineers
CMB
Everybody has different views on SCM
Next step: introduce this in Systems & Hardware groups!
1 comments
Comments 1 - 1 of 1 previous next Post a comment