© 2012 eliassen group. all rights reserved -1- agile in a nutshell

Post on 14-Dec-2015

217 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© 2012 Eliassen Group. All Rights Reserved -1-

Agile in a Nutshell

© 2012 Eliassen Group. All Rights Reserved -2-

Damon Poole

• Chief Agilist, Eliassen Group’s Agile Practice– Coaching: Transformation and Tune-ups– Training

• 20 years of process change: small co-located teams to multi-hundred team global enterprises

• Founder and past CTO and CEO of AccuRev• Creator of multiple Jolt-award winning products• Past President of Agile New England• Author of “DIY Agile Kickstart”• Consulted with Ford IT, Orbitz, Fidelity, Capital One,

ING Direct, and many others• Taught Agile techniques to thousands of people

© 2012 Eliassen Group. All Rights Reserved -3-

What’s in a Feature?

Show loan status.

© 2012 Eliassen Group. All Rights Reserved -4-

Each Feature is Comprised of Many Aspects

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

© 2012 Eliassen Group. All Rights Reserved -5-

Every Project Contains Features of Many Sizes

© 2012 Eliassen Group. All Rights Reserved -6-

Customers / Market

Product Mgmt Architects

Dev Teams

Project Mgmt

Testers

Traditional Development – Internal View

$

Releng

© 2012 Eliassen Group. All Rights Reserved -7-

Product Mgmt

Customers / Market

Architects

Dev Teams

Project Mgmt

Testers

Traditional Development – Customer View

$

Done

Releng

© 2012 Eliassen Group. All Rights Reserved -8-

$

© 2012 Eliassen Group. All Rights Reserved -9-

$

Todo• this• that• more• other

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

What

Who?

Why?

© 2012 Eliassen Group. All Rights Reserved -10-

$

Todo• this• that• more• other

Additional Value Added

$Customers / Market

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

© 2012 Eliassen Group. All Rights Reserved -11-

Todo• this• that• more• other

Additional Value Added

Customers / Market

$

© 2012 Eliassen Group. All Rights Reserved -12-

$

Todo• this• that• more• other

Additional Value Added

$Customers / Market

#define a b/* * This is great code. */bool doStuff ( ) { index++;} $

© 2012 Eliassen Group. All Rights Reserved -13-

Todo• this• that• more• other

Additional Value Added

Customers / Market

$

What

Who Why

© 2012 Eliassen Group. All Rights Reserved -14-

Todo• this• that• more• other

Additional Value Added

Customers / Market

$

© 2012 Eliassen Group. All Rights Reserved -15-

Software Development Nirvana

Customers / Market$

© 2012 Eliassen Group. All Rights Reserved -16-

The Agile Methodology

A Step by Step Guide

© 2012 Eliassen Group. All Rights Reserved -17-

Agile Manifesto – Values and Principles

“Working software is the primary measure of progress.”

Done!

Scrum? Kanban?

XP? ?

© 2012 Eliassen Group. All Rights Reserved -18-

$5Mper lane

$11M per lane10 Lanes:

$50M

10 Lanes: $110MMoney for another

investment: $60M

“Simplicity -- the art of maximizing the amount of work not done – is essential.”

© 2012 Eliassen Group. All Rights Reserved -19-

Agile Techniques Come From the Agile Community

ScrumKanbanXPContinuous IntegrationTDDEtc.

Agile Manifesto Agile Community Agile Toolkit

© 2012 Eliassen Group. All Rights Reserved -20-

© 2012 Eliassen Group. All Rights Reserved -21-

The Miami Marlins for the World Series Project

© 2012 Eliassen Group. All Rights Reserved -22-

User Story

Traveller wants tobook a trip so thatthey can go to their destination

Who

What

Why

© 2012 Eliassen Group. All Rights Reserved -23-

Backlog

Traveller wants to see their upcoming trips

2

Tom

Admin wants a report of site-wide activity

5

Bob

Traveller wants to edit a booking

3

Tom

Traveller wants to delete a booking

1

Sue

Traveller wants to copy a booking

2

Bob

Traveller wants to enter a booking

5

Bob

Traveller wants to link to on-line check-in

2

Traveller wants to link to cancel a booking

2

Traveller wants to move a booking

2

Bob

Most Value

Least Value

Product

© 2012 Eliassen Group. All Rights Reserved -24-

Negotiation Tool

Traveller wants to see their upcoming trips

2

Tom

Admin wants a report of site-wide activity

5

Bob

Traveller wants to edit a booking

3

Tom

Traveller wants to delete a booking

1

Sue

Traveller wants to copy a booking

2

Bob

Traveller wants to enter a booking

5

Bob

Traveller wants to link to on-line check-in

2

Traveller wants to link to cancel a booking

2

ReleaseTraveller wants to move a booking

2

Bob

Traveller wants to e-mail an airline booking

2 Iteration 1Iteration 2

“Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.”

© 2012 Eliassen Group. All Rights Reserved -25-

Done

Agile Development – Quick Overview

Higher Quality Options Visibility

Higher ROI Faster

PaypassFacebookTexting

Person to person

TextingPaypass

4 week iteration

e-mailSpend Cushions

Initial backlog for project to provide limited debit card to teens

TEAM

Person2person

Facebook

ANIMATEDSwitch to

presentation mode for proper

viewing

© 2012 Eliassen Group. All Rights Reserved -26-

Eliassen Group Agile Model

ARCHITECTURE

AGILE OFFICE

I3I2I1

RELEASE TEAM

USER

STORIES

TEAMS

CONTINUOUS

INTEGRATION

EPICS

LOB LEADERSLOB CUSTOMERS

MAN

AGEM

ENT

ESCALATION

© 2012 Eliassen Group. All Rights Reserved -27-

AgileTraditional

© 2012 Eliassen Group. All Rights Reserved -28-

AgileTraditional

© 2012 Eliassen Group. All Rights Reserved -29-

AgileTraditional

© 2012 Eliassen Group. All Rights Reserved -30-

AgileTraditional

© 2012 Eliassen Group. All Rights Reserved -31-

Misaligned, Functional Goals

FunctionalGoals

✔ ✔ ✔ ✔ ✔ ✔

Project A Project B

Late, missing scope

Not as relevant as hoped

© 2012 Eliassen Group. All Rights Reserved -32-

One Solution: Organize around Business Value Delivery

Line of Business A

Line of Business B

✔✔

© 2012 Eliassen Group. All Rights Reserved -33-

Top Ten Headwinds and Tailwinds

Area Traditional AgileOrganizational structure Function and project Product, team, deliveryBusiness & IT interaction Big handoffs Daily interactionCompensation Individual and function

orientedTeam, business value delivery

Metrics Functional, plan based Team, business value deliveryFunding Full scope IncrementalImpediment raising Problems seen as

mistakesEncouraged, identified, raised, addressed

Management of teams Function, Cmd&Ctrl Delivery and self-organizationSkillset Traditional AgileTools and technology Traditional Agile-orientedManagement support Traditional Agile

© 2012 Eliassen Group. All Rights Reserved -34-

Cycle Time

2 4 61 3 5 7

DevelopmentIntegration and

testingPreparation

months

9 11 138 10 12 14

© 2012 Eliassen Group. All Rights Reserved -35-

Cycle Time

2 4 61 3 5 7

Develo

pment

Integ

ration an

d

testi

ng

Prepara

tion

months

9 11 138 10 12 14

Develo

pment

Integ

ration an

d

testi

ng

Prepara

tion

© 2012 Eliassen Group. All Rights Reserved -36-

Cycle Time

2 4 61 3 5 7

DevelopmentIntegration and testingPreparation

months

© 2012 Eliassen Group. All Rights Reserved -37-

Cycle Time

2 4 61 3 5 7

1 month iterations

Prep

Do

Ship

Prep

Do

Ship

Prep

Do

Ship

Prep

Do

Ship

Prep

Do

Ship

Prep

Do

Ship

© 2012 Eliassen Group. All Rights Reserved -38-

Cycle Time

2 4 61 3 5 7

1 month iterations

Prep

Do

Ship

Cycle Time “Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.”

© 2012 Eliassen Group. All Rights Reserved -39-

A Typical Iteration#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

Traveller wants to see their upcoming trips

2

Tom

Traveller wants to delete a booking

1

Sue

Traveller wants to enter a booking

3

Bob

Traveller wants to register with the system

3

Sue

Admin wants a report of site-wide activity

5

Bob

Traveller wants to edit a booking

2

Tom

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

© 2012 Eliassen Group. All Rights Reserved -40-

“One Piece Flow”

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

#define a b/* * This is great code. */bool doStuff ( ) { index++;}

Done! Done! Done!

Done!

© 2012 Eliassen Group. All Rights Reserved -41-

Agile in Action at the Team Level

Customers / Market

Product Mgmt

$

© 2012 Eliassen Group. All Rights Reserved -42-

Enterprise Agile

ARCHITECTURE

AGILE OFFICE

I3I2I1

RELEASE TEAM

USER

STORIES

TEAMS

CONTINUOUS

INTEGRATION

EPICS

LOB LEADERSLOB CUSTOMERS

MAN

AGEM

ENT

ESCALATION

© 2012 Eliassen Group. All Rights Reserved -43-

Q&A

damonpoole.blogspot.com

top related