Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Software Configuration Management


Published on

CS803/Software Quality Assurance
Unit - 1
Topic : Software Configuration Management Part 1

Published in: Education
  • Got a new Iphone 6 in just 7 days completing surveys and offers! Now I'm just a few days away from completing and receiving my samsung tablet! Highly recommended! Definitely the best survey site out there! ■■■
    Are you sure you want to  Yes  No
    Your message goes here
  • Snaptits big-breasted girls snaps only. View pics... ♣♣♣
    Are you sure you want to  Yes  No
    Your message goes here
  • Have you ever heard of taking paid surveys on the internet before? We have one right now that pays $50, and takes less than 10 minutes! If you want to take it, here is your personal link ➤➤
    Are you sure you want to  Yes  No
    Your message goes here
  • I went from getting $3 surveys to $500 surveys every day!! learn more... ■■■
    Are you sure you want to  Yes  No
    Your message goes here
  • Just got my check for $500, Sometimes people don't believe me when I tell them about how much you can make taking paid surveys online... So I took a video of myself actually getting paid $500 for paid surveys to finally set the record straight. I'm not going to leave this video up for long, so check it out now before I take it down! ★★★
    Are you sure you want to  Yes  No
    Your message goes here

Software Configuration Management

  1. 1. Software Quality AssuranceSession 6 – Software configuration Management -Need
  2. 2. Software configuration Management• Changes to requirements drive the design• Design changes affect the code
  3. 3. Need for SCM• Think of these – If fully tested program doesn’t work – A difficult bug that was fixed at great expense suddenly reappears
  4. 4. Without Control• Simultaneous update• Shared code• Common code Problems• Versions Waste enormous amount of time
  5. 5. Control system• To answer the questions – What is my current s/w configuration? – What is its status? – How do I control changes to my configuration? – What changes have been made to s/w? – Do anyone else’s changes affect my software?
  6. 6. S/w Product Nomenclature Modules Components Products SubsystemsSystem Subsystems Products Components Modules
  7. 7. Terms in nomenclature• System – package of all software• Subsystem – Large systems into subsystems• Product – all subsystems contain products• Components – next level of product• Module – lowest level – individual functions
  8. 8. Implementation & building• Implementation – 2 things happen at same time – Modules developed, enhanced, tested & repaired – Modules assembled into components, products, subsystems and systems• Building process – Modules changed to add functions or repair problems
  9. 9. cont..• Tests – Unit test – module – Integration test – interfaces & interdependencies – Function test • Component test • Subsystem test • System test – Regression test
  10. 10. SCM Functions & Responsibilities
  11. 11. Configuration Management Overview Initial Requirementsdevelopment /Design/Use Establish/ Approve Update change Baseline Validate Authorize Implement Validate Baseline change change change Baselines Changes
  12. 12. Basic CM functions• Configuration control• Change management• Revisions• Versions• Deltas• Conditional code
  13. 13. 1. Configuration Control• Task revolves around one official copy of the code• To protect every system revision – to keep a separate official copy of each revision level. – Lot of storage – Code divergence – Coordination• Solution – keep only one official copy with one common library• Approved changes can be permitted – common library be the official source for all common code
  14. 14. 2. Revisions• Numbering system to identify separately – Test – Module – Component – Product – System• Development – cycle of revision , integration & test
  15. 15. 3. Derivations• Ability to determine what has changed Module Module 101 101 Control Program Control Program X Level 116 Level 117 Y Test A Rerun Test A
  16. 16. 3. Derivations(contd…)• Information in derivation record – Revision level of each module – Revision level of the tools used to assemble, compile, link, load, and execute the programs & tests – Test cases used & their revision levels – Test data employed – Files used – s/w & h/w system configuration – Operational procedures – If not a stand-alone test, a record of job streams being executed.
  17. 17. 4. Versions >512 MEML Large MemoryMEM MEMS Standard Memory
  18. 18. 5. Deltas• Versions introduces multiple copies of same code• To handle this – Store base module (MEM) together with the changes required it to make it into MEML – When maintenance is required on MEM, can be made directly – no interference with delta code – Similarly to MEML without affecting MEM
  19. 19. 5. Deltas (contd..) >512>512 MEML Large MemoryMEM MEMS Standard Memory
  20. 20. 6. Conditional Code Billing NY New York Billing Program Program Billing Connecticut CT ProgramNY CT PA Billing PA Pennsylvania Program System Generation
  21. 21. Baselines• Foundation for configuration management• Provides the official standard on which subsequent work is based• After an initial baseline is established & frozen, every change is recorded as a delta until the next baseline is set.
  22. 22. Baseline scope• For code control, baseline contains all project code• The items to be included in implementation phase are: – Current level of each module – Current level of each test case – Current level of tools used(compiler, assembler…) – Current level of any special test /operational data – Current level of macros, libraries & files – Current level of installation / operating procedures
  23. 23. Baseline control• Baseline protection from unauthorized change• To do this approach in two parts – Locking –charge-out,charge-in procedure – Regression testing
  24. 24. CM records• Change requse• Change log• Test report• Problem report• Every report has its own contents• Examble – sample change log contents – Change identification • Change number • Date changed – Implementation responsibility • Name, address, phone, organization – Implementation • Source & object code • Documentation • Change dependencies • Tests run & results
  25. 25. CM Responsibilities• Configuration manager• Module ownership• Change Control Board (CCB)
  26. 26. 1. Configuration Manager• Responsibilities – Develop, document & distribute SCM procedures – Establish system baseline including backup provisions – Ensure that no unauthorized changes made to baseline – Ensure all changes are recorded – Ensure all baseline changes are regression tested – Provide the focal point for exception resolution
  27. 27. 2. Module Ownership• Responsibilities – Know & understand the module design – Provide advice to everyone who works on or interfaces with the module – Serve as technical control point for all module modifications – Ensure module integrity by reviewing all changes & conducting periodic regression tests.
  28. 28. 3. Change Control Board• CCB needs the following information on each proposed change: – Size – Alternatives – Complexity – Schedule – Impact – Cost – Severity – Relationship to other changes – Test – Resources – System impact – Benefits – Politics – Change maturity
  29. 29. 3. CCB(contd..)• Additional information needed prior to release: – Final source &/ object code for the change – Final documentation changes – Evidence of successful inspection & test of code & documentation