Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ch-10 Configuration Management. Introduction A software project produces a number of items during its execution including various documents, manuals,

Similar presentations


Presentation on theme: "Ch-10 Configuration Management. Introduction A software project produces a number of items during its execution including various documents, manuals,"— Presentation transcript:

1 Ch-10 Configuration Management

2 Introduction A software project produces a number of items during its execution including various documents, manuals, programs, data. All these items can be changed. It is essential to manage and control the changes. Configuration management is also known as software configuration management. It is the aspect of project management that focuses exclusively on systematically controlling the changes that occur during the project It consists of set of activities performed to identify and organize software items and to control modification It is also needed to satisfy one of the basic objectives of delivering a high quality software

3 Configuration management concepts A primary objective of CM is to manage the evolving configuration of the software system Program’s evolution takes it through many steps Consider the figure of life cycle of an item

4 Life cycle of an item private Ready for acceptance Testing baseline Ready for unit testing production Programmer satisfied Defects for unit testing Unit testing complete defects in system testing System testing complete Defects in acceptance testing release On successful release Ready for system Testing

5 Give States of programs This information is needed to decide when to start testing or when to release the software 1. Give latest version of a program 2. Handle concurrent update requests 3. Undo a program change 4. Prevent unauthorized changes or deletions 5. Provide traceability between requirement change request and program changes 6. Undo a requirement change 7. Show associated changes 8. Gather all sources, documents and other information for the current system

6 Continue… The main purpose of CM is to provide various mechanisms that can support the functionality needed to handle the type of scenarios discussed above The mechanisms commonly used to provide the necessary functionality include the following: 1. Naming conventions and organization of files 2. version control 3. Change request traceability 4. Access control 5. Reconciliation procedures 6. Modification log in programs

7 Dependence graph Get state Undo a Program change Prevent unauthorized changes Associated changes Naming & Maintenance state Version controlAccess control Change traceability reconciliation Concurrent updates Undo requirement change Modification log

8 Configuration management Process The CM process defines the sequence of activities that need to be performed in support of the CM mechanisms. At infosys, the main stages in the CM process are as follows: 1. Plan and set up configuration management 2. Perform configuration control 3. Monitor the status of configuration items

9 Plan and Set Up Configuration Management Planning for configuration management involves identifying the configuration items and specifying the procedures to be used for controlling and implementing changes to these configuration items Identifying configuration items is a fundamental activity in any type of CM If team members do not have a clear idea about the items under the control of CM, it will be much more difficult to implement a desired change Examples of configuration items are SRS, design documents, source code, test plans, test scripts, test procedures etc During planning, the types of items are identified but detailed list is not prepared

10 Continue… To facilitate proper naming of configuration items, the naming conventions are decided Version numbering must also be planned. When a configuration item is changed, the old item is not replaced with a new copy: instead the old copy is maintained and a new one is created. This approach results in multiple versioning CM process must control the different states of program and transition between those states One way of collecting items in different states is to create separate directories All items in a certain state reside in directory for that state When the state of program changes, that program is moved from the directory for old state to the directory for new state The planning is done by project leader and the configuration controller (CC)

11 Continue… The activities in this stage include the following: 1. Identify the configuration items 2. Define the naming and numbering scheme for the same 3. Define directory structure 4. Define access restrictions 5. Define change control procedures 6. Identify and define the responsibility and authority for CC/CCB 7. Define a method for tracking the status of configuration items 8. Define back up procedure 9. Define a reconciliation procedure 10. Define release procedure 11. Define an archival procedure 12. Identify points at which the configuration items will be moved to the baseline

12 Continue… The output of this phase is CM plan CC is responsible for the implementation of the CM activities within the project

13 Perform Configuration Control There are two main Configuration control activities 1. Deals with managing the state transitions of programs 2. Deals with managing the change request that must be implemented State transition management involves moving the items from one directory to another when the state changes, creating various versions when changes are made and ensuring that each program goes through its life cycle and reaches the baseline  Once all the items are in baseline, the software is ready for use  Many CM tools employ the check-in/out procedure for controlling the access and handling version control  A program is considered to be in “controlled environment” when it is in any state in which others can use it. Once it is in this environment it can’t be modified without proper authorization  Checking out implies making a copy of the item, without destroying the earlier one and making a note that item has been

14 Continue… checked out so that multiple people do not check an item out for modification The following activities are a part of implementing a change request: 1. Accept the change request 2. Set up tracking mechanism 3. check out configuration items that needs to be changed and perform the changes 4. Check in configuration items 5. Take the item through its life cycle

15 Status monitoring and audits It is important to represent the state of each item as state can lead to problems For eg if the program has not been unit tested but it is moved to the state “ready for release” then it can cause problems Whenever a mechanism based on directory structure is used to represent the state of program, mistakes are possible This requires that the programs be moved properly from one directory to another when their state changes and this change of state be reflected. In addition to checking the status of items, the status of change requests must be checked Finally a configuration audit may be performed. The main focus is to ensure that the CM process is followed

16 Document control In any organization, documents have to be created, distributed and maintained The two types of documents that needs to be controlled: 1. Process definition 2. Project documents Once created documents have to be reviewed and authorized Once a document is reviewed and approved, it may be baselined Even after baseline documents may alter There are certain rules for controlling changes to documents: 1. Any change that affects the form, funtion of the document is considered a major change otherwise it is minor 2. Approval of changes is performed by the same function that performs the original approval 3. The version number of the next issue is determined by the extent

17 Continue… Of changes 4. A revision list is maintained in document itself, giving history of changes made to the document Document numbering scheme is also recommended so that each document has unique reference number To ensure consistency, documentation have standards A documentation standard is a set of guidelines specifying not only the document structure, but also the format of pages, titles, use of font size, styles, section numbering etc. For eg Infosys standards require that document should include following: 1. Title page 2. Revision list 3. Table of contents 4. Main body of document 5. references

18 Continue… Appendices Index Document circulation requirements fall in one of the following three categories: 1. Proprietary: circulation is restricted to a defined set of individuals. a master is maintained, with a set of copies remaining under restricted distribution 2. Limited: circulation is restricted to the group of individuals whose duties are directly related to the documents 3. Unlimited: these documents are for general circulation Copies of any type of document could be either controlled or uncontrolled. Controlled copies are issued to limited set of people Uncontrolled copies for a specific reason and are expected to be destroyed after their purpose is fulfilled


Download ppt "Ch-10 Configuration Management. Introduction A software project produces a number of items during its execution including various documents, manuals,"

Similar presentations


Ads by Google