Software Configuration Management CSC-532 Chandra Shekar Kandi Chandra Shekar Kandi.

Slides:



Advertisements
Similar presentations
6th European Banking Supervisors XBRL Workshop Madrid 4, 5 October 2006 Version Control Pablo Santos Códice Software
Advertisements

Configuration Management
Page 1 October 31, 2000 An Introduction to Large-Scale Software Development Steve Varnau Core HP-UX Operation October 31, 2000.
Why Is Software Difficult to Build?
Configuration Management
1 Perforce The Fast Software Configuration Management System.
1 GOES-R AWG Products Processing Framework Configuration Management Yunhui Zhao.
Configuration Management Managing Change. Points to Ponder Which is more important?  stability  progress Why is change potentially dangerous?
Revision Control Systems Amin Tootoonchian Kian Mirjalali.
1 Software Configuration Management METU Computer Engineering CEng 492 Spring'2004.
Chapter 13 Configuration Management
1 / 16 CS 425/625 Software Engineering Software Configuration Management Guest Speaker Jim Hunt November 17, 2008.
CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
CSC 395 – Software Engineering Lecture 25: SCM –or– Expecting Change From Everything But Vending Machines.
Software Configuration Management (SCM)
Nov. 6, 2003CS WPI1 CS 509 Design of Software Systems Lecture #10 Thursday, Nov. 6, 2003.
Configuration Management
Configuration Management
1 CMPT 275 Software Engineering Revision Control.
Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Software Engineering November 14, 2001 Software.
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.
Software Project Configuration Management
Software Configuration Management (SCM)
Configuration Management Managing Change. Points to Ponder Which is more important?  stability  progress Why is change potentially dangerous?
© 2012 IBM Corporation Rational Insight | Back to Basis Series SCM introduction Chu Shu June 2012.
Software Engineering Modern Approaches
Software Configuration Management
Software Configuration Management
Configuration Management Matti Kuikka CONFIGURATION MANAGEMENT by Matti Kuikka, Unit Manager, Ericsson, Turku, Telecom R&D, Wireless Charging.
Configuration Management (managing change). Starter Questions... Which is more important?  stability  progress Why is change potentially dangerous?
1 Software Development Configuration management. \ 2 Software Configuration  Items that comprise all information produced as part of the software development.
Configuration Management (CM)
Software Configuration Management
1 Introduction to Software Configuration Management CprE 556 Electrical and Computer Engineering Department Iowa State University.
Object-Oriented Analysis & Design Subversion. Contents  Configuration management  The repository  Versioning  Tags  Branches  Subversion 2.
Software Quality Assurance
Jump to first page (C) 1998, Arun Lakhotia 1 Software Configuration Management: Version Control Arun Lakhotia University of Southwestern Louisiana Po Box.
CEN 5011 Ninth Lecture (2 nd part) Nov. 24, 2004 Advance Software Engineering (CEN-5011) Fall 2004 Instructor: Masoud Sadjadi
ClearCase Concepts and Terminology
Software Project Management
Management of Software Project CSM Software Configuration Management (SCM)
Software Configuration Management (SCM) Source: Pressman, R., Software Engineering: A Practitioner ’ s Approach. Boston: McGraw Hill, Inc., 2005; Ghezzi,
1 Experience from Studies of Software Maintenance and Evolution Parastoo Mohagheghi Post doc, NTNU-IDI SEVO Seminar, 16 March 2006.
Version Control System
2136 Gallows Road, Suite F, Dunn Loring, VA Phone: Fax: Business Analyst Training 1 Module 5.2 Rational ClearCase.
Configuration Management
Software Engineering Lecture 9: Configuration Management.
Source Control Repositories for Enabling Team Working Doncho Minkov Telerik Corporation
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 is the process of controlling and monitoring change to work products.  Or  “It is the art of identifying, organizing.
Software Configuration Management -Subversion- RTLAB YuJin Park.
Software Configuration Management (SCM)
Configuration Management
Software Configuration Management CSC-532
Software Configuration Management
Software Project Configuration Management
Chapter 10, Software Configuration Management
Chapter 11: Software Configuration Management
Software Engineering (CSI 321)
Configuration Management
Software Configuration Management
Configuration Management (managing change)
Software Configuration Management
Chapter 11: Software Configuration Management
Chapter 25 – Configuration Management
Software Configuration Management
Presentation transcript:

Software Configuration Management CSC-532 Chandra Shekar Kandi Chandra Shekar Kandi

Outline  Introduction  what is SCM, who are involved, why it is imp? what are the steps?  Basic Concepts of SCM  Configuration Management Activities  Configuration Management Tools  Conclusions  References

Introduction

Definition of SCM: Software configuration management is the discipline of managing the evolution of complex software systems [IEEE STD 1987]. It is also defined as ‘the process of controlling and monitoring change to work products’ [Herbert 1999].

Who are Involved? Who are Involved? Why it is important? Why it is important? What are the steps? What are the steps?

Basic concepts of Configuration Management: Configuration Item: Configuration Item: A piece of software or work product which is subject to change is a configuration item Change Request: It is a formal report that contains the request for modification in a configuration item.

Versions and configurations: A version identifies the state of a particular configuration item or a configuration at a well defined point in time Promotion: A promotion is a version of a configuration item/CM aggregate that has been available to other developers in a project. Release: A release is a version that has been available to the user or the client. Repository: It stores the various releases of a CM item/aggregate. Workspace: It is a library of promotions. Workspace: It is a library of promotions.

Configuration Management Activities Configuration Management Activities Configuration item/CM aggregate identification Configuration item/CM aggregate identification Promotion management Promotion management Release management Release management Branch management Branch management Variant Management Variant Management Change Management Change Management

Configuration Management Tools Revision Control System (RCS ): Revision Control System (RCS ): To change a configuration item, the developer has to lock that item first, preventing other developers from changing the item at the same time. The developer specifies a label for each configuration item. Using this label, developers can check out consistent set of versions by using this label [Herbert 1999].

Concurrent Versions System (CVS):  CVS System lets the groups of people work simultaneously on group of files.  This tool is similar to RCS. In addition it also supports the concept of branch.  This system does not support locking of files.  In CVS, the user would check out the latest version of a file or any of the earlier versions from the repository.

Perforce: Perforce is a commercial replacement for CVS. It also controls a central repository like CVS and RCS. Perforce includes version control, workspace management, atomic change transactions and a powerful branching model to develop and maintain multiple code lines.

Perforce contd.. Files or elements are stored in the central repository called Versioned Object Base (VOB). Files or elements are stored in the central repository called Versioned Object Base (VOB). Different available versions of an element are stored in the VOB Different available versions of an element are stored in the VOB

Clearcase ClearCase is designed to help developers track the files and directories used to create software. ClearCase is designed to help developers track the files and directories used to create software. The files stored in the repository are called elements. The files stored in the repository are called elements. ClearCase supports parallel development which includes isolating the work of a single developer from a small team, creating and developing multiple releases in parallel using different teams, and sharing of code among different teams located at different locations. ClearCase supports parallel development which includes isolating the work of a single developer from a small team, creating and developing multiple releases in parallel using different teams, and sharing of code among different teams located at different locations.

ClearQuest This tool is a change request management application that allows a developer to track and monitor the change requests for a configuration item [Rational 2002]. This tool is a change request management application that allows a developer to track and monitor the change requests for a configuration item [Rational 2002]. ClearQuest maintains its own database which stores all the change requests in the form of records. ClearQuest maintains its own database which stores all the change requests in the form of records. There are various categories of changes that can be done on a product. These changes can be due to addition of new features, detection of faults, activities etc. There are various categories of changes that can be done on a product. These changes can be due to addition of new features, detection of faults, activities etc.

conclusion Configuration management is very crucial for evolving software systems. Change in many large software systems is inevitable. Careful planning is required considering aspects like the components that are likely to be changed, any other subsystems that may have to be changed for the modification of the given system, analysis of cost etc. CM makes sure that these changes do not cause undesired impact on the other subsystems. Configuration management is very crucial for evolving software systems. Change in many large software systems is inevitable. Careful planning is required considering aspects like the components that are likely to be changed, any other subsystems that may have to be changed for the modification of the given system, analysis of cost etc. CM makes sure that these changes do not cause undesired impact on the other subsystems.

Questions?