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

Lecture 11 (1)

The document discusses software process improvement as a strategy for enhancing software quality, reducing costs, and accelerating development. It outlines various approaches, including process maturity and agile methodologies, and emphasizes the importance of measuring and analyzing current processes to identify weaknesses. Additionally, it highlights the SEI capability maturity model, which categorizes process maturity levels and the significance of structured processes in software development.

Uploaded by

ranahassan7674
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Lecture 11 (1)

The document discusses software process improvement as a strategy for enhancing software quality, reducing costs, and accelerating development. It outlines various approaches, including process maturity and agile methodologies, and emphasizes the importance of measuring and analyzing current processes to identify weaknesses. Additionally, it highlights the SEI capability maturity model, which categorizes process maturity levels and the significance of structured processes in software development.

Uploaded by

ranahassan7674
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 13

Lecture

-11
University of Management & Technology
School of Systems and Technology

Software Engineering
CC-2101

Software Process improvement


Somerville | Ch-2 (Pg.
65)
⮚ Many software companies have turned to

software process improvement as a way of

enhancing the quality of their software,


Process
improvem reducing costs or accelerating their
ent development processes.

⮚ Process improvement means understanding

existing processes and changing these

processes to increase product quality and/or


2
Approaches to improvement
The process maturity
The level of process maturity
approach, which focuses on
reflects the extent to which good
improving process and project
technical and management practice
management and introducing
has been adopted in organizational
good software engineering software development processes.
practice.

The agile approach, which


The primary characteristics of agile
focuses on iterative
methods are rapid delivery of
development and the reduction
functionality and responsiveness to
of overheads in the software changing customer requirements.
process.
3
The Process
Improvement
Cycle

4
Process improvement activities
You measure one or more attributes of the
software process or product. These
Process measurement
measurements forms a baseline that helps
you decide if process improvements have
been effective.

The current process is assessed, and


process weaknesses and bottlenecks are
Process analysis identified. Process models (sometimes
called process maps) that describe the
process may be developed.

Process changes are proposed to address


some of the identified process weaknesses.
Process change These are introduced and the cycle
resumes to collect data about the
effectiveness of the changes. 5
Process measurement
However, where organisations
do not have clearly defined
Wherever possible, process standards this is very
difficult as you don’t know what
quantitative process to measure.
data should be collected A process may have to be
defined before any
measurement is possible.

But this does not mean that


Process measurements measurements should drive
should be used to the improvements.
assess process The improvement driver
should be the organizational
improvements objectives.

6
Process metrics
Time taken for process
E.g. Calendar time or effort to
activities to be complete an activity or process.
completed

Resources required for E.g. Total effort in person-days.


processes or activities

Number of occurrences E.g. Number of defects


of a particular event discovered.

7
Capability maturity levels

8
The SEI capability maturity model
Initial Essentially uncontrolled

Product management
Repeatable procedures defined and used

Process management
Defined procedures and strategies
defined and used

Quality management strategies


Managed defined and used

Process improvement strategies


Optimising defined and used 9
❖ Software processes are the activities
involved in producing a software system.

❖ Software process models are abstract


representations of these processes.
Key ❖ General process models describe the
points organization of software processes.
▪ Examples of these general models include the
‘waterfall’ model, incremental development, and
reuse-oriented development.

❖ Requirements engineering is the process of


developing a software specification.
1
0
❖ Design and implementation processes
are concerned with transforming a
requirements specification into an
executable software system.

❖ Software validation is the process of


Key checking that the system conforms to its
specification and that it meets the real needs
points of the users of the system.

❖ Software evolution takes place when you


change existing software systems to meet
new requirements. The software must evolve
to remain useful.

❖ Processes should include activities such1


as prototyping and incremental delivery to1
❖ Processes may be structured for iterative
development and delivery so that changes may be
made without disrupting the system as a whole.

❖ The principal approaches to process


Key improvement are agile approaches, geared to
reducing process overheads, and maturity-based
points approaches based on better process management
and the use of good software engineering practice.

❖ The SEI process maturity framework


identifies maturity levels that essentially
correspond to the use of good software
engineering practice.

1
2
Thankyou
Q&A

13

You might also like