40
Implementing the CMM Level Implementing the CMM Level 2 2 • Creating Level 2 Structures • Creating Level 2 Processes • Creating a Level 2 Training Program • Creating Level 2 Policies • Subcontract Management

Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Embed Size (px)

Citation preview

Page 1: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Implementing the CMM Level 2Implementing the CMM Level 2

• Creating Level 2 Structures

• Creating Level 2 Processes

• Creating a Level 2 Training Program

• Creating Level 2 Policies

• Subcontract Management

Page 2: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Creating Level 2 StructuresCreating Level 2 Structures

The Structure of an organization gives Momentum to its activities. The right Structure – designed for adequacy and efficiency – can move a group well on the way toward predictability in output. -- Don Payne Senior Analyst, Lockheed-Martin Corp

Page 3: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

What Kind of Structure Is Required?What Kind of Structure Is Required?Organization Chart

P ro jec t A

S o ftw areD es ig n

S o ftw areD eve lop em n t

S o ftw areM a in ten an ce

P ro jec t B P ro jec t C

D eve lop m en tM an ag er

S E G

A d m in is tra t ion

C S G S C M S Q A S E P G

Tech n ica lS u p p ort

S en io rE xecu tive

“A group is a collection of departments, managers, and individuals who have responsibility for a set of tasks or activities. A group could vary from a single individual assigned part-time, to several part-time individuals assigned from different departments, to several individuals dedicated full-time. Considerations when implementing a group include assigned tasks or activities, the size of the project, the organizational structure, and the organizational culture.” (Paulk et al, 1994)

Watts’ “Managing the Software Process”

Page 4: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

What Minimum Resources Are What Minimum Resources Are Required?Required?

PeoplePeople

FundingFunding

FacilitiesFacilities

ToolsTools

The CMM supports the idea of committed process improvement withRecommendations that call for the organization’s supporting eachProject with adequate funding, people, facilities, and tools.

Page 5: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Supporting the Implementation of Level 2 Supporting the Implementation of Level 2 StructureStructure

• Presence on the project’s organizational chart

• Presence on operational/personnel charts• Job descriptions• Funding and budget allocation• Staff assignment form

Page 6: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Evidence of Program ComplianceEvidence of Program Compliance

KEY PROCESS AREA

ARTIFACTS

Requirement

Management

Staff assignment form, general organizational chart,

Job description, budget allocation/capital account

Project

Planning

Staff assignment form, general organizational chart,

Job description, budget allocation/capital account

Project Tracking

And oversight

Staff assignment form, general organizational chart,

Job description, budget allocation/capital account

Configuration

Management

Staff assignment form, general organizational chart,

Job description, budget allocation/capital account

Software Quality

Assurance

Staff assignment form, general organizational chart,

Job description, budget allocation/capital account

Page 7: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Creating Level 2 ProcessesCreating Level 2 Processes

The heart of systems improvement lies in the activities that are conducted by way of published processes and procedures. There are key to staying on the improvement track and to knowing where you stand from project. It’s the practice of the methods that count and the practice is in the process. -- Seane Devenshire, Process Consultant

Page 8: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Look at Your Existing ProcessesLook at Your Existing Processes

Process Don’ts• Your processes

don’t have to be extensive.

• Your processes don’t have to be perfect

Process Dos• Your processes

have to be documented.

• Your processes have to be followed.

Page 9: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

What Processes Are Useful at Level 2What Processes Are Useful at Level 2

RequirementManagement

A process to bring documented requirements into the SEG and then manage them over the course of the project.

Project planning

Processes to create the project’s SDP and also to have it reviewed and approved.

Estimating A series of processes that guide how members of the SEG estimate project planning variables: component size, work effort and costs, required resources, and schedule.

ProjectTracking

A process used to govern the tracking and oversight responsibilities of software project management. It is the central process of Level 2.

ConfigurationManagement

A process for the management of project work products, using some form of library management system to formally version control the practices. These products might include output such as source code, project plans, and change requests, among other things.

Change Control

A process to help govern how the Configuration Control Board manages, assesses, and approves requested project changes.

Software QualityAssurance

A process for the SQA analyst to use when monitoring and auditing project activities from a compliance standpoint.

Executive review A process or procedure used by management to review the processes and policies in each of the CMM Level 2 KPAs periodically.

Page 10: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Build SEPG Staring From Level 2Build SEPG Staring From Level 2

• The Software Engineering Process Group – SEPG is not required at Level 2.

• SEPG is a “law maker” in a software organization.

• If your goals is CMM Level 5, build the SEPG starting from Level 2

Page 11: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

SEPG MissionSEPG Mission

• Provide expertise on the current methodology

• Initiate, track, screen, install and evaluate new methods and technology to improve the software capability of the organization

• Move the current process to Level 5

Page 12: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Functions of SEPGFunctions of SEPG

• Initiate and maintain the process improvement effort

• Consult with Project Manager about the Company Process

• Assess the organization’s current software process

• Develop and maintain the process database

Page 13: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

SEPG PrioritiesSEPG Priorities

Level 2 Does the SEPG have a plan for its work, a tracking system, and means to retain and control its work products?

Level 3 Have the SEPG professionals established a basic framework for their own work, including standards, procedures, and a review program?

Level 4 Does the SEPG measure the productivity and quality of its own work?

Level 5 Do they regularly assess their own activities for improvement opportunities and incorporate them in their working process?

Page 14: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

SEPG PersonnelSEPG Personnel

• Expertise or knowledge in the current process• Experience advocating new process

techniques and tools• Experience in several projects with different

roles• Knowledge of the software development

environment Source: Software Engineering Institute 90-TR-24

Page 15: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Improvement ApproachProcess Improvement Approach

DOCHECK

PLANACT

Determine EffectivenessImplement System Change

Define the ProblemState Improvement Objectives

EvaluateCollect Date

Identify Possible CausesOf ProblemEstablish BaselinesTest Changes

Source: Software Engineering Institute 90-TR-24

Page 16: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Improvement CycleProcess Improvement Cycle

Perform the process

Setexpectations

Propose changes

Analyze the Variance between

ExpectationAnd practice

Plan the integration

Assess the Currentpractice

ImplementThe

improvements

Page 17: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Improvement CycleProcess Improvement Cycle• Set expectations• Assess the current practice• Analyze the variance between expectation and practice• Propose changes that will reduce the variance and

thereby improve process• Plan the integration of the improvements into the

existing process and update the process definition• Implement the improvements• Perform the process as it is now defined• Start all over again Source: Software Engineering Institute 90-TR-24

Page 18: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Improvement Proposal Process Improvement Proposal (PIP)(PIP)

• Support and encourage the use of PIPs

• Evaluate PIPs

• Ensure timely feedback to authors

• Ensure timely implementation of PIPs

Page 19: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Database: DefinitionProcess Database: Definition

• Repository for data gathered on the software process and resulting products

• Used for:

>> improving estimating accuracy

>> analyzing productivity

>> assessing product quality

Page 20: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Database: PurposeProcess Database: Purpose

• To indicate trends and long-term effects• To experiment with definitions in order to arrive

at a meaningful set• To indicate trouble spots that are evident using

defined measures• To support a basis for estimates• Not a way to point fingers at people or projects Source: Software Engineering Institute 90-TR-24

Page 21: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Database: Information Process Database: Information StoredStored

• Size, cost and schedule data

• Product metrics

• Process metrics Source: Managing Software Process

Page 22: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Database: ReasonProcess Database: Reason

• Understanding: Data may be gathered as a part of a study to learn about a particular item or process

• Evaluation: The data may be used to determine if a process, product, or activity meets acceptance criteria

• Control: The data may be used to set limits and goals for activities

• Prediction: The data may be used to develop rate and trend parameters for project planning

Source: Software Engineering Institute 90-TR-24

Page 23: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Technology InsertionTechnology Insertion

• A function of the SEPG is to recommend tools for tasks that are used often enough to be automated

• Handles installation, user assistance and interface with the tool supplier

• Provides or arranges for training before the tools and methods are installed for general use

Source: Managing Software Process

Page 24: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Technology Insertion ProcessTechnology Insertion Process• Obtain the technology• Create in-house experts• Draft guidelines for using the technology• Tailor the training to the needs of project

members• Prepare the technology for use• Provide the training• Begin using technology• Provide ongoing support Source: Software Engineering Institute 90-TR-24

Page 25: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process/Project ConsultationProcess/Project Consultation• Provide assistance with current projects’

problems• Decide what data to gather• Help tailor the standard process to the

project process• Assist in the preparation of quality plans• Serve as inspection moderators• Advise on the priority areas for technology

insertion Source: Managing Software Process

Page 26: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Education and TrainingEducation and Training

• Act as a focal point for process education

>> Project Management Methods

>> Software Design Methods

>> Quality Management

>> Design and Code Inspection Source: Software Engineering Institute 90-TR-24

Page 27: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Process Status and Process Status and AssessmentAssessment

• Goals for process improvement• A comparison of actual process state to prior plans• The status of the process improvement actions• Identified problems and recommended corrective

actions• Recommended responsibilities for handling these

actions• Determine schedules for self-assessment• Run self-assessment• Provide feedback

Page 28: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Benefits of SEPGBenefits of SEPG

• Improved (more disciplined) software process• Increased visibility of the software process• The SEPG is going to help you: >> Project consultation

>> Project Process Customization >> Process Database >> Project/Process Data Analysis >> Process Improvement >> Standards/Guidelines Developments

Page 29: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Evidence of Program ComplianceEvidence of Program ComplianceKey Process Area

Artifacts

RequirementManagement

Staff assignment form, RM analysis report, requirements documents, requirements measurements

Project Planning Staff assignment form, statement of work, SDP creation process, SDP template, SDP, estimate review form, SDP review and approval form

Project Tracking

And Oversight

SDP review procedure, commitment review procedure, status review procedure, project tracking process, PM staff assignment form, orientation notice, orientation meeting minutes, status meeting minutes, project tracking measurements, final project review minutes

Configuration

Management

Staff assignment form, SCM plan development procedure, SCM plan template, change request form, library audits report, SCM process, SCM plan, SCM plan review form, Software baseline procedure, baseline audit procedure, Baseline audit report, SCM measurements

Software QualityAssurance

Staff assignment form, SQA plan development procedure, SQA plan template, SQA plan review form, SQA plan, SQA process, SQA audit report, SQA measurements

Executive ReviewProcess

Meeting minutes review with project management, meeting minutes review with SQA, meeting minutes review with SCM, meeting minutes review with RM

Page 30: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Creating Level 2 Training ProgramCreating Level 2 Training Program

The issue of training is important because itprepares the team to conduct its activities according to the established procedures and processes, and it provides the background

to judge the effectiveness of these methods.

-- Mackie May, Quality Assurance Consultant

Page 31: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Types of Training Supported at L2 Types of Training Supported at L2

STRUCTURAL TRAINING

APPLICATION DOMAIN ORIENTATION

Direct Process Training Business/operations orientation

Indirect Process Training

Technical orientation

Tool training

Role training

Page 32: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Common Categories of L2 TrainingCommon Categories of L2 Training

Direct ProcessTraining

Indirect ProcessTraining

Orientation

ToolTraining

RoleTraining

The Reach of Training

Page 33: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Evidence of Program ComplianceEvidence of Program Compliance

Key Process Area

Artifacts

RequirementManagement

Training scope sheet, training invitation, training course material, student hard-out material, completion certificate

Project Planning Training scope sheet, training invitation, training course material, student hard-out material, completion certificate

Project Tracking

And Oversight

Training scope sheet, training invitation, training course material, student hard-out material, completion certificate

Configuration

Management

Training scope sheet, training invitation, training course material, student hard-out material, completion certificate

Software QualityAssurance

Training scope sheet, training invitation, training course material, student hard-out material, completion certificate

Executive ReviewProcess

Training scope sheet, training invitation, training course material, student hard-out material, completion certificate

Page 34: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Creating Level 2 PoliciesCreating Level 2 Policies

Policies show a high level commitment to process and improvement. It is important that the Executive position be clearly and concisely statedso that a common understanding and common boundaries are widespread within the group.

-- Mindy Gilbert, West Conklin Computer Association

Page 35: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

What Policies Are Recommended?What Policies Are Recommended?

KEY PROCESS AREA

POLICIES

Requirement Management

A policy directing the conditions and use of requirements within a project

Project Planning

A policy governing how project planning materials are developed and approved and how formal commitments are made concerning the project.

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

ConfigurationManagement

A policy describing the use and availability of CM resources and tools for each project.

Software QualityAssurance

A policy governing the oversight and reporting duties particular to the SQA mission.

Page 36: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Why Does The CMM Like to See Why Does The CMM Like to See Formal Policies In Place?Formal Policies In Place?

• Policies are the equivalent of laws in an organization, because a policy is an official announcement declaring a formal adoption of and commitment to a program or a position within the corporate environment.

• The use of polices also shows executive positioning. Because policies are created from the highest offices in a company/division/group, they reflect executive management’s on-the-record stand regarding broad strategic missions within the organization.

• Policies also serve as a functional step toward a condition the CMM strives for I term “commonality”.

• Policies also serve as the foundation for continuous quality improvement (CQI). Level 2 is all about CQI: trying, reviewing, improving, trying again. And the process holds true for the policies, too.

Page 37: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

The Seven Habits of Highly The Seven Habits of Highly Effective Policy ManagersEffective Policy Managers

• Identify the Owners

• Think it Through

• Write the Policy

• Review the Policy

• Approve the Policy

• Publish the Policy

• Maintain the Policy

Page 38: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Evidence of Program ComplianceEvidence of Program Compliance

KEY PROCESS AREA

ARTIFACTS

Requirement

Management

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

Project

Planning

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

Project Tracking

And oversight

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

Configuration

Management

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

Software Quality

Assurance

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

Page 39: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Subcontract ManagementSubcontract Management

Managing quality is not simply an interteam

discipline. The process extends past the walls

of your business and touches on those you work

with, those supply you with product, and those

who end up with your product in their hands.

-- West Wicker, Quality Test Associates, Inc

Page 40: Implementing the CMM Level 2 Creating Level 2 Structures Creating Level 2 Processes Creating a Level 2 Training Program Creating Level 2 Policies Subcontract

Evidence of Subcontract Evidence of Subcontract Management ComplianceManagement Compliance

KEY PROCESS AREA

ARTIFACTS

Structure Organizational chart with SubMan role, appointment/assignment forms, capital budget, job descriptions

Processes Vendor selection process, contract development process, work plan development process, work plan template, vendor SDP review and approval procedure, SQA review procedure, acceptance verification procedure.

Training For each Course: Training scope sheet, training invitation, training course materials, student hand-out material, completion certificate

Policy Policy statement, early draft of statement