+ All Categories

SCM PPT

Date post: 20-Nov-2014
Category:
Upload: venkatesh-samineni
View: 1,208 times
Download: 0 times
Share this document with a friend
Description:
PPT on SCM
Popular Tags:
19
1 Software Configuration Management Venkatesh Samineni
Transcript
Page 1: SCM PPT

1

Software Configuration Management

Venkatesh Samineni

Page 2: SCM PPT

2

Definition of SCM

• Software configuration management is the discipline of managing the evolution of complex software systems [IEEE STD 1987].

• Software configuration management is the process of identifying, organizing & controlling changes to the software during development & maintenance. SCM Operates throughout software development lifecycle (SDLC). From the software developer's perspective, SCM facilitates the development & change implementation activities.

Venkatesh Samineni

Page 3: SCM PPT

The common features in a SCM tool are: 

* Support for controlling all types of file * Managing changes * Supporting branching & merging * Identifying & recreating releases * Providing a project view

Importance of SCM in SDLC SCM tools provide project managers with total control of the entire process of software development. It can track changes made to the code by developers and communicate status of documents and code as well as changes that have been made to them. 

3Venkatesh Samineni

Page 4: SCM PPT

4

Basic concepts of Configuration Management:

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.

Venkatesh Samineni

Page 5: SCM PPT

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.

5Venkatesh Samineni

Page 6: SCM PPT

Configuration Management Activities

• Configuration item/CM aggregate identification

• Promotion management

• Release management • Branch management

• Variant Management

• Change Management

6Venkatesh Samineni

Page 7: SCM PPT

• Configuration item identification – modeling of the system as a set of evolving components

• Promotion management– is the creation of versions for other developers

• Release management– is the creation of versions for the clients and users

• Change management – is the handling, approval and tracking of change requests

• Branch management– is the management of concurrent development

• Variant management– is the management of versions intended to coexist

7Venkatesh Samineni

Page 8: SCM PPT

Configuration Management Roles

• Configuration Manager

– Responsible for identifying configuration items. The configuration manager can also be responsible for defining the procedures for creating promotions and releases

• Change control board member

– Responsible for approving or rejecting change requests

• Developer

– Creates promotions triggered by change requests or the normal activities of development. The developer checks in changes and resolves conflicts

• Auditor

– Responsible for the selection and evaluation of promotions for release and for ensuring the consistency and completeness of this release

8Venkatesh Samineni

Page 9: SCM PPT

 Goals of SCM

• Configuration identification - Identifying configurations, configuration items and baselines.

• Configuration control - Implementing a controlled change process. This is usually achieved by setting up a change control board whose primary function is to approve or reject all change requests that are sent against any baseline.

• Configuration status accounting - Recording and reporting all the necessary information on the status of the development process.

9Venkatesh Samineni

Page 10: SCM PPT

• Configuration auditing - Ensuring that configurations contain all

their intended parts and are sound with respect to their specifying documents, including requirements, architectural specifications and user manuals.

• Build management - Managing the process and tools used for builds.

• Process management - Ensuring adherence to the organization's development process.

• Environment management - Managing the software and hardware that host the system.

• Teamwork - Facilitate team interactions related to the process.

• Defect tracking - Making sure every defect has traceability back to the source.

10Venkatesh Samineni

Page 11: SCM PPT

SDLC Life cycle

11Venkatesh Samineni

Page 12: SCM PPT

Configuration Management Tools

• SVN

• Revision Control System (RCS )

• Concurrent Versions System (CVS)

• Perforce

• Clearcase

• TFS

12Venkatesh Samineni

Page 13: SCM PPT

Topics going to be covered

• Version Controlling tools:

• SVN (Subversion), CVS

• Project Compiling scripts and Automation:

• ANT, NANT, VB Script, Cruise Control

• Software Packaging:

• NSIS – Nullsoft Scriptable Install System

• Bug Tracking:

• Mantis, Jeera13Venkatesh Samineni

Page 14: SCM PPT

SVN

• Apache Subversion (often abbreviated SVN, after the command name svn) is a software versioning and revision control system distributed under an open source license. Developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation. Its goal is to be a mostly compatible successor to the widely used Concurrent Versions System (CVS).

14Venkatesh Samineni

Page 15: SCM PPT

Subversion's architecture

15Venkatesh Samineni

Page 16: SCM PPT

Nant & Ant

Nant NAnt is a free and open source software tool for automating software build processes. It is similar to Apache Ant, but targeted at the .NET environment rather than Java. NAnt requires one of the .NET frameworks (1.0, 1.1, 2.0, 3.5 or 4.0) or the third party Mono platform.

AntApache Ant is a software tool for automating software build processes. It is similar to Make but is implemented using the Java language, requires the Java platform, and is best suited to building Java

16Venkatesh Samineni

Page 17: SCM PPT

• Nullsoft Scriptable Install System (NSIS) is a script-driven installation system for Microsoft Windows with minimal overhead backed by Nullsoft, the creators of Winamp. NSIS has risen to popularity as a widely used alternative to commercial and proprietary products like InstallShield.

• * Even Google Using NSIS for Installers (.exe)

17Venkatesh Samineni

Page 18: SCM PPT

• Mantis Bug Tracker is a free and open source, web-based bug tracking system released under the terms of the GNU General Public License version 2. The most common use of MantisBT is to track software defects. However, MantisBT is often configured by users to serve as a more generic issue tracking system and project management tool.

18Venkatesh Samineni

Page 19: SCM PPT

THANK YOU

19Venkatesh Samineni


Recommended