1. Configuration Management
Presentation to CMMI DEV V1.2
Intermediate Class
Israel Jan.2007
Kobi Vider - Picker
2. Agenda
• Class Assignment Objectives
• Organization Mission
• Organization Structure – High Level
• Organization Structure – Technical
• Multi Product Environment
• Configuration Management In The Product Development Life Cycle
• High Level Process Description
• Interpretation Issues
• Key Activities
• Difficulties Encountered And Plans For Implementation
• CMMI DVE V1.2 CM Coverage
• References
3. Class Assignment Objectives
• Exercise: Describe implementation aspects of a Process Area
• Purpose: Provide a demonstration of your understanding of model
and PA concept implementation and your presentation skills.
• Duration: 10 minute
• Scenario: organization that is in the process of implementing
CMMI-compliant processes that satisfy the PA you have been
assigned, prepare a presentation that describes how the PA-related
practices are being implemented across your projects’ or
organization’s processes.
– BRIEF overview of organization structure
– Interpretation issues encountered and how addressed
– Key activities that were necessary to implement the CMMI-compliant
processes in your organization
– Difficulties encountered and plans for completing the implementation
4. Organization Mission
• Focus on three highlights:
– Advanced printing Technology
– Advanced Publishing and Archiving Technology
– Advanced Imaging Systems
• worldwide group of ~300 product development
people
• Working on systems and not just software
5. Organization Structure
Vice President
Project Officer
QA& QC
Project Officer
Account
Operation Support Mange. R&D Program 1 Program 2 Program 3
Program management
Product B1 Core Team Product A - Core Team
Joint Project with R&D
Core Team
Product B2 - Core Team
New Generation Core Team
6. Organization Structure - Technical
R&D
Engineering Design Validation
Software
System Development Subsystem System
Optic Mechanics Laser System Industry
Architect Teams
Materials Electronics
7. Multi Product Environment
Features Features
Product X
Needs Product Y
Needs
System A System B System C
8. Configuration Management in the
Product Development life Cycle
First Baseline CR Process New Baseline
Pre-Planing
Phase 0 Phases 1 – 2 Phases 3 – 4 Phases 5 – 6 Phase 7
Life-Cycle
Management
Gate 4 Gate 6 Gate 7 Gate 8
Gate 2
Gate 0
Purpose of Each Phase Life-Cycle
Pre-Phase 0 Phase 0 Phases 1 – 2 Phases 3 – 4 Phases 5 – 6 Phase 7 Management
• Develop market- • Analyze and refine • Define the whole • Develop the • Verify that the • Deliver the • Ensure a long
based portfolios a specific, scope, product offering and whole product whole product and product to run for the
(including , product functional impact, its business case and it’s its supporting customers in a product and
platform plans, and unambiguously supporting functional controlled manner provide feedback
links to technology processes processes are and prepare for into the product
• Develop an
management) forceful before and be able to family planning
integrated, cross-
launch manufacture, process
functional plan that
can deliver it
• Validate technology
feasibility and
robustness
9. Milestone Baseline
• A reviewed and approved release of
artifacts that constitutes an agreed basis
for further evolution or development and
that can be changed only through a
formal procedure, such as change
management and configuration control.
10. By tracing features to needs and
requirements to features, we can better
set priorities and verify that we don’t
develop unnecessary requirements and
don’t omit important ones
12. Motivation
• Improve:
– Quality
– Time to market
– Reduce Costs (development & testing)
• By:
– Enhance control on product versions development
– Adaptation to development and testing processes
– Enhanced integration between development
groups
12
13. Highlights
• Task oriented management
• Additional product oriented layer
– Isolate development and product/testing env.
– Controlled & stable build environment
– Defined permission/restriction policy
– Defined responsibilities
• Build server
• Product/version creation
• Development cycle workflow
13
14. Current development cycle
Design Dev
PDR Ready CDR Ready Int + Programer
Package 1 preliminary design
PDR detailed design CDR Implementation IntegrationUnittest
Package 2 preliminary design
PDR detailed design Implementation Integration Unittest
CDR
Package 3 preliminary design
PDR detailed design CDR Implementation Integration
Unittest
Package 4 preliminary design detailed design
PDR CDR Implementation Integration
Unittest
Package 5 preliminary design
PDRdetailed design CDR Implementation Integration
Unittest
Integration Test
AlphaTest
Sys Alfa Test
Beta Test
EP
Release
14
17. Interpretation issues
• How to define multidiscipline baseline
• Configuration items definition in system
environment
• How to Track change requests cross different
products on the same configuration item
18. Key activities
• Identify needs and goals
• Obtain senior management commitments
• Specify scope for pilot
– Project
– Product / product family
• Select and prepare improvement team
• Understand the current implemented processes And
Practices.
• Identify processes and practices improvement opportunities
(and strengths) in the organization unit.
• Evaluate degree of satisfaction of CMMI process area goals
• Develop the implementation plan and set success criteria
• Execute the improvement plan, monitor it and refine as
needed
19. Difficulties encountered and plans for
implementation
• How to define multidiscipline baseline
• Configuration items definition in system
environment
• Cross product change control of same
configuration item
20. CMMI DVE V1.2 CM Coverage
CMMI DEV. V1.2 Organization Process
SG 1 Establish Baselines Gate 2 checklist and configuration plan
- Baselines of identified work products with first base line
are established
SP 1.1 Identify Configuration Items Gate 2 checklist and configuration plan
- Identify the configuration items, with first base line captured in the CCDB
components, and related work products
that will be placed under configuration (as described in slide 15)
management
SP 1.2 Establish a Configuration Using the tools with process description
Management System document, templates and guidelines as
- Establish and maintain a configuration described in slide 15
management and change management
system for controlling work products
SP 1.3 Create or Release Baselines Using the tools with process description
- Create or release baselines for internal document, templates and guidelines as
use and for delivery to the customer described in slide 15
21. CMMI DVE V1.2 CM Coverage
CMMI DEV. V1.2 Organization Process
SG 2 Track and Control Changes Using the tools with process description
- Changes to the work products under document, templates and guidelines as
configuration management are tracked described in slide 16
and controlled
SP 2.1 Track Change Requests Using the tools with process description
- Track change requests for the document, templates and guidelines as
configuration items described in slide 16
SP 2.2 Control Configuration Items Using the tools with access rights and
- Control changes to the configuration process description document, templates
items and guidelines as described in slide 16
22. CMMI DVE V1.2 CM Coverage
CMMI DEV. V1.2 Organization Process
SG 3 Establish Integrity
- Integrity of baselines is established and
maintained
SP 3.1 Establish Configuration As the result of the tools reports
Management Records
- Establish and maintain records
describing configuration items
SP 3.2 Perform Configuration Audits Using the tools with flows, checklists,
- Perform configuration audits to templates and guidelines as described in
maintain integrity of the configuration slide 15
baselines
23. CMMI DVE V1.2 CM Coverage
CMMI DEV. V1.2 Organization Process
GP 2.1 Establish an Organizational Policy Policy document that describe the business motivation and
expected results
GP 2.2 Plan the Process process description document, templates and guidelines
GP 2.3 Provide Resources Tools, checklists, templates, funding and Subject Matter
Experts
GP 2.4 Assign Responsibility With established and maintained communication and focal
point contacts
GP 2.5 Train People User guides, guidelines, formal training and orientation training
GP 2.6 Manage Configurations Relevant documents are managed in the CC tool (Clear Case)
such as process flow and configuration plan
GP 2.7 Identify and Involve Relevant Stakeholders With established and maintained communication and roles and
responsibilities matrix
GP 2.8 Monitor and Control the Process Through core team and Change Control Board meetings
GP 2.9 Objectively Evaluate Adherence Through Quality Engineer external audits, work products
review and observations
GP 2.10 Review Status with Higher Level Management Through core team meetings, status meetings and gate review
GP 3.1 Establish a Defined Process One process description for all products and projects in the
division
GP 3.2 Collect Improvement Information Through Quality Engineer monthly reviews and meetings
24. CMMI DVE V1.2 CM Coverage
CMMI DEV. V1.2 Organization Process
GP 4.1 Establish Quantitative Objectives We have defined targets with tight
for the Process relationship to our business objective,
currently we are in the process of
implemntation our measurements and
targets as defined in our plan
GP 4.2 Stabilize Subprocess Performance We have selected critical subprocess for
this, currently we are in the process of
training for it
GP 5.1 Ensure Continuous Process Not in phase
Improvement
GP 5.2 Correct Root Causes of Problems Not in phase
25. References
• Software Configuration Management Strategies and IBM® Rational® ClearCase® Second Edition A Practical
Introduction
– By David E. Bellagio, Tom J. Milligan
– Publisher: Addison Wesley Professional
– ISBN: 0-321-20019-5
• Software Configuration Management
– by Jessica Keyes
– Auerbach Publications
– ISBN:0849319765
• Designing a Change and Configuration Management Infrastructure - Delivery Guide
– Microsoft press
• Software Configuration Management Patterns: Effective Teamwork, Practical Integration
– By Stephen P. Berczuk, Brad Appleton
– Publisher : Addison Wesley Pub
– ISBN : 0-201-74117-2
• MILITARY HANDBOOK - Configuration Management Guidance
– MIL-HDBK-61
• MILITARY STANDARD- Configuration Management
– MIL-STD-793
• IEEE Std 828-1990 standard for software configuration management plans
• IEEE Std 828-1998 Standard For Software Configuration Management Plans
• Configuration Management Principles and Practice
– By Anne Mette Jonassen Hass
– Publisher : Addison Wesley Pub
– ISBN : 0-321-11766-2 Pages : 432
28. Task oriented management
• Clear Activities name conventions
– MS project task (feature) = CC activity
– Bug ID = CC activity
– Examples:
• Improve_Paper_ disposal_ sequence_integration
• Insert_right_click_diag
• Problem_in_Plate_Grounding_in_Cassette
– Activities grouping (Basket orientation)– TBD
– Baseline viewing upon activities
– Promotion/Delivery upon activities state
28
29. Enhanced model basic diagram
Product Layer Development Layer
DC ver X.XX
Coding
Stream
DC ver X.XX
Integration
Stream
D
E
V
S
T
D R
E E
V M
S
T
R
Unitest
E
M
Product X 29
3.75.xx
31. Build server
• Controlled environment
• Scheduled compilations on Coding and
Integration
• Compilation SW products managed in
ClearCase
• Build results notification – by e-mail to specific e-mail
list
• Manual build option
31
32. “CC-CD” = ClearCase CD
– Target Baseline – code & SW products
– Install Shield – automatic “CC_CD” creation
– Notification of “new CD” to QA list
– Device version installation from “CC_CD”.
32
33. Developer Environment
– Development Stream for each developer
– Activity oriented = development effort
– Activity name = task name from WP
– Local compilation
– Local debugging on machine
– Re-base and merge in Dev Stream
– Activity Delivery to Coding Integration Stream
– Verify successful build in Coding Stream
33
34. Coding environment
– Scheduled build – Scheduled as listed
– Build Notification - Distribution to list
– Delivery Package Notification - Distribution to list
– Base line if new deliveries – Distribution to list
– Check-In build results – compilation products –
Distribution to list
– Create “version image = “CC_CD” - Distribution to list
– New “CC_CD” Notification – Distribution to list
– Install shield from “CC_CD” – Distribution to list
– Delivery Package status management – Distribution to list
– Promote Tested Delivery Package to Integration Stream
34
35. Integration environment
– Scheduled build – every night * (weekly)
– Build Notification - management list (PM,QA,TL)
– Delivery Package Notification - management list
– Base line if new deliveries – TL *(weekly)
– Check-In build results – compilation products – TL
– Create “version image = “CC_CD” - TL
– New “CC_CD” Notification – management list
– Install shield from “CC_CD” – for integration&Alpha tests
– Delivery Package status management – QA&TL
35
36. Cross project deliveries
• Promote/Deliver delivery pack between
different projects Coding streams !
• Notification Upstream (to higher version of
the DC)
• The target project is the delivery initiator
36
37. Cross project deliveries
ver X.XX
Coding
Stream
ver X.XX
Integratio
n ver X.XY
Stream Coding
Stream
ver X.XY
D Integratio
E n
V
Stream
D S
E T
V R D
E E
S M V
T
Unitest R D S
E E T
M V R
Product E
A S M
T
Unitest R
E
M
Product
Aa 37