Presentation on theme: "Configuration and Change Management"— Presentation transcript:
1Configuration and Change Management Managing the products of system change
2Topics covered Configuration management fundamentals Software and documentation version controlConfiguration management planning (SCMP)Change managementSystem buildingCASE tools for configuration management
3Configuration Management New versions of software systems are created as they changeFor different machines/OSOffering different functionalityTailored for particular user requirementsConfiguration management is concerned with managing evolving software systemsSystem change is a team activityCM aims to control the costs and effort involved in making changes to a system
4Configuration Items (CI’s) Units tracked officiallydown to the smallest unit worth trackingincludes most official documentsPayrollvPayrollvPayrollvS6A1C4D5E3Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
5Configuration Items (CI’s) Units tracked officiallydown to the smallest unit worth trackingincludes most official documentsModule updatedPayrollvPayrollvPayrollvS6S7A1A1C4C4D5D5E3E3Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
6Configuration Items (CI’s) Units tracked officiallydown to the smallest unit worth trackingincludes most official documentsModule addedPayrollvPayrollvPayrollvS6S7S7A1A1A1C4C4C4D5D5D5E3E3E3F1Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
7Configuration Management Requirements Locking - to prevent more than one person working on a CI at one timeCheck out - authorizationCheck-in procedureAuthorizationMay inforce testingHistorical record of prior groupings of consistent CI’sFor a list of CM tools:on_Management/Tools/Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.Graphics reproduced with permission from Corel.
9CM StandardsCM should always be based on a set of standards which are applied within an organisationStandards should define how items are identified, how changes are controlled and how new versions are managedStandards may be based on external CM standards (e.g. IEEE standard for CM)Existing standards are based on a waterfall process model - new standards are needed for evolutionary developmentFor further info see
10IEEE 828-1990 SCMP Table of Contents 3.2 Configuration controlRequesting changesEvaluating changesApproving or dis-approving changesImplementingchanges3.3 Configuration statusaccounting3.4 Configuration audits &reviews3.5 Interface control3.6 Subcontractor /vendor control4. SCM schedules5. SCM resources6. SCM plan maintenance1. Introduction2. SCM management2.1 Organization2.2 SCM responsibilities2.3 Applicable policies,directives & procedures3. SCM activities3.1 ConfigurationidentificationIdentifying configu-ration itemsNaming configu-Acquiring configu-Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
11Plan Configuration Management One way to ...1. Roughly sketch out your SCMPDetermine procedures for making changesOmit tool references unless already identified oneSee the case study for an example2. Specify what you need from a CM toolFor class use, maybe only locking and backup3. Evaluate affordable tools against your needs and budgetCommercial tools are in wide use (here is a list)For class use, try free document storage web sites; try simple method of checking out e.g. renaming5. Finalize your SCMPAdapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude (Wiley 2001), with permission.
12Change ManagementSoftware systems are subject to continual change requestsFrom usersFrom developersFrom market forcesChange management is concerned with keeping managing of these changes and ensuring that they are implemented in the most cost-effective way
17Change Request Form CRF form layout is part of the CM planning process Records from the requestor:change requirement (description)requestor’s namereason for changeUrgencyRecords from the development team:evaluation of change requirementassessment / impact analysis – technical/opertaional feasibilitychange cost estimaterecommendation
19Assessment portion of Change Request Form Technical impact on design, code, testing, etcRisks associated with changeExternal impact on users and operatorsEstimateEffort and resourcesCostsSchedule
20Change Tracking Tools Differs from CM tools like CVS A major problem in change management is tracking change statusChange tracking tools keep track of the status of each change request and automatically ensure that change requests are sent to the right people at the right time.Integrated with systems allowing electronic change request distribution
21Change Control BoardChanges should be reviewed by an external group who decide whether or not they are cost-effective from a strategic and organizational viewpoint rather than a technical viewpointShould be independent of project responsible for system. The group is sometimes called a change control boardMay include representatives from client and contractor staff
22Derivation HistoryRecord of changes applied to a document or code componentShould record, in outline, the change made, the rationale for the change, who made the change and when it was implementedMay be included as a comment in code. If a standard prologue style is used for the derivation history, tools can process this automatically
24Change Request Form - P1Project: Registration System Number: 0023Change requester: DLS Date: 3/28/2005Description: We would like the system to be played by more than one user at a time over a network.Change priority: high
25Project: Registration System Number: 0023 Change Assessment: Change Request Form - P2Project: Registration System Number: 0023Change Assessment:Analyst: Analysis Date:Technical impact on design, components, code, testing, etcRisks associated with changeExternal impact on users and operatorsEffect on resourcesEffect on costsEffect on schedule
26ONE WAY … Change Request Form - P2 Project: Registration System Number: 0023Change Assessment:Analyst: Analysis Date:Technical impact on design, components, code, testing, etcNetwork centric change in architecture from single system archPlayer against playerMulti-tasking (threaded) code for concurrent execution of player pathsRisks associated with changeDelay in response time of gameCurrently lack human resources to affect change (can we get them)Server crash means everyone is downPotential for players cheatingExternal impact on users and operatorsWill now need a networkWill need an administration personGame is potentially more complex due to player-player interactions
27ONE WAY … Change Request Form - P2 Project: Registration System Number: 0023Change Assessment:Analyst: Analysis Date:Effect on develop resourcesHumanA developer with network computing expertisePhysicalA server (for at least testing)A system for simulating multiple usersA DBMS will be needed (for the game and for financial account)Network hardware / connectionAddition infrastructure for added human and physical resourcesEffect on costsHardware = $5000Human = $60,000*1.30 / 220 * 10 mandays = $3500Training/Travel = $2500Infrastructure = $2000Project management overhead ~ 10% of $13,000 = $1300Effect on scheduleApproximately 1 month