31032010 we bbt workshop agiledevelopment

Post on 14-May-2015

1.595 views 5 download

Tags:

Transcript of 31032010 we bbt workshop agiledevelopment

© iLean

People boosting your business

Agile development We-BBT Event

31 March 2010

© iLean

Our goal

General introduction to Agile development

Scrum & eXtreme Programming

Q & A

research

© iLean

Lean principles

Reduce cycle time

Build quality in

Eliminate waste

Respect people

© 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

© iLean

Agile methods & processes

Prince2

PMBOK

LAD

RUP

Agile Scrum

eXtreme

Programming

Lean DSDM

Kanban

© iLean

Agile is a tool

© iLean

Why agile?

working software better ROI

flexibility understand your business

motivated people continuous improvement

© iLean

Iterative and incremental !! Break down product

!! Plan according business value

!! Deliver regularly

BUSINESS VALUE

© iLean

Manage goals detail requirements at the last responsible moment

© iLean

Collaborate daily and with all involved parties

© iLean

Develop and test build quality in

© iLean

engineering practices!

coding standards!

team charter!

definition of done!

code reviews!

test coverage!

pair programming!

unit testing!

continuous integration!

test driven development!

refactoring!

© iLean

Develop and test build quality in

© iLean

Integrate and release as early and often as possible

© iLean

Continuous improvement is a daily routine

© iLean

!! Manage requirements

To deliver incrementally and iteratively:

!! Develop and test

!! Integrate and release

!! Collaborate

!! Continuous improvement

© iLean

Agile methods & processes

Scrum

© iLean

Deming quality cycle

© 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

© iLean

The Scrum Process

© 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

© 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!

© iLean

Product Backlog

•! The business objectives

•! All desired work

•! Every item must be valuable

•! Prioritized by the product owner

•! ‘Living’ document

© iLean

The Scrum Process

© iLean

Sprint planning

•! PO + Team

•! Team takes commitment

•! Team prepares sprint

!! Break down work

!! Discuss and design

!! …

© iLean

The Scrum Process

© 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

© iLean

Direct and control

© iLean

servant leader!

coach!

Self organizing

© iLean

The Scrum Process

© iLean

Sprint Demo

© iLean

Sprint Retrospective

© iLean

Sprint review (demo + retrospective)

•! Results:

–!Updates to the backlog (scope)

–!Update of the team agreements (charter)

–!Specific actions (owner + deadline)

© iLean

The Scrum Process

© iLean

Sprint Backlog & Commitment

...

© iLean

Burn Down Charts

© iLean

Scrum Board

© iLean

Daily Scrum meeting

© iLean

The Scrum Process

© 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

© iLean

The Scrum Process

© iLean

The Scrum Process

© 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

© 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

© iLean

Scrum

artifacts

ceremonies

practices

roles

Toolbox Philosophy

courage

openness

focus

respect

commitment

© iLean

Agile methods & processes

eXtreme

Programming

© iLean

Extreme Programming (XP)

© iLean

Test Driven Development

~unit tests

•! use short development iterations based on

pre-written test cases that define desired

improvements.

© iLean

XP Practices Refactor Mercilesly

•! Don’t leave duplicate or uncommunicative

code around

© 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

© 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

© iLean

developing is a team game

Examples

•! choose same style of class & variable names

•! format code the same way

Coding Standards

© 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

© 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

© iLean

•! two programmers work together at one

workstation.

> Driver + Observer/navigator

Pair Programming

© iLean

Extreme Programming (XP)

© iLean

Lean principles

Reduce cycle time

Build quality in

Eliminate waste

Respect people

© 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

© iLean

Why Agile?

•! Respond to change

•! Deliver quality software

•! Boost people

•! Deliver more business value

•! Increase creativity

•! Have a working solution at all times

•! …

© iLean

People boosting your business

What’s next?

© iLean

Implement Agile values and

principles…

in your specific context!

© iLean

Implement Agile

Reduce cycle time

•! Break scope into valuable increments

•! Deliver often

© iLean

Implement Agile

Adapt to changes

•! Get feedback from iteration deliverables

•! Think and act “Just In Time”

•! Collaborate with all involved parties

© iLean

Implement Agile

Eliminate waste

•! Reflect regularly on process and

collaboration

•! Reduce ‘stock’

•! Limit work in progres

© iLean

Implement Agile

Continuously improve

•! Inspect and adapt

© 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

© iLean

People boosting your business

Questions?

© iLean

People boosting your business

Thank you!

Feel free to contact me!

Jef Cumps

jef@ilean.be