Presentation is loading. Please wait.

Presentation is loading. Please wait.

TCS2411 Software Engineering1 Software Configuration Management “The only constant is change...”

Similar presentations


Presentation on theme: "TCS2411 Software Engineering1 Software Configuration Management “The only constant is change...”"— Presentation transcript:

1

2 TCS2411 Software Engineering1 Software Configuration Management “The only constant is change...”

3 TCS2411 Software Engineering2 Lecture Objectives zTo understand the activities in managing software changes zTo identify the software configuration items that needs to be managed zTo describe the different tasks in software configuration management

4 TCS2411 Software Engineering3 What is S/w Configuration Management? zSCM is the discipline for systematically controlling the changes that take place during development zUmbrella activity that is applied throughout SE process zSCM is easier at the start of development and gets more complex towards the end

5 TCS2411 Software Engineering4 Sources of Change zNew business or market conditions zNew customer needs zReorganisation and/or business downsizing zBudgetary or scheduling constraints

6 TCS2411 Software Engineering5 Main Elements of SCM zIdentification yWhat are the configuration items? zControl yHow changes should be controlled? zStatus Accounting yWhat changes have been made? zAuditing yIs the system being built to satisfy the needs?

7 TCS2411 Software Engineering6 Software Configuration zComputer programs ySource code yExecutable code zDocuments that describe the computer programs yFor technical staff yFor users zData yWithin the program and external to it

8 TCS2411 Software Engineering7 Software Configuration Item zA document or an artifact that is explicitly placed under configuration control and that can be regarded as a basic unit for modification zExamples: yrequirement documents ydesign document ycode of a module ytest plan

9 TCS2411 Software Engineering8 Baselines Definition IEEE definition: “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”

10 TCS2411 Software Engineering9 Baselines zA baseline is essentially a set of SCIs zThe items have been reviewed, corrected, and approved zBaselines should be used as reference point zBaselines should only be changed through formal procedures zCareful definition and control of different baselines should be done

11 TCS2411 Software Engineering10 Examples of Baselines zFunctional baseline (requirements) zDesign baseline zProduct baseline (developed system)

12 TCS2411 Software Engineering11 Configuration Control zVersion control - procedures and tools to manage different versions of configuration objects zChange control - procedures and tools to provide a mechanism for the control of changes

13 TCS2411 Software Engineering12 Version Control zProcess of identifying and keeping track of different versions and releases of a system zProcedures to ensure that different versions of a system may be retrieved when required and not accidentally changed zVersion management is almost always supported by automated tools

14 TCS2411 Software Engineering13 Evolution Graph Obj 1.0 Obj 1.1.1 Obj 1.1.2 Obj 1.1 Obj 1.2 Obj 2.0 Obj 1.3 Obj 1.4 Obj 2.1

15 TCS2411 Software Engineering14 Versions, releases & variants zVersion - an instance of a system that differs from other instances ydifferent functionality yperformance yrepair of system faults zRelease - version that is distributed to customers zVariant - sometimes used when differences are small

16 TCS2411 Software Engineering15 Change Control zFocuses on managing changes to the different forms of the SCIs zEngineering change proposal - basic document used for defining & requesting for a change. zConfiguration Control Board (CCB) is responsible for configuration management zCCB evaluate proposal & approve/reject it

17 TCS2411 Software Engineering16 Change Control Process Need for change Other SCM tasks Change request generated Change report generated Place on queue for change ECO generated Requestor is informed Evaluation CCA decision Reject Approve Technical merits, Side effects Overall impact, Project cost

18 TCS2411 Software Engineering17 Engineering Change Proposal zproposed change zreason(s) zbaselines & SCIs that are affected zcost zschedule impacts zprocedures for the change

19 TCS2411 Software Engineering18 Engineering Change Order zChange description zConstraints zAudit review criteria

20 TCS2411 Software Engineering19 Change Process zObject to be changed is “checked out” zChange is made zAppropriate SQA activities applied zObject is “checked in” to the database zVersion control mechanisms applied for next version

21 TCS2411 Software Engineering20 Change Process Diagram Software Engineer Project Database Check-out Check-in Access control Configuration object (baseline version) Configuration object (baseline version) Ownership info lock unlock Configuration object (extracted version) Configuration object (modified version) Audit info

22 TCS2411 Software Engineering21 Status Accounting/Reporting zKeeps record of how the system evolves and what is its current status (administrative nature) zCan be complex due to the existence of executable and non-executable forms

23 TCS2411 Software Engineering22 Status Reporting Process Configuration Identification Configuration Audit Configuration Control Status Reporting CSR Report CSR Database SCIs Changes Deficiencies

24 TCS2411 Software Engineering23 Status Accounting Tasks zRecord baseline establishment time zRecord when SCI came into being zInformation about each SCI zEngineering change proposal status zStatus of the approved changes

25 TCS2411 Software Engineering24 Configuration Audit zConcerned with determining how accurately the current software system implements the system defined in the baseline & requirements document zAlso concerned with increasing the visibility and traceability of the software zAlso establish a new baseline

26 TCS2411 Software Engineering25 Auditing zHow do we know a change is properly implemented? yFormal technical reviews - assess the SCI to determine consistency with other SCIs ySoftware configuration audit xSCI changes made? xFTR conducted? xSE standards followed? xSCM procedures followed & updates properly done? xRelated SCIs updated?

27 TCS2411 Software Engineering26 References z“Software Engineering: A Practitioner’s Approach” 5th Ed. by Roger S. Pressman, Mc-Graw-Hill, 2001 z“Software Engineering” by Ian Sommerville, Addison-Wesley, 2001


Download ppt "TCS2411 Software Engineering1 Software Configuration Management “The only constant is change...”"

Similar presentations


Ads by Google