software engineering - vuragaisis/psi_inf2012/se-10-process.pdf · csc2008 se “software...

54
SOFTWARE ENGINEERING SOFTWARE PROCESS Saulius Ragaišis [email protected]

Upload: others

Post on 19-Apr-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

SOFTWARE ENGINEERING

SOFTWARE PROCESS

Saulius Ragaišis

[email protected]

Page 2: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CSC2008 SE “Software Processes”

Learning Objectives:

• Explain the concept of a software life cycle and provide an example, illustrating its phases including the deliverables that are produced.

• Select, with justification the software development models and process elements most appropriate for the development and maintenance of a diverse range of software products.

• Explain the role of process maturity models.

• Compare the traditional waterfall model to the incremental model, the agile model, and other appropriate models.

• For each of various software project scenarios, describe the project’s place in the software life cycle, identify the particular tasks that should be performed next, and identify measurements appropriate to those tasks.

Page 3: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

WHY SOFTWARE PROCESS?

Page 4: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Software crisis

Standish Group, Extreme CHAOS. The Standish Group International, Inc., 2001. (more than 30.000 projects)

16%

27%

26%

28%

31%

40%

28%

23%

53%

33%

46%

49%

1994

1996

1998

2000

Succeded

Failed

Challenged

Page 5: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Product quality vs. Process quality

Page 6: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Software Process modeling SEI (Software Engineering Institute) ESI (European Software Institute)

• ISO 9000

• CMM, CMMI

• BOOTSTRAP

• SPICE, ISO 15504-TR, ISO 15504 + ISO 12207

• TickIT, ITIL, COBIT

Page 7: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Benefits of maturity

CMM level

Duration (months)

Efforts (man

months)

Defects Median cost ($M)

Min cost ($M)

Max cost ($M)

1 30 600 61 5,5 1,8 100+

2 18.5 143 12 1,3 0,96 1.7

3 15 80 7 0,728 0,518 0,933

Data of 1.300 projects; large projects (about 200.000 LOC). Costs are calculated taking 110.000 $ for person year.

Page 8: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Benefits of maturity (2)

Page 9: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Costs of maturity Median amount of time to move from one CMM maturity level

to the next:

Page 10: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

MAIN CONCEPTS

Page 11: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Main Concepts

• (Software) Process: the entirety of activities performed to develop and/or maintain software products and/or provide software services.

• Process Area: the set of activities that, when performed collectively, are important for making software process improvement, i.e. activities are grouped according to contribution to process capability.

• (Named) Process: the set of activities grouped according their goals in software life cycle.

Page 12: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Main Concepts (2)

• Process Capability: the range of expected results that can be achieved by following a process, i.e. ability (probability) to achieve the goals of the process.

• Capability Level: the measure in the discrete scale of the achievement of process capability (improvement). Capability levels as a rule apply to a named process’ capability.

• Process Maturity: the measure in which the process is managed, defined, quantitatively managed and optimizing.

• Maturity Level: Degree of process improvement across a predefined set of process areas in which all goals within the set are attained. Maturity levels apply to an organization’s overall maturity.

Page 13: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Process Capability dependence on Maturity Level

Page 14: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Main Concepts (3)

Software Process Model: definition of the essential elements for assessment of process maturity and/or capability and process improvement.

Staged Software Process Model: provides the means for assessment of the organization’s overall maturity and the predefined sequence of improvements. Result of the assessment is maturity level of the organization (it’s software process). Examples: SW-CMM, CMMI Staged.

Continuous Software Process Model: provides the means for assessment of individual named processes’ (process areas’) capability. Result of the assessment is processes capability profile. Examples: SPICE, ISO/IEC 15504, CMMI Continuous.

Page 15: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Comparison of models: Staged

• Provides a predefined sequence of improvements (suitable for ~80% of organizations)

• Measurable steps of process improvement are big

• Provides a single rating for the organization so enabling comparison of organizations (very suitable for marketing purposes)

Page 16: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Comparison of models: Continuous

• Allows you to select the order of improvement that best meets the organization’s business objectives

• Improvement of single process could measured

• Provides rating for each named process (very suitable for process improvement purposes but it is complicated to compare organizations)

Page 17: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

SOFTWARE PROCESS MODELS

Page 18: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Software Process models

• SW-CMM (Capability Maturity Model for Software) • SE-CMM (Systems Engineering Capability Maturity Model)

• SA-CMM (Software Acquisition Capability Maturity Model)

• IPD-CMM (Integrated Product Development Capability Maturity Model) ...

CMM (Capability Maturity Model):

CMMI (Capability Maturity Model Integration): • CMMI-DEV (CMMI for Development)

• CMMI-ACQ (CMMI for Acquisition)

• CMMI-SVC (CMMI for Services) Current version 1.3.

SPICE (Software Process Improvement and Capability dEtermination)

ISO/IEC 15504: Information technology - Process assessment (first version: Software process assessment)

Page 19: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI Staged Representation

Common features

Maturity levels

Process area 1 (PA1) Process area 2 (PA2) Process area n (PAn)

Specific goals Generic goals

Specific practicesCommitment to

perform

Ability to

perform

Activities

performed

Verifying

implementation

Generic practices

Measurement

and analysis

Page 20: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI Maturity levels ML1: Initial 0 process areas

ML2: Managed 7 process areas

ML3: Defined 11 process areas

ML4: Quantitatively Managed 2 process areas

ML5: Optimizing 2 process areas

Page 21: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI-DEV PA of maturity level 2

• CM - Configuration Management

• MA - Measurement and Analysis

• PMC - Project Monitoring and Control

• PP - Project Planning

• PPQA - Process and Product Quality Assurance

• REQM - Requirements Management

• SAM - Supplier Agreement Management

Page 22: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI-DEV PA of maturity level 3

• DAR - Decision Analysis and Resolution • IPM - Integrated Project Management • OPD - Organizational Process Definition • OPF - Organizational Process Focus • OT - Organizational Training • PI - Product Integration • RD - Requirements Development. • RSKM - Risk Management. • TS - Technical Solution. • VAL - Validation. • VER - Verification.

Page 23: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI-DEV PA of other maturity levels

Maturity Level 4 - Quantitatively Managed

• OPP - Organizational Process Performance

• QPM - Quantitative Project Management

Maturity Level 5 - Optimizing

• CAR - Causal Analysis and Resolution

• OPM - Organizational Performance Management

Page 24: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI Continuous representation

Process area 1 (PA1) Process area 2 (PA2) Process area n (PAn)

Specific goals Generic goals

Specific practices Generic practicesCapability levels

Page 25: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI Capability levels

• 0 - Incomplete

• 1 - Performed

• 2 - Managed

• 3 - Defined

• 4 - Quantitatively Managed

• 5 - Optimizing

Page 26: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Processes’ capability dependencies

5

4

3

2

1

0

Inžineriniai p. Vald. p. Org. p.

5

4

3

2

1

0

Inžineriniai p. Vald. p. Org. p.

5

4

3

2

1

0

Inžiner. p. Vald. p.

Org. p.

5

4

3

2

1

0

Inžin. p. Vald.p Org. p.

Page 27: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Process areas by categories

Category Process Areas

Project Management • Project Planning • Project Monitoring and Control • Supplier Agreement Management • Integrated Project Management • Integrated Supplier Management • Integrated Teaming • Risk Management • Quantitative Project Management

Support • Configuration Management • Process and Product Quality Assurance • Measurement and Analysis • Causal Analysis and Resolution • Decision Analysis and Resolution • Organizational Environment for Integration

Page 28: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Process areas by categories (2)

Category Process Areas

Engineering • Requirements Management • Requirements Development • Technical Solution • Product Integration • Verification • Validation

Process Management • Organizational Process Focus • Organizational Process Definition • Organizational Training • Organizational Process Performance • Organizational Innovation and Deployment

Page 29: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI PA description structure Required components

Expected components

Informative components

Specific goals

Generic goals

Specific practices

Generic practices

Generic practice elaborations

Notes, examples

Subpractices

Typical work products

Amplifications

References

Page 30: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI generic goals and practices

GG 1 Achieve Specific Goals GP 1.1 Perform Specific Practices

GG 2 Institutionalize a Managed Process GP 2.1 Establish an Organizational Policy GP 2.2 Plan the Process GP 2.3 Provide Resources GP 2.4 Assign Responsibility GP 2.5 Train People GP 2.6 Manage Configurations GP 2.7 Identify and Involve Relevant Stakeholders GP 2.8 Monitor and Control the Process GP 2.9 Objectively Evaluate Adherence GP 2.10 Review Status with Higher Level Management

Page 31: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI generic goals and practices (2)

GG 3 Institutionalize a Defined Process GP 3.1 Establish a Defined Process GP 3.2 Collect Improvement Information

GG 4 Institutionalize a Quantitatively Managed Process

GP 4.1 Establish Quantitative Objectives for the Process GP 4.2 Stabilize Subprocess Performance

GG 5 Institutionalize an Optimizing Process GP 5.1 Ensure Continuous Process Improvement GP 5.2 Correct Root Causes of Problems

Page 32: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI target profiles and equivalent staging Name ML CL1 CL2 CL3 CL4 CL5

Requirements Management 2

Measurement and Analysis 2

Project Monitoring and Control 2

Project Planning 2

Process and Product Quality Assurance 2

Supplier Agreement Management 2

Configuration Management 2

Target

Profile

2

Decision Analysis and Resolution 3

Product Integration 3

Requirements Development 3

Technical Solution 3

Validation 3

Verification 3

Organizational Process Definition 3

Organizational Process Focus 3

Integrated Project Management 3

Risk Management 3

Organizational Training 3

Target

Profile

3

Organizational Process Performance 4

Quantitative Project Management 4

Target

Profile 4

Organizational Innovation and Deployment 5

Causal Analysis and Resolution 5

Target

Profile 5

Page 33: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

ISO/IEC 15504 structure Part 1: Concepts and vocabulary (2004)

Part 2: Performing an assessment (2003)

Part 3: Guidance on performing an assessment (2004)

Part 4: Guidance on use for process improvement and process capability determination (2004)

Part 5: An exemplar Process Assessment Model (2012)

Part 6: An exemplar system life cycle process assessment model (ISO/IEC TR 15504-6:2008)

Part 7: Assessment of organizational maturity (ISO/IEC TR 15504-7:2008)

Part 8: An exemplar process assessment model for IT service management (ISO/IEC TS 15504-8:2012)

Part 9: Target process profiles (ISO/IEC TS 15504-9:2011)

Part 10: Safety extension (ISO/IEC TS 15504-10:2011)

Page 34: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

ISO/IEC 15504-2 defines

• Measurement framework for process capability.

• Requirements for

– performing an assessment;

–Process Reference Models;

–Process Assessment Models;

– verifying conformity of process assessment.

Page 35: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Models conformant ISO/IEC 15504-2

• Process Reference Models:

– ISO/IEC 12207. Systems and software engineering — Software life cycle processes;

– ISO/IEC 15288. Systems and software engineering — System life cycle processes.

• Process Assessment Models:

– ISO/IEC 15504-5: An exemplar Process Assessment Model;

– ISO/IEC 15504-6: An exemplar system life cycle process assessment model.

Page 36: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

ISO/IEC 15504 Assessment Model

Process dimension consists of processes and each process is defined in terms of its purpose and outcomes.

Capability dimension: Level 0 : Incomplete process Level 1 : Performed process PA1.1 Process performance

Level 2 : Managed process PA2.1 Performance management, PA2.2 Work product management

Level 3 : Established process PA3.1 Process definition, PA3.2 Process deployment

Page 37: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

ISO/IEC 15504 Assessment Model (2)

Level 4 : Predictable process PA4.1 Process measurement, PA4.2 Process control

Level 5 : Optimizing process PA5.1 Process innovation, PA5.2 Process optimization

The process attributes are defined by stating the achievements to be implemented.

The achievement of PA1.1 is measured in terms of process outcomes.

Page 38: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

SOFTWARE PROCESS ASSESSMENT AND IMPROVEMENT

Page 39: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Purposes of process assessment

• Capability/maturity determination

• Process improvements

Page 40: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Traps of process improvement

• Lack of Management Commitment

• Unrealistic Management Expectations

• Time-Stingy Project Leaders

• Stalling on Action Plan Implementation

• Achieving a CMM Level Becomes the Primary Goal

Page 41: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Traps of process improvement (2)

• Inadequate Training is Provided

• Expecting Defined Procedures to Make People Interchangeable

• Failing to Scale Formal Processes to Project Size

• Process Improvement Becomes a Game

• Process Assessments are Ineffective

Page 42: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Approach to SPI

Examine Organization’s

Needs

Analyze Results

and Derive

Action Plan

Sustain

Improvement

Gain

Implement

Improvement

Actions

Confirm the

Improvement

Monitor

Performance

Initiate

Process

Improvement

Perform

Process

Assessment

Page 43: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

What we have learned?

• Main concepts of Software Process

• Overview of process capability/maturity models

• Approaches to process improvement

Page 44: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

QUESTIONS?

Page 45: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

APPENDIX

Page 46: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI rating elements

The rating elements in the CMMI are the specific and generic goals.

The rating of goals is performed on the basis of evidence recorded against each specific and generic practice.

Therefore, the specific and generic practices are "indicators" of process performance and process capability in the terms of ISO 15504.

Page 47: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI - ISO/IEC 15504 mapping scheme

ISO/IEC 15504

Process

PA1.1

Process Area

PA2-PA5

Outcome

Achievement

CMMI

Generic Practice

Specific Practice

Page 48: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

CMMI - ISO/IEC 15504 mapping

Page 49: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

Minimal „general” set of processes important for IT companies in Lithuania

Category Group ID Process

Primary life cycle processes

Engineering processes ENG.1. Requirements elicitation

ENG.4. Software requirements analysis

ENG.5. Software design

ENG.6. Software construction

ENG.7. Software integration

ENG.8. Software testing

ENG.11. Software installation

ENG.12. Programinės įrangos priežiūra

Support Configuration management processes

SUP.8 Configuration management

SUP.9 Problem resolution

Quality assurance processes

SUP.1. Quality assurance

Organizational Valdymo procesai MAN.3. Project o management

Page 50: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

W. S. Humphrey: Process improvement methods

Page 51: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

PSP process flow

Page 52: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

PSP for graduates (1994)

PSP1Size estimating (PROBE)

Test report

PSP0Current processTime recording

Defect recordingDefects types standard

PSP3Cyclic

development

PSP2Design reviewCode review

PSP2.1Design templates

PSP1.1Time estimating (PROBE)

Task planningSchedule plaaning

PSP0.1Size measurementCoding standard

Size standard (LOC)Process Improvement proposals

Basicprocess

Planningprocess

Qualitymanagement

process

Cyclicprocess

Page 53: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

PSP for software engineers (2005)

PSP1

Size estimating

Testing report

PSP0

Current process

Basic measures

TSP

TeamingRisk management

Project planning and monitoring

PSP2

Code review

Design review

PSP2.1

Design templates

PSP1.1

Task planning

Schedule planning

PSP0.1Coding standard

Process improvement proposals

Size measurement

Process discipline and measurement

Estimating and

planning

Quality management

and design

Team process

Page 54: SOFTWARE ENGINEERING - VUragaisis/PSI_inf2012/SE-10-Process.pdf · CSC2008 SE “Software Processes” Learning Objectives: • Explain the concept of a software life cycle and provide

iTSP: structure of cycles