Agile Software Process Improvement

33
04/11/2003 Agile Process Improvement 1 Joshua Klein, Process Improvement in Software Development © There is No Mystery (From “Methodologies as Swimsuits” by Alistair Cockburn) Projects come in different shapes and sizes. Methodologies come in different shapes and sizes. People come in different shapes and sizes. The people may not fit the methodology. The The people people are the more important. are the more important.

Transcript of Agile Software Process Improvement

Page 1: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 1

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

There is No Mystery (From “Methodologies as Swimsuits” by Alistair Cockburn)

Projects come in different shapes and sizes.

Methodologies come in different shapes and sizes.

People come in different shapes and sizes.

The people may not fit the methodology.

The The peoplepeople are the more important. are the more important.

Page 2: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 2

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

(Software) Development Process Improvement

By: Joshua Klein

More aboutthe lecturer

Page 3: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 3

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

You dream of being more efficient

Page 4: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 4

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

You must be more efficient!

Page 5: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 5

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

But you can’t afford the improvement methodologies

CMMI

ISO

Competitive

Page 6: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 6

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Process Improvement should be:

• Evolutionary

• Scalable

• Pragmatic

• Flexible

• Motivating

• Creative

• Assertive

Step by step, check & go on

Grows or shrinks per case

Always refer to constraints

Change methods / timescale

Persistently feed the sponsorship

Invent original solutions

Obstinately coach

Page 7: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 7

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Sponsorship

The motivation cycle

Openness

Change

Improvedprocess

Motivation

Success

FailurePoorprocess

Page 8: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 8

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Success criteria

1. Fewer complaints on stress2. More focus on engineering, less on collecting and checking information3. Software more effective4. Lower frequency of emergencies5. Less misses (e.g. last minute missing or failing feature)6. Better compliance to plans7. Better management’s control (e.g. outcomes more expectable)8. Less redoing9. More efficient testing (it may paradoxically result in more bugs detected)10.More consistency on the development chain11.Reduced and easier turnover12.Easier changes13.Smoother communication with other Intel groups (e.g. US)

The following criteria are used to determine how successful the SPI initiative has been. They address how effective the process used for SPI has been.

Page 9: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 9

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Conditions for ChangeIf D * V * F > Rthen “change will occur”where

D = Dissatisfaction with status quoV = Vision of a future stateF = First steps towards the visionR = Resistance to change

Actually: Permission to try

Page 10: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 10

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

The “Improvement Leader”

• The Improvement Leader’s role expands the Lead Assessor’s role from inspection to execution

• The internal "assessment" is integrated with the improvement process

• The Improvement Leader leads the improvement activities that derives from the assessment

• The Improvement Leader reports to the management• The Improvement Leader show improvement results

at short intervals

Page 11: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 11

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

The Improvement Leader’s role

Page 12: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 12

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Open Assessment

• Internal assessment, not disclosed• No checklist but flexible guidelines• Opportunity to hear the practitioners• Enlightens from numerous sides• Brings everyone involved• Reveals unexpected practice effects• Spreads motivation

Page 13: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 13

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

CMM (with some CMMI)

IndividualHeroes

1Initial /

Incomplete

Requirements ManagementSoftware Project PlanningSW Project Tracking & OversightMeasurement and AnalysisSoftware Quality AssuranceSoftware Configuration Management

ProjectManagement

2Repeatable /

Managed

Organization Process FocusOrganization Process DefinitionTraining ProgramIntegrated Software ManagementSoftware Product EngineeringRisk ManagementDecision Analysis and ResolutionPeer Reviews

TechnicalEngineeringProcesses

3Defined

Quantitative Process ManagementSoftware Quality Management

Measurement &Process Control

4Quantitatively

Managed

Defect PreventionTechnology Change ManagementProcess Change Management

ContinuousImprovement

5Optimizing

Key Process AreasFocusLevel

Page 14: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 14

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Open benchmark

Where are we standing now ?

Where could we be ?

How to

get th

ere ?

Page 15: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 15

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Objectivity and normalization

• Outputs of Open Assessment include:– Subjective feelings– Personal frustrations– Actual process clues from 1 point of view

• In order to reach objective findings:– Compare interviews data, find similarities– Ask clarification questions– Analyze until finding the roots

Page 16: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 16

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Plan

08/09 15/09 22/09 29/09 06/10 13/10 20/10 27/10 03/11 10/11 17/11 24/11 01/12 08/September October November December

Prioritization

3. Broad acceptance4. Available solutions5. Short term6. Criticality

AssessmentAssessmentfindingsfindings

Page 17: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 17

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

SW manufacturing processes

SupportingSupportingprocessprocess

ProductionProductionprocessprocess Concept

Design

Implementation

Validation

Maintenance

Disposal

Requirements

Documentation Configurationmanagement

Qualityassurance

OrganizationalOrganizationalprocessprocess

Management Infrastructure ImprovementHumanresources

Planning

Product

Inspired from ISO 15288

Page 18: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 18

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Improvement mini-cycle

1. KPA assessment

2. Methods & Procedures

3. Pilot

4. Training

5. Deployment

6. Assimilation

I n f r a

s t r u c t u

r e

Page 19: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 19

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Focused assessments

Intranet

Knowledge base

Gen

era

l ass

essm

ent

Customizationof Method

FocusedAssessment

Pilot Field trials

SEPGassessment

SEPGassessment

Ass

imila

tion

- N

ew c

ultu

re

Customizationof Method

FocusedAssessment

Pilot Field trials

Customizationof Method

FocusedAssessment

Pilot Field trials

Page 20: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 20

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

The Roadmap

Require-ments

DesignDeveloper

testCodingPractices

Require-ments

Design

Require-ments

Design

Require-ments

Design

Require-ments

Design

SPIPlanning

Require-ments

Design

SPIBodies

TrainingReasess-ment

Tools 1

Assimilation

Deployment

Training

Methods &Procedures

Pilot

Assessment

Infrastructure

July 02

August 02

Septem

ber 02

Novem

ber 02

Decem

ber 02

January 03

February 03

October 02

Measu-rement

Measu-rement

Debrie-fing

March 0

3

Developer test

Developer test

Developer test

Developer test

Developer test

CodingPractices

CodingPractices

CodingPractices

CodingPractices

CodingPractices

Ramp up

MS

C A

ssessmen

t

MS

C A

ssessmen

t

MS

C A

ssessm

ent

Page 21: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 21

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Software Product Engineering

• The purpose of Software Product Engineering is to consistently perform a well-defined engineering process that integrates all the software engineering activities to produce correct, consistent software products effectively and efficiently.

• Software Product Engineering describes the technical activities of the project, e.g., requirements analysis, design, code, and test.

• Knowledge areas:– Software Requirements Engineering– Software Design– Software Coding– Software Testing– Software Operation and Maintenance

http://computing.db.erau.edu/SEERS/2-x.html#1

Page 22: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 22

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

SEPG charter

The LAD SW Software Engineering Process Group (SEPG) is the focal point for software process improvement activities. The SEPG coordinate the implementation of improvement plans, and track the effectiveness of these efforts.

Example: The SEPG coordinates, tracks and promote, the SEPG does not develop technical guidelines but asks for experts.

Page 23: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 23

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Policy + resources

Reports each ~ 5 weeks + discussion

SPI Organization

LAD SW GL

LAD SW Staff

LAD SW SPI SEPG

Pilot(s) Procedures& methods

SQ

A

Manages

Controls & tracks

Con

sults

, coa

ches

, wri

tes

repo

rts,

et

c…

Intel Quality B

odies

Page 24: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 24

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

The Coding Rules Intranet page

Page 25: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 25

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

SPI problem solving

Symptoms

Assessment

Others’experience

Institutes

Localknow-how

Tra

inin

gC

oach

ing

Trial inpilot(s)

Taskcandidates

Se

lec

tion

Methodsand

Procedures

KPAs

Interviews

Page 26: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 26

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Conclusion

• You can do it• You must do it, engineer or manager!• The Process Improvement

methodologists did a great work; we just have to adapt the models

• Unfortunately, “Process Improvement” is still unknown around. It will soon be popular like compilers.

• Start tomorrow

Page 27: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 27

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Questions & Answers

Q & AJoshua Klein

Consultantin

Process Improvementof

Software / Systems Development

6 Michlin street, Jerusalem 96430, IsraelCell: 972-55-665247 Phone:972-2-6434290

[email protected]://www.yedidia.net/jklein

Page 28: Agile Software Process Improvement
Page 29: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 29

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

The Lecturer

Joshua KleinConsultant

inProcess Improvement

ofSoftware / Systems Development

6 Michlin street, Jerusalem 96430, IsraelCell: 972-55-665247 Phone:972-2-6434290

[email protected]://www.yedidia.net/jklein

Page 30: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 30

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

The Lecturer (ctd.)• 2002–2003 Process Improvement Consultant (Intel)

• 1993–2001 NDS Process Group Leader

• 1990–1992 Sapiens Methodology Team Leader

• 1988–1990 Sapiens France Directeur Technique

• 1980-1988 Ministry of Housing DBA

• 2002 Honourcode Eng. of complex systems

• 1998 Standards Institute Lead quality auditor

• 1987-1988 Inst. of Productivity Project Manager

• 1972-1975 Hebrew Univ. of J-lem Mathematics, Physics, Computers

• 1969-1971 Yeshivat Hanegev Talmud studies

• Born in Neuilly, France, 1951

Work

Studies

Page 31: Agile Software Process Improvement
Page 32: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 32

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

Backup

Page 33: Agile Software Process Improvement

04/11/2003 Agile Process Improvement 33

Josh

ua K

lein

, Pro

cess

Im

prov

emen

t in

Softw

are

Dev

elop

men

t ©

End of backup