Spread Knowledge

CS605 - Software Engineering II - Lecture Handout 44

User Rating:  / 0
PoorBest 

Related Content: CS605 - VU Lectures, Handouts, PPT Slides, Assignments, Quizzes, Papers & Books of Software Engineering II

Capability Maturity Model Integration (CMMI)

Capability Maturity Model or CMM is a reference model of mature practices in a specified discipline, used to assess a group’s capability to perform that discipline. In fact there are a number of CMMs. They differ by discipline (software, systems, acquisition, etc.), structure (staged versus continuous), how maturity is defined (process improvement path), and how capability is defined (institutionalization). Hence “Capability Maturity Model®” and CMM® are used by the Software Engineering Institute (SEI) to denote a particular class of maturity models.

Software CMM, the one we saw earlier on, is one of the many CMM models.

Name

Structure

Domain

Software CMM

staged

software development

System Engineering CMM

continuous

system engineering

Software Acquisition CMM

staged

software acquisition

System Security Engineering CMM

continuous

security engineering

FAA-iCMM

continuous

software engineering, systems engineering, and acquisition

IPD-CMM

hybrid

integrated product development

People CMM

staged

workforce

SPICE Model

continuous

software development


Since these models have different structure and application domains, an organization could potentially use many of these models for their different activities, at times it could become problematic for them.

CMMI Integrates systems and software disciplines into single process improvement framework and provides a framework for introducing new disciplines as needs arise. It can now be applied to just the software engineering projects in an organization or for the entire spectrum of activities outlined above.

CMMI Representations

A representation allows an organization to pursue different improvement objectives. There are two types of representations in the CMMI models: staged and continuous. The organization and presentation of the data are different in each representation.  However, the content is the same.

Staged Representation

Staged representation is classical representation we have already seen previously. It:

    • Provides a proven sequence of improvements, each serving as a foundation for the next.
    • Permits comparisons across and among organizations by the use of maturity levels.
    • Provides an easy migration from the SW-CMM to CMMI.
    • Provides a single rating that summarizes appraisal results and allows comparisons among organizations
    This representation indicates maturity of an organization’s standard process -- to answer, “What is a good order for approaching improvement across the organization?”

    You may recall that a maturity level is a well-defined evolutionary plateau of process improvement. There are five maturity levels and each level is a layer in the foundation for continuous process improvement using a proven sequence of improvements, beginning with basic management practices and progressing through a predefined and proven path of successive levels.

    Each maturity level provides a necessary foundation for effective implementation of processes at the next level. Higher level processes have less chance of success without the discipline provided by lower levels. The effect of innovation can be obscured in a noisy process.

    Higher maturity level processes may be performed by organizations at lower maturity levels, with the risk of not being consistently applied in a crisis.

    Continuous Representation

    Continuous representation allows you to select the order of improvement that best meets your organization’s business objectives and mitigates your organization’s areas of risk. It enables comparisons across and among organizations on a process-area-by-process-area basis and provides an easy migration from EIA 731 (and other models with a continuous representation) to CMMI.

    As opposed to the staged representation, it indicates improvement within a single process area -- to answer, “What is a good order for approaching improvement of this process area?”

    Capability Levels

    A capability level is a well-defined evolutionary plateau describing the organization’s capability relative to a process area. There are six capability levels. For capability levels 1-5, there is an associated generic goal. Each level is a layer in the foundation for continuous process improvement. Thus, capability levels are cumulative, i.e., a higher capability level includes the attributes of the lower levels. The five (actually six) capability levels (starting from 0) are enumerated below in the reverse order, 5 being the highest and 0 being the lowest.

    1. Optimizing
    2. Quantitatively Managed
    3. Defined
    4. Managed
    5. Performed
    6. Incomplete

    The process area capability of an implemented process can be represented by a bar as shown below

    Capability Levels

    Relating Process Area Capability and Organizational Maturity

    Organizational maturity is the focus of the staged representation, whereas process area capability is the focus of the continuous representation.

    Organizational maturity and process area capability are similar concepts. The difference between them is that organizational maturity pertains to a set of process areas across an organization, while process area capability deals with a set of processes relating to a single process area or specific practice.

    Comparison of Representations

    Staged

    • Process improvement is measured using maturity levels.
    • Maturity level is the degree of process improvement across a predefined set of process areas.
    • Organizational maturity pertains to the “maturity” of a set of processes across an organization

    Continuous

    • Process improvement is measured using capability levels.
    • Capability level is the achievement of process improvement within an individual process area.
    • Process area capability pertains to the “maturity” of a particular process across an organization.

    Advantages of Each Representation

    Staged provides a roadmap for implementing groups of process areas and sequencing of implementation. It has a familiar structure for those transitioning from the Software CMM.

    Continuous provides maximum flexibility for focusing on specific process areas according to business goals and objectives and has a familiar structure for those transitioning from EIA 731.

    As the staged representation requires all KPAs to be addressed at a particular level before a company can move to the next maturity level, it may not be easy for small companies to implement this model. There may be a number of activities that may not be relevant to their type of work but they would still have to do them in order to be at a certain level. On the other hand, organization can focus on their own areas of expertise and may be able to achieve high capability levels in some areas without bothering about the rest. This is a great advantage for small organization and hence this model is believed to be more suitable for small Pakistani organizations than the staged one.