vaibhav sw configuration mgmt

27
Software Configuration Management Presente d by : Vaibhav Chat urvedi

Upload: vaibhav-chaturvedi

Post on 10-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 1/27

Software Configuration

Management

Presented by: Vaibhav Chaturvedi

Page 2: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 2/27

What is SCM ?

The Art of managing change to software

In software engineering, software configuration

management (SCM) is the task of tracking and

controlling changes in the software. Configuration

management practices include revision control and

the establishment of baselines.

The purpose of Software Configuration Management

(CM) is to establish and maintain the integrity of  

products throughout the software life cycle.

Page 3: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 3/27

Common Problems due to change

Unable to see code changes made by

team members

Unable to work in parallel.

Frequent need to rework because of lostdefects or overwritten code.

Trouble in determining which versions of 

code to work on. You have no idea which versions of files

went into a build, etc«

3

Page 4: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 4/27

Functions ««

Software CM involves following key functions:

1. Configuration identification :Identification of work products and baselines that are

subject to configuration control.

2. Configuration control  :(i.e., approval/rejection) of proposed changes to

configuration items.3. Configuration status accounting :

Status accounting of configuration data and changes.

4. Configuration audits:Audits to maintain the integrity of the configuration

baselines.

5. Build Management :

Managing the process and tools used for builds.6. Defect Tracking :

Making sure every defect has traceability back tothe source.

4

Page 5: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 5/27

CM Benefits

Improves

 ± Product protection

 ± Product visibility

 ± Product control ± Team communication

 ± Customer Confidence

Decreases

 ± Rework

 ± Confusion

 ± Project Risk

Page 6: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 6/27

Key Definitions

Configuration Item (CI) - an aggregation of workproducts (e.g., hardware, software, or documentation)that is designated for configuration management andtreated as a single entity in the configurationmanagement process.

Baseline  ± a set of specifications or work productsthat has been formally reviewed and agreed on, whichthereafter serves as the basis for further development,

and which can be changed only through changecontrol procedures. Typically defined for each projectlife-cycle phase

Page 7: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 7/27

Configuration Management ProcessOverview

W ork products;change

requests

Controlled work  products;

approved changerequests

Status reports;audit results

CM Plan

Project Management Processes

Project Planning

Project

Monitoring &

Control

Project Startup

Project Closeout

Project

Formulation

Product Development Processes

Requirements

Engineering

Product ReleaseSustaining

Engineering &

Maintenance

Design

Implementation

Testing

Systems

Engineering

Configuration

Management

Process

Planning Data

Page 8: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 8/27

Configuration Management Tasks

CM planning and startup tasks

Establish thesoftware project

CCB

Setup CM toolsand libraries

Define levels of 

control and

responsibilities

Identify

configuration

items

Define CM

proceduresPrepare the CM

Plan

CM execution tasks

Identify workproducts/baselines

Perform

configurationcontrol

Perform

configurationstatus accounting

Perform

configurationaudits

Page 9: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 9/27

CM Planning and Startup Tasks

Establish the

software project

CCB

Setup CM tools

and libraries

Define levels of control and

responsibilities

Identifyconfiguration

items

Define CM

proceduresPrepare the CM

Plan

Page 10: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 10/27

CM Planning/Startup Tasks (1 of 2)

Identify the CIs (e.g., deliverable products,interim products, requirements, software) anddefine the naming conventions.

Identify the levels of control for each CI.

List the identified items in theData managementList (DML).

Determine when each item will be placed under configuration control (i.e., Baselined).

Select a role that is responsible for maintainingthe integrity of items under CM.

Establish a CCB (Configuration Control Board)to manage, assess, and control changes toconfigured items.

10 

Page 11: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 11/27

CM Planning/Startup Tasks (2 of 2)

Define the mechanism used to control changes

 ± Change requests (e.g., What forms / tools will beused?)

 ± CCB (e.g., What meetings (if any) will be held?

How will changes be dis-positioned, logged, andtracked?)

 ± Audits to confirm the approved changes andensure the integrity of the configuration baselines

Identify tools used to support CM and how theywill be used (e.g. TFS, ClearCase, SourceSafe)

Document approaches, procedures, and tools ina separate CM Plan or as part of your SMP/PP.

11

Page 12: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 12/27

CM Execution Tasks

Perform

configuration

control

Perform

configuration

status accounting

Perform

configuration

audits

Identify work

products/baselines

Page 13: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 13/27

1 - Configuration IdentificationIdentify Work Products and Baselines

Document the baseline items in the ³BaselinesTable´ in the SMP/PP (Software Management Plan/

Product Plan.

Identify by phase (per your life cycle model) the CIs

that will be baselined or re-baselined.

13

Page 14: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 14/27

Recording the Baselines

Update the ³Baselines Table´ at the conclusionof each phase to record the baseline date and the

baseline versions for each configured item

Save your updated ³Baselines Table´ as

specified in your DML

14

Page 15: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 15/27

2 - Configuration Control

Identify and record desired changes to abaselined item

Define the need / problem rather than thedesired resolution

Document the analysis of change

 ± Impact analysis, costs, urgency«

Review and disposition each change request

Use a tool to record and track the status of allchange requests

15 

Page 16: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 16/27

Change Request Form and Log

16 

Describing

the desired

change

Thoroughly

analyzing the

change

Decision and

formal

approval

Pr 

 

 j

¡ ¢ 

tN

£ ¤ ¡ 

¥ 

¦ 

r £ ¢ 

§ 

i¨ © 

N ¤ 

 

¡ 

r  It¡ ¤ 

 ¦ 

¡ 

 

 

t¡ ¤  

 / 

 

 

 

t¡ ¤  

 

 

 

rt D¡ ¢ 

ri 

ti  ̈

  

f  

 

£ ¨ © ¡  

 

r © ¡ ¨ ¢  

R¡ ¡  

D£ 

t¡ 

 

 

 

¤ 

itt¡ 

 

¨ £ 

 

 ! 

 

i© ¨ ¡ 

 

¦ 

 

¥ 

R¡  

lt

 

R t

Keeping track of all the desired changes

Page 17: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 17/27

3 ± Configuration Status Accounting

Maintain records of the CIs throughout the

project¶s life cycle

Record and monitor all changes to CIs

Document the contents of versions, builds,

and baselines

Generate periodic status reports ± your CMtool may provide the reporting for you!

17 

Page 18: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 18/27

4 ± Configuration Audits

Conduct audits to maintain the integrity of the

configuration baselines

Three types of CM Audits are required:

 ± Baseline Audit

 ± Functional Configuration Audit (FCA)

 ± Physical Configuration Audit (PCA)

Audits correspond to major milestones andmust be planned and on your schedule

18 

Page 19: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 19/27

Baseline Audit

Conducted at the end of each life cycle phaseor at each major delivery

Conducted by the team¶s CMO or designated

team personnel; reviewed by the team¶s

Software Quality Engineer (SQE)

Baseline Audit -- verifies the content of the

baseline

 ± Correct versions of CIs were used to build the

baseline

 ± Correct version of documentation are included

in the baseline

19

Page 20: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 20/27

Page 21: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 21/27

Tools«.

ClearCase

 ± ClearCase, by IBM/Rational (formerly Pure Atria).

 ± In addition to version control and CM functions,advanced capabilities include 32-way merge,

versioning of any object (including directories),

logical version labeling, parallel builds

distributed over a network, and triggers for local

site customizing. Versioned history files may becompressed for space savings.

21

Page 22: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 22/27

Tools«..

Visual SourceSafe

 ± SourceSafe provides for true project level

configuration control.

 ± It has a very nice model for setting up multiple

versions of a project.

 ± Rather than using numbers to branch, such as

version 2.3.6.1, a logical release or customer 

name can be used to implement the same

construct.

22 

Page 23: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 23/27

Tools«.

Team Foundation Server 

 ± Team Foundation Server (commonly

abbreviated TFS) is a Microsoft  product

offering source control, data collection,

reporting, and project tracking, and is intendedfor collaborative software development

projects. It is available either as stand-alone

software, or as the server side back end

platform for  Visual Studio Team System

(VSTS).

23

Page 24: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 24/27

TFS

24

Page 25: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 25/27

TFS Functions«..

Source control

 ± Team Foundation Server provides a source

control repository, called Team Foundation

Version Control (TFVC). Team Foundation

source control stores all code, as well as arecord of all changes and current check-outs

in a SQL Server database.

Reporting

 ± For example, the rate of code change over time, lists of bugs that don't have test cases,

regressions on previously passing tests, and

so on.

25 

Page 26: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 26/27

Summary

Software Configuration Management establishesand maintains the integrity of products throughout the

software life cycle

CM planning and implementation support

include:

 ± Configuration Identification

 ± Configuration Control

 ± Configuration Status Accounting

 ± Configuration Audits

CM records must be organized and maintained

Tools.

26 

Page 27: VAIBHAV SW Configuration Mgmt

8/8/2019 VAIBHAV SW Configuration Mgmt

http://slidepdf.com/reader/full/vaibhav-sw-configuration-mgmt 27/27

Acronyms

CCB Configuration Control Board

CI Configuration Item

CM Configuration Management

CMO Configuration Management Officer 

CR Change Request

DML Data Management List

FCA Functional Configuration Audit

IRB Internal Review Board

ISD Information Systems Division

PCA Physical Configuration Audit

PDL Product Development Lead

SMP/PP Software Management Plan/Product Plan

SPI Software Process Improvement

SQE Software Quality Engineer 

VDD Version Description Document

27