24
Agile Software Development aka How to build a Death Star without being squished by Darth Vader Reinhart De Lille R&D Manager

Scrum methodology how to build the Death Star

Embed Size (px)

DESCRIPTION

A lightweigh introduction into Agile Programming

Citation preview

Page 1: Scrum methodology   how to build the Death Star

Agile Software Developmentaka

How to build a Death Star without being squished by Darth Vader

Reinhart De LilleR&D Manager

Page 2: Scrum methodology   how to build the Death Star

Content

• Something short about Adifo

• Prelude (to pain)

• Classical software development

• Going Agile with Scrum

Page 3: Scrum methodology   how to build the Death Star

Adifo in figures• 75 employees, 700 customers• Turnover: + 8 million EUR• Export (world-wide): 80%• Customers in more than 60 countries

Turnover Adifo 2011

Belgium

NL, D, Fr

Rest world

Rest Europe

Page 4: Scrum methodology   how to build the Death Star

Products

Page 5: Scrum methodology   how to build the Death Star

Prelude

• Software development is more than coding• And always involves a lot of people

It is a team effortTo build a software product

That effectively solves a customer’s problemAnd gives value to his business

Page 6: Scrum methodology   how to build the Death Star

Customers : Invent requirements Have a real world problem and make your computer deal with it

Product Managers / consultants : Get requirements from customer and marketMake requirements consistent

Analysts Analyse requirements design UI

Architects / DevelopersDesign solutionCode the requirementsWrite unit tests

Testers / System engineers / etc ...

Prelude

Page 7: Scrum methodology   how to build the Death Star

Prelude

The whispering paradox

Page 8: Scrum methodology   how to build the Death Star

A traditional development problem

Page 10: Scrum methodology   how to build the Death Star

How to deal with this?

• Introducing SW development methodologies– And we call it Project Management !

• 2 approaches– Classical : try to make sure we know everything in

advance !

– Agile : build the software incrementally and evolve with the customer specs.

Page 11: Scrum methodology   how to build the Death Star

ClassicalTry to make sure we know everything in advance!

• Method– Interview customer till you know last details– Analyse and estimate it from top to bottom– Fix the budget together with customer– And then build the bugger– Very hierarchical

• Examples– Waterfall / CODIS / Rational Unified Process

• Typically used– Large engineering projects, NASA, government projects, etc ...– Or building a death star ...

Page 12: Scrum methodology   how to build the Death Star

ClassicalReality check ! There is a dark side to every project!

Managing expectations What does the customer need?

Scope creep I want more whistles & bells !

... And now you do what they told ya ! no responsibilities ...

Very very expensive? Out of budget and out of time?

The world changes faster than the software !

Page 13: Scrum methodology   how to build the Death Star

Classical

• How to deal with such crisis ?– http://

www.youtube.com/watch?v=0Cl7cxopNjg&feature=related

– http://www.youtube.com/watch?v=Z6B92nPs8lg

Page 14: Scrum methodology   how to build the Death Star

Going Agile

• Take the project management challenges for reality !

• Embrace the ever-changing nature of requirements

• Take responsibility for what you can manage

• And deal with issues as they come

Page 15: Scrum methodology   how to build the Death Star

Going AgileAka Incremental software development

• Characteristics– Don’t do a big bang, but– Do iterations of ‘small bangs’– Be deliverable after each iteration– In a self-organising, cross functional team

• Many methodologies– Extreme programming– Scrum– Kanban– Feature driven Development

Page 16: Scrum methodology   how to build the Death Star

Going Agile

• Some very simple concepts– Product Backlog– Daily Scrum– Scrumboard– Sprint Burndown

• Self managing Team

• Keep it visual !

• Keep learning !

Page 17: Scrum methodology   how to build the Death Star

SCRUM 18

Product BacklogPrioritized product features desired by the customer

Sprint Backlog

Feature(s) assigned to sprint

Backlog items expanded by team

Scrum 15 minute daily meetingTeams member respond to

basics:1) What did you do since last

Scrum Meeting?2) Do you have any

obstacles?3) What will you do before

next meeting?

New functionality is demonstrated at end of sprint

Daily Scrum

Every 24 hours

Sprint(30 days)

Page 18: Scrum methodology   how to build the Death Star

SCRUM 19

The Product Backlog IcebergSprint

Release

Priority

High

Low

Future Releases

Value

Cost

Risk

Knowledge

Page 19: Scrum methodology   how to build the Death Star

The scrumboard

Page 20: Scrum methodology   how to build the Death Star

Velocity and Burndown

It’s all about Productivity

• How fast can we build ?

• How good are the estimations?

Page 21: Scrum methodology   how to build the Death Star

Some words on tools

• Very important : Application Lifecycle management system

• Eg Team Foundation Server

• Project management• Source Control• Nightly builds• Automated testing

Page 22: Scrum methodology   how to build the Death Star

Going Agile• Take reality for what it is

• Lean and mean in doing the right stuff

• Deal with changes in a ‘natural’ way

• And learn from mistakes

http://www.youtube.com/watch?v=i38h6JRxTQM

Page 23: Scrum methodology   how to build the Death Star

And the dark side becomes the bright side

Questions?

Page 24: Scrum methodology   how to build the Death Star

Some usefull links

• http://www.geekwire.com/2011/top-10-reasons-darth-vader-amazing-project-manager/

• http://www.youtube.com/watch?v=Q5k7a9YEoUI

• http://www.scrum.org/

• Www.adifo.com