agile-in-a-nutshell-101018083905-phpapp01 (1)

52
Agile in a Nutshell Delivering more value faster at less cost

Upload: john-cronin

Post on 21-Jul-2016

3 views

Category:

Documents


0 download

DESCRIPTION

agile product development

TRANSCRIPT

Page 1: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile in a NutshellDelivering more value faster at less cost

Page 2: agile-in-a-nutshell-101018083905-phpapp01 (1)

Who am I?

VP of Learning and Development

My Blog: www.selfishprogramming.org

Consultant.Coach.Storyteller.Games Maker.

Page 3: agile-in-a-nutshell-101018083905-phpapp01 (1)

...it’s an adventure!

Page 4: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #1:

Deliver value

Page 5: agile-in-a-nutshell-101018083905-phpapp01 (1)

Session Goal and Acceptance Criteria

Introduction to Agile ConceptsAs a presenter

I need to give an introduction to Agile concepts

So that participants better understand how Agile can increase the

value they deliver.

Acceptance Criteria:

[ ] We understand the core concepts of Agile.

[ ] We have identified two or more ideas to try out Agile at work.

[ ] We have had fun.

Page 6: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #2:

Respect for people

Page 7: agile-in-a-nutshell-101018083905-phpapp01 (1)

Pick a project

Identify 3 challenges the project faces

Share these with a friend

Share these with the group

Page 8: agile-in-a-nutshell-101018083905-phpapp01 (1)

Pop Quiz Question #1

Time

CostScope

?

Page 9: agile-in-a-nutshell-101018083905-phpapp01 (1)

Pop Quiz Question #2

“Without a goalit’s difficult to score”

?

Page 10: agile-in-a-nutshell-101018083905-phpapp01 (1)

Pop Quiz Question #3

“Show me the value!”?

Page 11: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #3:

Eliminate waste

Page 12: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #1:

Deliver value

Page 13: agile-in-a-nutshell-101018083905-phpapp01 (1)

Value in a Waterfall Project Value in an Agile Project

Page 14: agile-in-a-nutshell-101018083905-phpapp01 (1)

Why adopt Agile?

1. Desperation: To survive against fierce competition as competitors deliver higher quality deliverables faster

2. Frustration: From the burden of legacy processes and not enough value being delivered

3. Fear: Of being left behind as Agile becomes the de facto way of working more efficiently and effectively

4. Hope: The belief there must be a better way of doing things that would reduce waste, deliver more value and make work meaningful

5. Desire for Continuous Improvement: To go from Mediocrity to Good to Great

Page 15: agile-in-a-nutshell-101018083905-phpapp01 (1)

What is Agile?

Page 16: agile-in-a-nutshell-101018083905-phpapp01 (1)

What is Agile?

“Agile is now widely recognised as a project delivery and general working

approach with a proven track record of delivering more business value faster through higher quality deliverables in

comparison to traditional methodologies.”

Page 17: agile-in-a-nutshell-101018083905-phpapp01 (1)

Where does Agile come from?

Agile ManifestoSnowbird, Utah

Feb. 2001Your turn?14 October 2010

First man on the moonJul. 1969

Page 18: agile-in-a-nutshell-101018083905-phpapp01 (1)

The Agile Manifesto

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

www.agilemanifesto.org

Page 19: agile-in-a-nutshell-101018083905-phpapp01 (1)

eXtreme Programming (XP)Scrum

Lean Software DevelopmentFeature Driven Development

Adaptive Systems DevelopmentDynamic Systems Development Method (DSDM)

CrystalKanban

......

Different kinds of Agile

Page 20: agile-in-a-nutshell-101018083905-phpapp01 (1)

Think “Team”

Page 21: agile-in-a-nutshell-101018083905-phpapp01 (1)
Page 22: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile in Action

Page 23: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Project Structure

Release1 – 12 weeks

Iteration1 – 4 weeks

Project1 – many weeks

Page 24: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile RequirementUser Story

Page 25: agile-in-a-nutshell-101018083905-phpapp01 (1)

Anatomy of a User Story

AS A <role>

I NEED <capability>

SO THAT <achieve some goal>

Binary question format (Y/N) Statement Given-When-Then

BV Effort

<Title> Acceptance Criteria:

Page 26: agile-in-a-nutshell-101018083905-phpapp01 (1)

Session Goal and Acceptance Criteria

Introduction to Agile ConceptsAs a presenter

I need to give an introduction to Agile concepts

So that participants better understand how Agile can increase the

value they deliver.

Acceptance Criteria:

[ ] We understand the core concepts of Agile.

[ ] We have identified two or more ideas to try out Agile at work.

[ ] We have had fun.

Page 27: agile-in-a-nutshell-101018083905-phpapp01 (1)

About User StoriesUser Story Epic

Page 28: agile-in-a-nutshell-101018083905-phpapp01 (1)

About User StoriesUser Story Epic Project

Backlog

Page 29: agile-in-a-nutshell-101018083905-phpapp01 (1)

Make stories even-sizedUser Story Epic Project

BacklogProject Backlog

Page 30: agile-in-a-nutshell-101018083905-phpapp01 (1)

Stories at different levels of granularity

Release1 – 12 weeks

Iteration1 – 4 weeks

Project1 – many weeks

Iteration Level Story

Release Level Story

Project Level Story

Page 31: agile-in-a-nutshell-101018083905-phpapp01 (1)

Themes – Story Groupings

Project Backlog

World Peace

Sustainable Philanthropy

Page 32: agile-in-a-nutshell-101018083905-phpapp01 (1)

Definition of Done

User Story

Acceptance Criteria

Acceptance Tests

Page 33: agile-in-a-nutshell-101018083905-phpapp01 (1)

Quality is not negotiable

Page 34: agile-in-a-nutshell-101018083905-phpapp01 (1)

The XP GameTeam ManifestoTeam Speed Networking

Kanban Board Building

Celebratory Team Lunch

Show & Tell

User Story Writing

Technical Design Walkthru

Collaboration in Action

Page 35: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Heartbeat

Tuesday Tuesday Tuesday

• Show & Tell• Iteration Retrospective

• Design• Development• Test

• Iteration Planning• Release Planning

• Mid-Iteration Review• Agile Estimating• Pre-Planning

• Backlog Grooming• User Story Writing

• Daily Standup• Scrum of Scrums

Ongoing iterative activities throughout the sprint

Page 36: agile-in-a-nutshell-101018083905-phpapp01 (1)

VELOCITY AS A MEASURE OF WORK

Page 37: agile-in-a-nutshell-101018083905-phpapp01 (1)

Velocity Burndown Chart

# of Iteration Level Stories

Iteration Days

Page 38: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #1:

Deliver value

Page 39: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Values

CommunicationSimplicity

Feedback

Courage

Respect

Page 40: agile-in-a-nutshell-101018083905-phpapp01 (1)

Team Manifesto

Page 41: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #4:

Continuous Learning

Page 42: agile-in-a-nutshell-101018083905-phpapp01 (1)

The Agile Challenge

Pros☺ Value-driven: Business Value + Agile Values

☺ Team-centric

☺ Working a sustainable pace (9 – 5 everyday)

☺ Responsive to change through iterative planning and estimating

☺ Deliver high business value

☺ Deliver faster

☺ Fun!

GOOD

Very GOOD

BAD

VERY BAD

Iteration 0 Iteration 1 Iteration 2 Iteration 3

Cons Must understand the Business Value you are delivering Must want to work with people Focused work makes Agile very tiring Must be able to embrace uncertainty by adapting to change Prioritise by Business Value first, then re-prioritise by constraints Define scope by Minimum Marketable Feature Set instead of by want Making work fun is hard work!

Agile Experience Retrospective

Page 43: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #5:

Continuous Improvement

Page 44: agile-in-a-nutshell-101018083905-phpapp01 (1)

In Summary

Page 45: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #1:

Deliver value

Page 46: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #2:

Respect for people

Page 47: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #3:

Eliminate waste

Page 48: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #4:

Continuous Learning

Page 49: agile-in-a-nutshell-101018083905-phpapp01 (1)

Agile Principle #5:

Continuous Improvement

Page 50: agile-in-a-nutshell-101018083905-phpapp01 (1)

Session Goal and Acceptance Criteria

Introduction to Agile ConceptsAs a presenter

I need to provide an introduction to Agile concepts

So that participants better understand how Agile can increase the

value they deliver.

Acceptance Criteria:

[ ] We understand the core concepts of Agile.

[ ] We have identified two or more ideas to try out Agile at work.

[ ] We have had fun.

Page 51: agile-in-a-nutshell-101018083905-phpapp01 (1)

The Gift of Feedback

Page 52: agile-in-a-nutshell-101018083905-phpapp01 (1)

Further Information

VP of Learning and Development

My Blog: www.selfishprogramming.orgMy email: [email protected]

Consultant.Coach.Storyteller.Games Maker.

ResourcesCourses on Agile including Agile Project Management and Customer Value Analysishttp://www.emergn.com

The Original XP Game by Pascal Van Cauwenberghe and Vera Peetershttp://www.xp.be/xpgame.html

Scrum and XP in the Trenches by Henrik Knibergwww.infoq.com

Fun and Gameshttp://www.agilecoach.net/

ConferencesXP Days Benelux (25 – 26 November 2010) http://www.xpday.net/

XP Day London (December 2010) http://www.xpday.org/