Tải bản đầy đủ (.pdf) (50 trang)

Lecture Software process improvement: Lesson 13 - Dr. Ghulam Ahmad Farrukh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (423.45 KB, 50 trang )

Introduction to CMMI
Lecture # 13

1

1


Introduction to CMMI
• CMMI is an acronym for Capability
• Maturity Model Integration
• Some people would say the CMMI is a 
model, while others would describe it as a 
set of models
• But most will agree that the CMMI is a 
merger of process improvement models for 
systems engineering, software engineering, 
2
hardware engineering, and integrated teams


Introduction to CMMI
• Some of the goals of the CMMI are to 
provide a common vocabulary across the 
set of models and to provide clarification on 
how these areas interrelate
• The integrated model has both a continuous 
and staged perspective

3


3


Introduction to CMMI
• Let’s discuss the differences between the 
CMMI, a process model, a process, a 
process description, a procedure, and an 
appraisal
• Some people have a problem because they 
think CMMI is a process or a set of 
processes
• It is neither
4

4


What is CMMI?
• CMMI is a process model
• The CMMI cannot just be copied as is and 
serve as an organization’s processes
• CMMI is a collection of best practices from 
highly functioning organizations collected 
to help you improve your processes by 
describing what things or activities should 
be done in your organization
5

5



What is a Process?
• A process is what you really do in your 
organization
• The process is written down as the activities 
or steps you go through to perform work
• Your organization’s processes must be 
documented to be real, to be performed 
consistently, and to be improved
6

6


What is a Process?
• If your organization has undocumented 
processes and you believe that these 
processes are used consistently then you are 
living in a world of denial
• The CMMI recommends certain attributes 
that are necessary when documenting 
processes
7

7


What is a Process Description?
• A process description is a “documented 
expression of a set of activities to achieve a 

given purpose”
• The process description documents the 
steps of the process performed, that is, what 
you do when you perform a task
• Closely related are procedures that describe 
the step­by­step instructions on how to 
8
perform the steps in the process 8


What is an appraisal?
• An appraisal is a way to evaluate the 
organization’s processes and procedures, 
how they were implemented, to what extent 
they are followed, and to what extent they 
map to the CMMI practices

9

9


CMMI
• In the CMMI world, SCAMPI (Standard 
CMMI Appraisal Method for Process 
Improvement) is a set of appraisal methods 
that differ in their intent and rigor
• The SCAMPI can be used for internal 
process improvement, supplier selection, 
process monitoring, and for maturity or 

capability level ratings for contract awards
10

10


CMMI
• The CMMI is used as a guideline to create 
processes and procedures
• CMMI is used as the reference model for 
the SCAMPI appraisal method to examine 
the organization’s processes and procedures

11

11


Relationship between Key Terms

12

12


Relationship between Key Terms

13

13



Short History of CMMI

14

14


Short History of CMMI
• People were successfully using the 
Capability Maturity Model, which was 
designed for improving software processes 
and measuring the maturity of software 
processes in an organization
• This success brought more and more 
attention to model­based process 
improvement in other areas
15

15


What Models Do I Use?
• Historically:  Depends on the discipline that 
you want to model.







Software Engineering
Systems Engineering
Software Acquisition
Systems Security
etc.
16

16


What is CMM?
• Capability Maturity Model: 

A reference model of mature practices in a 
specified discipline, used to assess a group’s 
capability to perform that discipline

• CMMs differ by
– Discipline (software, systems, acquisition, etc.)
– Structure (staged versus continuous)
– How Maturity is Defined (process improvement 
path)
17
– How Capability is Defined (institutionalization)

17



Commonly Used CMMs

18

18


Commonly Used CMMs
Software CMM

staged
development

software 

System Engineering CMM

continuous
engineering

system 

System Engineering Capability Model

continuous
engineering

system 

Software Acquisition CMM


staged
acquisition

software 

System Security Engineering CMM

continuous
engineering

security 

Personal Software Process

staged
individual 
software development

FAA­iCMM

continuous
software 
engineering, systems 
engineering, and acquisition

IPD­CMM

19
hybrid


19

integrated 


System and Software Divide

20

20


System and Software Divide
• Systems and software 
Systems
disciplines have 
traditionally not been well 
integrated
• The importance of software 
in systems has increased 
dramatically
• There was need to make the 
systems/software interface 
more seamless

Software

21


21


So Many Models, So little Time

22

22


So Many Models, So Little Time
• Different structures, 
formats, terms, ways of 
measuring maturity
• Causes confusion, 
especially when using 
more than one model
• Hard to integrate them in a 
combined improvement 
program
• Hard to use multiple 
models in supplier 
selection

Software
CMM

EIA 731

Systems

Engr
CMM
IPD
CMM

Software
Acq
CMM

FAA
iCMM

23

ZZZ
CMM

People
CMM

Systems
Security
Engr CMM
23


CMMI Comes to Rescue
• Integrates systems and software disciplines 
into one process improvement framework
• Provides a framework for introducing new 

disciplines as needs arise

24

24


Bridging the Divide

25

25


×