1
play

1 Baselines Version control Baseline: A specification or a - PDF document

CONFIGURATION MANAGEMENT WHY CM? Today we talk about Software Configuration Multiple people are working on changing software Management (SCM for short): More than one version of the software needs to be - What? supported: - Why?


  1. CONFIGURATION MANAGEMENT WHY CM? • Today we talk about Software Configuration • Multiple people are working on changing software Management (SCM for short): • More than one version of the software needs to be - What? supported: - Why? – Different releases - How? – Different installations with different functionalities – Development versions • Software needs to run on different operating systems and different hardware 11.10.2004 Software Engineering 2004 1 11.10.2004 Software Engineering 2004 2 Jyrki Nummenmaa Jyrki Nummenmaa WHAT IS SCM? SCM Activities • Configuration management is a way to manage • CM data management evolving software • Version management • Configuration management is a set of disciplines - Release versions and techniques for initiating, evaluating, and - Development versions controlling change to software products. • Concurrent development management • Configuration management covers the lifecycle of • Change management software development 11.10.2004 Software Engineering 2004 3 11.10.2004 Software Engineering 2004 4 Jyrki Nummenmaa Jyrki Nummenmaa SCM Items Managing SCM Items • Design documents • There may easily be thousands of SCM items • Code files • A naming scheme should be introduced to identify • Test data these • Test drivers • The hierarchical arrangement of software project • Manuals items should be supported • System configuration data • Should all CM items be managed • Etc. • When to start management for an item? • A meaningful combination of above, meant to be – If you start too early, you get bureaucracy. treated as a single entity – If you start too late, you get chaos. • Also hardware items can be considered CM Items 11.10.2004 Software Engineering 2004 5 11.10.2004 Software Engineering 2004 6 Jyrki Nummenmaa Jyrki Nummenmaa 1

  2. Baselines Version control • Baseline: A specification or a product, which is • Procedures and tools to manage different versions formally reviewed and agreed on, and which can of configuration objects only be changed through formal change • Versions may not always be created in sequential procedures order, e.g. you create 1.0 -> 1.1 -> 1.2 -> 2.0 • Before an item becomes a baseline, changes can and then you need to create 1.3 for some be made quickly and informally. customers who can not run 2.0 but need some changes or improvements. • Baseline is a kind of a milestone in software development • With big software, you may e.g have 4.0 as the official current version. You work on 5.0 to release • Baseline typically creates new versions in SCIs. it as the next official version, but you have already started to create 6.0, as it takes so long to get it ready. 11.10.2004 Software Engineering 2004 7 11.10.2004 Software Engineering 2004 8 Jyrki Nummenmaa Jyrki Nummenmaa Change Control / 1 Change Control / 2 1. Need for change is recognised 6. Change request is queued for action and and engineering change order (technical descr) is made 2. Someone (like a user) makes a change request 7. Assign individuals to make changes to configuration 3. Developer evaluates objects 4. Change report is generated 8. ”Check out” configuration items from project 5. Change control authority decides repository - Change is denied -> User is informed 9. Make the change - Change is accepted -> go to next slide :) 10. Review (audit) the change 11. ”Check in” the changed configuration items 12. Establish a baseline for testing the change go to next slide :) 11.10.2004 Software Engineering 2004 9 11.10.2004 Software Engineering 2004 10 Jyrki Nummenmaa Jyrki Nummenmaa Change Control / 3 SCM Audit / 1 13. Perform quality assurance (QA) and testing The following questions should be answered activities 1. Has the change specified in the ECO been made? 14. ”Promote” changes for inclusionin next release Have any additional modifications been incorporated? 15. Rebuild appropriate version of software 2. Has formal technical review been conducted to 16. Review (audit) the change to all configuration assess technical correctness? items 3. Has the software process been followed and SE 17. Include changes in new version standards been applied? 18. Distribute the new version 4. Has the change been appropriately recorded in the SCIs? 11.10.2004 Software Engineering 2004 11 11.10.2004 Software Engineering 2004 12 Jyrki Nummenmaa Jyrki Nummenmaa 2

  3. SCM Audit / 2 More questions to be answered: 5. Have Software Configuration Management procedures for the change been followed? 6. Have all related SCIs been properly updated? 11.10.2004 Software Engineering 2004 13 Jyrki Nummenmaa 3

Recommend


More recommend