2. • What’s the need for quality system
• Performance Measures
• What’s CMMI
• CMMI Model
• CMMI Representation
• CMMI Model Components
• Case Study-PPQA
http://www.tutorialspoint.com/cmmi/cmmi-process-areas.htm
CMMI Overview
3. What’s the need for quality system?
Hopefully to solve or decrease the effect of the
following problem samples.
• Commitment consistently missed
• No management visibility into progress.
•Quality problems.
•Poor morale
Late Delivery
You’re are always
being surprised
Too much rework,
functions not working
properly
People frustrated, is anyone
in charge?
4. Performance Measures
The performance results are from 30 different organizations that
applied CMMI and achieved change in one or more of the six
categories of performance measures below.
Performance Category Median Improvement
Cost 34%
Schedule 50%
Productivity 61%
Quality 48%
Customer Satisfaction 14%
Return on Investment 4:1
5. What's CMMI
• Stands for Capability Maturity Model
Integration.
• A collection of best practices.
• Framework for organizing and prioritizing
activities.
• CMMI is not a process “ explains what to do, not how to
be done”
• CMMI describes the characteristics of effective
processes.
6. CMMI Model
• Initial: essentially uncontrolled.
• Managed: product management procedures defined and used.
• Defined: process management procedures and strategies defined and used.
• Quantitatively Managed: Quality management strategies defined and used.
• Optimizing: Process improvement strategies defined and used.
8. CMMI Model Components
• Process areas
24 process areas that are relevant to process capability and
improvement are identified. These are organised into 4 groups.
• Goals
Goals are descriptions of desirable organisational states. Each
process area has associated goals.
• Practices
Practices are ways of achieving a goal - however, they are
advisory and other approaches to achieve the goal may be used
9. Purpose
The purpose of Process and Product Quality Assurance (PPQA)
is to provide staff and management with objective insight into
processes and associated work products.
Specific Practices by Goal
SG 1 Objectively Evaluate Processes and Work Products
SP 1.1 Objectively Evaluate Processes
SP 1.2 Objectively Evaluate Work Products and Services
SG 2 Provide Objective Insight
SP 2.1 Communicate and Ensure Resolution of
Noncompliance Issues
SP 2.2 Establish Records
Process and Product Quality Assurance (PPQA)
A Support process area at Maturity Level 2
12. Is software development a defined process?
• Is every task completely understood?
• Given the same exact inputs (including people)
– Will we get the same results every time
– Can we even have the same exact inputs every
time
16. History
• Software Crisis (1960’s) Software intensive systems delivered
late, over budget and do not meet the quality requirements
• Solution attempt #1: Structured Methods (in 1980’s)
• Solution attempt #2: Object Oriented Methodologies
• Chronic Software Crisis (1990’s) Software intensive systems
still delivered late, over budget and do not meet the quality
requirements
• Solution attempt #3: Software process improvement
• Solution attempt #4: Agile development methodologies
18. The Key to Empirical Process
• Inspect and Adapt
– Product (Changing Requirements / Scoping Features)
– Process (Engineering and Management Practices)
20. Think Differently
• What would you do different if you knew
that your customer could afford only one
day of software development.
• Keep in mind: may be by doing something
different the customer might be able to
afford yet another day of software
development
21.
22. We are uncovering better ways of developing software by doing it and
helping others do it. Through this work we have come to value:
– Individuals and interactions over processes and tools
– Working software over comprehensive documentation
– Customer collaboration over contract negotiation
– Responding to change over following a plan
That is, while there is value in the items on the right, we value the
items on the left more.
The Agile Manifesto
(Agile Values)
23. Agile Principles (1/4)
• Our highest priority is to satisfy the
customer through early and continuous
delivery of valuable software.
• Welcome changing requirements, even late
in development. Agile processes harness
change for the customer's competitive
advantage.
• Deliver working software frequently, from a
couple of weeks to a couple of months,
with a preference to the shorter timescale.
24. Agile Principles (2/4)
• Business people and developers must work
together daily throughout the project.
• Build projects around motivated
individuals. Give them the environment and
support they need, and trust them to get
the job done.
• The most efficient and effective method of
conveying information to and within a
development team is face-to-face
conversation.
25. Agile Principles (3/4)
• Working software is the primary measure of
progress.
• Agile processes promote sustainable
development. The sponsors, developers,
and users should be able to maintain a
constant pace indefinitely.
• Continuous attention to technical
excellence and good design enhances
agility.
26. Agile Principles (4/4)
• Simplicity--the art of maximizing the
amount of work not done--is essential.
• The best architectures, requirements, and
designs emerge from self-organizing teams.
• At regular intervals, the team reflects on
how to become more effective, then tunes
and adjusts its behavior accordingly.
27. Methods for agile software development
• Dynamic Systems Development Method [Stapleton, 1997]
• Extreme Programming [Beck, 1999]
• Adaptive Software Development [Highsmith, 2000]
• Crystal Family of Methodologies [Cockburn, 2000]
• Feature Driven Development [Palmer & Felsing, 2002]
• Scrum [Schwaber & Sutherland, 1995; 2002]
• Lean Software development [Poppendieck x 2, 2003]
Blending is the key
28. Lean Principles
• Eliminate waste
• Amplify learning
• Decide as late as possible
• Deliver as fast as possible
• Empower the team
• Build integrity in
• See the whole
29. Lean Rules
• Add Nothing But Value
1. Eliminate Waste
2. Minimize Paperwork
3. Focus on Testing
• Center On Those Who Add Value
4. Empower Those Who Add Value
5. Create a Learning Environment
• Pull Value From Customers
6. Satisfy All Stakeholders
7. Decide As Late As Possible
8. Implement In Small Increments
• Optimize The Value Stream
9. Maximize Business Value
10.Optimize Across Organizations