![Page 1: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/1.jpg)
Fabian KissSep 2011
Scrum User Group Lake Constance
![Page 2: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/2.jpg)
DO AGILISTES NEED DOCUMENTATION?
![Page 3: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/3.jpg)
Manifesto for Agile Software Development
We are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value:
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.
THE MANIFESTO ON DOCUMENTATION
![Page 4: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/4.jpg)
Manifesto for Agile Software Development
We are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value:
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.
THE MANIFESTO ON DOCUMENTATION
![Page 5: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/5.jpg)
LET'S HAVE A CLOSER LOOK AT SOME DEFINITIONS
![Page 6: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/6.jpg)
AGILE PROCESS
Definition by values and practices (Manifesto & beyond)
![Page 7: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/7.jpg)
AGILE PROCESS
Agile Software Development Poster by VersionOne, Inc., 2011, licensed under the CC BY-SA 3.0
![Page 8: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/8.jpg)
AGILE PROCESS
Definition by values and practices (Manifesto & beyond)
Definition by “SDLC coverage”
![Page 9: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/9.jpg)
AGILE PROCESS
From Agile Software Development Methods: Review and Analysis by Abrahamsson, P., Salo, O., Ronkainen, J., & Warsta, J., 2002, licensed under the CC BY-SA 3.0
![Page 10: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/10.jpg)
AGILE PROCESS
Definition by values and practices (Manifesto & beyond)
Definition by “SDLC coverage”
Definition by ...
There is a common understanding of what an agile software development process is
![Page 11: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/11.jpg)
DOCUMENTATION
Virtually no definition of documentation (in respect of software development)
![Page 12: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/12.jpg)
DOCUMENTATION
From the developer's perspective: source code documentation
From the project stakeholder's perspective: system documentation
Virtually no definition of documentation (in respect of software development)
![Page 13: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/13.jpg)
DOCUMENTATION
From the developer's perspective: source code documentation
From the project stakeholder's perspective: system documentation
More general: software documentation
Umbrella term for any documentation related to a software product
Virtually no definition of documentation (in respect of software development)
![Page 14: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/14.jpg)
DOCUMENTATION
From the developer's perspective: source code documentation
From the project stakeholder's perspective: system documentation
More general: software documentation
Umbrella term for any documentation related to a software product
Virtually no definition of documentation (in respect of software development)
People think of different things when referring to documentation
![Page 15: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/15.jpg)
![Page 16: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/16.jpg)
DOCUMENTATION
... during its development
... after its completion
Proposal for an initial classification:
Documentation dealing with properties of a software product ...
![Page 17: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/17.jpg)
BOOKS ABOUT AGILE DOCUMENTATION
Pict
ure
by Je
rem
y N
elso
n, li
cens
ed u
nder
the
CC B
Y-N
C-SA
2.0
![Page 18: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/18.jpg)
S.W. AMBLER: 'AGILE MODELING'
Scott W. Ambler
Agile Modeling: Effective Practices for eXtreme Programming and the Unified Process
Wiley2002
![Page 19: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/19.jpg)
S.W. AMBLER: 'AGILE MODELING'
Chapter about agile documentation(www.agilemodeling.com holds a more recent version of it)
Values, principles and practices for Agile Modeling adopted from XP/Agile values, principles and practices
![Page 20: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/20.jpg)
S.W. AMBLER: 'AGILE MODELING'
One of his values in the context of documentation:
“The fundamental issue is communication, not documentation.”From Agile/Lean Documentation: Strategies for Agile Software Development by Scott W. Ambler, http://www.agilemodeling.com/essays/agileDocumentation.htm#CriticalPoints
![Page 21: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/21.jpg)
S.W. AMBLER: 'AGILE MODELING'
One of his principles in the context of documentation:
“Travel Light. Every artifact that you create, and then decide to keep, will need to be maintained over time.”From Agile Modeling (AM) Principles v2 by Scott W. Ambler, http://www.agilemodeling.com/principles.htm#TravelLight
![Page 22: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/22.jpg)
S.W. AMBLER: 'AGILE MODELING'
Two of his practices in the context of documentation:
“Executable specifications, for example [...] a developer test-suite [...]. Because these artifacts add value there is a significantly greater chance that developers will keep them up-to-date.”From Agile/Lean Documentation: Strategies for Agile Software Development by Scott W. Ambler, http://www.agilemodeling.com/essays/agileDocumentation.htm#IssuesWithDocumentation
![Page 23: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/23.jpg)
S.W. AMBLER: 'AGILE MODELING'
Two of his practices in the context of documentation:
“Executable specifications, for example [...] a developer test-suite [...]. Because these artifacts add value there is a significantly greater chance that developers will keep them up-to-date.”From Agile/Lean Documentation: Strategies for Agile Software Development by Scott W. Ambler, http://www.agilemodeling.com/essays/agileDocumentation.htm#IssuesWithDocumentation
"Document stable concepts, not speculative concepts, and thereby document as late as possible in the life cycle."From Agile/Lean Documentation: Strategies for Agile Software Development by Scott W. Ambler, http://www.agilemodeling.com/essays/agileDocumentation.htm#WhenToCreateDocumentation
![Page 24: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/24.jpg)
S.W. AMBLER: 'AGILE MODELING'
Two of his practices in the context of documentation:
“Executable specifications, for example [...] a developer test-suite [...]. Because these artifacts add value there is a significantly greater chance that developers will keep them up-to-date.”From Agile/Lean Documentation: Strategies for Agile Software Development by Scott W. Ambler, http://www.agilemodeling.com/essays/agileDocumentation.htm#IssuesWithDocumentation
"Document stable concepts, not speculative concepts, and thereby document as late as possible in the life cycle."From Agile/Lean Documentation: Strategies for Agile Software Development by Scott W. Ambler, http://www.agilemodeling.com/essays/agileDocumentation.htm#WhenToCreateDocumentation
when to document
![Page 25: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/25.jpg)
THE DOWNSIDE...
![Page 26: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/26.jpg)
S.W. AMBLER: 'AGILE MODELING'
AM as a certain agile methodology
AMDD as a certain software development approach
Strongly influenced by Agile Modeling (the author's major interest)
![Page 27: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/27.jpg)
S.W. AMBLER: 'AGILE MODELING'
AM as a certain agile methodology
AMDD as a certain software development approach
Strongly influenced by Agile Modeling (the author's major interest)
Limits generality
![Page 28: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/28.jpg)
A. RÜPING: 'AGILE DOCUMENTATION'
Andreas Rüping
Agile Documentation: A Pattern Guide to Producing Lightweight Documents for Software Projects
Wiley2003
(It's a completely different book,
apparently the publisher simply
cannot afford designing a unique
front cover for each of its books)
![Page 29: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/29.jpg)
A. RÜPING: 'AGILE DOCUMENTATION'
1. Finding the Right Topics2. Structuring Individual Documents3. Layout and Typography4. Infrastructure and Technical Organisation5. Management and Quality Assurance
Patterns as descriptions of solutions to certain documentation issues in agile software projects, divided into five categories:
![Page 30: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/30.jpg)
A. RÜPING: 'AGILE DOCUMENTATION'
Examples (“Pattern Thumbnails”):
From Agile Documentation: A Pattern Guide to Producing Lightweight Documents for Software Projects by Andreas Rüping, 2003, Wiley, p. 198
![Page 31: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/31.jpg)
A. RÜPING: 'AGILE DOCUMENTATION'
Examples (“Pattern Thumbnails”):
From Agile Documentation: A Pattern Guide to Producing Lightweight Documents for Software Projects by Andreas Rüping, 2003, Wiley, p. 198
From Agile Documentation: A Pattern Guide to Producing Lightweight Documents for Software Projects by Andreas Rüping, 2003, Wiley, p. 201
![Page 32: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/32.jpg)
A. RÜPING: 'AGILE DOCUMENTATION'
Furthermore...
“Different people grasp information at different speeds. […] Documents […] allow people to read at their own pace.”From Agile Documentation: A Pattern Guide to Producing Lightweight Documents for Software Projects by Andreas Rüping, 2003, Wiley, p. 20
![Page 33: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/33.jpg)
A. RÜPING: 'AGILE DOCUMENTATION'
Furthermore...
“Different people grasp information at different speeds. […] Documents […] allow people to read at their own pace.”From Agile Documentation: A Pattern Guide to Producing Lightweight Documents for Software Projects by Andreas Rüping, 2003, Wiley, p. 20
agile principles' relation to individuals
![Page 34: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/34.jpg)
AGAIN, ADOWN-SIDE...
![Page 35: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/35.jpg)
A. RÜPING: 'AGILE DOCUMENTATION'
Obviously the patterns are more or less specific to agile software development
![Page 36: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/36.jpg)
A. RÜPING: 'AGILE DOCUMENTATION'
Obviously the patterns are more or less specific to agile software development
Some problems unique for documentation in agile software development might not be addressed at all
![Page 37: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/37.jpg)
Pict
ure
by C
ésar
Ast
udill
o, li
cens
ed u
nder
the
CC B
Y-N
C 2.
0
![Page 38: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/38.jpg)
Documentation itself is simply a too broad topic ...
![Page 39: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/39.jpg)
Documentation itself is simply a too broad topic ...
… even agile documentation is still something very unspecific
![Page 40: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/40.jpg)
Pict
ure
by L
awPr
ieR,
lice
nsed
und
er th
e CC
BY-
NC
2.0
SOME OPTIMISM PLEASE!
![Page 41: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/41.jpg)
Before considering (or developing) any practices, patterns or other formsof advice for agile documentation, we should further delimit the scope!
![Page 42: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/42.jpg)
Before considering (or developing) any practices, patterns or other formsof advice for agile documentation, we should further delimit the scope!
![Page 43: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/43.jpg)
Before considering (or developing) any practices, patterns or other formsof advice for agile documentation, we should further delimit the scope!
Documentation for during/after development
![Page 44: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/44.jpg)
Before considering (or developing) any practices, patterns or other formsof advice for agile documentation, we should further delimit the scope!
✔ Documentation for during/after development
Who documents for whom?
![Page 45: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/45.jpg)
Before considering (or developing) any practices, patterns or other formsof advice for agile documentation, we should further delimit the scope!
✔ Documentation for during/after development
Who documents for whom?
Documenting for what specific purpose?
![Page 46: Documentation in the agile software development process](https://reader033.vdocument.in/reader033/viewer/2022052505/554f3eaab4c90572088b5189/html5/thumbnails/46.jpg)
Before considering (or developing) any practices, patterns or other formsof advice for agile documentation, we should further delimit the scope!
✔ Documentation for during/after development
Who documents for whom?
Documenting for what specific purpose?
...