the rational unified process and the cmm systems/software
TRANSCRIPT
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG1
The Rational Unified Process®
and the Capability MaturityModel® – IntegratedSystems/Software Engineering
SM CMMI and CMM Integration are service marks of Carnegie Mellon University.
® Capability Maturity Model, Capability Maturity Modeling, and CMM are registered in the U.S. Patent & Trademark Office.
TM Rational Unified Process is a trademark of Rational Software.
® RUP is a registered trademark of Rational Software.
Brian Gallagher Lisa Brownsword
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG2
Acknowledgements
Defense Integrated Military Human Resources System (DIMHRS)• K.C. King• Wade Brignac• Kenneth Buck• Paul Evitts• Jerry Perry• Robert Woods
Rational Software Corporation• Philippe Kruchten• Jim Smith
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG3
TopicsGoals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
Lessons Learned
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG4
What We’ve Heard
I’m trying to decide between using
RUP and CMMI
I’m using RUP, why would I want to
look at the CMMI?
I’m doing CMMI-based improvement, how can a tool
like RUP help me?
What’s the difference between
CMMI and RUP?
CMMI is more a ‘waterfall’ development process, I need
a more iterative approach
How can I use RUP to develop ‘systems’,
not just software?
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG5
Our Approach• Plan
- Set comparison objectives- Select review team- Identify the RUP/CMMI authoritative source and constituent
elements to be used in the comparison- Determine comparison information to capture
• Train review team on CMMI
• Determine how RUP supports CMMI
• Determine how CMMI supports RUP
• Report the results- Develop this tutorial- Develop a detailed Technical Report (~Aug 01)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG6
Tutorial GoalsExplore commonalities between RUP and CMMI
Identify differences between RUP and CMMI
Recommend improvements in RUP and CMMI to strengthenboth
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG7
Intended AudienceOrganizations engaged in CMMI-based improvementconsidering using RUP
Organizations using RUP who are considering CMMI-basedimprovement
Appraisal teams using CMMI as a “yardstick” fororganizations or projects using RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG8
Topics
Goals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
Lessons Learned
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG9
What Is CMMI?
A framework of the key process elements for a systemdevelopment
• structured collection of processes proven throughexperience
An integrated view of process improvement across multipledisciplines• sets process improvement goals and priorities
• provides guidance for quality processes
• provides a yardstick for assessing current practices
Based on concepts and approaches pioneered by Crosby,Deming, Juran, Humphrey, et. al
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG10
Elements of an Effective Process -1
= CMMI Key Elements
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG11
Elements of an Effective Process -2
= CMMI Key Elements = Your Project’s Additional Elements
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG12
Capability and Maturity
Process capability pertains to an individual process
• Knowing the process capabilities of a collection ofprocesses has implications for organizational maturity
Organizational maturity pertains to a set of processes
• Being at a particular level of organizational maturity hasprocess capability implications for multiple processes
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG13
CMMI Model RepresentationsTwo approaches to processimprovement• process capability• organizational maturity
CMMI models support each approach witha representation• process capability approach ==> continuous representation• organizational maturity approach ==> staged representation
Which representation to use is based on the purpose ofthe improvement task
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG14
CMMI Model Components
Capability LevelsGeneric
Practices
GenericGoals
Process Area 2Process Area 1 Process Area n
SpecificGoals
SpecificPractices
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG15
Continuous Representation Structure
Cap
abili
ty
Process
ProcessArea 1
ProcessArea n
ProcessArea 2
ProcessArea 3
Process performed well andcontinuously improved
Process not performed
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG16
Capability Levels
A capability level is
• A well-defined evolutionaryplateau describing thecapability of any ProcessArea
• A layer in the foundationfor continuous processimprovement
5 Optimizing
4 Quantitatively Managed
3 Defined
2 Managed
1 Performed
0 Incomplete
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG17
ProjectManagement
Process AreasCategory
Requirements ManagementRequirements DevelopmentTechnical SolutionProduct IntegrationVerificationValidation
Engineering
Configuration ManagementProcess and Product Quality AssuranceMeasurement and AnalysisCausal Analysis and ResolutionDecision Analysis and Resolution
Support
Project PlanningProject Monitoring and ControlSupplier Agreement ManagementIntegrated Project Management RiskManagementQuantitative Project Management
Organizational Process FocusOrganizational Process DefinitionOrganizational TrainingOrganizational Process PerformanceOrganizational Innovation and Deployment
ProcessManagement
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG18
Topics
Goals and Purpose
CMMI Overview
RUP Overview*
RUP to CMMI Mapping
Lessons Learned
*Material based on The Rational Unified Process; An Introduction,Philippe Kruchten, Second Edition. Addison-Wesley, 2000
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG19
What is RUP?
A software engineering process based on best practicesin modern software development
• A disciplined approach to assigning and managing tasksand responsibilities in a development organization
• Focused on high-quality software that meets theneeds of its end users within a predictable scheduleand budget
A process framework that can be tailored to specific organizationor project needs
A process product developed and marketed by Rational Softwarewith an interactive knowledge base integratedwith tools
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG20
Key Aspects of RUP
Risk-driven process• Risk management integrated into the development process
• Iterations are planned based on high priority risks
Use-case driven development• Use cases express requirements on the system’s functionality
and model the business as context for the system
• Use cases are defined for the intended system and are usedas the basis of the entire development process
Architecture-centric design activities• Architecture is the primary artifact to conceptualize, construct,
manage, and evolve the system
• Consists of multiple, coordinated views (or models) of thearchitecture
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG21
RUP Basic PrinciplesDevelop Software Iteratively• Driven by early risk identification and mitigation• Each iteration results in an executable release
Manage Requirements• Requirements inherently dynamic across the system’s life
Use Component-Based Architecture• Architectures that are resilient to change are essential
Visually Model Software• Promotes consistency and unambiguous communication of
development information
Continuously Verify Software Quality• Identify defects early, objective measure of project status
Control Changes to Software• Create and release a tested baseline at the end of each iteration
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG22
RUP ArchitectureRUP produces a software generation• A generation extends from idea to retirement of a single
version of the system
Static Structure• Describes the process in terms of who is doing what, how,
and when
Dynamic Structure• Describes the process in terms of how the process rolls out
over time• Expressed in terms of iterations, phases, and milestones
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG23
Static Process Elements
Worker (who)A role that defines theindividuals or a team thatshould carry out the work
Activity (how)Describes a piece ofwork a worker performs
Artifact (what)A piece of information thatis produced, modified, orused by an activity
Workflow (when)Specifies when a set of related activities is performed,by which workers, producing some artifact, whichprovides some observable value to the project
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG24
RUP Workflows - 1
Project Management
Business Modeling
Requirements
Analysis and Design
• Plan an iterative process• Decide duration and content of an iteration
• Understand the organization structure anddynamics in which a system is to be deployed
• Capture and manage requirements• Design a user interface focused on users
needs and goals
• Translate requirements into a specification thatdescribes how to implement the system
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG25
RUP Workflows - 2
Implementation
Test
Configuration andChange Management
Environment
Deployment
• Create, assemble, and integrate componentsand subsystem into an executable system
• Assess product quality
• Track and maintain the integrity of evolvingproject assets
• Support the development organization withprocesses and tools
• Turn the finished software product over to itsusers
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG26
Additional Static Elements
Guidelines• Rules, recommendations, techniques, or heuristics to support
activities and artifacts
Templates• Models of artifacts that can be used to create the artifact• Usually associated with a tool
Concepts• Discussions on particular concepts (e.g., iteration, risk)
associated with the process
Tool mentors• Show how to perform a set of process steps using a specific
tool
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG27
Dynamic Element: Iterations
Each iteration results inan executable release
InitialPlanning Planning
RequirementsAnalysis and Design
Implementation
Deployment
Test
Evaluation
ManagementEnvironment
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG28
Dynamic Elements: Phases and Milestones
Inception Elaboration Construction Transition
time
Define scopeof project
Plan project,specify features,baselinearchitecture
Build product Transitionproduct toend usercommunity
LifecycleObjectives
LifecycleArchitecture
InitialOperationalCapability
… … … …
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG29
Static and Dynamic Process Structure
Project Management
Environment
Business Modeling
Implementation
Test & Assessment
Analysis & Design
Preliminary Iteration(s)
Iter.#1
PhasesCore Workflows
Supporting Workflows
Iter.#2
Iter.#n
Iter.#n+1
Iter.#n+2
Iter.#m
Iter.#m+1
Deployment
Configur. & Change Mgmt
Requirements
Elaboration TransitionInception Construction
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG30
System Evolution
• Four phases form one development cycle and produce ageneration of the system
• Significant user enhancement, business or mission changes,or technology changes trigger a new generation
I E C T
I E C T
I E C T
V1
V3
V2
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG31
TopicsGoals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
• Project Management• Engineering• Support• Process Management• Generic Practices
Lessons Learned
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG32
Comparing Static Representations
CMMIRUP
OrganizationNeeds
ExternalConstraints
ProjectNeeds
OrganizationalStandard Processes Project Processes
Static
Dynamic
RUP-CMMIMapping
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG33
CaveatsWe are not assessing the Rational Unified Process
A project or organization is expected to tailor RUP to meet specificproject needs
We are not comparing the results of tailoring either RUP or CMMIfor an actual project or organization
Tailoring decisions could augment or deteriorate the results of ourcomparison
These comparisons are subjective: reasonable people may cometo different conclusions
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG34
Sources for Our ComparisonRational Unified Process, version 2000.02.10• all process elements (workflows, workflow details, activities,
artifacts, guidelines, templates)
Capability Maturity Model – Integrated for Systems and SoftwareEngineering (CMMI-SE/SW), Continuous Representation, Version1.02, December 2000• all Process Areas• Specific Goals within each Process Area• Specific Practices within each goal• Generic Practices
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG35
Capturing our ResultsRUP to CMMI
• HIGH: reviewers found a high degree of synergy betweenCMMI practices and RUP
• MEDIUM: reviewers were able to find some support for theCMMI practice
• LOW: reviewers had to stretch what we saw in RUP to supportthe CMMI practice, there were no mechanisms to support thepractice, or the practice was outside the scope of RUP
CMMI to RUP
• To be provided in a technical report (approximately ~Aug 01)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG36
TopicsGoals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
• Project Management• Engineering• Support• Process Management• Generic Practices
Lessons Learned
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG37
CMMI Basic Project Management
PPWhat To Build
What To Do
SAM
PMC
What To Monitor
Replan
Plans
Status,issues,results ofprogress andmilestonereviews
Product component requirements Technical issuesCompleted product componentsAcceptance reviews and tests
Engineeringand Support
process areas
Status, issues, results of process and product evaluations;measures and analyses
Commitments
Measurement needs
Corrective action
Supplier
Supplieragreement
Correctiveaction
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG38
Project Planning: Overview
PurposeEstablish and maintain plansthat define project activities.
CMMI RUPWorkflowProject Management, Environment
Synergy• RUP provides adequate support
mechanisms
• RUP does not provideassistance in sizing non-software project attributes (e.g.,labor, machinery, materials)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG39
Project Planning: Mapping -1
SG 1: Establish Estimates
Estimates of project planningparameters are established andmaintained.
CMMI RUPWorkflow: Project ManagementWD: Conceive New ProjectWD: Develop SoftwareDevelopment Plan
SG 2: Develop a Project Plan
A project plan is established andmaintained as the basis formanaging the project.
Workflow: Project ManagementWD: Conceive New ProjectWD: Develop SoftwareDevelopment PlanWorkflow: EnvironmentWD: Prepare Environment forProject WD: Prepare Environmentfor an Iteration
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG40
Project Planning: Mapping -2
CMMI RUPSG 3: Obtain Commitment to thePlan
Commitments to the project planare established and maintained.
Workflow: Project ManagementWD: Develop SoftwareDevelopment Plan
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG41
Project Planning: SynergySpecific Goal
Establish Estimates
Specific Practice
• Estimate the Scope of the Project (H)• Establish Estimates of Project Attributes (M)• Define Project Life Cycle (H)• Determine Estimates of Effort and Cost (H)
Develop a ProjectPlan
• Establish the Budget and Schedule (H)• Identify Project Risks (H)• Plan for Data Management (M)• Plan for Project Resources (M)• Plan for Needed Knowledge and Skills (H)• Plan Stakeholder Involvement (H)• Establish the Project Plan (H)
Obtain Commitmentto the Plan
• Review Subordinate Plans (H)• Reconcile Work and Resource Levels (M)• Obtain Plan Commitment (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG42
Project Planning: Detail ExampleSP1.2-1: Establish and document estimates of the attributes ofthe work products and tasks.
RUP Elements:Workflow: Project Management
Workflow Detail: Develop Software Development PlanActivity: Plan Phases and Iterations
Comments: RUP provides guidance on sizing a software effort.Sizing by analogy and sizing by analysis is discussed. RUPdoes not provide assistance in sizing non-software projectattributes (i.e. labor, machinery, materials, and methods that willbe required by the project).
Degree of Synergy: Medium
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG43
CMMI Basic Project Management
PPWhat To Build
What To Do
SAM
PMC
What To Monitor
Replan
Plans
Status,issues,results ofprogress andmilestonereviews
Product component requirements Technical issuesCompleted product componentsAcceptance reviews and tests
Engineeringand Support
process areas
Status, issues, results of process and product evaluations;measures and analyses
Commitments
Measurement needs
Corrective action
Supplier
Supplieragreement
Correctiveaction
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG44
Project Monitor and Control: Overview
PurposeProvide understanding intothe project’s progressso that appropriate correctiveactions can be taken whenthe project’s performancedeviates significantly from theplan.
CMMI RUPWorkflowProject Management
Synergy• RUP provides strong
mechanisms to help monitora project
• Project’s using RUP shouldmake sure data managementis explicitly addressed
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG45
Project Monitor and Control: Mapping
SG 1: Monitor Project Against Plan
Actual performance and progress ofthe project is monitored against theproject plan.
CMMI RUPWorkflow: Project ManagementWD: Monitor and Control ProjectWorkflow: ConfigurationManagement
SG 2: Manage Corrective Action toClosure
Corrective actions are managed toclosure when the project'sperformance or results deviatesignificantly from the plan.
Workflow: Project ManagementWD: Monitor and Control Project
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG46
Project Monitor and Control: Synergy
Specific Goal
Monitor Project AgainstPlans
Specific Practice
• Monitor Project Planning Parameters (H)• Monitor Commitments (M)• Monitor Project Risks (H)• Monitor Data Management (M)• Monitor Stakeholder Interactions (H)• Conduct Progress Reviews (H)• Conduct Milestone Reviews (H)
ManageCorrective Actionsto Closure
• Analyze Issues (H)• Take Corrective Actions (H)• Manage Corrective Actions (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG47
Project Monitor and Control: Detail Example
SP1.4-1 Monitor the management of project data.
RUP Components:Workflow: Configuration Management
Comments: Although not required, managing project datacould be called out in the Configuration Management Plan.
Degree of Synergy: Medium
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG48
CMMI Basic Project Management
PPWhat To Build
What To Do
SAM
PMC
What To Monitor
Replan
Plans
Status,issues,results ofprogress andmilestonereviews
Product component requirements Technical issuesCompleted product componentsAcceptance reviews and tests
Engineeringand Support
process areas
Status, issues, results of process and product evaluations;measures and analyses
Commitments
Measurement needs
Corrective action
Supplier
Supplieragreement
Correctiveaction
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG49
Supplier Agreement Management: Overview
PurposeManage the acquisition ofproducts and services fromsuppliers external to theproject for which there existsa formal agreement.
CMMI RUPWorkflownone
Synergy• RUP does not explicitly deal
with managing work fromexternal suppliers to the project
• RUP’s QA Plan, CM Plan, andSoftware Development Planhave sections labeled forsupplier and subcontractorcontrol
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG50
Supplier Agreement Management: Mapping
SG 1: Establish SupplierAgreements
Agreements with the suppliers areestablished and maintained.
CMMI RUPWorkflow: noneOutside of the scope of RUP
SG 2: Satisfy Supplier Agreements
Agreements with the suppliers aresatisfied by both the project and thesupplier
Workflow: noneOutside of the scope of RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG51
Supplier Agreement Management: Synergy
Specific Goal
Establish SupplierAgreements
Specific Practice
• Analyze Needs and RequirementsDetermined by the Project (L)
• Select Suppliers (L)• Establish Supplier Agreements (L)
Satisfy Supplier Agreements
• Acquire COTS Products (L)• Execute the Supplier Agreement (L)• Conduct Acceptance Testing (L)• Transition Products (L)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG52
CMMI Advanced Project ManagementProcess Performance Objectives, Baselines, Models
QPM
Organization’s Std. Processes and Supporting Assets
IPM
RSKM
LessonsLearned,Planning and Performance Data
Project’sDefinedProcess
Statistical Mgmt Data
Risk Status
Risk MitigationPlans
CorrectiveAction
Risk Taxonomies
& Parameters
Process Managementprocess areas
BasicProject Management
process areas
Risk exposure due to unstable processes
Quantitative objectives;subprocesses to statistically manage
Identified risks
Engineering and Supportprocess areas
Coordination,commitments,issues to resolve
ProductArchitecture
for StructuringTeams
Project’sDefinedProcess
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG53
Integrated Project Management: Overview
PurposeEstablish and manage theproject and the involvement ofthe relevant stakeholdersaccording to an integrated anddefined process that is tailoredfrom the organization’s set ofstandard processes.
CMMI RUPWorkflowProject Management, Environment
Synergy• RUP encourages developing
integrated plans
• RUP supports tailoring forproject unique needs throughthe development case artifact
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG54
Integrated Project Management: Mapping
SG 1: Use the Project’s DefinedProcessThe project is conducted using adefined process that is tailoredfrom the organization's set ofstandard processes.
CMMI RUPWorkflow: EnvironmentWD: Prepare Environment for Project/IterationWorkflow: Project ManagementWD: Develop SoftwareDevelopment PlanWD: Monitor and Control Project
SG 2: Coordinate and Collaboratewith Relevant Stakeholders
Coordination and Collaboration ofthe project with relevantstakeholders is conducted.
Workflow: Project ManagementWD: Close-out Phase
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG55
Integrated Project Management: Synergy
Specific Goal
Use the Project’sDefined Process
Specific Practice
• Establish the Project’s Defined Process (M)• Use Organizational Assets for Planning
Project Activities (M)• Integrate Plans (M)• Manage the Project Using the Integrated
Plans (H)• Contribute to the Organization’s
Process Assets (H)
Coordinate andCollaborate withRelevant Stakeholders
• Manage Stakeholder Involvement (H)• Manage Dependencies (L)• Resolve Coordination Issues (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG56
Integrated Project Management:Detail ExampleSP1.1-1 Establish and maintain the project's defined process.
RUP Components:Workflow: Environment
Workflow Detail: Prepare Environment for Project/Iteration
Comments: Using RUP, a project would assess the currentsoftware development organization and select the processesand tools to support the project. This is less formal than havingan “organizational standard process” comprised of a suite oflifecycles and processes to choose from complete with tailoringguidelines.
Degree of Synergy: Medium
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG57
CMMI Advanced Project ManagementProcess Performance Objectives, Baselines, Models
QPM
Organization’s Std. Processes and Supporting Assets
IPM
RSKM
LessonsLearned,Planning and Performance Data
Project’sDefinedProcess
Statistical Mgmt Data
Risk Status
Risk MitigationPlans
CorrectiveAction
Risk Taxonomies
& Parameters
Process Managementprocess areas
BasicProject Management
process areas
Risk exposure due to unstable processes
Quantitative objectives;subprocesses to statistically manage
Identified risks
Engineering and Supportprocess areas
Coordination,commitments,issues to resolve
ProductArchitecture
for StructuringTeams
Project’sDefinedProcess
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG58
Risk Management: Overview
PurposeIdentify potential problemsbefore they occur, so that risk-handling activities may beplanned and invoked asneeded across the life cycle tomitigate adverse impacts onachieving objectives.
CMMI RUPWorkflowProject Management
Synergy• RUP is a risk driven
development process
• Activities are performed tomitigate the highest risks andtackle the hardest jobs first
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG59
Risk Management: Mapping
SG 1: Prepare for Risk Management
Preparation for Risk Management isconducted.
CMMI RUPWorkflow: Project ManagementWD: Develop SoftwareDevelopment Plan
SG 2: Identify and Analyze Risks
Risks are identified and analyzed todetermine their relative importance.
Workflow: Project ManagementWD: Conceive New Project
SG 3: Mitigate Risks
Risks are handled and mitigated, whereappropriate, to reduce adverse impactson achieving objectives.
Workflow: Project ManagementWD: Conceive New Project
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG60
Risk Management: SynergySpecific Goal
Prepare for RiskManagement
Specific Practice
• Determine Risk Sources and Categories (H)• Define Risk Parameters (M)• Establish a Risk Management Strategy (M)
Analyze Risks • Identify Risks (H)• Evaluate, Classify, and Prioritize Risks (H)
Mitigate Risks • Develop Risk Mitigation Plans (H)• Implement Risk Mitigation Plans (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG61
Risk Management: Detail ExampleSP2.1-1 Identify and document the risks.
RUP Components:Workflow: Project Management
Workflow Detail: Conceive New ProjectActivity: Identify and Assess Risks
Comments: RUP calls for identifying risks. The resulting artifact,the Risk List, documents the identified risks.
Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG62
CMMI Advanced Project ManagementProcess Performance Objectives, Baselines, Models
QPM
Organization’s Std. Processes and Supporting Assets
IPM
RSKM
LessonsLearned,Planning and Performance Data
Project’sDefinedProcess
Statistical Mgmt Data
Risk Status
Risk MitigationPlans
CorrectiveAction
Risk Taxonomies
& Parameters
Process Managementprocess areas
BasicProject Management
process areas
Risk exposure due to unstable processes
Quantitative objectives;subprocesses to statistically manage
Identified risks
Engineering and Supportprocess areas
Coordination,commitments,issues to resolve
ProductArchitecture
for StructuringTeams
Project’sDefinedProcess
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG63
Quantitative Project Management: Overview
PurposeQuantitatively manage theproject’s defined process toachieve the project’sestablished quality andprocess performanceobjectives.
CMMI RUPWorkflowEnvironment
Synergy• Quantitatively managing the
project’s processes is outsidethe scope of RUP
• RUP provides some guidanceon measures pertinent to RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG64
Quantitative Project Management: Mapping
SG 1: Quantitatively Manage theProjectThe project is quantitativelymanaged using quality and processperformance objectives.
CMMI RUPWorkflow: EnvironmentWD: Prepare Environment forProject
SG 2: Statistically ManageSubprocess Performance
The performance of selectedsubprocesses within the project’sdefined process is statisticallymanaged.
Workflow: none
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG65
Quantitative Project Management: Synergy
Specific Goal
Quantitatively Managethe Project
Specific Practice
• Establish the Project’s Objectives (L)• Compose the Defined Process (M)• Select the Subprocesses to be Managed (L)• Manage Project Performance (L)
Statistically ManageSubprocessPerformance
• Select Measures and Analytic Techniques (L)• Apply Statistical Methods to UnderstandVariation (L)
• Monitor Performance of the SelectedSubprocesses (L)
• Record Statistical Management Data (L)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG66
Quantitative Project Management:Detail ExampleSP1.2-1 Select the processes and process elements thatcomprise the project’s defined process based on historicalstability and capability data.
RUP Components:Workflow: Environment
Workflow Detail: Prepare Environment for ProjectGuidelines: Process Discriminates
Comments: While selection of processes and processelements aren’t selected based on historical stability (meaningstatistically understood), RUP provides guidelines to helpprojects select processes based on characteristics.
Degree of Synergy: Medium
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG67
TopicsGoals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
• Project Management• Engineering• Support• Process Management• Generic Practices
Lessons Learned
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG68
CMMI Engineering Process Areas
RD PI
Val
CustomerTS
Ver
REQM Requirements
Customer needs
Product and product component requirements
Product components, work products, verification and validation reports
Productcomponents
Alternativesolutions
Require-ments
Product
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG69
Requirements Management: Overview
PurposeManage the requirements ofthe project’s product andproduct components and toidentify inconsistenciesbetween those requirementsand the project’s plans andwork products.
CMMI RUPWorkflowRequirements
Synergy• RUP provides adequate support
mechanisms
• RUP integrates the tracking (orchange management) ofrequirements with capturing andanalyzing requirements
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG70
Requirements Management: Mapping
SG 1: Manage Requirements
Requirements are managed andinconsistencies with project plansand work products are identified.
CMMI RUPWorkflow: RequirementsWD: Understand Stakeholder NeedsWD: Manage the Scope of the SystemWD: Manage Changing RequirementsWorkflow: Analysis and DesignWD: Analyze BehaviorWD: Design ComponentsWD: Design DatabaseWD: Design Real-time
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG71
Requirements Management: SynergySpecific Goal
Manage Requirements
Specific Practice
• Obtain an Understanding of Requirements (H)• Obtain Commitment to Requirements
(Level 2) (H)• Manage Requirement Changes (H)• Maintain Bi-Directional Traceability of
Requirements (Level 2) (H)• Identify Inconsistencies between Project Work
and Requirements (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG72
Requirements Management: Detail Example
SP1.2-2: Obtain commitment to the requirements from the projectparticipants.
RUP Elements:Workflow: Requirements
Workflow Detail: Manage the Scope of the SystemActivity: Prioritize Use Cases
Comments: RUP employs use cases to plan and package the work to bedone. The architect comes up with a first cut at a list of prioritized usecases. The project team is involved in revising the prioritized list basedon project risks, availability of resources, and stakeholder needs.
Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG73
CMMI Engineering Process Areas
RD PI
Val
CustomerTS
Ver
REQM Requirements
Customer needs
Product and product component requirements
Product components, work products, verification and validation reports
Productcomponents
Alternativesolutions
Require-ments
Product
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG74
Requirements Development: Overview
PurposeProduce and analyzecustomer, product, andproduct componentrequirements.
CMMI RUPWorkflowsRequirements, Configuration andChange Management, Analysis andDesign, Implementation, Test
Synergy• RUP provides good support mechanisms
• RUP “features” equivalent to customerrequirements
• Interfaces treated as one kind ofrequirement
• Prototyping key approach forrequirements (incl. interfaces) validation
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG75
Requirements Development: Mapping -1
SG 1: Develop CustomerRequirements
Stakeholder needs, expectations,constraints, and interfaces arecollected and translated intocustomer requirements.
CMMI RUPWorkflow: RequirementsWD: Understand Stakeholder NeedsWD: Analyze the ProblemWD: Define the SystemWorkflow: Configuration and ChangeManagementWD: Manage Change Requests
SG 2: Develop ProductRequirements
Customer requirements are refinedand elaborated to develop productand product componentrequirements for the productlife cycle.
Workflow: RequirementsWD: Refine the System DefinitionWD: Develop Software DevelopmentPlanWorkflow: Analysis and DesignWD: Analyze Behavior
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG76
Requirements Development: Mapping -2CMMI RUP
SG 3: Analyze and ValidateRequirements
The requirements are analyzedand validated, and a definition ofrequired functionality is developed.
Workflow: RequirementsGuidelines: Use-case StoryboardWD: Analyze the Problem,Understand Stakeholder Needs,Define the System, Manage theScope of the System, Refine theSystem Definition, Manage ChangingRequirementsWorkflow: Analysis and DesignWD: Define a CandidateArchitectureWorkflows: Implementation, Test(to create and assess prototypes)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG77
Requirements Development: Synergy -1
Specific Goal
Develop CustomerRequirements
Specific Practice
• Collect Stakeholder Needs (H)• Elicit Needs (Level 2) (H)• Transform Stakeholder Needs, Expectations,
Constraints, and Interfaces into CustomerRequirements (H)
Develop ProductRequirements
• Establish Product and Product ComponentRequirements (H)
• Allocate Product ComponentRequirements (M)
• Identify Interface Requirements (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG78
Requirements Development: Synergy -2
Specific Goal
Analyze and ValidateRequirements
Specific Practice
• Establish Operational Concepts andScenarios (H)
• Establish a Definition of RequiredFunctionality (H)
• Analyze Requirements (H)• Evaluate Product Cost, Schedule and
Risk (Level 3) (H)• Validate Requirements (H)• Validate Requirements with
Comprehensive Methods (Level 2) (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG79
Requirements Development: Detail ExampleSP2.2-1: Allocate the requirements for each product component.
RUP Elements:Workflow: Analysis and Design
Workflow Detail: Analyze BehaviorActivity: Use-case Analysis, Identify Design Elements
Comments: RUP transforms the behavioral descriptions from the usecases into a set of design elements for the product using an object-oriented approach for analysis and design. RUP does not refer to thisset of activities as “requirements flowdown”.
CMMI stipulates that higher-level functionality that becomes theresponsibility of 2+ product components must be partitioned for uniquecomponent allocation. This can lead to a functional design, which RUPexplicitly avoids.
Degree of Synergy: Medium
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG80
CMMI Engineering Process Areas
RD PI
Val
CustomerTS
Ver
REQM Requirements
Customer needs
Product and product component requirements
Product components, work products, verification and validation reports
Productcomponents
Alternativesolutions
Require-ments
Product
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG81
Technical Solution: Overview
PurposeDevelop, design, andimplement solutions torequirements. Solutions,designs and implementationsencompass products, productcomponents, and productrelated processes either singlyor in combinations asappropriate.
CMMI RUPWorkflowsAnalysis and Design, Implementation,Deployment, Project Management
Synergy• RUP addresses the central goals of
forming, designing, and implementingengineered solutions
• RUP provides greater guidance onarchitecture development and validationthan CMMI
• RUP does not explicitly coverconsideration of design alternativesexcept at the architectural level
• RUP does not explicitly cover the use ofselection criteria for product solutions orcomponents
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG82
Technical Solution: Mapping -1
SG 1: Select Product ComponentSolutions
Product or product componentsolutions, including applicableproduct related processes, areselected from alternative solutions.
CMMI RUPWorkflow: Project ManagementWD: Conceive New ProjectArtifact: Business CaseWorkflow: Analysis and DesignWD: Define a Candidate ArchitectureWD: Refine the Architecture
SG 2: Develop the Design
Product or product componentdesigns are developed.
Workflow: Analysis & Design(all workflow details, activities,guidelines, artifacts)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG83
Technical Solution: Mapping -2
CMMI RUPSG 3: Implement the Product Design
Product components, and associatedsupport documentation, areimplemented from their designs.
Workflow: ImplementationWD: Implement ComponentArtifact: Programming GuidelinesWorkflow: DeploymentWD: Develop Support Materials
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG84
Technical Solution: Synergy -1Specific Goal
Select ProductComponent Solutions
Specific Practice
• Develop Alternative Solutions andSelection Criteria (M)
• Develop Detailed Alternative Solutionsand Selection Criteria (Level 2) (L)
• Evolve Operational Concepts andScenarios (Level 2) (H)
• Select Product Component Solutions (M)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG85
Technical Solution: Synergy -2Specific Goal
Develop the Design
Specific Practice
• Use Effective Design Methods (H)• Develop a Technical Data Package (H)• Establish a Complete Technical Data
Package (Level 3) (H)• Establish Interface Descriptions (H)• Design Comprehensive Interface
(Level 3) (H)• Perform Make, Buy, or Reuse Analyses
(Level 3) (L)
Implement theProduct Design
• Implement the Design (H)• Establish Product Support
Documentation (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG86
Technical Solution: Detail ExampleSP1.1-1: Develop alternative solutions and establish selection criteria.RUP Elements:Workflow: Project Management
Artifact: Business CaseWorkflow: Analysis and Design
Workflow Details: Define a Candidate Architecture, Refine theArchitecture
Comments: The Business Case describes at least two approaches to realizing thesystem Vision, and analyze these in terms of capability, risk impact, schedule, andeconomic outcomes. Project options might include differing contractual bases,differing project lifecycles, differing mixes of 'make' and 'buy', and so on During theProject Approval Review, one of the offered choices is selected. RUP providesreferences to sources for risk and decision analysis techniques but does notexplicitly establish criteria.While RUP is very architecture focussed, it does not provide guidance on productcomponent selection.
Degree of Synergy: Medium
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG87
CMMI Engineering Process Areas
RD PI
Val
CustomerTS
Ver
REQM Requirements
Customer needs
Product and product component requirements
Product components, work products, verification and validation reports
Productcomponents
Alternativesolutions
Require-ments
Product
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG88
Product Integration: Overview
PurposeAssemble the product from theproduct components, ensurethat the product, as integrated,functions properly and deliverthe product.
CMMI RUPWorkflowsImplementation, Test, Deployment,Change & ConfigurationManagement, Analysis & Design
Synergy• RUP supports the general intent of
product integration
• RUP does not single interfaces outfor special treatment but does treatthem as first class elements of anydesign and integration
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG89
Product Integration: Mapping -1
SG 1: Prepare for ProductIntegration
The strategy for conducting productintegration is established andmaintained.
CMMI RUPWorkflow: ImplementationWD: Plan the IntegrationArtifact: Integration Build PlanWorkflow: Change and ConfigurationManagementWD: Create Project CM EnvironmentActivity: Create Integration Workspace
SG 2: Ensure Interface Compatibility
The product component interfaces,both internal and external, arecompatible.
Workflow: Analysis and DesignArtifact: Design ModelWorkflow: ImplementationWD: Structure the Implementation Model,Integrate each Subsystem, Integrate theSystemWorkflow: TestWD: Execute Integration Tests, ExecuteSystem Test
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG90
Product Integration: Mapping -2CMMI RUP
SG 3: Assemble ProductComponents and Deliver the Product
Verified product components areassembled and the integrated,verified, and validated product isdelivered.
Workflow: ImplementationWD: Implement ComponentActivity: Perform Unit TestsWD: Integrate Each SubsystemWD: Integrate the SystemWorkflow: TestWD: Execute Test in Integration TestStageWorkflow: DeploymentWD: Product Deployment UnitWD: Package ProductWD: Provide Access to DownloadSite
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG91
Product Integration: Synergy -1Specific Goal
Prepare for ProductIntegration
Specific Practice
• Establish a Product Integration Strategy (H)
• Establish the Product Integration Environment(Level 2) (H)
• Define Detailed Product IntegrationProcedures (Level 3) (H)
Ensure InterfaceCompatibility
• Review Interface Descriptions forCompleteness (H)
• Manage Interfaces (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG92
Product Integration: Synergy -2Specific Goal
Assemble ProductComponents andDeliver the Product
Specific Practice
• Confirm Readiness of Product (H)• Components for Integration (H)• Assemble Product Components (H)• Checkout Assembled Product
Components (H)• Package and Deliver the Product or
Product Components (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG93
Product Integration: Detail ExampleSP2.1-1: Review interface descriptions for coverage andcompleteness.RUP Elements:Workflow: Analysis and Design
Artifact: Design ModelWorkflow: Implementation
Workflow Details: Structure the Implementation Model, Integrateeach Subsystem, Integrate the System
Workflow: TestWorkflow Details: Execute Integration Tests, Execute System Test
Comments: Interfaces are a critical part of the architecture anddesign in RUP. The primary review mechanism is buildingarchitectural prototypes and integrating and testing theexecutables in each iteration such that the interfaces areexercised in a more realistic setting.Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG94
CMMI Engineering Process Areas
RD PI
Val
CustomerTS
Ver
REQM Requirements
Customer needs
Product and product component requirements
Product components, work products, verification and validation reports
Productcomponents
Alternativesolutions
Require-ments
Product
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG95
Verification: Overview
PurposeAssure that selected workproducts meet their specifiedrequirements.
CMMI RUPWorkflowsTest, Environment, Implementation
Synergy• RUP provides good support for
verification practices
• Verification occurs with eachiteration
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG96
Verification: Mapping
SG 1: Prepare for Verification
Preparation for verification isconducted.
CMMI RUPWorkflow: TestWD: Plan TestWD: Design TestWorkflow: EnvironmentWD: Support Environment
SG 2: Perform Peer Reviews
Peer reviews are performed onselected work products.
Work Guideline: Reviews (appliesto all work products in all workflows)
SG 3: Verify Selected Work Products
Selected work products are verifiedagainst their specified requirements.
Workflow: TestWD: Execute Integration TestWD: Execute System TestWD: Evaluate TestWorkflow: ImplementationWD: Implement Component
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG97
Verification: SynergySpecific Goal
Prepare for Verification
Specific Practice
• Establish a Verification Strategy (H)• Establish the Verification Environment
(Level 2) (H)• Establish Detailed Verification
Plans (Level 3) (H)
Perform PeerReviews
• Prepare for Peer Reviews (H)• Conduct Peer Reviews (H)• Analyze Peer Review Data (Level 2) (H)
Verify Selected WorkProducts
• Perform Verification (H)• Analyze Verification Results and
Identify Corrective Actions (Level 2) (H)• Perform Re-Verification (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG98
Verification: Detail ExampleSP3.3-1: Perform re-verification of corrected work products andensure that work products have not been negatively impacted.
RUP Elements:Workflow: Test
Workflow Detail: Execute TestsActivity: Execute Tests in Integration Test StageActivity: Execute Tests in System Test StageActivity: Fix a Defect
Comments: In iterative development, regression testing occurs witheach iteration. If bugs fix are needed, another iteration is performed withits own test activities. For each iteration a new version of the test modelis developed that contains old tests (as regression tests), and new teststhat take new functionality into account.
Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG99
CMMI Engineering Process Areas
RD PI
Val
CustomerTS
Ver
REQM Requirements
Customer needs
Product and product component requirements
Product components, work products, verification and validation reports
Productcomponents
Alternativesolutions
Require-ments
Product
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG100
Validation: Overview
PurposeDemonstrate that a product orproduct component fulfills itsintended use when placed inits intended environment.
CMMI RUPWorkflowsProject Management, Deployment
Synergy• RUP begins validation early with
use case reviews with the usersand continues with eachiteration’s executable evaluatedin a pre-release setting withselected users
• Product acceptance is definedas part of the project plan
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG101
Validation: Mapping
SG 1: Prepare for Validation
Preparation for validation isconducted.
CMMI RUPWorkflow: Project ManagementWD: Develop Product AcceptancePlanWorkflow: DeploymentWD: Beta Test Product
SG 2: Validate Product or ProductComponents
The product or product componentsare validated to ensure that they aresuitable for use in their intendedoperating environment.
Workflow: Project ManagementWD: Close-out ProjectArtifact: Product Acceptance PlanWorkflow: DeploymentWD: Beta Test Product
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG102
Validation: SynergySpecific Goal
Prepare for Validation
Specific Practice
• Establish a Validation Strategy (H)
• Establish the Validation Environment(Level 2) (H)
• Define Detailed Validation Procedures(Level 3) (H)
Validate Product orProduct Components
• Perform Validation (H)• Capture and Analyze Validation Results (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG103
Validation: Detail ExampleSP1.1-1: Establish and maintain a validation strategy.
RUP Elements:Workflow: Deployment
Workflow Detail: Beta Test ProductActivity: Manage Beta Test
Workflow: Project ManagementWorkflow Detail: Develop Product Acceptance Plan
Comments: Inherent to RUP is the continual validation of eachiteration’s executable by actual users in order to identify defectsor disconnects as early as possible. The product acceptanceplan is co-developed with the users.
Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG104
TopicsGoals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
• Project Management• Engineering• Support• Process Management• Generic Practices
Lessons Learned
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG105
CMMI Basic Support Process Areas
PPQAMA
CM
All process areas
Measurements,analyses
Information needs
Configuration items;
change requests
Baselines;audit reports
Processes and work products;standards and
procedures
Quality and noncompliance
issues
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG106
Configuration Management: Overview
PurposeEstablish and maintain theintegrity of work products usingconfiguration identification,configuration control,configuration status accounting,and configuration audits.
CMMI RUPWorkflowConfiguration and ChangeManagement
Synergy• RUP provides good support
mechanisms
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG107
Configuration Management: Mapping -1
SG 1: Establish BaselinesBaselines of identified work productsare established and maintained.
CMMI RUPWorkflow: Configuration andChange ManagementWD: Plan Project Configuration &Change ControlWD: Change & DeliverConfiguration ItemsWD: Manage Baselines & Releases
SG 2: Track and Control ChangesChanges to the work products underconfiguration management aretrackedand controlled.
Workflow: Configuration and ChangeManagementWD: Manage Change Requests
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG108
Configuration Management: Mapping -2
CMMI RUPSG 3: Establish Integrity
Integrity of baselines is establishedand maintained.
Workflow: Configuration and ChangeManagementWD: Monitor and ReportConfiguration Status
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG109
Configuration Management: SynergySpecific Goal
Establish Baselines
Specific Practice
• Identify Configuration Items (H)• Establish a Configuration Management
System (H)• Create or Release Baselines (H)
Track and ControlChanges
• Track Changes (H)• Control Changes (H)
Establish Integrity • Establish ConfigurationManagement Records (H)
• Perform Configuration Audits (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG110
Configuration Management: Detail Example
SP1.3-1: Create or release baselines for internal use and fordelivery to the customer.
RUP Elements:Workflow: Configuration and Change Management
Workflow Detail: Change and Deliver Configuration ItemsWorkflow Detail: Manage Baselines and Releases
Comments: RUP provides for the creation of internal as well asexternal baselines (i.e., deployment unit = an executablecollection of components, documents (end-user support materialand release notes) and installation artifacts).
Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG111
CMMI Basic Support Process Areas
PPQAMA
CM
All process areas
Measurements,analyses
Information needs
Configuration items;
change requests
Baselines;audit reports
Processes and work products;standards and
procedures
Quality and noncompliance
issues
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG112
Process and Product Quality Assurance:Overview
PurposeProvide staff and managementwith objective insight into theprocesses and associatedwork products.
CMMI RUPWorkflowProject Management
Synergy• RUP implements process and
product quality throughout allworkflows, phases, anditerations
• RUP Activity, Artifacts,Guidelines, Checkpoints, andTemplates “encode” whatshould be evaluated
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG113
Process and Product Quality Assurance:Mapping
SG 1: Objectively EvaluateProcesses and Work ProductsAdherence of the performed processand associated work products andservices to applicable processdescriptions, standards andprocedures is objectively evaluated.
CMMI RUPWorkflow: Project ManagementArtifact: Quality Assurance PlanWD: Monitor and Control ProjectActivity: Assess IterationArtifact: Review Record (reviews andcheckpoints in each workflow)
SG 2: Provide Objective InsightNoncompliance issues areobjectively tracked andcommunicated, and resolution isensured.
Workflow: Project ManagementArtifact: Problem Resolution PlanWD: Monitor and Control Project:Activity: Handle Exceptions andProblemsArtifact: Review Record (reviews andcheckpoints in each workflow)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG114
Process and Product Quality Assurance:SynergySpecific Goal
Objectively EvaluateProcesses and WorkProducts
Specific Practice
• Objectively Evaluate Processes (H)• Objectively Evaluate Work Products
and Services (H)
Provide ObjectiveInsight
• Communicate and Ensure Resolutionof Noncompliance Issues (H)
• Establish Records (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG115
Process and Product Quality Assurance:Detail ExampleSP2.1-1: Communicate quality issues and ensure resolution ofnoncompliance issues with the staff and managers.
RUP Elements:Workflow: Project Management
Workflow Detail: Monitor and Control ProjectActivity: Handle Exceptions and Problems
Comments: Following the Problem Resolution Plan, problemmanagement procedures are triggered in Activity: HandleExceptions & Problems based on problems identified in a StatusAssessment, raising of Change Requests to track defects,anomalies discovered during reviews, or through non-conformances raised during process audits and reviews.
Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG116
CMMI Basic Support Process Areas
PPQAMA
CM
All process areas
Measurements,analyses
Information needs
Configuration items;
change requests
Baselines;audit reports
Processes and work products;standards and
procedures
Quality and noncompliance
issues
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG117
Measurement and Analysis: Overview
PurposeDevelop and sustain ameasurement capabilitythat is used to supportmanagement informationneeds.
CMMI RUPWorkflowProject Management
Synergy• RUP provides good support
mechanisms including extensiveguidelines on candidatemeasures of project, process,and product
• RUP does not explicitly addressthe communication ofmeasurement results to dataproviders
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG118
Measurement and Analysis: Mapping
SG 1: Align Measurement andAnalysis Activities
Measurement objectives andpractices are aligned with identifiedinformation needs and objectives.
CMMI RUPWorkflow: Project ManagementWD: Develop SoftwareDevelopment PlanActivity: Develop Measurement PlanGuidelines: Metrics
SG 2: Provide Measurement Results
Measurement results that addressidentified information needs andobjectives are provided.
Workflow: Project ManagementWD: Monitor and Control the ProjectActivity: Monitor Project StatusActivity: Report Status
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG119
Measurement and Analysis: SynergySpecific Goal
Align Measurementand Analysis Activities
Specific Practice
• Establish Measurement Objectives (H)• Specify Measures (H)• Specify Data Collection and Storage
Procedures (H)• Specify Analysis Procedures (H)
Provide MeasurementResults
• Collect Measurement Data (H)• Analyze Measurement Data (H)• Store Data and Results (H)• Communicate Results (H)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG120
Measurement and Analysis: Detail Example
SP2.4-1: Report results of measurement and analysis activities to allaffected stakeholders.
RUP Elements:Workflow: Project Management
Workflow Detail: Monitor and Control the ProjectActivity: Report StatusArtifact: Status Assessment
Comments: Artifact: Status Assessment is drawn from the ProjectMeasurements in Activity: Monitor Project Status. Status Assessment isused to ensure that expectations (i.e., Project Review Authority, projectmanager, and team leads in the functional areas) are synchronized andconsistent. Data providers are not explicitly identified as receivers ofmeasurement data.
Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG121
CMMI Advanced Support Process Areas
DAR
All process areas
CAR
Defects and other problems
Selected issues
Processimprovementproposals
Structured decisions
ProcessManagement
Process Areas
ProcessManagement
Process Areas
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG122
Decision Analysis and Resolution: Overview
PurposeMake decisions using astructured approach thatevaluates identifiedalternatives againstestablished criteria.
CMMI RUPWorkflownone
Synergy• Decision analysis and resolution
processes are outside the scopeof RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG123
Decision Analysis and Resolution: Mapping
SG 1: Evaluate Alternatives
Decisions are based on anevaluation of alternatives usingestablished criteria.
CMMI RUPWorkflow: noneOutside the scope of RUP
SG 2: Provide Measurement Results
Measurement results that addressidentified information needs andobjectives are provided.
Workflow: noneOutside the scope of RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG124
Decision Analysis and Resolution: Synergy
Specific Goal
Evaluate Alternatives
Specific Practice
• Establish and Use Guidelines for DecisionAnalysis (L)
• Select Evaluation Technique (L)• Establish Evaluation Criteria (L)• Identify Proposed Alternatives (L)• Evaluate Alternative Solutions (L)• Select Solutions (L)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG125
CMMI Advanced Support Process Areas
DAR
All process areas
CAR
Defects and other problems
Selected issues
Processimprovementproposals
Structured decisions
ProcessManagement
Process Areas
ProcessManagement
Process Areas
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG126
Causal Analysis and Resolution: Overview
PurposeIdentify causes of defects andother problems and take actionto prevent them from occurringin the future.
CMMI RUPWorkflowProject Management
Synergy• In RUP, the iteration
assessment supplies a naturalpoint in each iteration tointegrate causal analysis andresolution
• Projects would need to developtheir own quantitatively-basedcausal analysis techniques
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG127
Causal Analysis and Resolution: Mapping
SG 1: Determine Causes of Defects
Root causes of defects and otherproblems are systematicallydetermined.
CMMI RUPWorkflow: Project ManagementWD: Manage IterationActivity: Assess IterationArtifact: Iteration Assessment
SG 2: Address Causes of Defects
Root causes of defects and otherproblems are systematicallyaddressed to prevent their futureoccurrence.
Workflow: Project ManagementWD: Plan for Next IterationActivity: Develop Iteration PlanArtifact: Development CaseWorkflow: TestActivity: Execute System Tests
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG128
Causal Analysis and Resolution: Synergy
Specific Goal
Determine Causesof Defects
Specific Practice
• Select Data for Analysis (M)• Analyze Causes (L)
Address Causesof Defects
• Implement the Action Proposals (M)• Evaluate the Effect of Changes (M)• Record Data (L)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG129
Causal Analysis and Resolution: DetailExample
SP1.2-1: Perform causal analysis of selected defects and other problemsand propose actions to address them.RUP Elements:Workflow: Project Management
Workflow Detail: Manage IterationActivity: Assess Iteration, Artifact: Iteration Assessment
Comments: In RUP, each iteration ends with an assessment of the iteration’sobjectives, risks, and defects that is used to modify the project or improve theprocess. Artifact: Iteration Assessment captures the result of an iteration, thedegree to which the evaluation criteria was met, lessons learned, and changes tobe done. While RUP provides an appropriate context for causal analysis, thisCMMI practice assumes a statistical basis for the selection of defects andproblems to address and the use of causal analysis techniques to analyze thedefects. These aspects would need to be added to the iteration assessment,planning the next iteration, updating the development case, and specifying specificproduct and process measures in the measurement plan.
Degree of Synergy: Low
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG130
TopicsGoals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
• Project Management• Engineering• Support• Process Management• Generic Practices
Lessons Learned
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG131
CMMI Basic Process ManagementProcess Areas
OPF OPDResources and
Coordination
OT
Std Processand OtherAssets
Training for Projectsand Support Groups inStd Process and Assets
Organization’sprocess needsand objectives
Std Process and Other
Assets
Senior Management
Organization’sbusiness objectives
Project Management,Support, and
Engineering processareas
Training needs
Improvement information(e.g., lessons learned, data, artifacts)
Process ImprovementProposals; Participationin defining, assessing,and deploying processes
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG132
Organizational Process Focus: Overview
PurposeEstablish and maintain anunderstanding of theorganization's processes andprocess assets, and to identify,plan, and implement theorganization's processimprovement activities.
CMMI RUPWorkflowEnvironment
Synergy• RUP is primarily a project level
tool
• Organizations wanting to useRUP for process managementprocess areas may need to addworkflows to addressorganizational process focusand definition issues
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG133
Organizational Process Focus: Mapping
SG 1: Determine ProcessImprovement OpportunitiesStrengths, weaknesses, andimprovement opportunities for theorganization's processesare identified periodically and asneeded.
CMMI RUPWorkflow: EnvironmentWD: Prepare Environment forProjectActivity: Development-OrganizationAssessment
SG 2: Plan and implement ProcessImprovement Activities
Improvements are planned andimplemented, process assets aredeployed, and process-relatedexperiences are incorporated into theorganization’s process assets.
Workflow: EnvironmentWD: Prepare Environment forProjectActivity: Development-OrganizationAssessment
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG134
Organizational Process Focus: Synergy
Specific Goal
Determine ProcessImprovementOpportunities
Specific Practice
• Establish Organizational Process Needs (L)• Assess the Organization’s Processes (H)• Identify the Organization’s ProcessImprovements (H)
Plan and ImplementProcessImprovementActivities
• Establish Process Action Plans (M)• Implement Process Action Plans (L)• Deploy Process and Related Assets (L)• Incorporate Process-Related Experiencesinto the Organization’s Process Assets (L)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG135
Organizational Process Focus:Detail ExampleSP1.2-1: Assess the processes of the organization periodicallyand as needed to maintain an understanding of their strengthsand weaknesses.
RUP Components:Workflow: Environment
Workflow Detail: Prepare Environment for ProjectActivity: Development Organization Assessment
Comments: When preparing for a new project, RUP provides anactivity to assess the organization’s processes
Degree of Synergy: High
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG136
CMMI Basic Process ManagementProcess Areas
OPF OPDResources and
Coordination
OT
Std Processand OtherAssets
Training for Projectsand Support Groups inStd Process and Assets
Organization’sprocess needsand objectives
Std Process and Other
Assets
Senior Management
Organization’sbusiness objectives
Project Management,Support, and
Engineering processareas
Training needs
Improvement information(e.g., lessons learned, data, artifacts)
Process ImprovementProposals; Participationin defining, assessing,and deploying processes
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG137
Organizational Process Definition:Overview
PurposeEstablish and maintain ausable set of organizationalprocess assets.
CMMI RUPWorkflowEnvironment
Synergy• Organizations could use RUP as
the basis for their OrganizationalStandard Process
• Organizations would need topay attention to Medium andLow synergy areas
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG138
Organizational Process Definition:Mapping
SG 1: Create OrganizationalProcess Assets
A set of organizational processassets is available.
CMMI RUPWorkflow: EnvironmentWD: Develop GuidelinesConcept: Implementing a Process inan OrganizationConcept: Process Configuration
SG 2: Make Supporting ProcessAssets Available
Process assets that support the useof the organization’s set of standardprocesses are available.
Concept: Process Configuration
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG139
Organizational Process Definition:SynergySpecific Goal
Create OrganizationalProcess Assets
Specific Practice
• Establish Standard Processes (M)• Establish Life-Cycle Model Descriptions (M)• Establish Tailoring Criteria and Guidelines (M)
Make SupportingProcess AssetsAvailable
• Establish An Organizational MeasurementRepository (L)
• Establish An Organizational-Process AssetLibrary (M)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG140
Organizational Process Definition:Detail ExampleSP1.2-1: Establish and maintain descriptions of the life-cycleprocess models approved for use in the organization.
RUP Components:Concepts: Process Configuration
Comments: Supplementary information suggests that RUP canbe the organization's standard process. Following RUP shouldallow organizations to describe many life cycle types. RUPsuggests that there may be more than one organization-wideprocess, one for each different type of development.
Degree of Synergy: Medium
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG141
CMMI Basic Process ManagementProcess Areas
OPF OPDResources and
Coordination
OT
Std Processand OtherAssets
Training for Projectsand Support Groups inStd Process and Assets
Organization’sprocess needsand objectives
Std Process and Other
Assets
Senior Management
Organization’sbusiness objectives
Project Management,Support, and
Engineering processareas
Training needs
Improvement information(e.g., lessons learned, data, artifacts)
Process ImprovementProposals; Participationin defining, assessing,and deploying processes
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG142
Organizational Training: Overview
PurposeDevelop the skills andknowledge of people so theycan perform their roleseffectively and efficiently.
CMMI RUPWorkflownone
Synergy• Organizational training issues
are outside the scope of RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG143
Organizational Training: Mapping
SG 1: Identify Training Needs andMake Training AvailableTraining to support the organization’smanagement and technical roles isidentified and made available.
CMMI RUPWorkflow: noneOutside of the scope of RUP
SG 2: Provide Necessary TrainingTraining necessary for individuals toperform their roles effectively isprovided.
Workflow: noneOutside of the scope of RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG144
Organizational Training: SynergySpecific Goal
Identify Training Needsand Make TrainingAvailable
Specific Practice
• Establish the Strategic Training Needs (L)• Determine which Training Needs are
the Responsibility of the Organization (L)• Establish and Maintain Organizational Training
Tactical Plan (L)• Establish and Maintain Training Capability (L)
Provide NecessaryTraining
• Deliver Training (L)• Establish Training Records (L)• Assess Training Effectiveness (L)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG145
CMMI Advanced Process ManagementProcess Areas
Senior Management
OPPProgress toward
achieving businessobjectives
OID
Quality and process performance objectives,
measures, baselines, models
Cost and benefitdata from pilotedimprovements
Quality and processperformance objectives,
measures, baselines,models
Process performanceand capability data
“Basic Set” of ProcessManagement
Process Areas
Project Management,Support, and
Engineering processareas
Ability to developand deploy processand supporting assets
Organization Improvements
Common measures
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG146
Organizational Process Performance:Overview
PurposeEstablish and maintain aquantitative understanding ofthe performance of theorganization’s set of standardprocesses, and to provide theprocess performance data,baselines, and models toquantitatively manage theorganization’s projects.
CMMI RUPWorkflownone
Synergy• Establishing a quantitative
understanding of anorganization’s set of processesis outside the scope of RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG147
Organizational Process Performance:Mapping
SG 1: Establish PerformanceBaselines and ModelsBaselines and models thatcharacterize the expected processperformance of the organization's setof standard processes areestablished and maintained.
CMMI RUPWorkflow: noneOutside of the scope of RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG148
Organizational Process Performance:SynergySpecific Goal
Establish PerformanceBaselines and Models
Specific Practice
• Select Processes (L)• Establish Process Performance Measures (L)• Establish Quality and Process PerformanceObjectives (L)
• Establish Process Performance Baselines (L)• Establish Process Performance Models (L)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG149
CMMI Advanced Process ManagementProcess Areas
Senior Management
OPPProgress toward
achieving businessobjectives
OID
Quality and process performance objectives,
measures, baselines, models
Cost and benefitdata from pilotedimprovements
Quality and processperformance objectives,
measures, baselines,models
Process performanceand capability data
“Basic Set” of ProcessManagement
Process Areas
Project Management,Support, and
Engineering processareas
Ability to developand deploy processand supporting assets
Organization Improvements
Common measures
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG150
Organizational Innovation and Deployment:Overview
PurposeSelect and deploy incrementaland innovative improvementsthat measurably improve theorganization’s processes andtechnologies. Theimprovements support theorganization’s quality andprocess performanceobjectives as derived from theorganization’s businessobjectives.
CMMI RUPWorkflownone
Synergy• Establishing measurable
objectives for incremental andinnovative process improvementis outside the scope of RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG151
Organizational Innovation and Deployment:Mapping
SG 1: Select ImprovementsProcess and technologyimprovements that contribute tomeeting quality and processperformance objectives are selected.
CMMI RUPWorkflow: noneOutside of the scope of RUP
SG 2: Deploy ImprovementsMeasurable improvements to theorganization’s processes andtechnologies are continually andsystematically deployed.
Workflow: noneOutside of the scope of RUP
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG152
Organizational Innovation and Deployment:Synergy
Specific Goal
Select Improvements
Specific Practice
• Collect and Analyze ImprovementProposals (L)
• Identify Innovations (L)• Pilot Improvements (L)• Select Improvements for Deployment (L)
Deploy Improvements • Plan the Deployment (L)• Manage the Deployment (L)• Measure Improvement Effects (L)
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG153
TopicsGoals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
• Project Management• Engineering• Support• Process Management• Generic Practices
Lessons Learned
Conclusions
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG154
Continuous Representation Structure
GenericGoals
& Generic Practices
GenericGoals
& Generic Practices Specific
Goals&
SpecificPractices
SpecificGoals
& SpecificPractices
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG155
The Capability Levels
5 Optimizing
4 Quantitatively Managed
3 Defined
2 Managed
1 Performed
0 Incomplete
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG156
Capability Level 0
Generic Goal
There are none
Generic Practices
• There are none
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG157
Capability Level 1
Generic Goal
Achieve Specific Goals
Generic Practices
• Identify Work Scope• Perform Base Practices
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG158
Capability Level 2
Generic Goal
Institutionalize aManaged Process
Generic Practices
• Establish and Maintain an Organizational Policy• Plan the Process• Provide Resources• Assign Responsibility• Train People• Manage Configurations• Identify and Involve Relevant Stakeholders• Monitor and Control the Process• Objectively Evaluate Adherence• Review Status with Higher-Level Management
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG159
Capability Level 3
Generic Goal
Institutionalize aDefined Process
Generic Practices
• Establish a Defined Process• Collect Improvement Information
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG160
Capability Level 4
Generic Goal
Institutionalize aQuantitativelyManaged Process
Generic Practices
• Establish Quality Objectives• Stabilize Subprocess Performance
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG161
Capability Level 5
Generic Goal
Institutionalize anOptimizing Process
Generic Practices
• Ensure Continuous Process Improvement• Correct Common Causes of Problems
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG162
Topics
Goals and Purpose
CMMI Overview
RUP Overview
RUP to CMMI Mapping
Lessons Learned
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG163
… On Planning the Comparison• Determining the goals/objectives for the comparison
before doing the comparison is key
• Comparison objectives, expected results, degree of rigor,and needed resources must be consistent to achievereasonable results
• Determining the “level” on which to base the comparisonmust be part of setting the objectives and expected results
• Determining how comparison results will be capturedbefore the review starts expedites the review
• Having all reviewers capture their findings in a similarmanner is vital for later consolidation and reporting
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG164
… On Executing the Comparison• Prototyping the level of comparison to see if you get the
desired results before the review saves rework
- Avoid comparisons below the Specific Practice level
• Determining the basic principles that drive both the CMMIand the target process are essential to any validcomparison
• Determining the lexicon of the target process is essentialfor a valid review
- Vital to understand the intent of a CMMI specific practicebut don’t expect an exact match of terminology
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG165
… On Resources Used in the Comparison
• Reviewers need to be familiar (but not necessarily experts)with CMMI and the target process
• Reviewers must include resources that have in-depthunderstanding of CMMI and the target process (notnecessarily the same person)
• Reviewers need to have a common understanding
- Comparison objectives and expected results
- Level of comparison, “rating” scheme, form of findingscapture
- Lexicon and basic principles of the target process
- Intent of CMMI process areas
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG166
CMMI Observations
CMMI provides good guidance on general systems developmentpractices and institutionalization of process practices
CMMI could better address
• Architecture-related practices
• Recursive nature of the process elements in the engineeringprocess areas
• “Waterfall” appearance of the engineering process areas
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG167
RUP ObservationsRUP provides strong engineering, basic support, and basic projectmanagement practices• Clear definition of roles and responsibilities• Integration of engineering and project management activities• Use of iterations to mitigate risks as early as possible• Validation of requirements and solutions• Focus on early architecture definition and validation
Organizations using RUP may have need to address• Statistical process control• Organizational process elements• Subcontractor or vendor management practices• Institutionalization of processes
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG168
Parting Thoughts
RUP is a software engineering process that is integrated with asuite of software development tools.
CMMI is a process framework that integrates systems andsoftware engineering process elements and the organizationalprocesses necessary to institutionalize them.
RUP and CMMI complement each other in achieving a maturesoftware development organization.
© 2001 by Carnegie Mellon University RU{/CMMI Tutorial - ESEPG169
Contact Information
Brian Gallagher
Software EngineeringInstitute4500 5th AvePittsburgh, PA 15213USA
Voice: +1 412.268.7157Email: [email protected]
Lisa Brownsword
Software EngineeringInstitute4301 Wilson Blvd, Suite 902Arlington, VA 22203USA
Voice: +1 703.908.8203Email: [email protected]