68
People boosting your business Agile development We-BBT Event 31 March 2010

31032010 we bbt workshop agiledevelopment

  • Upload
    iminds

  • View
    1.597

  • Download
    5

Embed Size (px)

Citation preview

Page 1: 31032010 we bbt workshop agiledevelopment

© iLean

People boosting your business

Agile development We-BBT Event

31 March 2010

Page 2: 31032010 we bbt workshop agiledevelopment

© iLean

Our goal

General introduction to Agile development

Scrum & eXtreme Programming

Q & A

research

Page 3: 31032010 we bbt workshop agiledevelopment

© iLean

Lean principles

Reduce cycle time

Build quality in

Eliminate waste

Respect people

Page 4: 31032010 we bbt workshop agiledevelopment

© iLean

Agile values

individuals and interactions over processes and tools

working software over comprehensive documentation

customer collaboration over contract negotiation

responding to change over following a plan

Page 5: 31032010 we bbt workshop agiledevelopment

© iLean

Agile methods & processes

Prince2

PMBOK

LAD

RUP

Agile Scrum

eXtreme

Programming

Lean DSDM

Kanban

Page 6: 31032010 we bbt workshop agiledevelopment

© iLean

Agile is a tool

Page 7: 31032010 we bbt workshop agiledevelopment

© iLean

Why agile?

working software better ROI

flexibility understand your business

motivated people continuous improvement

Page 8: 31032010 we bbt workshop agiledevelopment

© iLean

Iterative and incremental !! Break down product

!! Plan according business value

!! Deliver regularly

BUSINESS VALUE

Page 9: 31032010 we bbt workshop agiledevelopment

© iLean

Manage goals detail requirements at the last responsible moment

Page 10: 31032010 we bbt workshop agiledevelopment

© iLean

Collaborate daily and with all involved parties

Page 11: 31032010 we bbt workshop agiledevelopment

© iLean

Develop and test build quality in

Page 12: 31032010 we bbt workshop agiledevelopment

© iLean

engineering practices!

coding standards!

team charter!

definition of done!

code reviews!

test coverage!

pair programming!

unit testing!

continuous integration!

test driven development!

refactoring!

Page 13: 31032010 we bbt workshop agiledevelopment

© iLean

Develop and test build quality in

Page 14: 31032010 we bbt workshop agiledevelopment

© iLean

Integrate and release as early and often as possible

Page 15: 31032010 we bbt workshop agiledevelopment

© iLean

Continuous improvement is a daily routine

Page 16: 31032010 we bbt workshop agiledevelopment

© iLean

!! Manage requirements

To deliver incrementally and iteratively:

!! Develop and test

!! Integrate and release

!! Collaborate

!! Continuous improvement

Page 17: 31032010 we bbt workshop agiledevelopment

© iLean

Agile methods & processes

Scrum

Page 18: 31032010 we bbt workshop agiledevelopment

© iLean

Deming quality cycle

Page 19: 31032010 we bbt workshop agiledevelopment

© iLean

Scrum History

1993 Jef Sutherland:

first Scrum at Easel

2001 Agile Manifesto

1986 study by Takeuchi and Nonaka,

published in the Harvard Business Review

1995 Ken Schwaber:

First white paper on Scrum

1996 Kent Beck: XP

2003 Lean Software Development

by Mary & Tom Poppendieck

2008

Page 20: 31032010 we bbt workshop agiledevelopment

© iLean

The Scrum Process

Page 21: 31032010 we bbt workshop agiledevelopment

© iLean

Scrum Product Owner

•! defines product, releases, ROI, ...

•! represents customer and users for the team

•! manages the Product Backlog

•! accepts work

BUT also

•! respects team estimates

•! respects sprint planning

Page 22: 31032010 we bbt workshop agiledevelopment

© iLean

Product Backlog

nr! prio! user story! inschatting!

1! 970! Als gebruiker kan ik onder mijn naam veilig inloggen! 2!

2! 960! Als gebruiker kan ik volledig manueel alle gegevens voor nieuwe client invoeren. Dit zijn de identificatiegegevens van de persoon. ! 2!

3! 950!Als gebruiker kan ik een aanvraag invoeren, wat will zeggen dat ik kan invullen welke attesten bij de aanvraag zitten en dat ik kan aangeven dat er nog een

indicatiestelling moet gebeuren. (Na invoeren van de gegevens kan ik de aanvraag opslagen met status 'in behandeling'.)!3!

6! 900!Als gebruiker kan ik een aanvraag goedkeuren. Het systeem checkt dan de nodige gegevens en berekent dan start- en einddatum van de tenlastenneming en

toont alles aan mij ter bevestiging (ik kan de beslissing van systeem overrulen en daarvooreen reden/motivatie ingeven).!5!

9! 800! als gebruiker kan ik betalingen genereren voor een bepaald type dossier voor een bepaalde maand (door op 1 knop te klikken).! 3!

10! 780!als gebruiker kan ik uit de lijst van betalingen een betalingsbestand genereren en downloaden. Het systeem zet tegelijkertijd de status van de betaling op

'uitbetaald' !3!

32! 500! Als gebruiker kan ik een rapporteringsbestand genereren. ! 3!

4! 940!Als gebruiker kan ik een aanvraag en (eventueel bijhorende) tenlasteneming opzoeken op basis van een Rijksregisternummer. Het systeem toont de

identificatiegegevens, de aanvraag en de tenlasteneming samen op één scherm.!3!

5! 920!Als gebruiker kan ik een aanvraag wijzigen (velden verder invullen of wijzigen, attesten toevoegen of verwijderen, enz) en achteraf de aanvraag terug opslaan als

'in behandeling'.!3!

Page 23: 31032010 we bbt workshop agiledevelopment

© iLean

Product Backlog

•! The business objectives

•! All desired work

•! Every item must be valuable

•! Prioritized by the product owner

•! ‘Living’ document

Page 24: 31032010 we bbt workshop agiledevelopment

© iLean

The Scrum Process

Page 25: 31032010 we bbt workshop agiledevelopment

© iLean

Sprint planning

•! PO + Team

•! Team takes commitment

•! Team prepares sprint

!! Break down work

!! Discuss and design

!! …

Page 26: 31032010 we bbt workshop agiledevelopment

© iLean

The Scrum Process

Page 27: 31032010 we bbt workshop agiledevelopment

© iLean

Scrum Team

•! cross-functional

•! self-organizing and empowered

•! typically 5-9 people

BUT also

•! respects Product Owner prio’s

•! respects Scrum values and process

Page 28: 31032010 we bbt workshop agiledevelopment

© iLean

Direct and control

Page 29: 31032010 we bbt workshop agiledevelopment

© iLean

servant leader!

coach!

Self organizing

Page 30: 31032010 we bbt workshop agiledevelopment

© iLean

The Scrum Process

Page 31: 31032010 we bbt workshop agiledevelopment

© iLean

Sprint Demo

Page 32: 31032010 we bbt workshop agiledevelopment

© iLean

Sprint Retrospective

Page 33: 31032010 we bbt workshop agiledevelopment

© iLean

Sprint review (demo + retrospective)

•! Results:

–!Updates to the backlog (scope)

–!Update of the team agreements (charter)

–!Specific actions (owner + deadline)

Page 34: 31032010 we bbt workshop agiledevelopment

© iLean

The Scrum Process

Page 35: 31032010 we bbt workshop agiledevelopment

© iLean

Sprint Backlog & Commitment

...

Page 36: 31032010 we bbt workshop agiledevelopment

© iLean

Burn Down Charts

Page 37: 31032010 we bbt workshop agiledevelopment

© iLean

Scrum Board

Page 38: 31032010 we bbt workshop agiledevelopment

© iLean

Daily Scrum meeting

Page 39: 31032010 we bbt workshop agiledevelopment

© iLean

The Scrum Process

Page 40: 31032010 we bbt workshop agiledevelopment

© iLean

Scrum Master

•! guards the Scrum process and the

improvement cycle

•! removes impediments

•! motivates and coaches the team

•! facilitates collaboration

BUT also

•! respects team decisions

Page 41: 31032010 we bbt workshop agiledevelopment

© iLean

The Scrum Process

Page 42: 31032010 we bbt workshop agiledevelopment

© iLean

The Scrum Process

Page 43: 31032010 we bbt workshop agiledevelopment

© iLean

User Stories

•! User Story = description of an objective

As as user I can do something

to achieve a goal.

•! Add examples/scenarios/what NOT to do

Page 44: 31032010 we bbt workshop agiledevelopment

© iLean

Daily Scrum meeting

•! What did I do yesterday?

•! What will I do today?

•! What’s bothering or blocking me?

!! SM facilitates

!! Time boxed! No side-discussions.

!! By and for the team

Page 45: 31032010 we bbt workshop agiledevelopment

© iLean

Scrum

artifacts

ceremonies

practices

roles

Toolbox Philosophy

courage

openness

focus

respect

commitment

Page 46: 31032010 we bbt workshop agiledevelopment

© iLean

Agile methods & processes

eXtreme

Programming

Page 47: 31032010 we bbt workshop agiledevelopment

© iLean

Extreme Programming (XP)

Page 48: 31032010 we bbt workshop agiledevelopment

© iLean

Test Driven Development

~unit tests

•! use short development iterations based on

pre-written test cases that define desired

improvements.

Page 49: 31032010 we bbt workshop agiledevelopment

© iLean

XP Practices Refactor Mercilesly

•! Don’t leave duplicate or uncommunicative

code around

Page 50: 31032010 we bbt workshop agiledevelopment

© iLean

•! Objective

take a "simple is best" approach to software design.

•! Practical After every new piece of code: 'is there a simpler

way to introduce the same functionality?‘

•! Refactoring

XP Practices Code and design simply

Page 51: 31032010 we bbt workshop agiledevelopment

© iLean

•! everyone is responsible

for all the code

•! this, in turn, means that everybody is

allowed to change any part of the code

•! if you run across some code that could be

improved, you have to stop and improve it

Collective Code Ownership

Page 52: 31032010 we bbt workshop agiledevelopment

© iLean

developing is a team game

Examples

•! choose same style of class & variable names

•! format code the same way

Coding Standards

Page 53: 31032010 we bbt workshop agiledevelopment

© iLean

•!The development team

should always be working on

the latest version of the software

•!Often combined with a regular (automated)

build process & automated testing.

Continuous Integration

Page 54: 31032010 we bbt workshop agiledevelopment

© iLean

•! Every day

–!starts at start time

–!ends at end time

•! need for regular overtime is a clear signal

that something else is wrong with the

project.

•! better awareness, better refactoring, simpler

code

Sustainable Pace

Page 55: 31032010 we bbt workshop agiledevelopment

© iLean

•! two programmers work together at one

workstation.

> Driver + Observer/navigator

Pair Programming

Page 56: 31032010 we bbt workshop agiledevelopment

© iLean

Extreme Programming (XP)

Page 57: 31032010 we bbt workshop agiledevelopment

© iLean

Lean principles

Reduce cycle time

Build quality in

Eliminate waste

Respect people

Page 58: 31032010 we bbt workshop agiledevelopment

© iLean

Agile values

individuals and interactions over processes and tools

working software over comprehensive documentation

customer collaboration over contract negotiation

responding to change over following a plan

Page 59: 31032010 we bbt workshop agiledevelopment

© iLean

Why Agile?

•! Respond to change

•! Deliver quality software

•! Boost people

•! Deliver more business value

•! Increase creativity

•! Have a working solution at all times

•! …

Page 60: 31032010 we bbt workshop agiledevelopment

© iLean

People boosting your business

What’s next?

Page 61: 31032010 we bbt workshop agiledevelopment

© iLean

Implement Agile values and

principles…

in your specific context!

Page 62: 31032010 we bbt workshop agiledevelopment

© iLean

Implement Agile

Reduce cycle time

•! Break scope into valuable increments

•! Deliver often

Page 63: 31032010 we bbt workshop agiledevelopment

© iLean

Implement Agile

Adapt to changes

•! Get feedback from iteration deliverables

•! Think and act “Just In Time”

•! Collaborate with all involved parties

Page 64: 31032010 we bbt workshop agiledevelopment

© iLean

Implement Agile

Eliminate waste

•! Reflect regularly on process and

collaboration

•! Reduce ‘stock’

•! Limit work in progres

Page 65: 31032010 we bbt workshop agiledevelopment

© iLean

Implement Agile

Continuously improve

•! Inspect and adapt

Page 66: 31032010 we bbt workshop agiledevelopment

© iLean

References Scrum in five minutes

http://www.softhouse.se/Uploades/Scrum_eng_webb.pdf

Scrum Alliance http://www.scrumalliance.org/

Scrum and XP from the Trenches http://www.crisp.se/henrik.kniberg/ScrumAndXpFromTheTrenches.pdf

Scrum articles directory http://www.softdevarticles.com/modules/weblinks/viewcat.php?cid=46

Agile Alliance's Scrum library http://www.agilealliance.org/article/articles_by_category/17

InfoQ.com / Agile http://www.infoq.com/Agile

Agilo for Scrum http://www.agile42.com/cms/pages/download/

The New New Product Development Game http://apln-richmond.pbwiki.com/f/New%20New%20Prod%20Devel%20Game.pdf

Jeff Sutherland, Agile development: lessons learned from the first Scrum, 2004 http://jeffsutherland.com/scrum/FirstScrum2004.pdf

Agile Software development with Scrum

By Ken Schwaber

User Stories Applied By Mike Cohn

Agile Estimating And Planning By Mike Cohn

Page 67: 31032010 we bbt workshop agiledevelopment

© iLean

People boosting your business

Questions?

Page 68: 31032010 we bbt workshop agiledevelopment

© iLean

People boosting your business

Thank you!

Feel free to contact me!

Jef Cumps

[email protected]