30
Copyright © 2007 STPP, Inc. (Software Technology, Process & People) 1 Agile, TSP SM , CMMI® pick one, pick two, pick all three! PSP, TSP, Personal Software Process and Team Software Process are service marks of CMU CMM is and Capability Maturity Model are registered in the U.S. patent and trademark office Daniel M. Roy Cape Town SPIN 20 February, 2008

Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

  • Upload
    others

  • View
    1

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

1

Agile, TSPSM, CMMI®pick one, pick two, pick all three!

PSP, TSP, Personal Software Process and Team Software Process are service marks of CMUCMM is and Capability Maturity Model are registered in the U.S. patent and trademark office

Daniel M. Roy

Cape Town SPIN

20 February, 2008

Page 2: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

2

Agenda

When I was doing real work

What’s an agile “method”

Agile and CMMI®

PSP/TSPSM : the agile CMMI®

The experience factory

PSP/TSPSM results in practice

Synergy PSP/TSPSM/CMMI®

Page 3: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

3

What’s agile?A super-class, featuring sets of:

– Methods and “methodologies”– Iterative life cycle models– Programming practices– Software development philosophies

This super-class is called “Agile software development”

The underlying principles behind agile developement are listed in “The manifesto”

Page 4: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

4

Scrum

Page 5: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

5Scrum and CMMI-Dev

Requirements Development Technical Solution Verification Validation Organization Process Focus Organization Process Definition Organizational Training Integrated Project Management Risk management Decision Analysis and Resolution Product Integration

5 Optimizing

4 Quantitat.Managed

3 Defined

2 Managed

Continuous processimprovementQuantitativemanagement

Organizationengineering processstandardization

BasicProject management

Organizational Innovation and DeploymentCausal Analysis and Resolution

Organizational Process PerformanceQuantitative Project Management

Requirements managementProject PlanningProject Monitoring and ControlSupplier Agreement ManagementMeasurement and AnalysisProcess and Product Quality AssuranceConfiguration Management

Level Focus Process Areas

Page 6: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

6

Scrum and I18N

Co

DIAb

Senior management

Establish/maintainorganization policy

Objectiveverification

NC

Track NCsto closure

Ve

Monitor actualperformance

PPQA team

Involve relevantstakeholders

Manageintegrityof workproducts

Assign roles &responsibilities

Engineeringteam

Allocate adequateresources

Management

Establish/maintainplan to perform

process

Appropriatetraining

Commitment to perform

Abilityto perform

Directingimplementation

Verifyingimplementation

Page 7: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

7

Is CMMI the agile nemesis?

"Optimizing processes that are agile and innovative depends on the participation of an empowered workforce aligned with the business values and objectives of the organization."

CMMI Dev. V1.2 August 2006GG5 in Generic goals and practices

Page 8: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 8

Building High-Performance Teams

The TSP strategy is to improve performance from the bottom up.

This strategy starts with PSP training.

TeamMemberSkills

TeamBuilding

TeamManagement

Process disciplinePerformance measures

Estimating and planning skillsQuality management skills

Goal settingRole assignment

Tailored team processDetailed and balanced plans

Team communicationTeam coordination

Project trackingRisk analysis

PSP

PSP

PSP

PSP

TSP

TSP

TSP

TSP

Page 9: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 9

The PSP Course

PSP0•Current process•Basic measures

PSP1•Size estimating

•Test report

PSP2•Code reviews

•Design reviews

Team Software Process

•Teambuilding •Risk management

•Project planning and tracking

PSP2.1Design templates

PSP1.1•Task planning

• Schedule planning

PSP0.1•Coding standard

•Process improvementproposal

•Size measurement

Introduces process discipline and measurement

Introduces estimating and planning

Introduces quality management and design

Page 10: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 10

PSP 0

PSP 1

PSP 2

Effort Estimation Accuracy

100%0%-100%-200% 100%0%-100%-200%0

20

40

0

20

40

100%0%-100%-200% 100%0%-100%-200%0

20

40

0

20

40

100%0%-100%-200% 100%0%-100%-200%0

20

40

0

20

40

PSP Estimating Accuracy

Majority are under-estimating

Balance of over- andunderestimates

Much tighter balancearound zero

Page 11: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 11

PSP Quality Results

11109876543210

0

10

20

30

40

50

60

70

80

90

100

110

120

Mean Compile + Test

PSP Level Mean Comp + Test

Defects Per KLOC Removed in Compile and TestDefects Per KLOC Removed in Compile and TestDefects Per KLOC Removed in Compile and TestDefects Per KLOC Removed in Compile and Test

Program NumberProgram NumberProgram NumberProgram Number

Mean Number of Defects Per

Mean Number of Defects Per

Mean Number of Defects Per

Mean Number of Defects Per

KLOC

KLOC

KLOC

KLOC

298 developers

PSP0

PSP1

PSP2

Page 12: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 12

Building Self-directed Teams

Self-directed teams must be built.

This requires a team-building process.

TeamMemberSkills

TeamBuilding

TeamManagement

Process disciplinePerformance measures

Estimating & planning skillsQuality management skills

Goal settingRole assignment

Tailored team processDetailed and balanced plans

Team communicationTeam coordination

Project trackingRisk analysis

PSP

PSP

PSP

PSP

TSP

TSP

TSP

TSP

Page 13: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

13

TSP launch process

Day 1

1. Establish product and

business goals

2. Assign rolesand define team goals

Day 2

4. Build top-down and

next-phase plans

5. Developthe quality

plan

6. Build bottom-up and

consolidatedplans

Day 3

7. Conductrisk

assessment

8. Preparemanagementbriefing and

launch report

Launchpostmortem

Day 4

9. Holdmanagement

review

3. Produce development

strategyand process

Page 14: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 14

Managing Self-directed Teams

Self-directed teams must be built.

This requires a team-building process.

TeamMemberSkills

TeamBuilding

TeamManagement

Process disciplinePerformance measures

Estimating & planning skillsQuality management skills

Goal settingRole assignment

Tailored team processDetailed and balanced plans

Team communicationTeam coordination

Project trackingRisk analysis

PSP

PSP

PSP

PSP

TSP

TSP

TSP

TSP

Page 15: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 1997 STPP (Software Technology, Process & People)

15 The experience factory

Project organization Experience factory

Set goalsChoose process

Plan

Execute planCollect data

Tailoring

Packaging

Environment, projectcharacteristics

Processes, modelstools, components

Data, lessons learned

Project/risk analysis

From ‘The experimental paradigm in software eng.’,Rombach, Basili, Selby, Springer-Verlag, 1994

Experiencebase

Page 16: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

16PSP/TSP: Agile Exp. Fact.

P/TSP project P/TSP experience

Set goalsStudy process

Plan

Execute planCollect data

Improvement

Post Mortem

Exercise/projectcharacteristics

Process, modeltools, components

Data, lessons learned

Immediate correctiveaction

P/TSP elementsdata & reports

Page 17: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

17

TSP and Scrum Principles

TSP projects are team-directed. Team members– plan their work

– regularly track and report their performance

– own their own processes

– are all involved in the planning and decision making

– have defined and explicit roles

Page 18: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

18Tracking the TSP project

TSP Week Summary - Form WEEK

Name Date 2/7/2000Team

Status for Week 5 Cycle

Week Date 1/31/2000 Plan/

Weekly Data Plan Actual Actual

Project hours for this week 80.0 69.0 1.16

Project hours this cycle to date 400.0 344.8 1.16

Earned value for this week 10.3 3.1 3.37

Earned value this cycle to date 40.2 30.0 1.34

To-date hours for tasks completed 293.0 303.8 0.96

Plan Actual Earned Planned Plan Hrs./

Assembly Phase Tasks Completed Resource Hours Hours Value Week Actual Hrs.

SYSTEM REQ Write SRS general sections tmc 14.0 12.0 1.4 4 1.17

SYSTEM REQ Weekly requirements analysis meeting 5 tma 4.0 4.0 0.4 5 1.00

SYSTEM REQ Weekly requirements analysis meeting 5 tmb 4.0 4.0 0.4 5 1.00

SYSTEM REQ Weekly requirements analysis meeting 5 tmc 4.0 4.0 0.4 5 1.00

SYSTEM REQ Weekly requirements analysis meeting 5 tmd 4.0 4.0 0.4 5 1.00

TASKS DUE THROUGH WEEK 7

SYSTEM REQ Review SRS general sections tmc 5.0 0.0 4

SYSTEM STP Complete Validation Test Plan tmd 8.0 8.5 0.0 4 0.94

Consolidated Team Plan

Security System Upgrade

From the SEI class “Managing TSP teams” (Module 15)

Page 19: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

19PSP/TSP Results Average Schedule Deviation - Range

-20%

0%

20%

40%

60%

80%

100%

120%

140%

160%

Pre TSP/PSP With TSP/PSP

Average Effort Deviation - Range

-20%

0%

20%

40%

60%

80%

100%

120%

Pre TSP/PSP With TSP/PSP

Defects/KLOC in Acceptance Test - Range

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

Pre TSP/PSP With TSP/PSP

Post-Release Defects/KLOC - Range

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Pre TSP/PSP With TSP/PSP

N. Davis, J. MullaneyThe Team Software Process in Practice: A Summary of Recent Results Sept. 2003.

Page 20: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 5 - 20

Average Task Hours Per W eek

15.1

13.312.6

9.6

0

2

4

6

8

10

12

14

16

18

04/2

0/199

8

04/2

7/199

8

05/0

4/199

8

05/1

1/199

8

05/1

8/199

8

05/2

5/199

8

06/0

1/199

8

06/0

8/199

8

06/1

5/199

8

06/2

2/199

8

06/2

9/199

8

07/0

6/199

8

07/1

3/199

8

07/2

0/199

8

07/2

7/199

8

08/0

3/199

8

08/1

0/199

8

08/1

7/199

8

08/2

4/199

8

08/3

1/199

8

09/0

7/199

8

09/1

4/199

8

09/2

1/199

8

09/2

8/199

8

10/0

5/199

8

10/1

2/199

8

10/1

9/199

8

10/2

6/199

8

11/0

2/199

8

11/0

9/199

8

11/1

6/199

8

11/2

3/199

8

11/3

0/199

8

12/0

7/199

8

12/1

4/199

8

12/2

1/199

8

12/2

8/199

8

01/0

4/199

9

01/1

1/199

9

01/1

8/199

9

01/2

5/199

9

02/0

1/199

9

02/0

8/199

9

02/1

5/199

9

02/2

2/199

9

03/0

1/199

9

03/0

8/199

9

03/1

5/199

9

03/2

2/199

9

03/2

9/199

9

04/0

5/199

9

04/1

2/199

9

04/1

9/199

9

04/2

6/199

9

05/0

3/199

9

05/1

0/199

9

05/1

7/199

9

05/2

4/199

9

05/3

1/199

9

06/0

7/199

9

06/1

4/199

9

06/2

1/199

9

06/2

8/199

9

Tas

k H

ours

Avg. Task Hours - W eek

Avg. Task Hours - Phase

Improving Task Hours

Average task hours per developer per week were improved from 9.6 hours to 15.1 hours through quiet time, process documentation, more efficient meetings, etc.

+57%

Source: Allied Signal

Page 21: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2004 STPP, Inc. (Software Technology, Process & People)

21Agile CMM vs. Agile

SimilaritiesSelf directed teams

Well defined roles

Working sw and biz value

Incremental development

Manager as coach

Quick reaction/incremental

Reviews/inspections

Meaningful meetings

People interaction

Continuous self improvement

DifferencesTrue blue agile quite a bit more:

– collegial

– code driven

– project centered

– test focused

– time boxed

And quite a bit less worried about– detailed process documentation

– early phases planning/tracking

– product doc. (except code)

– detailed data (but there is some)

– CMM stuff!!!

Page 22: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

22PSP/TSP-CMM synergy

CMM - Buildsorganizational

capability

TSP - Buildsquality products

on cost and schedule

PSP - Buildsindividual skill and discipline

Page 23: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

23

To probe further-1http://www.agilemanifesto.orghttp://www.agilealliance.orghttp://www.xprogramming.com/http://groups.yahoo.com/group/extremeprogrammingCockburn, Alistair Agile Software Development Boston,

MA:Addison-Wesley, 2002. Highsmith, Jim Adaptive Software Development: A

Collaborative Approach to Managing Complex Systems, Dorset House, 2000.

Beck, K.Extreme Programming Explained: Embrace Change. Boston: Addison-Wesley, 2000.

Page 24: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

24

To probe further-2

David Kane, Steve OrnburnAgile Development: Weed or Wildflower? Crosstalk October 2002.

Barry Boehm, Richard Turner PSP/TSP vs. XP. Oct. 24, 2003. Great on-line paper. Read it at:

http://www.informit.com/isapi/product_id~%7B156D4D3C-6DA4-4E46-9591-34A341EB7DB2%7D/content/index.asp

Page 25: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

25

To probe further-3

http://www.stsc.crosstalk.org

Mark C. Paulk Extreme Programming from a CMM Perspective. IEEE Software Nov/Dec. 2001.

Mark C. Paulk Agile Methodologies and Process Discipline Crosstalk October 2002.

Donald J. ReiferXP and the CMM. IEEE software May/June 2003.

Page 26: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

26

To probe further-4

http://www.sei.cmu.edu/tsp/

Noopur Davis, Jim McHale Relating the Team Software ProcessSM (TSPSM) to the Capability Maturity Model for Software (SW-CMM) CMU/SEI-2002-TR-008, June 2002.

Noopur Davis, Julia MullaneyThe Team Software ProcessSM (TSPSM) in Practice: A Summary of Recent Results Sept. 2003.

Page 27: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

27

To probe further-5“Stretching Agile to fit CMMI Level 3,” David J. Anderson,

http://www.agilemanagement.net/Articles/Papers/Agile_2005_Paper_DJA_v1_5.pdf

“Extreme Programming Explained: Embrace Change” (2nd Edition), Ken Beck, ISBN 0-321-27865-8 • Balancing Agility and Discipline – A Guide for the Perplexed, Barry Boehm and Richard Turner, Addison Wesley

“CMMI –Guidelines for Process Integration and Product Improvement”, Mary Beth Chrissis, et al, Addison Wesley • Crystal Clear: A Human-Powered Methodology for Small Teams, Alistair Cockburn, ISBN 0- 201-69947-8

“An Agile Approach to Achieving CMMI” Christine Davis, et al www.agiletek.com/thoughtleadership/whitepapers

Page 28: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

28

To probe further-6“Real Time Embedded Software Development Using Agile

Technology,” Vincent Rivas and Joseph N Frisina, http://www.omg.org/news/meetings/workshops/RT_2005/01-4_Rivas-Frisina.pdf

“A Practical Guide to Feature-Driven Development”, Stephen Palmer and John Felsing, ISBN 0-130-67615-2

“Lean Software Development” –An Agile Toolkit, Mary and Tom Poppendieck, Addison Wesley

“Agile Project Management with Scrum”, Ken Schwaber, ISBN 0-130-67634-9

“Lean Thinking –Banish Waste and Create Wealth in Your Corporation”, James P. Womack and Daniel T. Jones, Free Press

Page 29: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

29

To probe further-7

Clement, Paul et al. Documenting Software Architectures in an Agile World, CMU/SEI-2003-TN-023.

Smiley, Karen Comparing Agile and TSP, First TSP Users Group Conference, Pittsburgh PA, September 29-30, 2003.

Page 30: Agile, TSP , CMMI® pick one, pick two, pick all three! 32 - Daniel Roy - STPP...Agile CMM vs. Agile 21 Similarities Self directed teams Well defined roles Working sw and biz value

Copyright © 2007 STPP, Inc. (Software Technology, Process & People)

30

To discuss some more…

Daniel M. RoySoftware Technology, Process & People, Inc.20 Forest RdBradfordWoods PA 15015 (USA)Land: +001 (724) 934 0943Cell: +001 (412) 310 2263E-mail: [email protected] site: http://www.stpp.com