Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSC 395 – Software Engineering Lecture 25: SCM –or– Expecting Change From Everything But Vending Machines.

Similar presentations


Presentation on theme: "CSC 395 – Software Engineering Lecture 25: SCM –or– Expecting Change From Everything But Vending Machines."— Presentation transcript:

1 CSC 395 – Software Engineering Lecture 25: SCM –or– Expecting Change From Everything But Vending Machines

2 In This Lecture Discuss last night’s hack on megahertz Departmental instructions for course project Examine what SCM is

3 Software Configuration Mgmt. Art of identifying, organizing, & controlling modifications to the software being developed - Babich Occurs throughout engineering process Prevents runaway changes After deliverable approved, assume it correct But changes are sometimes needed SCM develops processes to control and manage these changes

4 The “First Law” No matter where you are in the system life cycle, the system will change, and the desire to change it will persist throughout the life cycle. -- Bersoff, et al., 1980

5 What Are These Changes? Changes in business requirements Changes in technical requirements data otherdocuments code Test Project Plan Changes in user requirements software models

6 Software Configurations Items Requirements Specifications Design Documents Source code Object code Test plans Test suites User manuals Maintenance manuals Standards

7 Functions of SCM Maintain integrity of SCIs Limit people who can commit changes Track who committed changes Examine what changes are Evaluate and control change Make the product visible

8 Baselines 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 procedures – IEEE Std. 610 Set of agreed upon standards Can expect a baseline to remain fairly static Once baselined changes to SCI must follow defined, formal procedure

9 Baselines

10 SCM Repository Set of mechanisms and data structures for managing change effectively Performs or creates systems to maintain: Data integrity Information sharing Tool integration Data integration Methodology enforcement Document standardization

11 SCM Benefits Reduces effort managing & implementing change Improved productivity Increased software integrity and security Improves quality and reliability Generate information about process Improved process & team management Maintain software development database Reduce costs by streamlining paperwork Better finger pointing and/or saying “I told you so”

12 SCM Tasks Identification of SCIs Version control Change control Auditing, reporting “make” facility

13 Identification of SCIs Name and organize each SCI Store in centralized project database Need some method to identify & track individual documents Usually uses numbering scheme Want predictable, precise method of ordering data Helpful if names can somehow be meaningful Handles relationships between SCIs

14 Version Control Set of procedures and tools managing different versions of configuration objects Standalone tool or included within database SCCS RCS CVS Track and manage each items requirements Different components Different targets

15 Version Tree 1.0 1.1 2.0 1.2 3.0 Original release Change New release

16 Change Control Change control provides a mechanism for controlling change Human procedures Automated tools Change control process

17 Change Control Process Need for change is recognized Change request from user Developer evaluates Change report is generated Change control authority decides Request is queued for action Follow process Request is denied User is informed

18 No Change Request Evaluation CR submitted CR logged CR closure- audit & log SCI updated Implement change CCB Eval Authorized

19 Simultaneous Update Source3/23/01 Source3/26/01 Coder B Coder A

20 Configuration Audit Ensure change was appropriately handled E ngineering C hange O rder clearly specified F ormal T echnical R eviews examined change Audit should ask (and be able to answer) Has each change been made? Was the FTR completed? Were all of our standards followed? Change recorded & SCI database updated? All related SCIs updated?

21 Deliverable Generation Facility Ability to recreate the SCI Should recreate any release, date, time Should be able to do this simply May require preserving old code, compilers, word processors, etc. Version control does this for documents Much harder to maintain for hardware Need to link software versions to hardware What happens when hardware outdated?

22 For Next Lecture Back to reading in book Begin looking at implementation process Finally a chance for the code monkeys! Compare book’s description with usual methods Also consider how you will distribute coding, maintain consistent style, work together


Download ppt "CSC 395 – Software Engineering Lecture 25: SCM –or– Expecting Change From Everything But Vending Machines."

Similar presentations


Ads by Google