0% found this document useful (0 votes)
73 views

SPPM Unit-I

This document provides an introduction to software process and project management. It discusses key concepts like software process maturity models, life cycles, artifacts, and workflows. It summarizes the Capability Maturity Model (CMM) for assessing an organization's software processes. The CMM defines 5 levels of process maturity: Initial, Repeatable, Defined, Managed, and Optimized. It also discusses the People Capability Maturity Model (PCMM) and Personal Software Process (PSP) framework for improving individual skills.

Uploaded by

Kab Kab
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
73 views

SPPM Unit-I

This document provides an introduction to software process and project management. It discusses key concepts like software process maturity models, life cycles, artifacts, and workflows. It summarizes the Capability Maturity Model (CMM) for assessing an organization's software processes. The CMM defines 5 levels of process maturity: Initial, Repeatable, Defined, Managed, and Optimized. It also discusses the People Capability Maturity Model (PCMM) and Personal Software Process (PSP) framework for improving individual skills.

Uploaded by

Kab Kab
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

Introduction to Software

Process and Project


Management
Objectives
• Understand the various aspects of project management.
• Learn managerial skills for software projects.
• Learn various techniques for qualitative handling of software
projects.
• Learn process maturity models, life cycle phases, arti facts and
workflows.
• Learn to manage the software project using conventional and
modern principles of software project management.
• Learn project organization, control and automation.
UNIT-I Software Process Maturity
• Software maturity Framework
• Principles of Software Process Change
• Software Process Assessment
• Process Reference Models
• Capability Maturity Model (CMM)
• CMMi , PCMM, PSP, TSP
1.Software Maturity Framework
1.1 Software Process Improvement
1.2 Process Maturity Levels
1.3 People in Optimizing Process
1.4 Need for the Optimizing Process
1.1 Software Process Improvement
To improve their software capabilities, organizations need to take
five basic steps:
1. understand the current status of their development process
2. develop a vision of the desired process
3. establish a list of required process improvement actions in
order of priority
4. produce a plan to accomplish these actions
5. commit the resources to execute the plan
1.2 Process Maturity Levels
The five levels of process maturity which have been defined are:
1. Initial - until the process is under statistical control, no orderly progress in process
improvement is possible.
2. Repeatable - a stable process with a repeatable level of statistical control is achieved
by initiating rigorous project management of commitments, cost, schedule, and change.
3. Defined - definition of the process is necessary to assure consistent implementation
and to provide a basis for better understanding of the process. At this point, it is
probable that advanced technology can be usefully introduced.
4. Managed - following the defined process, it is possible to initiate process
measurements. This is where the most significant quality improvements begin to
appear.
5. Optimized - with a measured process, the foundation is in place for continuing
improvement and optimization of the process.
Figure representing the various maturity
levels
Initial Level
Organizations at the Initial Process can advance to the
Repeatable Process by instituting basic project controls. The
most important are:
• Project Management
• Management Oversight
• Quality Assurance
• Change Control
Repeatable Level
The highest risk factors at this level are:
• New tools and Methods will affect the process
• Developing a new kind of project
• Major organizational changes
The key actions required to advance from the Repeatable to the Defined Process are
the following:
• Establish a process group
• Establish a software development process architecture which describes the
technical and management activities required for proper execution of the
development process .
• If they are not already in place, introduce a family of software engineering
methods and technologies.
Defined Level
In advancing from the Defined to the Managed Process, the key steps
are the following:
• Establish a minimum basic set of process measurements to identify
the quality and cost parameters of each process step.
• Establish a process data base with the resources to manage and
maintain it.
• Provide sufficient process resources to analyze this data and advise
project members on the data’s meaning and use.
• Assess the relative quality of each product and inform management
where quality targets are not being met. This is typically done by the
assurance organization.
Managed Level
The two fundamental requirements for advancing from the
Managed to the Optimized Process are:
• Provide automatic support for gathering process data. Some
data can not be gathered by hand and all manually gathered
data is subject to error and omission.
• Turn the management focus from the product to the process.
Optimized Level

• In order to optimize the process, errors can be identified and


fixed far more economically by using code inspections than
through testing.
• With the Optimized Process, the organization has the means to
identify the weakest elements of the process and fix them.
• It is now possible to assure the process and, by using it, have
confidence in the quality of the resulting products
1.3 People in Optimizing Process
The Optimized Process helps in several ways:
1. It provides management with the means to understand where help is
needed and how to best provide the people with the support they require.
2. With an Optimized Process, the professionals can communicate in
concise quantitative terms. This facilitates the transfer of knowledge and
minimizes the likelihood of reinventing the wheel.
3. An enormous amount of effort is generally expended in fixing and
patching other peoples’ mistakes. The Optimized Process provides the
framework for the professionals to understand their work performance
and to understand how to improve it. This results in a highly professional
environment and substantial productivity benefits.
1.4 Need for the Optimizing Process
• There are many examples of disasters which have been caused by
software bugs. They range from expensive missile aborts to enormous
financial losses
• Not only are our systems being used in increasingly sensitive
applications but they are also becoming much larger and more complex.
• The Optimized Process thus provides the foundation for significant
advances in software quality along with simultaneous improvements in
productivity.
• To meet the needs of society for increased system functions while
simultaneously addressing the risks, we must move rapidly to the
Optimized Process.
2. Principles of Software Process Change
2.1 Six Principles of Software Process Change
2.2 Strategy for Implementing Software Process Change
2.3 Elements of the Change Process
2.1 Six Principles of Software Process Change

• Changes should start from top


• Everyone should be involved.
• Effective change requires knowing the current status.
• Change is continuous.
• Changes can be retained by periodic reinforcement.
• Changes requires investment.
2.2 Strategy for Implementing Software
Process Change
Effective change process has three phases:
• Freezing- Software Process Assessment
• Moving- Champions, Sponsors and Agents
• Refreezing
2.3 Elements of Software Process Change

The three elements of software change process:


• Planning
• Implementing
• Communication
3. Software Process Assessment
3.1 Five Principles of Software Process Assessment
3.2 Phases of Software Process Assessment
3.3 Elements of the Assessment Process
3.4 Assessment Conduct
3.1 Five Principles of Software Process
Assessment
• Start with a Process Model
• Observe Strict Confidentiality
• Involve Senior Management
• Keep an Open Mind and a Level Head.
• Focus on Action
3.2 Phases of Software Process Assessment

It is conducted in three phases:


• Preparation- Training program for the team
• Assessment- Preliminary report of the findings
• Recommendation-Local action team will implement the
recommendations
3.3 Elements of Software Process
Assessment
The following are the elements of software process assessment:
• Forming an assessment team.
• Self- Assessment considerations
• Assessment ground rules
• Assessment team training.
• The on-site Period.
3.4 Assessment Conduct

The following is the procedure for conducting software process


assessment:
• Probing Questions.
• Assessment Conclusions
• Assessment Report.
• Action Plans.
• Re-assessment.
4. Capability Maturity Model(CMM)
5. Capability Maturity Model Integration
(CMMI)
Level Focus Key Process Area Result

5 Continuous Process Organizational Innovation and Deployment, Causal Analysis Highest Quality /
Optimizing Improvement and Resolution Lowest Risk

4 Quantitatively Managed Organizational Process Performance, Quantitative Project Higher Quality /


Quantitatively Managed Management Lower Risk

3 Process Standardization Requirements Development, Technical Solution, Product Medium Quality /


Defined Integration, Verification, Validation, Organizational Process Medium Risk
Focus, Organizational Process Definition, Organizational
Training, Integrated Project Mgmt, Risk Management,
Decision Analysis and Resolution, Integrated Teaming, Org.
Environment for Integration, Integrated Supplier Management.

2 Basic Project Management  Requirements Management, Project Planning, Project Low Quality /
Managed Monitoring and Control, Supplier Agreement High Risk
Management, Measurement and Analysis, Process
and Product Quality Assurance, Configuration
Management

1 Process is informal and Lowest Quality /


Initial Adhoc Highest Risk
6. People Capability Maturity Model
(PCMM)
7. Personal Software Process
Framework activities are:
• Planning
• High Level Design
• High Level Design Review
• Development
• Postmorterm
Drawbacks of PSP
• It is a metric-based approach.
• Not widely adopted due to human nature.
• It is intellectually Challenging and demands a level of
commitment.
• Training is relatively lengthy and costs are high.
8. Team Software Process
Framework activities are:
• Launch
• High Level Design
• Implementation
• Integration and testing
• Postmorterm
Objectives/ Advantages of TSP
• It builds self-directed teams.
• Shows managers how to motivate their team and help them to
achieve peak performance.
• Accelerates software process improvement by making CMM
Level 5 behaviour normal and expected.
• Provides improvement guidance to high maturity organizations

You might also like