Software Configuration Management - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

Software Configuration Management

Description:

Software Configuration Management The only constant is change ... Lecture Objectives To understand the activities in managing software changes To identify the ... – PowerPoint PPT presentation

Number of Views:117
Avg rating:3.0/5.0
Slides: 27
Provided by: pesonaMm
Category:

less

Transcript and Presenter's Notes

Title: Software Configuration Management


1
Software Configuration Management
  • The only constant is change ...

2
Lecture Objectives
  • To understand the activities in managing software
    changes
  • To identify the software configuration items that
    needs to be managed
  • To describe the different tasks in software
    configuration management

3
What is S/w Configuration Management?
  • SCM is the discipline for systematically
    controlling the changes that take place during
    development
  • Umbrella activity that is applied throughout SE
    process
  • SCM is easier at the start of development and
    gets more complex towards the end

4
Sources of Change
  • New business or market conditions
  • New customer needs
  • Reorganisation and/or business downsizing
  • Budgetary or scheduling constraints

5
Main Elements of SCM
  • Identification
  • What are the configuration items?
  • Control
  • How changes should be controlled?
  • Status Accounting
  • What changes have been made?
  • Auditing
  • Is the system being built to satisfy the needs?

6
Software Configuration
  • Computer programs
  • Source code
  • Executable code
  • Documents that describe the computer programs
  • For technical staff
  • For users
  • Data
  • Within the program and external to it

7
Software Configuration Item
  • A document or an artifact that is explicitly
    placed under configuration control and that can
    be regarded as a basic unit for modification
  • Examples
  • requirement documents
  • design document
  • code of a module
  • test plan

8
Baselines Definition
  • IEEE definition
  • A specification or product that has been
    formally reviewed and agreed upon, that
    thereafter serves as the basis for further
    development, and that can be changed only through
    formal change control procedures

9
Baselines
  • A baseline is essentially a set of SCIs
  • The items have been reviewed, corrected, and
    approved
  • Baselines should be used as reference point
  • Baselines should only be changed through formal
    procedures
  • Careful definition and control of different
    baselines should be done

10
Examples of Baselines
  • Functional baseline (requirements)
  • Design baseline
  • Product baseline (developed system)

11
Configuration Control
  • Version control - procedures and tools to manage
    different versions of configuration objects
  • Change control - procedures and tools to provide
    a mechanism for the control of changes

12
Version Control
  • Process of identifying and keeping track of
    different versions and releases of a system
  • Procedures to ensure that different versions of a
    system may be retrieved when required and not
    accidentally changed
  • Version management is almost always supported by
    automated tools

13
Evolution Graph
Obj 1.3
Obj 1.4
Obj 1.0
Obj 1.1
Obj 1.2
Obj 2.0
Obj 2.1
Obj 1.1.1
Obj 1.1.2
14
Versions, releases variants
  • Version - an instance of a system that differs
    from other instances
  • different functionality
  • performance
  • repair of system faults
  • Release - version that is distributed to
    customers
  • Variant - sometimes used when differences are
    small

15
Change Control
  • Focuses on managing changes to the different
    forms of the SCIs
  • Engineering change proposal - basic document used
    for defining requesting for a change.
  • Configuration Control Board (CCB) is responsible
    for configuration management
  • CCB evaluate proposal approve/reject it

16
Change Control Process
Need for change
Change request generated
Change report generated
Evaluation
Technical merits, Side effects Overall impact,
Project cost
Place on queue for change
ECO generated
Approve
Other SCM tasks
CCA decision
Requestor is informed
Reject
17
Engineering Change Proposal
  • proposed change
  • reason(s)
  • baselines SCIs that are affected
  • cost
  • schedule impacts
  • procedures for the change

18
Engineering Change Order
  • Change description
  • Constraints
  • Audit review criteria

19
Change Process
  • Object to be changed is checked out
  • Change is made
  • Appropriate SQA activities applied
  • Object is checked in to the database
  • Version control mechanisms applied for next
    version

20
Change Process Diagram
Check-in
Configuration object (baseline version)
Configuration object (modified version)
unlock
Audit info
Ownership info
Software Engineer
Project Database
Access control
lock
Configuration object (baseline version)
Configuration object (extracted version)
Check-out
21
Status Accounting/Reporting
  • Keeps record of how the system evolves and what
    is its current status (administrative nature)
  • Can be complex due to the existence of executable
    and non-executable forms

22
Status Reporting Process
Configuration Identification
CSR Database
SCIs
Status Reporting
Configuration Control
Changes
CSR Report
Configuration Audit
Deficiencies
23
Status Accounting Tasks
  • Record baseline establishment time
  • Record when SCI came into being
  • Information about each SCI
  • Engineering change proposal status
  • Status of the approved changes

24
Configuration Audit
  • Concerned with determining how accurately the
    current software system implements the system
    defined in the baseline requirements document
  • Also concerned with increasing the visibility and
    traceability of the software
  • Also establish a new baseline

25
Auditing
  • How do we know a change is properly implemented?
  • Formal technical reviews - assess the SCI to
    determine consistency with other SCIs
  • Software configuration audit
  • SCI changes made?
  • FTR conducted?
  • SE standards followed?
  • SCM procedures followed updates properly done?
  • Related SCIs updated?

26
References
  • Software Engineering A Practitioners Approach
    5th Ed. by Roger S. Pressman, Mc-Graw-Hill, 2001
  • Software Engineering by Ian Sommerville,
    Addison-Wesley, 2001
Write a Comment
User Comments (0)
About PowerShow.com