P. 1
Software Configuration Management

Software Configuration Management

|Views: 25|Likes:

More info:

Published by: Kishore Kumar RaviChandran on Apr 14, 2012
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less






By, Deepak Ramana.S B.Tech -IT

• Important process for Quality Software .

• Identifying,Organising and Controlling changes
throughout the lifecycle of computer software. • Improve quality and Reduce Error. • Applied throughout the process. • Term configuration denotes the versions and compatibility of the software and the system.

• Fashion and new trend. • Different functionality at Management domain.Factors Affecting the Lifetime of Software • Change in the User requirement. • Schemas of data change. • Change in Hardware Configuration. Data and User requirement Hardware Current Trend .

Version control is an essential process in SCM. Version Management Capability. Definition for Version Control: ( 2 Marks) Combines Procedures and Tools to manage different versions of configuration objects – Created during software process. • * Versions of the software is a basic method to do ‘SCM’. • * Changes made are to be documented. . • * For solid Software Engineering.Repository. Implements or directly integrates Project Database. Make Facility. • * Managing the changes in evolving software.‘SCM’ a Essential Factor • SCM provides a market strategy.

”  Baseline is completed software line used to make changes in the software and improvement in the software developed.12-1990) defines baseline as “ A Specification or product that has been formally reviewed and agreed upon. these versions contain a same and common baseline but have some additional features. and that can be changed only through formal change control procedures.  Eg: SDK. • *“Baseline is a software configuration management concept that helps us to control change without impeding justifiable change”.Baseline for SCM • *A basic standard that maintains the controls for the SCM is called a baseline.  Different versions of a software are released every now and then. • *IEEE Standard (no.:610.BADA. that thereafter serves as a basis for further development. .  Certain Os like Android and certain mobile manufacturers like Samsung have made their apps “Open Resource” have made people to improve their softwares.

• *Baseline is a milestone in the development of the software. so Baseline is called a milestone. • *Every time a software is approved for delivery it replaces the previous software baseline. Software created Baseline Created Improvement process Documentation Updated Software New Baseline Created …………… Process keeps on going .

• * Errors are found and corrected. • Ex: When you are asked to accept to “terms and conditions” everytime you update your software is a kind of documentation. • Documentation is done in the baseline creation process that helps the programmer to create a strong baseline for the next updation. • *Every time the changes to be made in the product must be intimated to the repository (database) and the approval of the change is then given finally the product gets approval. . approval of the product is done and design model becomes baseline.• *Baseline is a shared Project Data base and the integrity of the datas is maintained for a good baseline. as soon as the review is over .

tasks SCI Modification Formal technical reviews New SCI Approval for new SCI Storage of SCI Extraction of SCI • Block diagram for the process of creation of a baseline and SCI(Software Configuration Items Identification) • SCI: A SCI is a information that is created as part of the software engg. Dot net framework. Java applet.(2marks) • Ex: A C++ compiler.Software Engg. . process that is nothing but a single section of a large specification or one test case in larger basis.

. • Documents describing the program . • During the change process there may be new programmers who require information about the software.SCI – in detail • SCI is generally a basic information about the software.Technical Manual.File structure. . this is provided by the SCI • * SCI contains • Computer Programs .Source Programs. .c#) but programmers use platforms of various kind.External Data . • There are several programming languages (like c++. .Program Components or functions.User Manual. • Data .Executable Programs. .

Elements of Configuration Management System • * Contains procedures and defines standards.  *Construction Elements: a set of tools that automate construction of ensuring proper set of validated components. . • CMS Component Elements Process Elements Construction Elements Human Elements  *Component elements: set of tools coupled within file mangmt system.  *Human Elements: Implements effective process and tools.  *Process Elements: a collection of procedures and tasks that define an effective approach.

Version Control .Process • Process involves steps as follows: .Status Reporting .Identification .SCM.Change Control .Configuration Audit .

.Name and Description .Attributes and reference pointer to the object in the database. • * Software configuration item can be organized to form a database or repository of configuring objects or basic objects. Identification Creating a Repository Finding various attributes Storing and managing repository .Relationships to other configuration objects. • * Configuration objects consists of .Identification • * Each SCI must be named and identified as objects.

 Version management Capability stores all versions of the process. Version Management Capability.Repository. Make Facility  Repository contains all relevant details. Combines Procedures and Tools to manage different versions of configuration objects – Created during software process. Implements or directly integrates Project Database.Version Control • Set of tools that helps managing different versions of the software process. .  Make facility contains all details for further improvement of the process( More higher Versions).

Collection of changes Suggestions are Validated Version Improved Software is delivered Documentation . • Every change is notified and recorded.• Issues tracking or bug tracking enables for improvement of software in the next version. • All changes made by the person and the number of versions that is improved is duly collected by the repository.

Change Control • Changes are suggested. validated by CCA( change control authority). Need for change Request Evaluation Change Report Distribute version Rebuild Version ECO and find new objects yes CCA approval no Intimation of denial Version Control System(cvs) ECO.Engg. finally several procedures and process changes are made. Change Order .

Configuration Audit • Similar to formal technical reviews. ECO order Configurati on Audit begins ECO satisfaction Audition Formal technical review Software process Rules Version control Repository SCI updating updation changes .

Status Reporting • Also called as “Status accounting” CSR – configuration status reporting Change / Query SCI assigned for updation CSR entry Changes made CSR entry CCA issues ECO Configuration audit CSR report Database/ Repository .

SCM Repository( 8marks) • Set of methods and data structures that allow a software team to manage changes in software. SCI repository Extraction of data and details Versions Software Queries and change request Software Team New Version Process requests and queries . • All details of SCM is stored in a database or repository. some of the items that are stored in a repository are SCI and Version changes.

Data integrity .• Functions of SCM repository: .Data integration .Tool integration .Documentation Standardization Data integrity: Data entry Validation Repository Information sharing: Repository Sharing Routine Data Data requested Resources .Methodology Enforcement .Information sharing .

. from repository. . • Documentation Standardization: . .Relationship in Repository.Software documents require info. . Date of ECO.Data access tools • Data Integration: . Ex: Date of reporting.Build the contents of Repository. • Tool Integration .• Methodology Enforcement: .Elaborates various objects.Function defines ER model.Used for integrating data with other Repository. .Repository documents are maintained.

exe files. Release Management . . • Ex: Direct 9x files.dll files. Installation software package with necessary files and documents Ex: .Documentation .Data files . • Help files and various attachments for the software .Installations program . .Configuration release . . Configurations files for both software and hardware • Electronics copies of the manuals..

Network and communications. .Process of predicting resources required for software developments. time .Hardware and Software .Effort. .Salary .Social and documentation. .2 • BS 7738 -1 • IEEE 1042 – 1987 • ISO/IEC TR 18018: 2010 • Software cost estimation . .Travel or technology training.SCM Standards • AECL CE – 1001 – STD REV.

configuration management and training processes. Software engineering includes software requirements definition.• AECL CE – 1001 – STD REV. .2: *This standard applies to the software engineering of safety critical software used in real-time protective systems in nuclear generating stations. code verification. management of software engg. code implementation. Projects is described. the application of Configuration Management (CM). • IEEE 1042 – 1987 *In this standard. requirements verification. • ISO/IEC TR 18018: 2010 Used during data acquisition. planning. • BS 7738 -1: This is specification for information systems products using structured systems analysis and design method. Evaluation and selection of CM tools. software design. design verification. hazards analysis. reliability qualification. testing. *Detailed examples of plans are provided.

• Estimation by analogy • Parkinson’s law • Pricing to win.Up . • Top – Down • Bottom . • Expert judgment.Estimations Techniques • Algorithmic cost modeling.

People are ready any product of apple at any cost. • Estimation by analogy: Comparing with project similar to product developed (same application domain) • Parkinson’s law: Cost is determined by available resources. • Pricing to win: Project cost is decided by brand name. customer is ready to buy product with any cost.• Algorithmic Cost Modeling: Cost Estimation is based on size of software. • Ex: Apple. • Two approaches for cost estimation: • Top down • Bottom-up .

CLR . -> Perens' principles Ex: Android Integrated Workbenches Automated with set of tools Complex and Expensive Ex: XML. Ex: Bugzilla is a bug tracking system developed by Mozilla Firefox to ask direct suggestions from the users and improve the product.Case Tools (4 marks) • Open Workbenches • Integrated Workbenches -> Open workbenches Open source tools People are encouraged to develop their own simulation and provide to the developer.

(12) .FAQs in this topic What are the tasks in SCM process? Explain each of them. (16) What is a repository in SCM? Explain on the baseline of a software development. Write short notes on ‘Case tools’ and SCM Standards. (16) Write short notes on i) SCM (12) ii) Software Cost Estimation.

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->