cmmirup

8
A CMMI Maturity Level 2 Assessment of RUP Level: Introductory Markus Grundmann, Consultant, IT Process Optimization 15 Dec 2005 http://www-128.ibm.com/developerworks/rational/library/dec05/grundmann/ From The Rational Edge: This article examines how well the IBM Rational Unified Process (now available as part of the new IBM Rational Method Composer) can help software development organizations achieve a higher process maturity level. It assesses RUP coverage in teams of process areas defined by Level 2 of the Capability Maturity Model Integration (CMMI) and identifies areas to supplement in RUP in order to compensate for the gaps. More dW content related to: requirements for achieving maturity level The rapid pace of modern software development has created some serious challenges for development teams: Requirements invariably change over the lifecycle of a project. You can't get the model right on paper the first time, as you can when building a bridge, for example.  State-of-the-art projects cannot rely on proven technologies. These problems have had a severe impact on project success rates, 1 as documented by the Standish Group in their Chaos Report. As Figure 1 shows, although these rates rose by 75 percent between 1994 and 2000, still only 28  percent of all projects were delivered as planned in 2000. Figure 1: Software development project success rates from the Standish Chaos Report 2001 The IBM Rational Unified Process, or RUP, is rooted in a set of best practices that address the challenges outlined above. It helps software development 

Upload: pedro-monteiro

Post on 06-Apr-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CMMIRUP

8/3/2019 CMMIRUP

http://slidepdf.com/reader/full/cmmirup 1/8

A CMMI Maturity Level 2 Assessment of RUPLevel: IntroductoryMarkus Grundmann, Consultant, IT Process Optimization15 Dec 2005http://www-128.ibm.com/developerworks/rational/library/dec05/grundmann/

From The Rational Edge: This article examines how well the IBM Rational UnifiedProcess (now available as part of the new IBM Rational Method Composer) can

help software development organizations achieve a higher process maturity level.It assesses RUP coverage in teams of process areas defined by Level 2 of theCapability Maturity Model Integration (CMMI) and identifies areas to supplement inRUP in order to compensate for the gaps.

More dW content related to: requirements for achieving maturity level

The rapid pace of modern software development has created some seriouschallenges for development teams:

• Requirements invariably change over the lifecycle of a project. 

• You can't get the model right on paper the first time, as you can whenbuilding a bridge, for example. 

• State-of-the-art projects cannot rely on proven technologies.

These problems have had a severe impact on project success rates,1 as

documented by the Standish Group in their Chaos Report. As Figure 1 shows,although these rates rose by 75 percent between 1994 and 2000, still only 28

 percent of all projects were delivered as planned in 2000.

Figure 1: Software development project success rates from the StandishChaos Report 2001

The IBM Rational Unified Process, or RUP, is rooted in a set of best practices that address the challenges outlined above. It helps software development 

Page 2: CMMIRUP

8/3/2019 CMMIRUP

http://slidepdf.com/reader/full/cmmirup 2/8

organizations to determine which roles can best perform certain activities and defines a set of artifacts (i.e., deliverables) that support these activities. In

addition, it models the interactions and dependencies between these elements,thereby bringing greater transparency to the project.Complementing RUP, with its execution-oriented approach and detailed guidelines,are process improvement frameworks such as ISO 9000:2000, the eSourcing

Capability Model for Service Providers (eSCM), and the Capability Maturity Model Integration (CMMI), which operate on a more generic level. They focus on

structuring an organization to achieve process-driven quality and leave the detailsof how to execute the process up to each organization.

This article examines RUP's capability to help organizations achieve a high level of  process quality, using the Capability Maturity Model Integration for Software(CMMI-SW 1.1) for the assessment.

The CMMIThe CMMI helps organizations sharpen their competitive edge by providing better

predictability and greater efficiency, ultimately leading to lower costs and moresatisfied customers. Data gathered during CMMI process improvement initiatives

at companies such as Siemens, JP Morgan, Chase, and Lockheed Martin tells usthat supporting a major process improvement initiative requires between 2

percent and 10 percent of the engineering power involved in a project. But thebenefits of implementing CMMI more than compensate for this effort, as a study2 

published by the Software Engineering Institute (SEI) of Carnegie MellonUniversity shows. The median distribution of the improvement percentages is asfollows:

• 20 percent cost reduction

• 37 percent more likely to be on schedule

• 67 percent productivity increase

• 50 percent fewer defects

• 14 percent higher customer satisfaction

Of course, a CMMI implementation entails additional engineering and process-related costs. But again, the study reveals that the positive impact clearly

overweighs these costs: Implementations typically deliver a return on investmentof almost 5:1.

Using the CMMI to assess RUP gives organizations a means to compare RUP withother processes and process models to see where it might need augmentationwhen used as a standalone process. Managers can also use this assessment to see

where they might use RUP productively to supplement their organization's currentprocesses.

CMMI Maturity Level 2 appraisalCMMI offers two architectural representations: "continuous" and "staged."

The continuous version groups the CMMI process areas by four process areacategories:

Page 3: CMMIRUP

8/3/2019 CMMIRUP

http://slidepdf.com/reader/full/cmmirup 3/8

Page 4: CMMIRUP

8/3/2019 CMMIRUP

http://slidepdf.com/reader/full/cmmirup 4/8

• Project Monitoring and Control

• Supplier Agreement Management

• Measurement and Analysis• Process and Product Quality Assurance

• Configuration Management

Each process area contains one or more goals, which you can meet byimplementing that process area's practices. A practice, the smallest unit in CMMI,represents a goal requirement.

According to SCAMPI, a practice can be implemented in four degrees:

1. Fully implemented: Elements addressing this practice are present, and

there are no substantial weaknesses.2. Largely implemented: Elements addressing this practice are present, but

there are some weaknesses.3. Partially implemented: Elements primarily addressing this practice are

absent, but elements that cover part of this practice as a side-effect are

present; there are weaknesses with regard to this method.4. Not implemented: The practice requirements are not met.

SCAMPI defines a practice as fulfilled if it is at least "largely implemented." Thecorresponding goal is achieved if all practices are fulfilled, and the process area iscovered if all goals are met. You achieve a maturity level by meeting all of its

process area goals and generic goals. For example, a generic goal in Level 2 is:

• Institutionalize a managed process.

Generic goals apply to several process areas and are therefore treated separately.

But achieving them is mandatory.

CMMI Maturity Level 2 appraisal of RUPTables 1-6 show RUP coverage for six of the CMMI Maturity Level 2 process areas.

Table 1: RUP coverage for the Requirements Management process area

Table 2: RUP coverage for the Project Planning process area

Page 5: CMMIRUP

8/3/2019 CMMIRUP

http://slidepdf.com/reader/full/cmmirup 5/8

Table 3: RUP coverage for the Project Monitoring and Control process

area

Table 4: RUP coverage for the Measurement and Analysis process area

Table 5: RUP coverage for the Process and Product Quality Assurance

Page 6: CMMIRUP

8/3/2019 CMMIRUP

http://slidepdf.com/reader/full/cmmirup 6/8

process area

Table 6: RUP coverage for the Configuration Management process area

Two process areas that can supplement RUPIn addition to the process areas discussed above, we should note that RUP does

not provide sufficient coverage of the Supplier Agreement process area and the

generic goal Institutionalize a Managed Process. Organizations using RUP can useCMMI requirements to supplement RUP in these areas.

Supplier Agreement ManagementRUP provides no implementation of the Supplier Agreement Management processarea. Because of its focus on software development, RUP assumes that theorganization will develop the entire product. This is a weak spot because relying

on proven solutions may be a better alternative than custom developingeverything; you can integrate commercial-off-the-shelf (COTS) products or

components and still create a new product that delivers value to the customer.Often, this can also help lower development costs and shorten delivery time. Table

7 shows the practices under the CMMI Supplier Agreement Management processarea; organizations using RUP can use this to supplement RUP guidelines.

Table 7: RUP coverage for the Supplier Agreement Management process

Page 7: CMMIRUP

8/3/2019 CMMIRUP

http://slidepdf.com/reader/full/cmmirup 7/8

area

Institutionalize a Managed ProcessRUP also does not consider staff training because it focuses on the project ratherthan on broader organizational needs. Although it includes an activity involvingstaffing, it merely states that roles should be staffed with people who have the

required skill-set, experience, and capabilities. Table 8 shows the practices underthe CMMI Institute a Managed Process process area. Again, organizations using

RUP can use this to supplement RUP guidelines.

Table 8: RUP coverage for the Institutionalize a Managed Process processarea

ConclusionAlthough RUP covers 97 percent of the CMMI requirements for Maturity Level 2, it

cannot actually perform at this level when implemented without anysupplementary practices. That is because it does not include two Level 2 processareas, which cover essential best practices for project implementation.

Of course, a project that uses RUP might fail for reasons having nothing to do witheither of these two process areas, but supplementing RUP in the areas identified

by the CMMI appraisal represents another step organizations can take to helpprevent failure. Note that I am not urging managers to order the creation of 

dozens of documents and the execution of needless activities just to achieve CMMI

Page 8: CMMIRUP

8/3/2019 CMMIRUP

http://slidepdf.com/reader/full/cmmirup 8/8

compliance. The goal of a project is ultimately to satisfy a client's needs, andframeworks such as CMMI are designed to help you achieve this. Execution of 

activities and the creation of artifacts should only happen in a real-world scenariowhen they are needed by the project.Fortunately, RUP is built upon an extensible architecture that allows you to useplug-ins to adapt the process to your needs. A good variety of existing plug-ins

already do address some of the needs I have identified above. The COTS plug-in,for example, could be used for implementing the identified lack of supplier

agreement management.You can also implement additions through a set of tools recently issued for the

IBM Rational Method Composer solution. These allow tool-driven customization of the RUP and support plug-in development. You can use these tools for developingplug-ins based on this assessment, for other needs you identify, or to integrateRUP into an existing organizational process that covers the topics.

Organizations might want to implement additions as separate plug-ins so they canlater select process components as plug-ins out of their organizational process

assets for addressing specific needs (e.g., what skills are required, whether COTS

is an option, etc.) and the level of formality required for a specific project.Although RUP does require supplementation to achieve Maturity Level 2, I wouldstill recommend it to organizations that strive for CMMI compliancy. Its open

architecture allows you to reuse existing solutions, to address gaps in coverage,and to merge RUP relatively easily into your existing corporate processes. As aprocess model attribute, this openness is a critical factor because it allowsseamless integration, which is a great advantage when communicating change

processes and process improvement. RUP has the tools necessary for integrationof subprocesses through plug-ins and customization already built in, and that is a

huge advantage for any organization striving for the best development process.

Notes1 Successful projects = those that are delivered on time and within budget.2 http://www.sei.cmu.edu/cmmi/results.html

About the author As a consultant for IT process optimization, Markus Grundmann has worked atIBM Research and Development on grid computing and at Pinnacle Systems in the

fields of object-oriented development and architectures. He completed an M.S. inbusiness information science while working at IBM Rational on process

integration. He can be reached via his Website at www.MarkusGrundmann.de