0% found this document useful (0 votes)
20 views

Capability Maturity Model

The document discusses the Capability Maturity Model (CMM) which is used to assess the maturity of an organization's software processes. It describes the five levels of the CMM from initial to optimizing. It also discusses the Capability Maturity Model Integration (CMMI) which is an evolution of the CMM and incorporates multiple disciplines. The document provides details on the levels, goals, and challenges of implementing the CMM and CMMI frameworks.

Uploaded by

thegautam015
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Capability Maturity Model

The document discusses the Capability Maturity Model (CMM) which is used to assess the maturity of an organization's software processes. It describes the five levels of the CMM from initial to optimizing. It also discusses the Capability Maturity Model Integration (CMMI) which is an evolution of the CMM and incorporates multiple disciplines. The document provides details on the levels, goals, and challenges of implementing the CMM and CMMI frameworks.

Uploaded by

thegautam015
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

SOFTWARE ENGINEERING

ASSIGNMENT 1

GAUTAM PRADEEP
9921004218
Capability Maturity Model(CMM)
The Capability Maturity Model (CMM) is a procedure used to
develop and refine an organization's software development
process. The model defines a five-level evolutionary stage of
increasingly organized and consistently more mature processes.
CMM was developed and is promoted by the Software Engineering
Institute (SEI), a research and development center promote by the
U.S. Department of Defense (DOD). Capability Maturity Model is
used as a benchmark to measure the maturity of an organization's
software process.

It is a methodology used to assess and improve the processes


within an organization, with the goal of enhancing the quality of
products or services delivered. CMM provides a structured
approach for organizations to measure and enhance their
capabilities in managing and developing products, processes, and
service.

Methods of CMM
Capability Evaluation: Capability evaluation provides a way to
assess the software process capability of an organization. The
results of capability evaluation indicate the likely contractor
performance if the contractor is awarded a work. Therefore, the
results of the software process capability assessment can be used
to select a contractor.
Software Process Assessment: Software process assessment is
used by an organization to improve its process capability. Thus, this
type of evaluation is for purely internal use.

SEI CMM categorized software development industries into the


following five maturity levels. The various levels of SEI CMM have
been designed so that it is easy for an organization to build its
quality system starting from scratch slowly.

What is Maturity?
Levels of Maturity: CMM categorizes an organization's processes into
different maturity levels, which represent increasing levels of process
capability and improvement.

Levels of CMM
 Level 1: Initial

Ad hoc activities characterize a software development organization


at this level. Very few or no processes are described and followed.
Since software production processes are not limited, different
engineers follow their process and as a result, development efforts
become chaotic. Therefore, it is also called a chaotic level.
 Level 2: Managed

At this level, the fundamental project management practices like


tracking cost and schedule are established. Size and cost estimation
methods, like function point analysis, COCOMO, etc. are used.

 Level 3: Defined

At this level, the methods for both management and development


activities are defined and documented. There is a common
organization-wide understanding of operations, roles, and
responsibilities. The ways through defined, the process and product
qualities are not measured. ISO 9000 goals at achieving this level.

 Level 4: Managed

At this level, the focus is on software metrics. Two kinds of metrics


are composed.

Product metrics measure the features of the product being


developed, such as its size, reliability, time complexity,
understandability, etc.

Process metrics follow the effectiveness of the process being used,


such as average defect correction time, productivity, the average
number of defects found per hour inspection, the average number
of failures detected during testing per LOC, etc. The software
process and product quality are measured, and quantitative quality
requirements for the product are met. Various tools like Pareto
charts, fishbone diagrams, etc. are used to measure the product
and process quality. The process metrics are used to analyze if a
project performed satisfactorily. Thus, the outcome of process
measurements is used to calculate project performance rather than
improve the process.

 Level 5: Optimizing

At this phase, process and product metrics are collected. Process


and product measurement data are evaluated for continuous
process improvement.
Challenges of CMM:
 Resource Intensive:
Achieving higher maturity levels can require significant
investments in terms of time, effort, and resources.
 Rigidity:
In some cases, excessive focus on process documentation
and standardization can lead to a rigid environment that may
stifle creativity and innovation.
 Cultural Change:
Implementing CMM practices often requires a cultural shift
within the organization, which can be challenging to achieve.
 Overemphasis on Documentation:
While documentation is important, an overemphasis on it
can lead to a bureaucratic and paperwork-heavy approach.
 Long Implementation Time:
Progressing through the maturity levels can take years, and
some organizations may struggle to maintain motivation and
momentum
Capability Maturity Model Integration (CMMI)
Capability Maturity Model Integration (CMMI) is a successor of
CMM and is a more evolved model that incorporates best
components of individual disciplines of CMM like Software CMM,
Systems Engineering CMM, People CMM, etc. Since CMM is a
reference model of matured practices in a specific discipline, so it
becomes difficult to integrate these disciplines as per the
requirements. This is why CMMI is used as it allows the integration
of multiple disciplines as and when needed.
The CMMI, however, is a behavioral model in addition to a
process model. Businesses may use the CMMI to build
quantifiable standards for performance improvement, but CMMI
can also assist establish a framework for promoting effective
behavior across the organization. The primary goal of CMMI is to
assist organizations in achieving better performance by
optimizing their processes, managing risks, and continuously
improving their practices. It provides a structured approach to
process improvement that is based on a five-level maturity model
Levels of CMMI
 Initial:
Processes are unpredictable, poorly controlled, and reactive.
Success is often dependent on the skills and heroics of
individuals rather than consistent processes.
 Managed:
Basic project management processes are established to track
cost, schedule, and functionality. Efforts are planned,
monitored, and controlled to some extent.
 Defined:
Processes are standardized and documented, and they are
consistently followed across the organization. These
processes are well understood and can be tailored to suit
specific project needs.
 Quantitatively Managed:
Detailed measures of process and product quality are
collected and analyzed. Organizations focus on quantitatively
managing their processes to achieve better predictability and
control.
 Optimizing:
Continuous improvement is emphasized. The organization is
focused on innovation, process optimization, and proactive
risk management. Data-driven decision-making is a key
aspect of this level.
CMMI Model – Capability Levels
A capability level includes relevant specific and generic practices
for a specific process area that can improve the organization’s
processes associated with that process area.
Use case for the scenario where the user is trying
to login to a web page using the credentials.
The Use-case model is defined as a model which is used to show
how users interact with the system in order to solve a problem. As
such, the use case model defines the user's objective, the
interactions between the system and the user, and the system's
behavior required to meet these objectives.

Various model elements are contained in use-case model, such as


actors, use cases, and the association between them.

A use case typically consists of the following elements:


 Title: A concise name or label that describes the use case.
 Actors: The individuals, roles, or systems that interact with the
system being described.
 Description: A brief overview of the main goal or objective of the
use case.
 Preconditions: The conditions or circumstances that must be
satisfied before the use case can begin.
 Main Flow: The step-by-step sequence of actions that the actor
takes to accomplish the goal. This includes interactions with the
system, inputs, outputs, and decisions.
 Alternate Flows: Optional or alternative paths that the use case
can take if certain conditions are met or specific decisions are
made.
 Postconditions: The expected state of the system or
environment after the use case has been successfully completed.
 Exceptional Flows: Scenarios in which errors, exceptions, or
unexpected situations occur and how they are handled.
 Related Use Cases: References to other use cases that are
related to or impacted by the current use case.
 Notes: Additional information or clarifications that provide
context or details for better understanding.

In this case,
Use Case: User Login to a Web Page
 Actor: User
 Goal: The user aims to access a secure web page by providing
valid credentials.
 Preconditions: The user has an active internet connection. The
user possesses a valid user account on the web application. The
user knows their correct username and password.
 Main Flow: The user opens a web browser and navigates to the
URL of the web page they intend to access. The web page
presents a login interface, displaying fields for entering the
username and password. The user enters their username and
password into the appropriate fields. The user submits the form,
typically by clicking the "Login" button

You might also like