Death to project documentation with eXtreme Programming
-
Upload
alex-fernandez -
Category
Technology
-
view
1.415 -
download
0
Transcript of Death to project documentation with eXtreme Programming
Death to project documentation with XP
Yet Another Perl
Conference
Europe Fundation 2015
Yet Another Perl
Conference
Europe Fundation 2015
“As developer I find project documentation very useful and I love to keep it up to date”
“As developer I find project documentation very useful and I love to keep it up to date”
- no one -- never -
Documentation is...
Documentation is...
Simply duplication
Requirements document Emails
Technical Analysis
Domain model
Test Plan
Task tracker
Code
Documentation is...
Hard to keep up to date
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
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
Documentation is...
Inefficient
Documentation is...
Tedious
Simply duplication
Hard to keep up to date
Inefficient
Tedious
Simply duplication
Hard to keep up to date
Inefficient
Tedious
Documentation is...
S.H.I.T.
What do we want?
“Create flow by eliminating waste”
- Lean Thinking -
“Working software over comprehensive documentation”
- Agile Manifesto -
RTF: Running tested features
http://ronjeffries.com/xprog/articles/jatrtsmetric/
“Open, Honest communication”
- XP Principle -
“Rapid feedback”
- XP Principle -
How we do it?
How we do it?
True Story
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
Cross-functional teams
● Small
● Same table
● Collaborative
Cross-functional teams
● Small
● Same table
● Collaborative
Rapid
feedback
Communication
Story driven iterations
● Smallest unit of work with value
● Short iterations
● Prioritize every iteration
Story driven iterations
Backlog Ready to Dev Ready to Test Ready to Close Release
Prioritize Backlog
Backlog Backlog
DT
B P
● Customer focus
● Business value
Prioritize Backlog
Backlog Backlog
DT
B P
● Prioritize
● Customer focus
● Business value Communication
Eliminate wasteRapid
feedback Working software
3 Amigos
Backlog
B
Ready to Dev
TD
● Acceptance criteria
● Split stories
● Solve questions
3 Amigos
Backlog
B
Ready to Dev
TD
● Acceptance criteria
● Split stories
● Solve questions
Rapid feedback Communication
Development
Ready to Dev Ready to Test
D
● ATDD/TDD
● Pair programming
● CI
Development
Ready to Dev Ready to Test
D
● ATDD/TDD
● Pair programming
● CI Communication
Eliminate wasteRapid
feedback Working software
Testing
Ready to Test Ready to Close
● ACs vs AT review
● Exploratory testing
T
Testing
Ready to Test Ready to Close
● ACs vs AT review
● Exploratory testing
T
Rapid
feedback Communication
Sign-off
Ready to Test Ready to Release
● ACs + AT review
BT
D
Sign-off
Ready to Test Ready to Release
● ACs + AT review
●
BT
D
Communication
Eliminate wasteRapid
feedback Working software
Acceptance tests
● Define/prove system behaviour
● Sync and related to code
● Collaborative ownership
Q&A
Alex Fernandez
@_alexfdz
alexfdz
afernandeznogueria