Software Development: Tools and Processes Lecture - 13: Software - - PowerPoint PPT Presentation

software development tools and processes
SMART_READER_LITE
LIVE PREVIEW

Software Development: Tools and Processes Lecture - 13: Software - - PowerPoint PPT Presentation

Software Development: Tools and Processes Lecture - 13: Software Configuration Management Software configuration management What is Configuration Management? Configuration Management is the art of identifying, organizing, and


slide-1
SLIDE 1

Software Development: Tools and Processes

Lecture - 13: Software Configuration Management

slide-2
SLIDE 2

Software configuration management

  • What is Configuration Management?
  • Configuration Management is the art of

identifying, organizing, and controlling modifications to the software being built by a programming team.

  • Objectives of SCM
  • Identify Change
  • Control Change
  • Ensure proper implementation of Change
  • Report all the Changes
slide-3
SLIDE 3

Software Configuration Management (SCM) is umbrella activity that is applied throughout the software process.

slide-4
SLIDE 4

Sources of Change

  • New business or market conditions
  • New customer needs
  • Change in project priorities by the customer
  • Change in the software engineering team
  • Budgetary or scheduling constraints
slide-5
SLIDE 5

Software configuration management

  • What is Software Configuration?
  • The items that comprise all information produced as part of the

software process are collectively called a Software Configuration

  • Software Configuration Item:
  • Any artifact which is put under the configuration control
  • Example of SCM item
  • System Specifications
  • Software project Plan
  • SRS
  • Design Specifications
  • User Manual
  • Test Specifications – test cases, test plan
  • Executable programs
  • Maintenance Documents
slide-6
SLIDE 6

Software configuration management

Base-Lines? A baseline is a SCM concept that helps us to control change without seriously impeding justifiable change. IEE 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

  • nly through formal change control procedures”

When items are put under Configuration control ? The items which are formally designed and reviewed and have become baselines.

slide-7
SLIDE 7

Before a SCM item becomes a baseline, a change can be made quickly. However, when a baseline is established, we have to follow more stringent procedure to make a change

slide-8
SLIDE 8

Configuration Management Process

Major SCM tasks

– Identification – Version control – Change control – Configuration auditing – reporting

slide-9
SLIDE 9

Configuration Management Process

  • Identification
  • Each item must be separately named and then
  • rganized
  • Each item has set of distinct features that identify it

uniquely:

  • Name – Description – Resources - relationships
  • Description – SCI type (doc, program etc), Project

identifier, version information and change information

  • Resources – entities processed, referenced or required

by object. Example: resources of programs include variables, functions etc.

  • Relationship with other items.
slide-10
SLIDE 10

Configuration Management Process

  • Version control
  • Management of different versions of

configuration items.

  • Versions are represented by

evolution graph

  • Each version may be composed of

different variants

  • Variant example: There are five

different modules in a software called 1,2,3,4, & 5. Now 4 and 5 are mutually exclusive. Then one variant of software is 1,2,3,5 and

  • ther is 1,2,3,4.

1.0 1.1 1.1.1 1.2 1.0 1.1.1. 2

slide-11
SLIDE 11

Configuration Management Process

  • Change Control
  • Combines human procedure and automated tools
  • Need for change is recognized
  • Change request from user
  • Request evaluated by developer
  • Change report is generated
  • Change control authority decides to: deny or accept the request
  • Request is queued for action
  • job to assigned individuals
  • Changes incorporated, reviewed and tested
  • New versions are built
slide-12
SLIDE 12

Configuration Management Process

  • Configuration Audit
  • To ensure that change have been properly

implemented

  • FTRs
  • Software configuration audits - complete process
  • Status Reporting
  • What happened
  • Who performed the job
  • When was it performed
  • What will be affected.
slide-13
SLIDE 13

Configuration management & CMMI

  • SP 1.2-1 – Establish a configuration management system
  • Dynamic systems
  • Master systems
  • Static systems
slide-14
SLIDE 14

Configuration Management Process

Support required from SCM Tool

  • Get Latest Version of a Program
  • Get any previous version of a program
  • Obtain the Delta between two different versions
  • Identify version related to a particular delivery
  • Handle Concurrent Update Requests
  • Undo a Program Change
  • Prevent Unauthorized Changes or Deletions
  • Ability to archive selected versions
  • Implement complete change control process
slide-15
SLIDE 15

Version control tool: VSS

  • Visual source safe is free ware by

Microsoft

  • VSS manages versions of different

software artifacts

slide-16
SLIDE 16

Configuration management tool: CRTS

  • Developed to manage the change control

process

  • Tracks the modification history and reasons for

modifications

  • Helps to clearly identify the delta between two

different versions