death to project documentation with extreme programming

44
Death to project documentation with XP

Upload: alex-fernandez

Post on 22-Jan-2018

1.416 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Death to project documentation with eXtreme Programming

Death to project documentation with XP

Page 2: Death to project documentation with eXtreme Programming

Yet Another Perl

Conference

Europe Fundation 2015

Page 3: Death to project documentation with eXtreme Programming

Yet Another Perl

Conference

Europe Fundation 2015

Page 4: Death to project documentation with eXtreme Programming
Page 5: Death to project documentation with eXtreme Programming

“As developer I find project documentation very useful and I love to keep it up to date”

Page 6: Death to project documentation with eXtreme Programming

“As developer I find project documentation very useful and I love to keep it up to date”

- no one -- never -

Page 7: Death to project documentation with eXtreme Programming

Documentation is...

Page 8: Death to project documentation with eXtreme Programming

Documentation is...

Simply duplication

Page 9: Death to project documentation with eXtreme Programming

Requirements document Emails

Technical Analysis

Domain model

Test Plan

Task tracker

Code

Page 10: Death to project documentation with eXtreme Programming

Documentation is...

Hard to keep up to date

Page 11: Death to project documentation with eXtreme Programming

Requirements document Emails

Technical Analysis

Domain model

Test Plan

Tasks tracker

Code

Requirements document

Requirements documentTechnical

Analysis

Technical Analysis

Technical Analysis

Code CodeCode

Test Plan

Domain modelDomain model

Emails

Emails

Emails

Emails

Domain model

Task tracker

Requirements document

Emails

Test PlanRequirements document

Requirements document

Test Plan

Domain model

Page 12: Death to project documentation with eXtreme Programming

Requirements document Emails

Technical Analysis

Domain model

Test Plan

Tasks tracker

Code

Requirements document

Requirements documentTechnical

Analysis

Technical Analysis

Technical Analysis

Code CodeCode

Test Plan

Domain modelDomain model

Emails

Emails

Emails

Emails

Domain model

Task tracker

Requirements document

Emails

Test PlanRequirements document

Requirements document

Test Plan

Domain model

Page 13: Death to project documentation with eXtreme Programming

Documentation is...

Inefficient

Page 14: Death to project documentation with eXtreme Programming
Page 15: Death to project documentation with eXtreme Programming

Documentation is...

Tedious

Page 16: Death to project documentation with eXtreme Programming

Simply duplication

Hard to keep up to date

Inefficient

Tedious

Page 17: Death to project documentation with eXtreme Programming

Simply duplication

Hard to keep up to date

Inefficient

Tedious

Page 18: Death to project documentation with eXtreme Programming

Documentation is...

S.H.I.T.

Page 19: Death to project documentation with eXtreme Programming

What do we want?

Page 20: Death to project documentation with eXtreme Programming

“Create flow by eliminating waste”

- Lean Thinking -

Page 21: Death to project documentation with eXtreme Programming

“Working software over comprehensive documentation”

- Agile Manifesto -

Page 22: Death to project documentation with eXtreme Programming

RTF: Running tested features

http://ronjeffries.com/xprog/articles/jatrtsmetric/

Page 23: Death to project documentation with eXtreme Programming

“Open, Honest communication”

- XP Principle -

Page 24: Death to project documentation with eXtreme Programming

“Rapid feedback”

- XP Principle -

Page 25: Death to project documentation with eXtreme Programming

How we do it?

Page 26: Death to project documentation with eXtreme Programming

How we do it?

True Story

Page 27: Death to project documentation with eXtreme Programming

Cross-functional-flat teamsD

T

B

Developer

Tester

Business Analyst

Product OwnerP

DD

D T

BD

DD

D T

BD

DD

D T

BD

P

Page 28: Death to project documentation with eXtreme Programming

Cross-functional teams

● Small

● Same table

● Collaborative

Page 29: Death to project documentation with eXtreme Programming

Cross-functional teams

● Small

● Same table

● Collaborative

Rapid

feedback

Communication

Page 30: Death to project documentation with eXtreme Programming

Story driven iterations

● Smallest unit of work with value

● Short iterations

● Prioritize every iteration

Page 31: Death to project documentation with eXtreme Programming

Story driven iterations

Backlog Ready to Dev Ready to Test Ready to Close Release

Page 32: Death to project documentation with eXtreme Programming

Prioritize Backlog

Backlog Backlog

DT

B P

● Customer focus

● Business value

Page 33: Death to project documentation with eXtreme Programming

Prioritize Backlog

Backlog Backlog

DT

B P

● Prioritize

● Customer focus

● Business value Communication

Eliminate wasteRapid

feedback Working software

Page 34: Death to project documentation with eXtreme Programming

3 Amigos

Backlog

B

Ready to Dev

TD

● Acceptance criteria

● Split stories

● Solve questions

Page 35: Death to project documentation with eXtreme Programming

3 Amigos

Backlog

B

Ready to Dev

TD

● Acceptance criteria

● Split stories

● Solve questions

Rapid feedback Communication

Page 36: Death to project documentation with eXtreme Programming

Development

Ready to Dev Ready to Test

D

● ATDD/TDD

● Pair programming

● CI

Page 37: Death to project documentation with eXtreme Programming

Development

Ready to Dev Ready to Test

D

● ATDD/TDD

● Pair programming

● CI Communication

Eliminate wasteRapid

feedback Working software

Page 38: Death to project documentation with eXtreme Programming

Testing

Ready to Test Ready to Close

● ACs vs AT review

● Exploratory testing

T

Page 39: Death to project documentation with eXtreme Programming

Testing

Ready to Test Ready to Close

● ACs vs AT review

● Exploratory testing

T

Rapid

feedback Communication

Page 40: Death to project documentation with eXtreme Programming

Sign-off

Ready to Test Ready to Release

● ACs + AT review

BT

D

Page 41: Death to project documentation with eXtreme Programming

Sign-off

Ready to Test Ready to Release

● ACs + AT review

BT

D

Communication

Eliminate wasteRapid

feedback Working software

Page 42: Death to project documentation with eXtreme Programming

Acceptance tests

● Define/prove system behaviour

● Sync and related to code

● Collaborative ownership

Page 43: Death to project documentation with eXtreme Programming
Page 44: Death to project documentation with eXtreme Programming

Q&A

Alex Fernandez

@_alexfdz

alexfdz

afernandeznogueria