practices agile exploring · our agile process in a nutshell release we develop the backlog &...

30
Exploring Agile Practices

Upload: others

Post on 25-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Exploring Agile

Practices

Page 2: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

A gelled SW team is the

most powerful force there is

Page 3: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

a team that gels takes time & effort

Page 4: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

FORMING STORMING

Page 5: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

NORMING

Page 6: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

PERFORMING

FORMING

STORMING

NORMING

Page 7: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

a brief history of

Agile

Page 8: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

It is a dark time for SW development. Budgets and timelines have been destroyed, and frustrated companies have driven developers from their sustainable pace and

pushed them to work harder to get products delivered

Page 9: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Help me Agile processes, you are our only hope...

Page 10: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

SCRUM Development Process (OOPSLA)

? ?

?

?

Page 11: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

SCRUM Development Process (OOPSLA)

1991 1997

1996

1980s

1999

Page 12: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Independent thinkers met to

explore common ground among lightweight SW processes that

handled change

Page 13: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

SCRUM Development Process (OOPSLA)

19992001

1991 1997

1996

1980s2003

Page 14: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

• individuals & interactions

• working software

• customer collaboration

• responding to change

value the blue OVER red

Agile Manifesto • processes and tools

• documentation

• contract negotiation

• following a plan

Page 15: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories
Page 16: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Agile embraces the idea change is constant

Utilizes Feedback Loops that focus on questions like:• Are we providing VALUE?

• How can we improve how we deliver VALUE?

• What is blocking us from delivering VALUE?

Make a Changeto provide VALUE

Analyze Effects of Change

Learn & Improve

Page 17: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Examples of Feedback loops• Pair Programming

– Immediate feedback from another developer

• Code Review– Feedback form other developers

(after developed)

• TDD/Unit tests– Immediate feedback that code

works (per tests)

• CI– Feedback that code integrates

after commit/merge

• Scrum Ceremonies– Feedback every sprint

• how can we improve– Feedback every sprint

• progress vs. release plan– Feedback every sprint

• did we build right thing– Feedback every day

• progress vs. sprint plan– Feedback every day

• align team, discover impediments

Page 18: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

When we met we agreed to some Agile Principles

Page 19: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

● Our highest priority is to satisfy customer thru early & continuous delivery of valuable SW

● Welcome changing requirements… harness change for competitive advantage

● Deliver working SW frequently…● Business & Developers must work

together…● Build projects around motivated

individuals… trust them to get job done

● Most efficient & effective method to convey info is face to face conversation

Agile Principles● Working SW is the primary measure of

progress

● Agile promotes sustainable development… maintain pace indefinitely

● Continuous attention to technical excellence …

● Simplicity is essential

● The best [work] comes from self-organizing teams

● Team reflects on how to become more effective & adjusts accordingly

Page 20: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Which 1 or 2 principles stand out

most to you& why

Page 21: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Processes and Practices rooted in Agile Principles

daily self organized

team

backlog

story pair programming

TDD

CI/CD

small releases

retrospectiveincremental

design

short cycles

sustainable pace

business & developers

Refactoring

YAGNI

Page 22: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Which 1 or 2 XP practices stood out to you & why

Page 23: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

I have a plan

what % of a plan do you

have?

Page 24: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

● Business decides what features are most important (priority)

● Developers evaluate how long it will take to implement the features (estimates)

● Work together to establish a set of capabilities that will be released together

● Should aim for smaller releases and incremental capabilities

Release Planning● Documentation of the release

plan (wiki)

○ capabilities described at the business value level

○ identify risks and dependencies

○ state assumptions

○ initial delivery date

Page 25: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

This is not Agile!WTF

Page 26: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Release Planning involves tradeoffs What does this

customer value most?

Page 27: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Release Planning involves tradeoffs What does this

customer value most?

Page 28: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

Our Agile Process in a nutshell

RELEASE

Page 29: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

● We develop the backlog & stories for each release

○ Conversation to get shared understanding of DONE

● Our stories our more fine-grained than most Agile processes suggest

○ What do you think of the tasks per story approach in the book?

Our Agile Process cmp to XP Planning● Our Kanban style flow does not

emphasize up-front iteration planning

○ progress reported @ end

● Our process doesn’t emphasize estimating. This limits metrics to establish velocity which is used for projecting future work

○ How do you determine and defend your release date?

Page 30: Practices Agile Exploring · Our Agile Process in a nutshell RELEASE We develop the backlog & stories for each release Conversation to get shared understanding of DONE Our stories

See you next time