Software Engineering Lecture 9: Configuration Management.

Slides:



Advertisements
Similar presentations
Configuration Management
Advertisements

Configuration Management Managing Change. Points to Ponder Which is more important?  stability  progress Why is change potentially dangerous?
Software Configuration Management Speaker: Jerry Gao Ph.D. San Jose State University URL:
Software Configuration Management
CSC 395 – Software Engineering Lecture 25: SCM –or– Expecting Change From Everything But Vending Machines.
Software Configuration Management (SCM)
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
SCM SCM: AN OVERVIEW. Agenda  Introduction  Concepts  CBSD.
Software Configuration Management Copyright, 2006 © L.Ouyang Liubo Ouyang Personal Software Process Lecture.
TCS2411 Software Engineering1 Software Configuration Management “The only constant is change...”
Configuration Management
Chapter 27 Change Management
Software Configuration Management
Software Configuration Management (SCM)
CSSE 375 Software Construction and Evolution: Configuration Management
Configuration Management Avoiding Costly Confusion mostly stolen from Chapter 27 of Pressman.
SE-02 CONFIGURATION MANAGEMENT Today we talk about Software Configuration Management (SCM for short): - What? - Why? - How?
Software Configuration Management (SCM)
Configuration Management Managing Change. Points to Ponder Which is more important?  stability  progress Why is change potentially dangerous?
SOFTWARE CONFIGURATION MANAGEMENT (SCM)
Software Configuration Management
Software Configuration Management (SCM)
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Configuration Management (managing change). Starter Questions... Which is more important?  stability  progress Why is change potentially dangerous?
Creator: ACSession No: 16 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 (Software Quality) Configuration Management CSE300 Advanced.
Software Quality Assurance
© Mahindra Satyam 2009 Configuration Management QMS Training.
Software Engineering 2003 Jyrki Nummenmaa 1 CONFIGURATION MANAGEMENT Today we talk about Software Configuration Management (SCM for short): -
SOFTWARE CONFIGURATION MANAGEMENT. Change is inevitable when computer software is built. And change increases the level of confusion among software engineers.
Develop Project Charter
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa Configuration management.
Software Project Management
Configuration Management and Change Control Change is inevitable! So it has to be planned for and managed.
Software Configuration Management (SCM). Product Developer Disciplines One view of the world is that there are three types of activities are required.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 29 Slide 1 Configuration management.
Management of Software Project CSM Software Configuration Management (SCM)
Configuration Management at CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Requirements.
Software Configuration Management (SCM) Source: Pressman, R., Software Engineering: A Practitioner ’ s Approach. Boston: McGraw Hill, Inc., 2005; Ghezzi,
Software Configuration Management n Art of coordinating SW development to minimize confusion n Software quality assurance (umbrella) activity n Set of.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Configuration Management
1 Chapter 9 Software Configuration Management. 2 The “First Law” No matter where you are in the system life cycle, the system will change, and the desire.
Software Configuration Management SEII-Lecture 21
Configuration Management (II) Copyright, 2000 © Jerzy R. Nawrocki Requirements.
6/6/ SOFTWARE LIFE CYCLE OVERVIEW Professor Ron Kenett Tel Aviv University School of Engineering.
Configuration Control (Aliases: change control, change management )
Configuration & Build Management. Why Software Configuration Management ? The problem: Multiple people have to work on software that is changing More.
Software Configuration Management (SCM)
Software Configuration Management (SCM)
Software Configuration Management
Software Configuration Management
Software Configuration Management
Software Project Configuration Management
Chapter 11: Software Configuration Management
Software Configuration Management
Software Engineering (CSI 321)
Chapter 9 Software Configuration Management
Software Configuration Management
Chapter 27 Change Management
Lecture 3 Change Management
Configuration Management (managing change)
Software Configuration Management
Chapter 27 Change Management
Chapter 27 Change Management
Baseline – IEEE definition
Chapter 11: Software Configuration Management
Chapter 27 Change Management
Chapter # 6 Software Configuration Management
Chapter 27 Change Management
Software Configuration Management
Presentation transcript:

Software Engineering Lecture 9: Configuration Management

Today’s Topics l SCM Concepts l Configuration Objects & Baselines l SCM Tasks l Access and Synchronization l Managing Change Example: GNATS

Configuration Management l Change is inevitable! Maximize productivity by minimizing mistakes [Babich, 1986] l Changes should be: analyzed in advance recorded before implementation reported on a need-to-know basis controlled to improve quality and reduce error

Software Configuration Management (SCM) l Umbrella activity with subtasks: Identify change Control change Ensure proper implementation Reporting change(s) to others l Effective change management is a characteristic of good SE

First Law of System Engineering “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] Change management is a life-cycle activity, not just a maintenance activity!

SCI: Software Configuration Item There are a growing number of artifacts to manage during the SE process: Programs Source, binary, resource files Documents Technical docs, user docs Data Inside programs, or in separate files

Relationships Between SCI Objects

Four Sources of Change l New business or market conditions l New customer needs l Reorganization l Budget and scheduling constraints

Baselines baseline (n): “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 formal change control procedures.” (IEEE ) Baselines are frozen, final versions of deliverables

Baselined SCIs & Project Database [From SEPA 5/e]

Types of SCIs l Requirements specification l Project plan l Preliminary user manual l Design specification l Source code listing(s) l Test specification l Installation / operation manuals l Executable program(s)

Types of SCIs [2] l Database description l As-built user manual l Maintenance documents l Standards and procedures

SCM Tasks l Identification l Version control l Change control l Configuration auditing l Reporting

SCI Identification l Every SCI has: a name, a description, resource list a “realization” (pointer to code/text/etc.) l Basic vs. Aggregate objects aggregates contain other aggregates or basic objects aggregates have no “realization”

The Version Space [From SEPA 5/e] Note: A particular “version” of an entity might have several variants!

Evolution of SCI Objects [From SEPA 5/e] Alternate implementations may be developed & evaluated in parallel

Controlled Evolution l Tools to model change in the evolution graph, e.g.: RCS (Revision Control System) CVS (Concurrent Versioning System) l Version Control Procedures and tools to manage different versions of objects Both access and synchronization must be controlled

[From SEPA 5/e] Access & Synchronization Control

Deciding Whether to Make a Change [From SEPA 5/e]

Making the Change [From SEPA 5/e]

Testing the Change [From SEPA 5/e]

Configuration Audit l Review the state of an SCI: Specified change completed? Technical review? SE standards followed? Change documented? SCM notification procedures followed? Related SCIs updated?

Example: GNATS l Change request management based on “Problem Reports” (PRs) l GNATS is freely available: l Tracks a PR from initial creation (by the customer) to final closure (after release testing)

GNATS PRs l Problem reports include: Originator, date, status, priority Software version, input / output Description of problem Responsibility assignment Proposed solution & time estimate Test data

PR Process l Customer: submits initial PR l Manager: classify / route internally prioritize PRs with customer l Developer: identify error, if any propose solution, estimate time create test data implement / test / document change

Questions?