agile or: how i learned to stop worrying and love changing requirements

39
Agile or: how I learned to stop worrying and love changing requirements

Upload: baerbaerbaer

Post on 02-Jul-2015

302 views

Category:

Technology


2 download

DESCRIPTION

What is Agile development and how do I do it?

TRANSCRIPT

Page 1: Agile or: how I learned to stop worrying and love changing requirements

Agileor: how I learned to stop worrying and love

changing requirements

Page 2: Agile or: how I learned to stop worrying and love changing requirements

Eric [email protected]

Page 3: Agile or: how I learned to stop worrying and love changing requirements
Page 4: Agile or: how I learned to stop worrying and love changing requirements

ReadyTalk

● Best company to work for in CO ('11-current)● Deloitte’s Technology Fast 500 ('08-current)● Best benefits in Colorado!

Page 5: Agile or: how I learned to stop worrying and love changing requirements
Page 6: Agile or: how I learned to stop worrying and love changing requirements
Page 7: Agile or: how I learned to stop worrying and love changing requirements
Page 8: Agile or: how I learned to stop worrying and love changing requirements
Page 9: Agile or: how I learned to stop worrying and love changing requirements

Labs/Open Source

Page 10: Agile or: how I learned to stop worrying and love changing requirements

Agile

Page 11: Agile or: how I learned to stop worrying and love changing requirements

Client: I am calling you about the folders you designed and printed.Me: Yes…Client: The prints are exactly as you showed us in the concept.Me: Yes…Client: We don’t want that

Page 12: Agile or: how I learned to stop worrying and love changing requirements
Page 13: Agile or: how I learned to stop worrying and love changing requirements
Page 14: Agile or: how I learned to stop worrying and love changing requirements
Page 15: Agile or: how I learned to stop worrying and love changing requirements
Page 16: Agile or: how I learned to stop worrying and love changing requirements

Waterfall AgilePhased Iterative

Working software in the final phase Working software at every build

Different people in different phases Same set of people

Verification is done in the final phase Verifiability driven

Predictive planning Adaptive planning

Less visibility - artifacts and prototypes More visibility - working software

Changes accepted at particular stages only

Changes embraced anytime

Key Differences

Page 17: Agile or: how I learned to stop worrying and love changing requirements

Manifesto for Agile Software Development

Individuals and interactions over processes and toolsWorking software over comprehensive documentation

Customer collaboration over contract negotiationResponding to change over following a plan

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

Page 18: Agile or: how I learned to stop worrying and love changing requirements
Page 19: Agile or: how I learned to stop worrying and love changing requirements

Story Sizing

● First, t-shirt sized (general)● Next, pointed (more specific - LOE)● Facilitates communication of assumptions

and unknowns● Process is more important than actual point

value

Page 20: Agile or: how I learned to stop worrying and love changing requirements
Page 21: Agile or: how I learned to stop worrying and love changing requirements

Devs

Scrum Master

Product Owner

Page 22: Agile or: how I learned to stop worrying and love changing requirements

● Self Organizing● Plans individual work though iteration● cross functional, collaborative● accountable to each other

Key Challenge: delivery as a team vs. individual tasks

Devs

Page 23: Agile or: how I learned to stop worrying and love changing requirements

● keeps the team on track● removes obstacles (process)● improves process by conducting retros● monitors throughput and cycle time to look for

bottlenecks

Key Challenge: Listens without trying to propose a direct solution

Scrum Master

Page 24: Agile or: how I learned to stop worrying and love changing requirements

● Leads the team● defines value and vision for a project (high level)● prioritizes backlog● creates user stories and acceptance criteria● reviews and rejects work at delivery time

key challenge: doesn't control which and how many items go into an iteration

Product Owner

Page 25: Agile or: how I learned to stop worrying and love changing requirements

Agile In The Wild

Page 26: Agile or: how I learned to stop worrying and love changing requirements

Agile In The Wild

Page 27: Agile or: how I learned to stop worrying and love changing requirements

Scrum: The Basics

Page 28: Agile or: how I learned to stop worrying and love changing requirements

Iterations/Sprints

● Story Pointing● Iteration Planning● What tasks are stories broken down into?● Development!● Demo.● Retrospective

Page 29: Agile or: how I learned to stop worrying and love changing requirements

Scrum

● Daily Standup● Max 15 minutes● Covers:

○ What I did yesterday○ What I’m planning on doing today○ Blocks

Page 30: Agile or: how I learned to stop worrying and love changing requirements

Retrospective

● Iteration Review● Demo of shippable products to PO● What worked? What didn’t?● What stories did we finish?● Re-prioritize backlog stories● Defines goals for next sprint

Page 31: Agile or: how I learned to stop worrying and love changing requirements

Adaptability

Inspect and Adapt CONSTANTLY!• Change from Scrum to Kanban• Retrospectives• More awesome, less suck.

Page 32: Agile or: how I learned to stop worrying and love changing requirements

Pull vs. Push

Page 33: Agile or: how I learned to stop worrying and love changing requirements

Push

Pull

Bad!

Rock and Roll

Page 34: Agile or: how I learned to stop worrying and love changing requirements
Page 35: Agile or: how I learned to stop worrying and love changing requirements
Page 36: Agile or: how I learned to stop worrying and love changing requirements

Welcome to the future

● prioritize on demand● story pointing is 1 5 10● weekly throughput● Kaizen through retros

○ brief weekly○ in depth monthly or as needed

Page 37: Agile or: how I learned to stop worrying and love changing requirements
Page 38: Agile or: how I learned to stop worrying and love changing requirements

SWAG!

Page 39: Agile or: how I learned to stop worrying and love changing requirements

Eric [email protected]