Software Configuration Management (SCM)

Post on 15-Apr-2017

220 views 2 download

transcript

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 1

Software Configuration Management

(SCM)ER. SHIVA K. SHRESTHA

ME COMPUTER (I SEM)

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 2

Software Configuration Management (SCM)Umbrella activity that is applied throughout the software processControl of the evolution of complex systems Manages the effects of change throughout the software processControl of changeIdentification of individual SCIs & various versions of the softwareAuditing of the software configurationReporting of all changes applied to the configuration

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 3

Software Configuration Management (Contd.)

The output of the software process (Software Configuration Items) are:

i. Computer Programs (both source level and executable forms)

ii. Documents that describe the computer programs (targeted at both technical practitioners and users)

iii. Data (contained within the program or external to it)

Data

DocumentsProgram

SCIs

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 4

Software Configuration Items (SCIs)

Deliverables

SRS

Design Documents

Test CasesSource Code

User Manual

Configuration Item (CI) refers to the fundamental structural unit of a SCM

Deliverables of Large Software Development Effort

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 5

Possible Selection of Configuration Items Problem Statement Software Project Management Plan

(SPMP) Requirements Analysis Document

(RAD) System Design Document (SDD) Project Agreement Object Design Document (ODD) Dynamic Model Object model Functional Model Unit tests

Integration test strategySource code API Specification Input data and data bases Test plan Test data Support software (part of the

product) Support software (not part of the

product) User manual Administrator manual

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 6

Configuration Item Tree (Example)

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 7

SCM ProcessPrimary Objectives:

1. To identify all items that collectively define the software configuration

2. To manage changes to one or more of these items

3. To facilitate the construction of different versions of an application

4. To ensure that software quality is maintained as the configuration evolves over time

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 8

Identification of Objects To control & manage SCIs, each should be separately named & then organized using an object-oriented approach.

Types of objects:i. Basic objects

◦ Unit of information that is created during analysis, design, code or test.

◦ For Example: Part of design model, source code for a component, suite of test cases, etc.

ii. Aggregate objects◦ Collection of basic objects & other another objects.◦ For Example: Design Specification

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 9

Version ControlCombines procedures & tools to manage versions of configuration objects that are created during the software process

A new version is defined when major changes have been made to one or more objects

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 10

Change ControlProcedural activity that ensures quality & consistence as changes are made to a configuration object.Begins with a change request, leads to a decision to make or reject the request for change.

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 11

Configuration AuditTo ensure that change has been properly implemented:

i. Formal Technical Reviews ii. Software Configuration Audit.

Formal Technical ReviewsSoftware Quality Assurance (SQA) activity performed by software engineers

(and others)FTR serves as a training ground, enabling junior engineers to observe

different approaches to software analysis, design, and implementation

Software Configuration AuditSQA ActivityHelps to ensure that quality is maintained as changes are made

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 12

Status Reporting Configuration Status Reporting (Status Accounting) is an SCM task that answers the following questions:

i. What happened?ii. When did it happen? iii. Who did it? iv. What else will be affected?

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 13

SCM Standards Over the past two decades a number of software configuration management standards have been proposed.

SCM standards, such as MIL-STD-483, DODSTD- 480A and MIL-STD-1521A focused on software developed for military applications.

ANSI/IEEE standards. No. 828-1983, No. 1042-1987 and Std. No. 1028-1988 [IEE94] are applicable for nonmilitary software & are recommended for both large and small software engineering organizations.

05/02/2023 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 14

Q & A?

Thank You !