cmmi -excelente

64
CMMI Capability Maturity Model Integrated

Upload: miguel-diaz-vidarte

Post on 15-Jan-2016

33 views

Category:

Documents


0 download

DESCRIPTION

CMMI

TRANSCRIPT

Page 1: CMMI -Excelente

CMMI

Capability Maturity Model Integrated

Page 2: CMMI -Excelente

Priorities of a Software Company

You are president of a software company.

What are your priorities or goals for operation?

1. Operating Efficiency (speed)

2. Predictability

3. Repeatability (consistency)

4. Cost / effort control

5.

Page 3: CMMI -Excelente

Obstacles to Achieving Goals

What do you think are likely to be major obstacles to a software company's goals?

1. personnel turn-over

2. lack of visibility – few measurements or objective way to evaluate progress

3. project complexity

4. insufficient skill or knowledge

5. lack of defined processes

Page 4: CMMI -Excelente

How to Improve Ability to Achieve

How can you improve your company's ability to achieve its goals?

hire better developers?

offer more incentives? (pay, ownership, bonuses)

more training? ...training in what?

use project management software?

Page 5: CMMI -Excelente

Claimed Benefits of CMMI

Predictability progress and completion of project follows plan more

closely Repeatability

can reliably estimate new project complexity based on past performance

Improved Productivity some organizations report 30% reduction in cost

Better Quality following a defined method (that includes testing,

review, and audit) reduces omissions and missed tasks

Page 6: CMMI -Excelente

Process & Quality

The SEI premise:

"the quality of a system or product is highly influenced by the quality of the process used to develop and maintain it."

Page 7: CMMI -Excelente

Overview of CMMI - Maturity Levels

5

4

3

2

1

0

"Optimizing""Optimizing"

“Quantitatively Managed"

“Quantitatively Managed"

“Defined"“Defined"

"Managed""Managed"

"Performed""Performed"

“Incomplete"“Incomplete"

Ad hocnot repeatable

Has process model but varies project to project; repeatable

Process and procedures are standard, managed, improved over time

Process measurements; adapt to problems to reduce variance; predictable performance

Process is not followed

Focus on process improvement;

Page 8: CMMI -Excelente

CMMI Model

Maturity Level m

Process Area 1 Process Area 2 ...

Specific Goals Generic Goals

• Commitment to Perform

• Ability to Perform

• Directing Implementation

• Verifying ImplementationGeneric Practices

Specific Practices

Page 9: CMMI -Excelente

What does CMMI offer?

Process Area

Generic PracticesGeneric Practices

Generic GoalsGeneric Goals

Expected InformativeInformativeRequiredKEY:

Purpose Statement

IntroductoryNotes

RelatedProcess Areas

SubpracticesSubpractices

Specific GoalsSpecific Goals

Specific PracticesSpecific Practices

Typical WorkProducts

Typical WorkProducts

SubpracticesSubpractices SubpracticesGeneric Practice Elaborations

Page 10: CMMI -Excelente

Key Process Areas

"Process Areas" are general areas

They can be grouped into 4 categories:

Process Management

Project Management

Engineering

Support

Page 11: CMMI -Excelente

Project Management

What process areas do you think a software company should have for "Project Management"?

Page 12: CMMI -Excelente

Project Management

PP Project Planning

PMC Project Monitoring and Control

SAM Supplier Agreement Management

IPM Integrated Project Management +IPPD

RSKM Risk Management

QPM Quantitative Project Management

These acronyms are used frequently in CMMI documentation.

IPPD = Integrated Product and Process Development:

processes are developed along with the products they support

Page 13: CMMI -Excelente

Engineering Discipline

What process areas do you think a software company should have for "Engineering"?

Page 14: CMMI -Excelente

Engineering

REQM Requirements Management

RD Requirements Development

TS Technical Solution

PI Product Integration

VER Verification

VAL Validation

Page 15: CMMI -Excelente

Support (Supporting Processes)

What process areas do you think a software company should have for "Support"?

Page 16: CMMI -Excelente

Support

CM Configuration Management

PPQA Process and Product Quality Assurance

MA Measurement and Analysis

DAR Decision Analysis and Resolution

CAR Causal Analysis and Resolution

Page 17: CMMI -Excelente

Process Management

What process areas do you think a software company should have for "Process Management"?

Page 18: CMMI -Excelente

Process Management

OID Organizational Innovation and Deployment

OPD Organizational Process Definition +IPPD

OPF Organizational Process Focus

OPP Organizational Process Performance

OT Organizational Training

Page 19: CMMI -Excelente

How to Evaluate a Process Area

How do you know if your organization's "process" incorporates a process area?

Ask project staff?

Answer may be designed to please.

Page 20: CMMI -Excelente

Evaluating Process Area

How do you know if your organization's "process" incorporates a process area?

1. Must meet "specific goals" of the process area.

and

2. Incorporate "specific practices" for the process area.

See http://www.software-quality-assurance.org/index.htm for detailed list of practices, subpractices, & work products

Page 21: CMMI -Excelente

Example: Project Planning

SG 1 Establish Estimates

Practices for this goal: Estimate the Scope of the Project Estimate Work Product & Task Attributes Define Project Lifecycle Estimate Effort & Cost

See http://www.software-quality-assurance.org/index.htm for detailed list of practices, subpractices, & work products

Page 22: CMMI -Excelente

CMMI Level 2

Managed

Page 23: CMMI -Excelente

Level 2 : Managed

At maturity level 2, requirements, processes, work

products, and services are managed.

The status of the work products and the delivery of

services are visible to management at defined points

(for example, at major milestones and at the completion

of major tasks).

Page 24: CMMI -Excelente

Level 2 Benefits

The process discipline reflected by maturity level 2 helps

to ensure that practices are retained during times of

stress.

When these practices are in place, projects are

performed and managed according to their plans.

>> This doesn't mean the project will finish according to

plan.

Page 25: CMMI -Excelente

Level 2 - Key Process Areas

CMMI suggests ("requires") our company implement practices in these process areas:

CM - Configuration Management

MA - Measurement and Analysis

PMC - Project Monitoring and Control

PP - Project Planning

PPQA - Process and Product Quality Assurance

REQM - Requirements Management

SAM - Supplier Agreement Management

Page 26: CMMI -Excelente

Activity 1

For your software projects, write down any practices your team is using in these areas.

Be specific! Name specific activities for your practices.

CM - Configuration Management MA - Measurement and Analysis PMC - Project Monitoring and Control PP - Project Planning PPQA - Process and Product Quality Assurance REQM - Requirements Management SAM - Supplier Agreement Management

Page 27: CMMI -Excelente

Generic Goals and Practices

Each process area has specific goals and practices.

There are also generic goals and practices that apply to all process areas.

Page 28: CMMI -Excelente

Generic Goals GG 1

GG 1 Achieve Specific Goals

GP 1.1 Perform Specific Practices

Meaning:

Know just write it down... do it!

Page 29: CMMI -Excelente

Generic Goals GG2

GG 2 Institutionalize a Managed Process GP 2.1 Establish an Organizational Policy GP 2.2 Plan the Process GP 2.3 Provide Resources GP 2.4 Assign Responsibility GP 2.5 Train People GP 2.6 Manage Configurations GP 2.7 Identify and Involve Relevant Stakeholders GP 2.8 Monitor and Control the Process GP 2.9 Objectively Evaluate Adherence GP 2.10 Review Status with Higher Level Mgmt

Page 30: CMMI -Excelente

GG2 - connecting the goals

GP 2.1 Establish an Organizational Policy

GP 2.2 Plan the Process

GP 2.4 Assign Responsibility

GP 2.3 Provide Resources

GP 2.5 Train People

GP 2.7 Identify and Involve Relevant Stakeholders

GP 2.9 Objectively Evaluate Adherence

GP 2.8 Monitor and Control the Process

It needs commitment (from management) to work

Plan first

Assign the jobs to someone

You need resources to do your job

You need know-how to do it

Who cares about this? Get their input

... is the job really being done?

... is it really working?

Page 31: CMMI -Excelente

Generic Goals GG3 - GG5

Apply to CMMI Maturity Levels 3 - 5.

Ignore them until you are more mature.

CMMI Level 2 Software Engineer:

Page 32: CMMI -Excelente

Activity 2: Generic Practices

Did you apply any GG2 practices in your projects? GP 2.1 Establish an Organizational Policy GP 2.2 Plan the Process GP 2.3 Provide Resources GP 2.4 Assign Responsibility GP 2.5 Train People GP 2.6 Manage Configurations GP 2.7 Identify and Involve Stakeholders GP 2.8 Monitor and Control the Process GP 2.9 Objectively Evaluate Adherence GP 2.10 Review Status with Higher Level Mgmt

Page 33: CMMI -Excelente

Specific Goals and Practices

OK, we got the general process areas we oughta' have.

What should we really do?

PP - Project Planning CM - Configuration Management MA - Measurement and Analysis PMC - Project Monitoring and Control PPQA - Process and Product Quality Assurance REQM - Requirements Management SAM - Supplier Agreement Management

Page 34: CMMI -Excelente

PP - Project Planning

Specific Goals and Practices:

SG 1 Establish Estimates

Estimate the Scope of the Project Estimate Work Product & Task Attributes Define Project Lifecycle Estimate Effort & Cost

See http://www.software-quality-assurance.org/index.htm for specific subpractices & work products

Page 35: CMMI -Excelente

PP - Project Planning (continued)

SG 2 Develop a Project Plan

Establish the Budget and Schedule Identify Project Risks Plan for Data Management Plan for Project Resources Plan for Needed Knowledge and Skills Plan Stakeholder Involvement Establish the Project Plan

Page 36: CMMI -Excelente

Project Planning - subpractices

SP 2.1 Establish the Budget and Schedule

identify major milestones identify task dependencies identify constraints

define a budget and schedule

Work Products

Schedule

Schedule Dependencies

Budget

Page 37: CMMI -Excelente

PP - Project Planning (continued)

SG 3 Obtain Commitment to the Plan

Review Plans Reconcile Work and Resource Levels Obtain Plan Commitment

Page 38: CMMI -Excelente

Activity 3

What Project Planning practices did you really use?

Describe the actual activity/practice use used.

If none, they write "none".

Page 39: CMMI -Excelente

CM - Configuration Management

SG 1 Establish Baselines

Identify Configuration Items Establish a Configuration Management System Create or Release Baselines

SG 2 Track and Control Changes

Track Change Requests Control Configuration Items

SG 3 Establish Integrity

Establish Configuration Management Records Perform Configuration Audits

Page 40: CMMI -Excelente

Activity 4

What Configuration Management practices did you really use?

Describe the actual activity/practice use used.

If none, they write "none".

Page 41: CMMI -Excelente

MA - Measurement & Analysis

SG 1 Align Measurement and Analysis Activities

Establish Measurement Objectives Specify Measures Specify Data Collection and Storage Procedures Specify Analysis Procedures

SG 2 Provide Measurement Results

Collect Measurement Data Analyze Measurement Data Store Data and Results Communicate Results

Page 42: CMMI -Excelente

PMC - Project Monitoring and Control

SG 1 Monitor Project Against Plan Monitor Project Planning Parameters Monitor Commitments Monitor Project Risks Monitor Data Management Monitor Stakeholder Involvement Conduct Progress Reviews Conduct Milestone Reviews

SG 2 Manage Corrective Action to Closure Analyze Issues Take Corrective Action Manage Corrective Action

Page 43: CMMI -Excelente

Activity 5

What Project Monitoring & Control practices did you really use?

Describe the actual activity/practice use used.

If none, they write "none".

Page 44: CMMI -Excelente

PPQA - Process & Product QA

SG 1 Objectively Evaluate Processes and Work Products

Objectively Evaluate Processes Objectively Evaluate Work Products and Services

SG 2 Provide Objective Insight

Communicate and Ensure Resolution of Noncompliance Issues

Establish Records

Page 45: CMMI -Excelente

PPQA subpractices

SP 1.2 Objectively Evaluate Work Products & Services

clearly state the criteria for evaluating work products use the stated criteria for evaluation evaluate products before they are delivered to

customer evaluate work products at milestones record results of evaluation identify lessons learned that could improve processes

in the future

Page 46: CMMI -Excelente

Activity 6

What Product and Process QA practices did you really use?

Describe the actual activity/practice use used.

If none, they write "none".

Page 47: CMMI -Excelente

REQM - Requirements Management

SG 1 Manage Requirements

Obtain an Understanding of Requirements Obtain Commitment to Requirements Manage Requirements Changes Maintain Bidirectional Traceability of Requirements Identify Inconsistencies Between Project Work and

Requirements

Page 48: CMMI -Excelente

SAM - Supplier Agreement Management

SG 1 Establish Supplier Agreements

Determine Acquisition Type Select Suppliers Establish Supplier Agreements

SG 2 Satisfy Supplier Agreements

Execute the Supplier Agreement Monitor Selected Supplier Processes Evaluate Selected Supplier Work Products Accept the Acquired Product Transition Products

Page 49: CMMI -Excelente

Beyond Level 2...

Process Areas from Level 3

Page 50: CMMI -Excelente

Validation - "do the right thing"

The purpose of Validation is to show that a product fulfills its intended use in the intended environment.

SG 1 Prepare for Validation

Select Products for Validation Establish the Validation Environment Establish Validation Procedures and Criteria

SG 2 Validate Product or Components

Perform Validation Analyze Validation Result

Page 51: CMMI -Excelente

Verification - "do the thing right"

The purpose of Verification is to ensure that work products meet their specified requirements.

SG 1 Prepare for Verification

... see documentation

SG 2 Perform Peer Reviews

SP 2.1 Prepare for Peer Reviews SP 2.2 Conduct Peer Reviews SP 2.3 Analyze Peer Review Data

SG 3 Verify Selected Work Products

... see documentation

Page 52: CMMI -Excelente

Process Assets

Artifacts that describe, implement, and improve processes.

Includes:

Organization’s set of standard processes, including the process architectures and process elements

Descriptions of approved life-cycle models

Guidelines and criteria for tailoring a standard process

Organization’s measurement repository

Organization’s process asset library

Page 53: CMMI -Excelente

Measurement Repository

Repository used to collect and make available measurement data on processes and work products

Examples: estimated size of work products effort estimates cost estimates defect estimates actual size of work products actual effort actual cost actual defects

Page 54: CMMI -Excelente

Process Asset Library

Homework research and make a list of the kind of items that can

be in a process asset library. Make a table as follows:

Process Asset Description How can we (or do we) implement this asset at KU-CPE

How would it be beneficial to our software projects?

Project Management Plan templates

templates for PMP and plan components, such as configuration mgmt plan

Word and HTML files of IEEE format with descriptive text

1. save time in preparing plan documents

2. ensure we include key areas in our plan

Page 55: CMMI -Excelente

Resources

http://www.software-quality-assurance.org/index.htm tabulated and annotated list of CMMI for software, organized by process area and activity

http://www.sei.cmu.edu/cmmi/ CMMI Web site

CMMI for Development, Version 1.2 (free PDF at SEI) http://www.sei.cmu.edu/publications/documents/06.reports/06tr008.html

Process Area (CMMI) at Wikipedia.org

overview of process areas and activities

Page 56: CMMI -Excelente

IUP (Irrational Unified Process)

Some rational process suggestions

by the 219342-2550 class,

offered at the end of semester

Page 57: CMMI -Excelente

Suggestions for an IUP Process

Our suggestions for a better IUP are to include or improve these areas:

CM Configuration Management

MA Measurement and Analysis

PMC Project Monitoring and Control

PP Project Planning

PPQA Process and Product Quality Assurance

REQM Requirements Management

SAM Supplier Agreement Management

Page 58: CMMI -Excelente

PP - Project Planning

Problem: the project plan is not useful or relevant (nobody reads or follows it)

1, template is too long and complex, too much work to write

2. a Wiki would be better

3. students don't like reading (long) documents

4. written for instructor not for the (student) user

Solutions:

1. simplify project plan

2. iterate over the plan; revise plan ½-way through course

3. make it more useful to the student

Page 59: CMMI -Excelente

PP - Project Planning Problems

Problem: Project leader cannot control team

members do not perform assigned tasks

sol'n: get instructor involved in enforcing work

Problem: Relying on "heroes"

not enough time (too much coursework)

student may give priority to other classes

members are lazy (not motivated to work)

inability to acquire needed knowledge/skill

Page 60: CMMI -Excelente

CM - Configuration Management

Problem: Need a back-up mechanism

Problem: Need something other than Subversion for document management

Solutions: find a "document control system" use a structured Wiki with templates

Page 61: CMMI -Excelente

PMC - Project Monitoring and Control

oral progress report by weekly group meetings in case of lateness, other members help with task changing requirements causes project lateness

Suggestions need reward for completing work earlier, consistency

must be able to monitor progress small extra credit would be significant motivation

frequent milestones, reviewed by instructorSP 1.6 Conduct Progress Reviews

SP 1.7 Conduct Milestone Reviews

Page 62: CMMI -Excelente

MA - Measurement and Analysis

Problem: lack ability to collect useful measurements for metrics (can't evaluate performance)

Solution: Tools to assist in collecting measurements

Problem: What to measure? defects time? (man hours) related to work products/tasks

tasks completed delays, missed commitments lines of code use cases project complexity

Page 63: CMMI -Excelente

Other Suggestions

more concrete software requirements specification

difficulty translating oral requirements into specs

prescriptive process that can apply to all projects

"process methodology" is descriptive and vague

students don't have time or experience to research concrete practices

need practical and useful method, not IEEE/ISO std

Page 64: CMMI -Excelente

0000010Pedido

Producto Cantidad precunit

EmitirFactura

NroFactura: Total sin igv:

Igv:Total