1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer...

24
1 Copyright © 2000-2001 Ro leModel Software, Inc. eXtreme Programming Ken Auer [email protected] Roy Miller [email protected] RoleModel Software Holly Springs, NC 919-557-6352 http://www.rolemodelsoft.com

Transcript of 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer...

Page 1: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

1 Copyright © 2000-2001 RoleModel Software, Inc.

eXtreme Programming

Ken Auer [email protected]

Roy [email protected]

RoleModel SoftwareHolly Springs, NC919-557-6352http://www.rolemodelsoft.com

Page 2: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

2 Copyright 2001-2002 RoleModel Software, Inc.

The Joy of Software

To change Hardware Soldering Iron Screwdrivers Change PCB

To change Software Just change some symbols

Page 3: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

3 Copyright 2001-2002 RoleModel Software, Inc.

The Reality of Software

Cost of Making Changes

Time

Lots of assumptions/dependencies The steep part of the curve stinks! How do we avoid life there?

Page 4: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

4 Copyright 2001-2002 RoleModel Software, Inc.

BDUF? (Big Design Up Front)

Cost of Making Changes

TimeAnalysis Design Coding Testing

Theory:Find errors faster

Design is critical, but why do it all up front? Have a picture of the horizon, but haven’t gotten

any closer to it

If you lived here, you’d be home by now!

Page 5: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

5 Copyright 2001-2002 RoleModel Software, Inc.

* Some content supplied by Jim Highsmith, “Adaptive Software Development”

Basic Misunderstanding

Documentation is not understanding One study of typical requirements documents: 15% complete,

7% correct, not cost effective to increase (Source: Elemer Magaziner)

Formality is not discipline What happens when you apply good rules at the wrong time Consistently signing a document is not the same as

consistently reflecting on whether you are doing the best thing

What if people “cheat”?

Process is not skill, especially when innovating! You can’t “code by number”

Page 6: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

6 Copyright 2001-2002 RoleModel Software, Inc.

The Wrong Model

“Do It Right the First Time” sends wrong message and causes bad behavior

We can’t be uncertain experiment learn from mistakes deviate from plan

“Don’t worry about getting it right the first time, get it right the last time.”

Envision-Explore, not Plan-Do

* Some content supplied by Jim Highsmith, “Adaptive Software Development”

Page 7: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

7 Copyright 2001-2002 RoleModel Software, Inc.

C - Adaptation

Relying on a plan can produce the product you intended, just not the product you need.

It assumes you were smarter when you started and didn’t learn anything along the way

Speculate-Collaborate-Learn

* Some slide content supplied by Jim Highsmith, “Adaptive Software Development”

B - Planned ResultA - Start

Page 8: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

8 Copyright © 2000-2001 RoleModel Software, Inc.

Words of Wisdom

Paul MacCready on Innovation and Competitive Advantage

Page 9: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

9 Copyright 2001-2002 RoleModel Software, Inc.

A Better Approach

Demands and depends on collective understanding, discipline, and skill

Leverages learning Lets you go fast Lets business drive (really) Lets design/systems evolve over time, at

relatively low cost Preserves option to change Reduces the total cost of ownership of systems

Page 10: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

10 Copyright 2001-2002 RoleModel Software, Inc.

Dee Hock--former CEO Visa

“Simple, clear purpose and principles give rise to complex,

intelligent behavior.”

“Complex rules and regulations give rise to simple, stupid

behavior.”

Page 11: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

11 Copyright 2001-2002 RoleModel Software, Inc.

What XP Is*

“Extreme Programming is a discipline of software development based on values of simplicity, communication, feedback, and courage. It works by bringing the whole team together in the presence of simple

practices, with enough feedback to enable the team to see where they are and to tune

the practices to their unique situation.”* http://xprogramming.com/xpmag/whatisXP.htm

Page 12: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

12 Copyright 2001-2002 RoleModel Software, Inc.

Extreme Programming

One Team that shares core values and works toward a sound business asset knows where it is leverages its learning embraces three fundamental roles

“Developers” estimate cost “Customers” decide priorities “Management” facilitates relationship in a context

Turns “best practice” knobs up to 10

Page 13: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

13 Copyright 2001-2002 RoleModel Software, Inc.

The Four Values

Simplicity OAOO: Once And Only Once TSTTCPW: The Simplest Thing That Could Possibly

Work

Communication: developers and business people

Feedback: the earlier the better Courage: don’t be afraid to write code,

change code, or throw away code

Page 14: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

14 Copyright 2001-2002 RoleModel Software, Inc.

What the Values Mean

Customer Value… results vs. plausible deniability

Collaboration… innovation through group interaction vs. individual

heroics

Adaptation… embracing change vs. “change control”

Minimalism… simplicity vs. “all things to all people”

Page 15: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

15 Copyright 2001-2002 RoleModel Software, Inc.

Twelve Original Practices

The Planning Game(Split Business & Technical)

Small Releases Metaphor Simple Design Testing Refactoring

Pair Programming Collective Ownership Continuous

Integration 40 Hour Week On Site Customer Coding Standard

Page 16: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

16 Copyright 2001-2002 RoleModel Software, Inc.

Revised(?) Practices

Joint Short Iterations Common Vocabulary Open Workspace Reflection

Development Test-first Programming Pair Programming Refactoring Collective Ownership Continuous Integration Just-in-time Design

Management Appropriate

Responsibility Diplomacy (Quarterly) Review Reality Checking Sustainable Pace

Customer Story Telling Release Planning Acceptance Tests Frequent Releases

Page 17: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

17 Copyright 2001-2002 RoleModel Software, Inc.

XP Software Studio™

Page 18: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

18 Copyright 2001-2002 RoleModel Software, Inc.

The Customer Drives

Page 19: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

19 Copyright 2001-2002 RoleModel Software, Inc.

What’s up?

Page 20: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

20 Copyright 2001-2002 RoleModel Software, Inc.

Will The Tests Pass?

Page 21: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

21 Copyright 2001-2002 RoleModel Software, Inc.

Design is Crucial… Do it Daily

Page 22: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

22 Copyright 2001-2002 RoleModel Software, Inc.

I Heard It Through The Pairvine

Page 23: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

23 Copyright 2001-2002 RoleModel Software, Inc.

Can You Take XP Seriously?

“I predict that Kent Beck and his XP movement will be as much a symbol of our times as Watts Humphry and the CMM were a symbol of the eighties and early nineties.”

Tom DeMarcoCutter Report on Light Methodologies

“XP is not an option… it’s a requirement.”Kevin TysonCTO, Netfolio

Page 24: 1 Copyright © 2000-2001 RoleModel Software, Inc. eXtreme Programming Ken Auer kauer@rolemodelsoft.com Roy Miller rmiller@rolemodelsoft.com RoleModel Software.

24 Copyright 2001-2002 RoleModel Software, Inc.

XP - The Big Picture

Poor responsiveness to learning and poor practices both lead to steep curve

BDUF doesn’t flatten the curve Attempts to reduce how often you are bitten Adds costly artifacts at expense of real progress

XP helps push the curve down Leverages learning Move more confidently Move faster for longer