sqe 10 configuration management 1

Upload: sameer-suleman

Post on 21-Feb-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/24/2019 SQE 10 Configuration Management 1

    1/22

    CHAPTER 27SOFTWARE CONFIGURATIONMANAGEMENT

    1

  • 7/24/2019 SQE 10 Configuration Management 1

    2/22

    THE FIRST LAW

    2

    No matter where you are in the system

    life cycle, the system will change, and the

    desire to change it will persist throughout

    the life cycle.Bersoff , et al,

    1980

  • 7/24/2019 SQE 10 Configuration Management 1

    3/22

    WHAT ARE THESE CHANGES?

    3

    data

    other

    documents

    codeTest

    Project

    Plan

    changes in

    technical requirements

    changes in

    business requirements

    changes in

    user requirements

    software models

  • 7/24/2019 SQE 10 Configuration Management 1

    4/22

    CONFIGURATION MANAGEMENT

    The art of coordinating software development to minimize . . .

    Confusion

    The art of identifying, organizing, and controlling modifications to

    the software being built by a programming team.

    4

  • 7/24/2019 SQE 10 Configuration Management 1

    5/22

    CONFIGURATION MANAGEMENT

    SCM activities are developed to

    1. identify change,

    2. control change,

    3. ensure that change is being properly implemented,

    and

    4. report changes to others who may have an interest

    5

  • 7/24/2019 SQE 10 Configuration Management 1

    6/22

    THE SOFTWARE CONFIGURATION

    6

    programsdocuments

    dataThe pieces

  • 7/24/2019 SQE 10 Configuration Management 1

    7/22

    SOFTWARE CONFIGURATION

    The items that comprise all information produced as

    part of the software process are collectively called a

    software configuration.

    SCI: a named element of information that can be as

    small as a single UML diagram or as large as the

    complete design document

    7

  • 7/24/2019 SQE 10 Configuration Management 1

    8/22

    SOFTWARE CONFIGURATION MANAGEMENT

    a set of activities that have been developed to manage

    change throughout the life cycle of computer software

    8

  • 7/24/2019 SQE 10 Configuration Management 1

    9/22

    SOFTWARE CONFIGURATION MANAGEMENT

    The project manager sees CM as an auditingmechanism;

    the configuration manager sees it as a controlling,tracking, and policy making mechanism;

    the software engineer sees it as a changing,building, and access control mechanism;

    and the customer sees it as a quality assurance

    mechanism

    9

  • 7/24/2019 SQE 10 Configuration Management 1

    10/22

    BASELINES

    The IEEE (IEEE Std. No. 610.12-1990) defines a baseline as:

    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 formalchange control procedures.

    a baseline is a milestone in the development of software that is

    marked by the delivery of one or more software configuration items

    and the approval of these SCIs that is obtained through a formal

    technical review

    10

  • 7/24/2019 SQE 10 Configuration Management 1

    11/22

    BASELINES

    11

    SCIs

    SCIs

    modified

    Software

    engineering

    tasks

    Formal

    technical

    reviewsSCIs

    approved

    SCIs

    extracted

    SCM

    controls

    SCIs

    stored

    Project database

    System SpecificationSoftware RequirementsDesign Specification

    Source CodeTest Plans/Procedures/Data

    Operational System

    BASELINES :

  • 7/24/2019 SQE 10 Configuration Management 1

    12/22

    SOFTWARE CONFIGURATION OBJECTS

    12

    Design specification

    data design

    architectural design

    module design

    interface design

    Component N

    interface description

    algorithm descr iption

    PDL

    Data model

    Test specification

    test plan

    test procedure

    test cases

    Source code

  • 7/24/2019 SQE 10 Configuration Management 1

    13/22

    A curved arrow shows a compositional relation.The double headed straight line indicates an

    interrelationship..

    13

  • 7/24/2019 SQE 10 Configuration Management 1

    14/22

    SOFTWARE CONFIGURATION ITEMS

    In addition to these SCIs many organizations also place

    software tools under configuration control e.g Specificversions of editors, compilers, browsers and other

    automated tools are also frozen as part of software

    configuration.

    14

  • 7/24/2019 SQE 10 Configuration Management 1

    15/22

    SCM REPOSITORY

    The SCIs are maintained in the projects database or Repository

    The SCM repository is the set of mechanisms and data structures thatallow a software team to manage change in an effective manner

    The repository performs or precipitates the following functions[FOR89]:

    Data integrity

    Information sharing

    Tool integration

    Data integration

    15

  • 7/24/2019 SQE 10 Configuration Management 1

    16/22

    REPOSITORY CONTENT

    16

    Business

    Content

    Model

    Content

    V&V

    Content

    Project

    Management

    Content

    Construction

    Content

    Documents

    business rules

    business functions

    organization struct ure

    information architect ure

    project estimates

    project schedule

    SCM requirement s

    change requests

    change reports

    SQA requiremen ts

    project reports/audit reports

    project m et rics

    Project Plan

    SCM/SQA Plan

    System Spec

    Requirem ent s Spec

    Design Document

    Test Plan and Procedure

    Support documents

    User manual

    use-cases

    analysis mod el

    scenario-based d iagrams

    flow-orient ed diagrams

    class-based diagrams

    be havioral diagrams

    design mode l

    archit ect ural diagrams

    int erface diagrams

    comp one nt -lev el diagrams

    t echnical met rics

    source code

    object code

    syste m build inst ructions

    t est cases

    te st scripts

    te st results

    qualit y me t rics

  • 7/24/2019 SQE 10 Configuration Management 1

    17/22

    REPOSITORY FEATURES

    Versioning.

    saves all versions of SCIs to enable effective management of producreleases and to permit developers to go back to previous versions

    Dependency tracking and change management.

    The repository manages a wide variety of relationships among thedata elements stored in it.

    Requirements tracing.

    Provides the ability to track all the design and construction

    components and deliverables that result from a specific requirementspecification(FORWARD TRACING)

    BACKWARD TRACING 17

  • 7/24/2019 SQE 10 Configuration Management 1

    18/22

    REPOSITORY FEATURES

    Configuration management.

    Keeps track of a series of configurations representingspecific project milestones or production releases. Version

    management provides the needed versions, and linkmanagement keeps track of interdependencies.

    Audit trails.

    establishes additional information about when, why, and

    by whom changes are made.

    18

  • 7/24/2019 SQE 10 Configuration Management 1

    19/22

    THE SCM PROCESS

    1. To identify all items that collectively define thesoftware configuration

    2. To manage changes to one or more of these

    items3. To facilitate the construction of different versions

    of an application

    4. To ensure that software quality is maintained as

    the configuration evolves over time19

  • 7/24/2019 SQE 10 Configuration Management 1

    20/22

    THE SCM PROCESS

    How does a software team identify the discrete elements of a softwareconfiguration?

    How does an organization manage the many existing versions of a

    program (and its documentation) in a manner that will enable changeto be accommodated efficiently?

    How does an organization control changes before and after softwareis released to a customer?

    Who has responsibility for approving and ranking changes?

    How can we ensure that changes have been made properly?

    What mechanism is used to appraise others of changes that are made?20

    Addresses the following questions

  • 7/24/2019 SQE 10 Configuration Management 1

    21/22

    THE SCM PROCESS

    21

    identification

    change control

    version control

    configuration auditing

    reporting

    SCIs

    Software

    Vm.n

  • 7/24/2019 SQE 10 Configuration Management 1

    22/22

    REFERENCE

    Software Configuration Management ,Chapter 22 from Software Engineering: APractitioners Approach, 7th edition by Roger S. Pressman

    22