Implementing the CMM Level 3

Download Report

Transcript Implementing the CMM Level 3

Implementing the CMM Level 3

• Focusing on Organizational Process Improvement • Organization Process Definition • Creating Level 3 Structures • Creating Level 3 Processes • Creating a Level 3 Training Program • Creating Level 3 Policies

Focusing on Organizational Process Improvement

At Level 3, the entire organization becomes focused on process improvement. It’s an important step up the maturity scale. At this point your teams have developed a set of proven processes and practices that have been shown to work over time and across a wide variety of projects. The challenge now is to gather these into a single program and then to implement it across the organization, with the idea of

SE: Process Improvement

• Understanding existing processes • Introducing process changes to achieve organisational objectives which are usually focused on quality improvement, cost reduction and schedule acceleration • Most process improvement work so far has focused on defect reduction. This reflects the increasing attention paid by industry to quality • However, other process attributes can be the focus of improvement

SE: Process Attributes

Process characteristic

Understandabili ty Visibility Supportability Acceptability Reliab ility Robustness Main tain abil ity Rapidity

Descript ion

To what ext ent is the process expli citly defined and how easy is it to understand the process definition ?

Do the process activ ities culmin ate in clear results so that the p rogress of the process is exte rnally vis ible?

To what ext ent can the process activiti es be supported by CASE tools?

Is the defin ed process acceptable to and u sable by the engineers responsible for produ cing th e software product?

Is the process design ed in such a way that process errors are avoided o r trapped before they result in produ ct errors?

Can the process continu e in spit e of unexpe cted prob lems?

Can the process evolve to reflect changing org anisational requiremen ts or id entified process improv ements?

How fast can the process of d eliv ering a system from a giv en specification b e compl eted?

SE: Process Improvement Stages

• Process analysis – Model and analyse (quantitatively if possible) existing processes • Improvement identification – Identify quality, cost or schedule bottlenecks • Process change introduction – Modify the process to remove identified bottlenecks • Process change training – Train staff involved in new process proposals • Change tuning – Evolve and improve process improvements

SE: The Process Improvement Process

Analyse process Process model Process change plan Identify improvements Training plan Introduce process change Train engineers Tune process changes Feedback on improvements Revised process model

The Right Structure for a Focus on Process at Level 3

Software Engineering Process Group (SEPG) SPI SPI Plan Plan Plan Feedback Activity Activity Activity Activity Activity

Software Process Improvement Plan

• Creating the SPI plan is a core effort for Level 3 shops • CMM is not really a software process improvement program. It is a framework on which you can build your own SPI program.

• CMM gives you the infrastructure and direction to instantiate SPI activities.

Template for Building Your SPI Plan I

• • • • • • • • •

Introduction >> Statement of the organization’s commitment to SPI >> Statement of the executive sponsorship of the SPI plan Description of the general goals of this SPI plan Description of the goals of the SPI plan as related to overall company objectives Description of the role of the SEPG within the organization Listing of SEPG membership with contact information Approved use of the SPI plan Scope of SPI activities Functional areas affected by SPI and the plan Protocol for evaluations >> Choose evaluators >> Create evaluation forms and guidelines >> Announce evaluations >> Conduct evaluations to identify strengths and weaknesses

Template for Building Your SPI Plan II

• • • • • • •

>> Document results >> Create evaluation report >> Distribute evaluation report >> Review recommended improvement actions Coordinate improvement action integration Coordinate deployment of the revised (new) process assets Coordinate project adoption of revised material Coordinate training in the new changes Schedule of planned evaluations Definition of measurements to gauge SPI/EPG progress Management of the SPI plan

Evidence of Organization Process Focus Activity

KEY PROCESS AREA

Structure Processes Training Policy

EXAMPLE ARTIFACTS

Organization chart with SEPG, appointment/assignment forms, job description SPI plan development process, SPI plan template For each course:For each Course: Training scope sheet, training invitation, training course materials, student hand-out material, completion certificate Policy statement, early draft of statement

Organization Process Definition

The entry for Level 3 is a degree of maturity marked by an already present focus on process improvement. The move to Level 3 – the organization’s adoption of A common set of software development processes and practices – is almost always accompanied by a Depth of experience that provides a benchmark for What works well. At level 3, that knowledge is

Kick-off KPAs for CMM Level 3

• Organization Process Focus (OPF) • Organization Process Definition (OPD)

Five Assets Comprised By SSPS

• The documented processes and practices that you elected to institutionalize across the organization • The descriptions of the software development life cycles you have elected to allow for use on your project.

• The set of tailoring guidelines that helps your people fine-tune the SSPS to the unique needs of a specific project.

• The establishment of a common measurement database used as a repository for all project-level process and practice measurements.

• A centralized process library that is used to manage and version control the contents of the SSPS.

A Structure to Support OPD

Organization’s Standard Software Process Set Defined Software Process Set for Project ABC Defined Software Process Set for Project 123 Defined Software Process Set for Project XYZ

Evidence of Program Compliance

KEY PROCESS AREA

Structure Processes Training Policy

EXAMPLE ARTIFACTS

(Same as Process Focus with …), SSPS repository, measurement database Defining SSPS, defining life cycle, defining tailoring guidelines For each course:For each Course: Training scope sheet, training invitation, training course materials, student hand-out material, completion certificate Policy statement, early draft of statement

Creating Level 3 Structures

The Structure that put into place at Level 3 are there, ultimately, to help you communicate. There is organizational need to share a common body of knowledge with the workforce. There are also specific communication needs within each project – sharing information on process, status, and the risks each group needs to be aware of.

--

Dan Payne, Senior Analyst, Lockheed-Martin Corp

New Structures in Level 3

SEPG Umbrella Commitment for Resources, funding, Tools, and Facilities SQA Function Training Group SCM Function SPP Function Level 3 Process Management And Software Process Improvement Activities SPTO Function SRM Function

Evidence of Program Compliance

KEY PROCESS AREA Training Program Integrated Software Management Software Product Engineering Intergroup Coordination Peer Review ARTIFACTS

Staff assignment form, general organizational chart, Job description, budget allocation/capital account Staff assignment form, general organizational chart, Job description, budget allocation/capital account Staff assignment form, general organizational chart, Job description, budget allocation/capital account Staff assignment form, general organizational chart, Job description, budget allocation/capital account Staff assignment form, general organizational chart,

Creating Level 3 Processes

Effective process management at Level 3 requires the extension of what you have built at Level 2. At Level 2 you set the pillars in place for process improvement. At Level 3 you strengthen them, and the foundation for process improvement settles into place.

Level 3 Mostly Just Extends Level 2 on Processes

For CMM Level 2, you’ll set up processes for RM, SPP, SQA, CM, and vendor management. Each of these areas can be seen as existing in may ways apart from each other. Each addresses a specific functional area along the development chain. But at Level 3 things change. The CMM introduces only one more independent KPA,

Training Program

. The others-Organization Process Focus, Organization Process Definition, Integrated Software Management, Software Product Engineering, Intergroup Coordination, and Peer Review – all serve to expand the Level 2 processes, to deepen their

Comparison Of L3 And L2

• • • • • Level 2 Project-wide Repeatable SDP is focused mainly on the management of broad issues and work products.

SDP is just SDP Review process • • • • • Level 3 Organization-wide Defined, institutionalized, standard SDP is focused on making up Software Product Engineering effort SDP includes SDP, SQAP, SCMP, Intergroup coordination LAN, PRP Peer Review extends L2’s review process

Peer Review Process

MANAGEMENT PRODUCTS SPI plan Project contract Software development plan

SQA plan SCM plan Training plan Intergroup Coordination plan

Subcontractor Management plan TECHNICAL PRODUCTS System designs Integration test plans Acceptance test plans User documentation Technical documentation Requirements specifications

A Peer Review Plan Template

• Work products for review • Peer review dates • Peer review participants • SQA quality control points • Metrics collection

A Peer Review Process

• • • • • • • • • • • • •

Draft Ready Date Arrives Draft Author Assigns Review Moderator and Recorder Draft Confirmed to Be Ready for Review Meeting Facilities Prepared Material Distributed and Meeting Announced Review Period Review Meeting Occurs Meeting Notes Distributed Revisions Made as Requested Revised Document Redistributed Product Submitted for Signature/Approval Product Baselined Process Metrics Collected

Training Program Processes

• Preparing a syllabus for each training course you are offering • Preparing a training plan for each project being initiated in your shop

A Training Course Syllabus Template 1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

11.

12.

13.

14.

Course Number Course Title and Subtitle Course Description Textbook and Required Materials Learning Objectives Content Outline Course Length Audience; Enrollment Criteria Waiver Criteria Instructor/Sponsor Location/Classroom Cost Per Attendee Review Cycle Scheduling Point of Contact

A Training Plan Template

1. Course to be taught 2. Recommended participants 3. Rationale 4. Training duration and cost 5. Available training dates 6. Preparation tasks 7. Waiver option

Software Product Engineering Processes

• The SPE KPA of the CMM is a different kind of KPA. From it, the CMM begins to address direct intervention into the rote technical activities involved in software development.

• The idea of a software product engineering KPA lies pretty much in its name: improved technical performance through the administration of process measures.

Stages of Development Life Cycle

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

Traditional Requirements gathering

System analysis

System design Coding Unit testing System testing Integration testing Documentation Acceptance testing

Maintenance

1.

2.

3.

4.

5.

6.

7.

8.

CMM Focus Requirements management Software design Coding Unit testing Integration testing Acceptance testing Documentation Control of development tools and the manner in which defect data (metrics) is gathered and managed.

Extending Software Development Planning

• • • • • • • • • • •

SDP at Level 2 Statement of work Introduction/overview Life cycle adopted Standards and procedures A list of the work procedures to be developed Scope projections Schedule Measurements to be made Facilities and support tools available Risks and assumptions Any related appendixes

• • • • • • • •

L3 Extending SDP Identify major engineering milestones Budget and schedule resources Assess risks Create a SQA plan Create a SCM plan Create a IC plan Conduct Peer Reviews Add Integrated Software Management practices

Integrated Software Management Processes

• The ISM KPA is in place to help coordinate the use of the organization’s SSPS across the projects within the organization.

• The ISM KPA also guides how to tailor the SSPS to DSPS which is used to shape and control various elements of project progress and activity results.

Guidelines for Tailoring the SSPS

• Study and then define the tailoring steps • Document the guidelines for all to use • Establish the procedures to waive certain SSPS steps • Peer review the guidelines for approval • Configuration manage the resulting guidelines documents • Revise the guidelines over time as necessary

The Level 3 SD Plan I

• • • • •

Statement of work Introduction/overview Life cycle adopted Standards and procedures A list of the work products to be developed. The work products include >> The requirements >> software design >> system code >> unit/system testing >> integration testing >> acceptance testing >> project documentation This includes both plan and activities. The work products also include

The Level 3 SD Plan II

• • • • • •

>> size estimates >> effort and cost estimates >> critical resources required >> critical path or dependencies >> identified risks/assumptions Scope projections Schedule Measurements to be made Facilities and support tools available Risks and assumptions Any related appendixes

The Level 3 SD Plan III

• • • • • • • • •

SQA plan SCM plan IC plan Vendor management plan (if you’re contracting with outside services.) PR plan Training plan Risk management plan Any relevant appendixes The project’s Defined Software Process Set – DSPS (by way of reference)

Intergroup Coordination Processes

• • •

Software development can involve many different groups.

Software development usually fares poorly in an isolationist environment.

Communication is vital for any project, not just within teams but between teams.

• •

The effective and coordinated communication is so important to quality software development.

In fact, we might say that the CMM is all about coordination. The plans, processes, and practices employed to create a product are there as a way to coordinate activity in a predicable and trackable manner.

Is IC Different from Regular Project Status Meeting?

No In the sense that any exchange between groups can be seen as a status meeting of sorts, and the format that you’ll use for the exchanges will be probably be for all practical matters the same as for regular status meetings.

Yes In the sense that these exchanges, the IC “events” will be individually planned in advance. They will be anticipated in the project plan and recognized as perhaps “formal” status meetings where specific items, not just project progress in general, need to be addressed.

A Template for IC Plan

• The milestone • The participating groups • The agenda (Technical issues, Critical Dependencies, and Overall status) • Event date • Event location (if available) • SQA review points • SCM review points • Coordination measurements

Evidence of Program Compliance

KEY PROCESS AREA ARTIFACTS OPF See previous slides OPD See previous slides TP ISM SPE IC Training course syllabi, training plan template, training plan for project ISM activities as reflected in the project’s SDP and in the DSPS.

SPE activities as reflected in the project’s SDP and in the DSPS.

IC plan template, IC plan for project PR PR plan template, PR process, PR plan for project Executive Review Process Meeting minutes review with project management, meeting minutes review with SQA, meeting minutes review with SCM, meeting minutes review with RM

Creating Level 3 Training Program

Training is an important long-term success factor in organizations. Personnel management studies point out an interesting correlation – companies that invest in training show a lower level of turnover than companies that don’t. Training not only brings needed skills and knowledge to the workforce, but it in many other ways reinforces the workforce, imparting both a

L3 Training Program Structure

Process & Practice Competency Technical Proficiency Job Role Training Centralized Training Program Project Orientations General Leadership And Team Training

Evidence of Program Compliance

KEY PROCESS AREA ARTIFACTS Training Program courses Training scope sheet, training invitation, training course material, student hard-out material, completion certificate ISM courses SPE courses IC courses PR courses Training scope sheet, training invitation, training course material, student hard-out material, completion certificate Training scope sheet, training invitation, training course material, student hard-out material, completion certificate Training scope sheet, training invitation, training course material, student hard-out material, completion certificate Training scope sheet, training invitation, training course material, student hard-out material, completion certificate

Creating Level 3 Policies

At level 3 the entire organized becomes focused on process improvement. It’s an important step up the maturity scale. At this point your teams have developed a set of proven processes and practices that have been shown to work over time and across a wide variety of projects. The challenge now is to gather these into a single program and then to implement it across the organization, with the idea of measurement and improvement still in mind.

Carrying Over Policies From L2

• A requirements management policy directing the conditions and use of requirements within a project • A project planning policy governing how project planning materials are developed and approved and how formal commitments are made concerning the project.

• A project tracking policy directing the manner in which project resources and commitments are kept consistent with project progress.

• A subcontractor management policy on the use of overseeing subcontractor work • A configuration management policy describing the use and availability of CM resources and tools for each project.

• A software quality assurance policy governing the oversight and reporting duties particular to the SQA mission.

KEY PROCESS AREA

TP ISM SPE IC PR

Policies Required in Level 3

POLICIES A policy enforcing the maintenance and support of an organization-wide training program designed to support the use of common practices and processes.

A policy governing how project planning materials are tailored and developed to reflect the standards documented in the SSPS.

A policy directing the manner in which project resources and commitments are kept consistent with project progress.

A policy describing the tools and standards used to promote communication and coordination between various groups working on disparate elements of a common project.

A policy governing the purpose and approach of peer reviews.

Evidence of Program Compliance

KEY PROCESS AREA Integrated Software Management Software Product Engineering Training Program Intergroup Coordination Peer Review ARTIFACTS

The policy, any policy drafts or notes, distribution avenue, assessment or change notes or memos The policy, any policy drafts or notes, distribution avenue, assessment or change notes or memos The policy, any policy drafts or notes, distribution avenue, assessment or change notes or memos The policy, any policy drafts or notes, distribution avenue, assessment or change notes or memos The policy, any policy drafts or notes, distribution avenue, assessment or change notes or memos