+ All Categories
Home > Documents > SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT...

SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT...

Date post: 31-Jul-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
36
CTIS 359 Principles of Software Engineering SOFTWARE PROCESS IMPROVEMENT Cüneyt Sevgi CTIS 359 Fall 07-08
Transcript
Page 1: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CTIS 359 Principles of

Software Engineering

SOFTWARE PROCESS

IMPROVEMENT

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 2: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

Today’s Objectives•To explain the principles of software process improvement

•To explain how software process factors influence software quality and productivity

•To explain how to develop simple models of software processes

•To explain the notion of process capability and the CMMI process improvement model

•To intoduce ISO/IEC 15504 international standard for process assessment

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 3: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

Software Quality & Process

Improvement

Quality of the development

process Quality of the software

product

SPI (Software Process Improvement)

is one way of enhancing the quality of

the software

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 4: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

What is Process Improvement?•Understanding existing processes and introducing process changes to improve product quality (reduce the # of defects delivered)

•ALSO reduce costs, or accelerate schedules.

•Most process improvement work so far has focused on defect reduction. This reflects the increasing attention paid by industry to quality.

•However, other process (like products attributes in the

previous lectures) attributes can also be the focus of improvement.

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 5: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS ATTRIBUTES (or characteristics)

Pr oce ss

cha rac teristic

D escr iption

U nder standa bil ity To w hat ex ten t is the p roce ss exp lic itly defined an d how ea sy is it t o

under stan d t he p roc ess de fin ition?

V isib ility D o the process ac tiv it ies cu lmi na te in clea r results so that the p rogress

of the process is ex ter nally vis ib le?

Supportab il ity To w hat ex ten t can C A SE too ls be us ed to support the p roce ss

ac tiv it ies?

A cce p tab ility Is t he defin ed p roce ss acce p tab le to and us ab le by the enginee rs

responsible for p roduci ng the s oftw are p roduct?

Reliabi lity Is t he p roce ss designed in such a w ay that process errors are avoide d o r

trapped b efore the y result in p roduc t errors ?

Robus tness Can the proc ess cont inue in sp ite o f unex pect ed p rob le ms ?

M ain taina b ility Can the proc ess evolve to re flect cha nging org an is at ional requirem ents

or ide n tified p rocess imp rovem en ts?

Rapid ity H ow fast can the pro ce ss o f de liv ering a sys tem from a given

speci fic a tion be co mp le ted ?

Not possible to OPTIMIZE ALL attributes SIMULTANEOUSLY

e.g., Rapidity vs Visibility

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 6: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

Software Process Improvement

NOT simply adopt particular method,

tool, or model of process used elsewhere.

COMMON factors + LOCAL

ORGANIZATIONAL factors

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 7: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

Process Improvement Cycle

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 8: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS IMPROVEMENT

STAGES

•Process measurement

•Attributes of the current product or project are measured. These are a baseline for assessing improvements.

•Process analysis

•The current process is assessed and bottlenecksand weaknesses are identified.

•Process change

•Changes to the process that have been identified during the analysis are introduced

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 9: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS AND PRODUCT

QUALITY

•SPI is based on the assumption that “the quality of the product depends on its development process”.

•A good process is usually required to produce a good product.

•For manufacturing Industry , process is the principal quality determinant.

•W. E. Deming+ (others) introduced the idea of SPC*.

•SPC: “Reduce the # of product defects by PI until it is REPEATABLE.”

•For design-based activity, other factors are also involved especially the capabilities of the designers.

Cüneyt Sevgi CTIS 359 Fall 07-08

*SPC = Statistical Process Control

Deming+ = An American Engineer

Page 10: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

Principal Product Quality Factors

In manufacturing, productprocess

relationship is obvious.

However, for software products, (like other

intellectual products e.g., book, films) quality

depends on its design.

Hence, 4 main factors affect product

quality

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 11: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

Principal Product Quality Factors (Cont.)

Product

quality

De velopment

technol o gy

Cost, time and

schedule

Process

quality

People

quality

Influence of these factors depend size and type of the project

Ex: For large projects

Ex: For small projects

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 12: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS IMPROVEMENT

STAGES

•Process measurement

•Process analysis

•Process change

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 13: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS MEASUREMENT

•Process Measurements: are QUANTATIVE data about the software process.•Process Measurements can be used to assess whether the efficiency of a process has been improved.•Personal process (PSP) small-scale•TSP

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 14: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PREDICTOR AND CONTROL

METRICS

Process metric: average time required

to repair reported defectProduct metric: average length

of identifiers in a program

For SPI, you should

measure product quality

as well

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 15: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS MEASUREMENT

Wherever possible, quantitative process data should be collected.

◦ However, where organizations do not have clearly defined process standards this is very difficult as you don’t know what to measure. A process may have to be defined before any measurement is possible.

Process measurements should be used to assess process improvements.

◦ But this does not mean that measurements should drive the improvements. The improvement driver should be the organizational objectives.

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 16: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS MEASUREMENT

3 classes of process metric:

1. The time for a particular process to be

completed e.g., t spent for process X

2. The resources required for a particular

process e.g., travel costs, total effort

3. The # of occurrences of a particular

event e.g., # of defects discovered in the code

inspection

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 17: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS IMPROVEMENT

STAGES

•Process measurement

•Process analysis and

modeling

•Process change

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 18: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS ANALYSIS AND

MODELING

•Process analysis

•The study of existing processes to understand the relationships between parts of the process and to compare them with other processes.

•Process modeling

•The documentation of a process which records the tasks, the roles and the entities used;

•Process models may be presented from different perspectives.

•Simplifies views of software processes

•Activities

•Outputs, Inputs

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 19: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS IMPROVEMENT

STAGES

•Process measurement

•Process analysis and

modelling

•Process change

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 20: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS CHANGE

•Involves making modifications to existing processes.•This may involve:

•Introducing new practices, methods or tools;•Changing the ordering of processactivities;•Introducing or removing deliverables;•Introducing new roles or responsibilities.

•Change should be driven by measurable goals.

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 21: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

PROCESS CHANGE (Cont.)

•If you are a project manager/director, •you have to be sensitive to the feelings of the people in your team when introducing process change

•People feel threatened by change and concerned that

•lose their jobs

•unable to cope with the new process

•Solution: User involvement

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 22: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMM(I) PI FRAMEWORK

•Mid-1980s Software Engineering Instituteinitiated a study of ways assessing capabilities of the contractors

•Mid-1990s Capability Maturity Model

•Tremendous impact on SWE industry

•CMM the early 1990s.

•P-CMM

•SPICE (assesment+PI)

•Revised maturity framework (CMMI) introduced in 2001.

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 23: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMM(I) PI FRAMEWORK (Cont.)

•CMM the early 1990s.

•Scope: Software and Systems Engineering

•P-CMM

•CMM + People

•CMMI introduced in 2001

•Integrates other engineering models

•2 Instantiations•Staged

•Continuous

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 24: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMMI

Complex but simlified version

1. Process Areas (4 Groups of 24 PAs)

2. Goals: desirable state

3. Practices: ways of achieving goals

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 25: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMMI PROCESS AREAS 1&2

Process management Organisational process definition

Organisational process focus

Organisational training

Organisational process performance

Organisational innovation and deployment

Project management Project planning

Project monitoring and control

Supplier agreement management

Integrated project management

Risk management

Integrated teaming

Quantitative project management

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 26: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMMI PROCESS AREAS 3&4

Engineering Requirements management

Requirements development

Technical solution

Product integration

Verification

Validation

Support Configuration management

Process and product quality management

Measurement and analysis

Decision analysis and resolution

Organisational environment for integration

Causal analysis and resolution

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 27: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMMI Goals Example

Cüneyt Sevgi CTIS 359 Fall 07-08

G oa l P roce ss area

Co rrec tive ac tions ar e m anag ed to

closure when the p rojec t’ s pe rfo rm ance

or resu lts dev iate sign ifi can tly from the

plan .

Spec ifi c go al in Pr ojec t

Mon it oring and Con trol

Ac tua l pe rfo rm ance and prog ress of t he

projec t is m on it or ed ag ain st the proj ect

plan .

Spec ifi c go al in p rojec t

m on it or ing and cont rol

T he requ ir em en ts are an al ysed and

va li da ted and a de finiti on o f the requ ired

func tiona li ty is deve loped .

Spec ifi c go al in

requ irem ents

deve lop m en t.

Roo t cau ses of de fec ts and other

prob lem s ar e sys tem atica ll y de term ined.

Spec ifi c go al in c ausa l

ana lysis and resolu tion .

T he p roce ss is in stit ut ion a lis ed as a

de fined p roce ss.

Gene ric goa l

Page 28: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMMI Practices Example

Cüneyt Sevgi CTIS 359 Fall 07-08

Pr actice Ass oc iated goal

A na lyse de rived requ irem en ts to ens ure tha t the y are

nece ssary an d su ffic ien t

V al ida te req u irem ents t o en su re that the r esulting

product w ill perf orm as inten ded in the us er ’s

environm ent us ing m ultip le tec hniques as

appropriat e .

The req u irem ents are ana lyse d a nd

vali dated an d a defin it ion o f the

req u ired func tiona li ty is d ev e lo ped .

Sel ect the de fec ts and other p roblems for anal ysis.

Perform cau sa l a nalysis of s elect ed defect s an d o ther

problems and propos e act ions to address them .

Root ca us es of de fec ts and o ther

problems are sys tem atica lly de term ined .

Establ is h an d m ainta in an o rganisa tiona l polic y for

p la nning an d p erformi ng the requirem ents

deve lopm en t p roce ss .

Ass ig n r esponsibili ty an d au thority fo r perfor m ing

the p roce ss, de velop in g t he w ork p roduct s an d

providing the service s o f the req u irem ents

deve lopm en t p roce ss .

The p ro ce ss is ins titutiona lised as a

def ine d p roce ss .

Page 29: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMMI (6 scales)

Not performed: goal goals associated with PA not satisfied

Performed: goal PA satisfied Managed: Documented plan resource

man. and process monitoring Defined: Measurements must be

collected and used for future projects Quantitatively Managed: Use SPC and

quantitative methods. Optimizing: Product and process

metrics are used for SPI

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 30: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

STAGED CMMI MODEL•Comparable with the software CMM.•5 levels•Each maturity level has process areas and goals. •E.g., The process area associated with the managed level include:

•Requirements management;•Project planning;•Project monitoring and control;•Supplier agreement management;•Measurement and analysis;•Process and product quality assurance.•Configuration Management

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 31: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CMM STAGES

•Initial•Essentially uncontrolled

•Repeatable•Product management procedures defined and used

•Defined•Process management procedures and strategies defined and used

•Managed•Quality management strategies defined and used

•Optimising•Process improvement strategies defined and used

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 32: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

STAGED CMMI MODEL

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 33: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CONTINUOUS CMMI MODEL

•No discerete levels for organization

•This is a finer-grain model that considers individual or groups of practices and assesses their use.

•The maturity assessment is not a single value but is a set of values showing the organizations maturity in each area.

•The CMMI rates each process area from levels 1 to 6.

•The advantage of a continuous approach is that organizations can pick and choose process areas to improve according to their local needs.

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 34: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

CONTINUOUS CMMI MODEL(Cont.)

Cüneyt Sevgi CTIS 359 Fall 07-08

Project monitor ing

and control

Supplier ag reement

management

Risk

management

Configuration

management

Requirements

management

Verificati on

Validat ion

1 2 3 4 5

Page 35: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

ISO/IEC 15504•ISO 15504 was initiated in 1993 as the SPICE (Software Process Improvement and Capability determination) project.

•The project then moved into the International Organization for Standardization and the International Electro technical Commission (ISO/IEC)

•The principle of ISO/IEC 15504 is that the assessments of software process capability will yield results which are comparable.

•The goal of 15504 is to create a world standard that can be used to link assessment results to improvement actions.

•It allows different assessments models and methods (like CMMI) to be used.

Cüneyt Sevgi CTIS 359 Fall 07-08

Page 36: SOFTWARE PROCESS IMPROVEMENTcsevgi.bilkent.edu.tr/courses/ctis359/week11.pdf · PROCESS AND PRODUCT QUALITY •SPI is based on the assumption that “the quality of the product depends

KEY POINTS•Process improvement involves process analysis, standardization, measurement, and change.•Process models include descriptions of activities, sub-processes, and deliverables.•The CMMI process maturity model is an integrated process improvement model that supports both staged and continuous process improvement.

Cüneyt Sevgi CTIS 359 Fall 07-08


Recommended