1 / 15

Software Configuration Management

Software Configuration Management. METU Computer Engineering CEng 492 Spring'2004. Software development process:. The larger the software, the harder to maintain it. When a change required: Who will do it? How will s/he do it? How will the change incorporated in the whole software?

jodie
Download Presentation

Software Configuration Management

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Configuration Management METU Computer Engineering CEng 492 Spring'2004

  2. Software development process: • The larger the software, the harder to maintain it. • When a change required: • Who will do it? • How will s/he do it? • How will the change incorporated in the whole software? • How to guarantee change will not inject any other troubles? • After a change made: • When it is made? • Who made it, why s/he made it?

  3. Software Configuration Management • Standard definition: • Identification: identifying components, structure • Control: controlling releases and changes • Status accounting: recording, reporting status • Audit and review: validating completeness • Traditional CM: check-in, check-out of sources, builds, compilation. • Process Management: control of the software activities (test, documentation, review). Ensuring life-cycle model

  4. Change Control Process • Evaluate the change request • Assign individuals to configuration objects • check-out configuration objects • make the change • review (audit) the change • check-in the changed configuration items • establish baseline for testing

  5. promote changes for inclusion in next release • rebuild, review • include in new version • distribute the new version

  6. Aspects of CM Tools· • Versioning and version history • Configurations and versions • Transparency of CM • Derived object management • Workspace management • Development transactions • Evolution support • Activity modeling and automation

  7. Problem Management • Tightly coupled with CM • Collecting problems and development issues • Assigning issues to people • Status reporting and auditing • Collecting problems and easily tracking them in the source is essentially importantQuality feedback agentsException dumps

  8. Revision Control Systems • Example: SCCS, RCS • Versions of sources, version history (storing in delta differences: SCCS delta, RCS reverse delta) • Concurrent development (check-in checkout semantics) • Branches of revisions (i.e. stable, development, experimental) • Logging, identification • Merging of revisions

  9. Revision Control with Central Repository • Examples: CVS, SourceSafe • Developers work on their copy on a distributed environment. • Operate on whole SW collection • Transaction based. Development goes in parallel, conflicts resolved in time of commit.

  10. Software CM Tools • SCCS, RCS, CVS, Make • Visual SourceSafe • Apollo DSEE • Rational Environment (ClearCase) • Sun NSE • IST Istar • PVCS • CM Synergy, and many more

  11. A sample CM Plan • 1 Introduction1.1 Purpose of CMP 1.2 Scope of Document 1.3 Definitions, Acronyms and Abbreviations 1.4 Document References 1.5 Document Overview

  12. 2 The Organizations CM Framework • 2.1 Organization • 2.2 Responsibilities • 2.3 Tools & Infrastructure

  13. 3 The CM Process • 3.1 IdentificationExplain how you will identify the current state of your products and systems. • 3.2 Management and ControlConsider Tools and Practices for: Development, Engineering, Build, Deployment, Change Requests, Defect Tracking, System Management. • 3.3 Configuration Status AccountingDefine what status updates you will provide and how. Consider: Change Request Reports, Build Reports, Defect Reports, Bill of Materials and Release Reports. • 3.4 AuditingArticulates how your solution will carry out Configuration Management Audits. Things to consider: Functional Audits, Physical Audits and Process Audits.

  14. 4 Project Schedules - CM MilestonesProvide project planning support/guidelines for CM activities. • 5 Project Resources • 6 Plan Optimization • Appendix

  15. References: • CMU Software Engineering Institute: http://www.sei.cmu.edu./ • Association for Configuration and Data Management: http://www.acdm.org/ • comp.software.config-mgmt FAQ: http://www.daveeaton.com/scm/

More Related