0% found this document useful (0 votes)
27 views19 pages

Change Control & SCM

Uploaded by

rachi114.rr
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views19 pages

Change Control & SCM

Uploaded by

rachi114.rr
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 19

Contents

o Framework for Management and control


o Collection of data
o Visualizing progress
o Cost Monitoring
o Earned Value Analysis
o Prioritizing Monitoring
o Project tracking
o Change Control
o Software Configuration Management
o Managing contracts
o Contract
o Management.
Change control
The role of configuration librarian:
• Identifying items that need to be subject to change control
• Management of a central repository of the master copies of software
and documentation
• Administering change procedures
• Maintenance of access records (A situation to be avoided is where two
different developers are making changes to the same software
component.)

2
Typical change control process
1. One or more users might perceive the need for a change
2. User management decide that the change is valid and worthwhile
and pass it to development management
3. A developer is assigned to assess the practicality and cost of making
the change (Feasibility, impact and cost)
4. Development management report back to user management on the
cost of the change; user management decide whether to go ahead

3
Change control process contd.

5. One or more developers are authorized to make copies of components


to be modified
6. Copies modified. After initial testing, a test version might be released
to users for acceptance testing
7. When users are satisfied then operational release authorized – master
configuration items updated

4
Changes in scope of a system (Scope Creep)

A common occurrence with IS development projects is for the


size of the system gradually to increase. One cause of this is
changes to requirements that are requested by users.

The scope of a project needs to be carefully monitored and controlled.


One way is to re-estimate the system size in terms of SLOC or function
points at key milestones

5
Configuration librarian’s role
the configuration librarian is responsible for Control of changes and
documentation..
His duties would be:
othe identification of all items that are subject to change control;
othe establishment and maintenance of a central repository of the master
copies of all project documentation and software products;
othe setting up and running of a formal set of procedures to deal with
changes;
o the maintenance of records of who has access to which library items and the
status of each library item (e.g. whether under development, under test or
released).

6
Software Configuration Management (SCM)

• A systematic software configuration management (SCM) process of tracking


and controlling changes to the software.
• Maintenance phase-work products associated with software change.
• Each member of development or maintenance team would assign to handle
modification requests.
• In the above situation, unless a proper configuration management system is
deployed, several problems can appear.
Software Configuration Management

• Key Components of the SCM Process


• Version Control: Tracking and managing multiple versions.
• Change Control: Authorizing and validating modifications.
• Configuration Identification: Defining and labeling components.
• Status Accounting: Recording change histories.
• Auditing: Verifying and ensuring integrity of changes.
Software Configuration Management
Context in which configuration management is necessary:

• State of work products change both during development as well as maintenance


phase.
• The state of all work products at any point of time is called the configuration of the
software product.
• CM maintains the "configuration" by capturing every modification and update.
• CM tools assist in version control, tracking changes, and establishing baselines.
Software Configuration Management
Few Terminologies:
• Configuration:
o The state of work products under configuration control.
o Components or files represent various work products.
o Work products (W1,W2,...Wn).
• Version:
o The configuration of the software at a specific point in time.
o To track software as it changes during development and maintenance.
o Uses numbering to identify specific configurations over time.

10
Software Configuration Management
Revision:
oA unique state of a configuration item, identified by a revision number.
oEach update to a work product creates a new revision.
oIt allows tracking of changes within a specific configuration item.
Baseline:
It is a software configuration that has been formally reviewed and agreed upon.
It serves as a basis for further development.
Variant:
•Variants are versions that are intended to coexist to meet different requirements.
•Different variants may be needed to run the software on different operating systems or
different hardware platforms.
Software Configuration Management

Purpose of software configuration management:


•Essential for managing changes, maintaining consistency, and tracking development.
1. Problems associated with concurrent access:
•Important reason for configuration management is to control the access to the different
deliverable objects.
•Example: single copy is maintained, several developers working on it.
•One / two developers carry out changes to same work product leads to problem.
2. Undoing Changes:
•It becomes easy to undo some part of a version or even rollback development to a certain
version.
•Unless proper configuration management systems is in place, it becomes very difficult to
undo a change.
Configuration management process
3. System Accounting:
• It denotes keeping track of who made a particular change to a configuration item,
what change was exactly made.
• Knowing what, who, and when changes will help understanding why changes were
made.
4. Handling Variants:
• If you have several variants of the same module and find that a bug exists in one of
them.
• Then it has to be fixed in all versions and revisions.
• Making a change to one program should reflected in all relevant versions and
revisions.

13
Configuration management process
5. Accurate Determination of project status normally:
•Project manager-responsible for using configuration management tool.
•With the help of it, PM can easily determine the current state of the project.
•Preventing Unauthorized access to the work products:
•CM helps to implement a controlled change process.
•It therefore becomes possible to prevent unauthorized changes to the work products.
Configuration Management Process:
•Two principal activities:
•Configuration Identification: Deciding which parts of the system should be kept
under configuration management.
•Configuration Control: • Ensure that the changes to a system occur smoothly.

14
Configuration management process
6. Accurate Determination of project status normally:
•Project manager-responsible for using configuration management tool.
•With the help of it, PM can easily determine the current state of the project.
7. Preventing Unauthorized access to the work products:
•CM helps to implement a controlled change process.
•It therefore becomes possible to prevent unauthorized changes to the work products.
Configuration Management Process:
•Two principal activities:
•Configuration Identification: Deciding which parts of the system should be kept
under configuration management.
•Configuration Control: • Ensure that the changes to a system occur smoothly.

15
Configuration management process
Configuration Identification:
PMs classify the work products associated with a software development process in
three main categories.
Controlled work products are those that are put under configuration control. The
TMs must follow some formal procedures to change these.
Pre-controlled work products are not yet under configuration control, but will be.
Uncontrolled work products will not be subject to configuration control.

Typical controllable work products include the following:


● Requirements specification document
● Design documents
● Tools used to build the system (compilers, linkers, lexical analysers, etc. )
● Source code for each module
● Test cases
● Problem reports
Configuration management process
Configuration Control
Configuration Control is a part of configuration management system- most directly
affects the day-today operations of developers.
• It allows only authorized changes to the controlled objects and prevents unauthorized
changes.
• PM-give permission to some members.

17
Configuration management process
Modification to a work Product under Configuration Control:
•Developers make a reserve request when there is a need for change.
•A reserve request will be honoured only if authorization has been given by PM to that
TM.
•After successful reserve command execution, a private copy of the work product is
created in their local directory.
•Once they have satisfactorily completed all necessary changes to the work product on
their private copy, the changes need to be restored in Configuration management
repository with the permission of a change control board(CCB).
•CCB ensures the following about each change:
•Change is well motivated.
•Developer has considered and documented the effects of the change.
•The changes integrate well with modifications made by other developers.
•CCB have validated the change.
Configuration management process

Release Management:
•A release management process systematizes the work carried out by the developers to
provide a new release of software.
•Minimal effort on the part of the developer to upload a new release of software.

19

You might also like