balancing agility and discipline chapter 4 sharon beall eecs 811 april 22, 2004

23
Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

Upload: anabel-cobb

Post on 02-Jan-2016

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

Balancing Agility and DisciplineChapter 4

Sharon Beall

EECS 811

April 22, 2004

Page 2: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

2

Agenda

Lease Management Example Command Center Processing and

Display System Replacement (CCPDS-R) Example

Home Ground Charts Summary

Page 3: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

3

Lease ManagementThe Project

Leasing industry 500 KLOC 30 developers 20 participants 1,000 story cards 18 months with traditional approach 36 months with XP

Page 4: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

4

Lease Management Eight “Bad Smells”

1. Time to develop story card increased in later iterations

Iteration length static Too much tacit knowledge required Stories subdivided to meet schedules

Page 5: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

5

Lease ManagementEight “Bad Smells”

2. Integrating functions problematic in later iterations

Individual tests okay Failed integration with other functions High-level architectural plan developed

Page 6: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

6

Lease ManagementEight “Bad Smells”

3. Unit and system testing issues Tacit knowledge strain again Complex specialized functions Breaking tests, architecture High-level architectural plan assisted

Page 7: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

7

Lease ManagementEight “Bad Smells”

4. Customer complaints No complaints until later iterations Customer never understood real user

needs Early coaching necessary

Page 8: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

8

Lease ManagementEight “Bad Smells”

5. Integration, Schedules, and Effort Misrepresented accomplishments Story cards taking extra effort than

portrayed Created task list for each story Monitored by management

Page 9: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

9

Lease ManagementEight “Bad Smells”

6. Refactoring Never Done Developers knew refactoring was needed Busy doing assigned work Detailed work plans and task lists included

refactoring

Page 10: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

10

Lease ManagementEight “Bad Smells”

7. Simple design and YAGNI drawbacks Developers continuously refactoring some

modules High costs since future changes known for

those modules Adopted a pattern for this module after

some time(YAGNI – You Aren’t Going to Need It)

Page 11: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

11

Lease ManagementEight “Bad Smells”

8. Test drivers and re-use Normally simple design and YAGNI Due to size and number of objects,

different tests with similar drivers for different object states

Adopted a pattern for test drivers as well

Page 12: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

12

Lease ManagementLessons Learned

Tacit knowledge is agile, however with large software projects, presents scaling problems

To diverge from an agile process requires talented people to recognize and respond

Simple design is risky on large projects with known change

Page 13: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

13

Page 14: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

14

Lease ManagementExtending XP

High level architectural plans Definitions of milestones and

completion criteria Usage of patterns and architectural

solutionsAuthors note…scale agile processes

as-needed and as-discovered!

Page 15: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

15

CCPDS-RThe Project

Re-engineer command center for missile warning system

1 million lines of code 75 programmers 3 user sets 48 months

Page 16: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

16

CCPDS-RAgile Manifesto

Individuals and Interactions over Processes and Tools

TRW versus DoD

DoD milestone standards redefined to reflect stakeholder’s interest. Use of automated tools to verify software to specs.

Contract award fees designated for personnel System architecture organized for developers’

skill levels

Page 17: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

17

CCPDS-RAgile Manifesto

Working Software over Comprehensive Documentation

DoD requires Preliminary Design Review (PDR) with docs and charts

TRW chose to put it off until software could be demonstrated

Documentation generated for those who really really needed it

Page 18: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

18

CCPDS-RAgile Manifesto

Customer Collaboration over Contract Negotiation

Win-win idea used to negotiate contracts Ada version of COCOMO used Allowed for savings via reuse (if Agile,

would have been costs due to YAGNI and rework)

Page 19: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

19

CCPDS-RAgile Manifesto

Responding to Change over Following a Plan

Plans and specs were machine processable Metrics tracked progress in identifying

problems Allowed easy tracking and early fixes Easy adaptation of plans Advance work in software reuse amongst 3

customer sets

Page 20: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

20

Page 21: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

21

CCPDS-R Extending Plan-Driven Methods

A win-win customer driven view can be combined with a process-document driven view

Award fees generated for TRW developers

Page 22: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

22

Summary

Examples that hybrids can succeed Easily tailoring the process not published Taking parts of each method to

complement a given project is not easy, but can be successful

…Guidelines in the next chapter to do this!

Page 23: Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004

23

Closing

Questions? Comments?