NetSol Presentation

Road Map to CMM
Implementation
NetSol’s Experience
Muhammad Furqan Khan
Manager Quality Engineering
NetSol Technologies (Pvt.) Ltd.
[email protected]
‹#›
NetSol’s Experience
LUMS-21/10/2003
Contents
• Process, Capability & Maturity
• Road Map to CMM
–
–
–
–
–
–
Understand Need & Value of CMM
Initiate Software Process Improvement
Plan Process Improvement Activities
Build Infrastructure for Process Improvement
Build Process Assets & Rollout
Prepare Organization for Appraisals
• Common Mistakes
• Critical Success Factors
• SPI Progress at NetSol
‹#›
NetSol’s Experience
LUMS-21/10/2003
What is a Process?
• Software process - a set of activities,
methods, practices, and transformations that
people use to develop and maintain software
and the associated products (SEI-CMM)
• "The Actual Process is what you do, with all
its omission, mistakes, and oversights. The
Official Process is what books say you are
supposed to do"
Watts Humphrey
‹#›
NetSol’s Experience
LUMS-21/10/2003
Process in Organizational Context
Standards
The “operational definition” or
“acceptance criteria” for final &
interim products
Constrain the process
Processes
Describe “what happens” within the
organization to build products that conforms
to the constraints
Policy
The “laws” or “regulations” that
govern or constrain operation
are implemented by
Procedures
Describe “how to” or step-by-step instructions
to implement process
are supported by
Training
Tools
Knowledge/skills required to
Automated support needed to
Use a procedure
implement the procedures
‹#›
NetSol’s Experience
LUMS-21/10/2003
Process Capability & Maturity
• Capability
– the range of expected results that can be achieved
by following a software process
– means of predicting the most likely outcomes to
be expected from the next software project
• Maturity
– extent to which a specific process is explicitly
defined, managed, measured, controlled, and
effective
‹#›
NetSol’s Experience
LUMS-21/10/2003
Software Capability Maturity Model®
Continuously
Improving
Process
Predictable
Process
Standard
Consistent
Process
Disciplined
Process
Initial
Defined
Managed
(4)
Optimizing
(5)
Continuously
improving
Predictable
(3)
Repeatable Consistent
(2)
Disciplined
(1)
Unpredictable
‹#›
NetSol’s Experience
LUMS-21/10/2003
Software Capability Maturity Model®
Optimizing (5)
Process Change Management
Technology Change Management
Defect Prevention
Managed (4)
Software Quality Management
Quantitative Process Management
Defined (3)
Peer Reviews
Inter-group Coordination
Software Product Engineering
Integrated Software Management
Training Program
Organization Process Management
Organization Process Focus
Repeatable (2)
Software Configuration Management
Software Quality Assurance
Software Subcontract Management
Software Project Tracking & Oversight
Software Project Planning
Requirements Management
Initial (1)
‹#›
NetSol’s Experience
LUMS-21/10/2003
Software Capability Maturity Model®
Maturity Levels
Indicate
Contain
Process
Capability
Key Process Areas
Achieve
Organized by
Goals
Common Features
Address
Contain
Implementation or
Institutionalization
Key Practices
Describe
Infrastructure or
Activities
‹#›
NetSol’s Experience
LUMS-21/10/2003
‹#›
NetSol’s Experience
LUMS-21/10/2003
Road Map To CMM
•
•
•
•
Understand Need & Value of CMM
Initiate Software Process Improvement
Plan Process Improvement Activities
Build Infrastructure for Process
Improvement
• Build Process Assets & Rollout
• Prepare Organization for Appraisals
‹#›
NetSol’s Experience
LUMS-21/10/2003
Value of CMM®
• Two Fundamental Question
– Why do software process improvement?
• What is the impact on bottom line?
• Will this give us competitive advantage?
– Will the CMM help my organization improve?
• What about other approaches?
• Project Management Processes: A Problem
– “Project management issue emerge as the main
reasons for runaway projects.” (KPMG)
– “The most software productivity and quality
improvements today are management … driven.”
(SRI International)
‹#›
NetSol’s Experience
LUMS-21/10/2003
Value of CMM®
• The Bottom line
– Software process improvement should be done to
help the business-not for its own sake
– Improvement means different things to different
organizations
• What are your business goals?
• How do you measure progress?
– Improvement is a long term, strategic effort
– CMM addresses management processes
– CMM-based SPI has been broadly adopted
‹#›
NetSol’s Experience
LUMS-21/10/2003
Value of CMM®
• Possible Impacts Include
– Significant improvements in performance
•
•
•
•
quality
productivity
cycle time
predictability
– Increasing
•
•
•
•
•
•
‹#›
Visibility into organization performance?
Predictability of results?
Staff morale?
Product performance?
Ability to manage complexity?
Visibility of business value?
NetSol’s Experience
LUMS-21/10/2003
Value of CMM®
• Cost performance by maturity level
‹#›
NetSol’s Experience
LUMS-21/10/2003
Value of CMM®
‹#›
NetSol’s Experience
LUMS-21/10/2003
Initiate Process Improvement
• Prerequisites
– Identify business drivers
– Gain senior management support
– Ensure there are no hidden agenda
– Make it clear you are improving Processes
not People
– Set realistic expectation
– Ensure readiness & willingness to improve
‹#›
NetSol’s Experience
LUMS-21/10/2003
Initiate Process Improvement
• Principles
– Improvement direction must start at the top
– Fix the process not the people
– Everyone must be involved in the improvement
process
– Effective improvement requires knowledge of
current practices
– Improvement is continuous
– Improvement requires investment
– Use external help to reduce risk
‹#›
NetSol’s Experience
LUMS-21/10/2003
Initiate Process Improvement
• Areas to Address
– People & culture
• People need a reason to change
– Communication
• change without communication is driving without roads
– Management Commitment
• Support, resource availability, time allocation
– Planning
– Tools & Processes
• Need for Continuous Process Improvement
– Because of changing environment
• Customer
• Technology
• People
‹#›
NetSol’s Experience
LUMS-21/10/2003
Planning Process Improvement
•
•
•
•
•
•
•
•
Understanding of the Problem
Resource Availability
Credibility of Plan
Direction
Focus
Measures
A documented diagnosis and recommendations
Fundamental Plans
– Business plans
– Organizational improvement plan
‹#›
NetSol’s Experience
LUMS-21/10/2003
Build Infrastructure
•
•
•
•
•
•
•
‹#›
Management Steering Group (MSG)
Dedicated Quality Engineering Function
CMM Implementation Group (CIG) (or SEPG)
Process Action Teams (PATs)
Project Coordinators
Improvement Assets
Improvement Culture
NetSol’s Experience
LUMS-21/10/2003
‹#›
NetSol’s Experience
LUMS-21/10/2003
Build Process Assets
• Key Modes of Process Representation
– Process Model
•
•
•
•
A detailed, formalized representation
Often in graphical notation
Primary users: process engineers
Primary use:process engineering
– Process Guide
• A structured, work-flow oriented process
reference
• Primary users: process participants
• Primary use: enactment support
‹#›
NetSol’s Experience
LUMS-21/10/2003
Build Process Assets
• Notation/Language examples
– Process Models
•
•
•
•
•
•
ETVX
IDEF0
Statemate®
Flowcharts
DFDs
Activity Networks
– Process Guides
•
•
•
•
‹#›
Structured Text
Templates/Forms
Decision Trees/Tables
Checklists
NetSol’s Experience
LUMS-21/10/2003
Build Process Assets
• Principal Entity Classes
‹#›
Activities
what happens & how it is done
Artifacts
what things are used & produced
Agents
who (or what) does it
NetSol’s Experience
LUMS-21/10/2003
Build Process Assets
• Principal Entity Classes
– Entity Description
• Attributes for each entity
– Name, purpose, description, skills, etc.
– Entity Aspects
• Relationships
– Within entity class
– Among entity classes
• Behavior
– Within entity class
– Among entity classes
‹#›
NetSol’s Experience
LUMS-21/10/2003
NetSol’s Standard Software Process
Software Quality
Assurance Activities
SQA Plan
SQA Reporting
SQA Audit
SQA Reviews
Independent inspection of work products
Management
Activities
Configuration
Management Activities
Software development
Activities
SCM Plan
Business Modeling
Define PDSP
RS Development
Planning
Integrated
with
Monitor/Control
Baselining
FS & Design
Controlled by
Change Management
Coding
Testing
Closure
Status Reporting
Deployment
SCM Audit
Supported and guided by
Organizational
Policies
‹#›
& Org. Structure,
Roles
Responsibilities
Process Asset
Database
Training
NetSol’s Experience
Peer
Reviews
Other periodic
& event driven
Reviews
LUMS-21/10/2003
NSSP Mapping to CMM Processes
SQA
IC
Software Quality
Assurance Activities
SQA Plan
SQA Reporting
SQA Audit
SQA Reviews
Independent inspection of work products
ISM
Management
Activities
SPP
SPTO
RM
Business Modeling
Define PDSP
Configuration
Management Activities
SPE
Software development
Activities
RM
RS Development
Planning
Integrated
with
Monitor/Control
SCM Plan
Baselining
FS & Design
Controlled by
Coding
Change Management
Testing
Closure
RM
Status Reporting
Deployment
SCM Audit
Supported and guided by
OPF
‹#›
Organizational
Policies
TP
OPD
& Org. Structure,
Roles
Responsibilities
Process Asset
Database
Training
NetSol’s Experience
PR
Peer
Reviews
Other periodic
& event driven
Reviews
LUMS-21/10/2003
Prepare for Appraisal
•
•
•
•
•
•
•
‹#›
Why Assess?
Goals for CBA-IPI
Assessment Phases
Assessment Participants
Data Sources
Data Consolidation
Rating
NetSol’s Experience
LUMS-21/10/2003
Why Assess?
• Business needs derive the requirements for
process improvement and assessment
• Business goals for process improvement are
usually related to
– reducing costs
– improving quality
– decreasing time to market
• Fundamental assumption:
– costs, quality, & schedule are largely determined
by
– the development process
‹#›
NetSol’s Experience
LUMS-21/10/2003
Goals for CBA-IPI
• Provide an accurate picture of existing
software processes relative to reference
model ;
e.g. SW-CMM®
– Provides a baseline of organization’s capability
– Provides strengths & weaknesses relative to the
CMM
– Provides findings to guide planning future process
improvement activities
• Support, enable, and encourage an
organization’s commitment to software
process improvement
‹#›
NetSol’s Experience
LUMS-21/10/2003
Assessment Phases
• Plan & Prepare
– training, briefing, questionnaire, document
review
• Conduct
– data collection, consolidation, rating
• Report Results
– draft findings, final findings,
recommendations
‹#›
NetSol’s Experience
LUMS-21/10/2003
Assessment Participants
• Sponsor
– business goals, commitment & support, scope
definition
• Lead Assessor
– qualified, plan, organize & manage assessment
• SEPG & Other Members
– SEPG helps above two, librarian, site coordinator
• Assessment Team Members
– meet selection criteria, opinion leaders, being
trained
• Assessment Participants
– follow schedule of participation
‹#›
NetSol’s Experience
LUMS-21/10/2003
Data Sources
• Documents
– organization, project, & implementation level
• Instruments
– maturity questionnaire
• Interviews
– project leaders, middle manager, functional area
representatives
• Presentations
– participants presentation, draft finding
presentation
‹#›
NetSol’s Experience
LUMS-21/10/2003
Data Consolidation
• Information that has been seen & heard is
consolidated into observations that the team
determines through consensus are:
– accurate
– corroborated by at least two independent sources
– valid (consistent with each other)
• Sufficient data must be collected for each key
practice to cover the CMM scope, the
organization scope, and the software life
cycle
‹#›
NetSol’s Experience
LUMS-21/10/2003
Rating
• Rating is done for each goal for each key KPA
within assessment scope. If all goals are
satisfied, the KPA is “satisfied”
• If one goal is unsatisfied, the KPA may be
rated “partially satisfied” however, this is
unsatisfied to maturity rating
• If all KPAs within a maturity level are satisfied
and all KPA satisfied within each maturity
level below it, then a maturity level rating is
“achieved”
‹#›
NetSol’s Experience
LUMS-21/10/2003
Common Mistakes
•
•
•
•
•
•
•
‹#›
No Link Between Business & Improvement
The Level 3 Syndrome
Lack of Measurement
Lack of Change Agent
Communication Gaps
Enforcing Maturity by Contract
Maturity Arrogance
NetSol’s Experience
LUMS-21/10/2003
Critical Success Factors
•
•
•
•
•
•
•
•
•
•
‹#›
Understand the Context First
Establish Senior Management Commitment
Quantify Business Goals
Identify Process Improvement Approach
Establish an Agreed Assessment & Training
Schedule
Identify Gaps & Action Plan for Closure
Manage Expectation by Effective
Communication
Track Progress & Issues Effectively
Measure Change
Plan for Internal Assessment Prior to External
NetSol’s Experience
LUMS-21/10/2003
Road Map to CMM
• Past:
–
–
–
–
–
First ISO 9001 Certification – Dec 1998
CMM Initiative – April 2000
CMM Level 2 Rating – Mar 2002
CMM Level 3 Pre-Assessment – Mar 2003
CMM Level 3 Rating – Jul 2003
• Present
– Level 4 Implementation – In-progress
– Internal Assessment CMM Level 4 – Dec 2003 (Planned)
• Future
– CMM Level 4 Assessment – Planned
– CMM Level 5 Assessment – Planned
‹#›
NetSol’s Experience
LUMS-21/10/2003
1
Mar
Feb
Jan 2002
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan 2001
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
S# SPI Activities
Jan 2000
CMM Implementation at NetSol
BOD Meeting &
Decision
2 Official CMM Training
3 Initial Planning
4 Staff Orientation
5
SEPG Formation &
Training
6 SEPG Efforts
7
QE Function
Established & Trained
8
CIG Established &
Trained
9
Process Development
for Level 2
10
Organization-wide
Training & Rollout
11
Process Development
for Level 3
12
Organization-wide
Training & Rollout
13 CBA-IPI
‹#›
NetSol’s Experience
LUMS-21/10/2003
Thank You