Call for Participation
Join us as we review and discuss the usefulness of tests as documentation. Dedicated testers, quality professionals, developers and other project stakeholders are encouraged to bring tests that participants can examine and discuss together.
Workshop Description
Agile processes try to minimize documentation. Instead of requirements documents, we have conversations. Instead of copious internal comments and Program Maintenance Manuals, we have colocation, shared ownership, and more conversation.
It is increasingly popular to consider tests as documentation. Want to know how to use an API? Look at its tests. Curious about the details of what a product feature does? Look at its tests.
Nevertheless, the topic of tests as documentation has been under-discussed in the community. How well do tests work as documentation? And perhaps more important: what are the tricks of the trade? How do you make tests better documentation? What are good examples to study?
This workshop will work towards accelerating that discussion. We propose to study actual tests (those developed by testers, developers, documentation, customers and other project stakeholders). Bring your examples of tests and the code that you test.
Workshop Goals
- Review and discuss tests that should contain project documentation
- Identify the strengths and weaknesses of the documentation in the tests
- Facilitate discussion on what tests worked well as project documentation and why:
- How are tests like requirements, and how are they different?
- How can tests capture or transmit the tacit knowledge of project experts?
- How can tests aid the project conversation?
- How are they used differently by people on the project and by the people who come after?
- Suggest areas that need further study
- Encourage research and paper publication in related topics
Contributions and Format
Workshop participants are encouraged to bring any tests that may also be used as project documentation.
- Brief introduction.
- Have individuals read some tests, referring to the code as needed. They can also ask questions of the test's author.
- People will then group into pairs. They'll talk about these questions:
- What did the tests explain?
- What did the readers have to ask?
- What did they stumble over?
- What pre-knowledge did they need?
- What things made understanding easier?
- The whole group will then convene to talk about interesting conclusions and disagreements the pairs had.
- We'll transition to a general discussion of the issues, keeping a bias toward writing down tips and advice for test-writers.
- Wrap up and end.
We'll accommodate as many people as possible, but people who bring tests to share have priority. In order to make the workshop run more smoothly, please send the tests in advance to the contact emails on the right.
If there's sufficient interest, we'll convene a Birds-of-a-Feather session that evening.
The notes and conclusions will be posted on both of the convener's blogs:
http://www.kohl.ca/blog/ and http://www.testing.com/cgi-bin/blog
Location
Room Neilson 2, Hyatt Regency, Calgary, Alberta
Time Frame
Monday, August 16, 1:30 pm - 5:00 pm
Organizers
Jonathan Kohl develops
and applies Agile techniques on live testing projects, focusing on workable,
effective techniques for tester and developer collaboration. His experience
in test development spans business(acceptance), tester (manual and automated),
and developer (automated unit) tests. He is a software testing consultant
with Kohl Concepts, and has recently published an article in Better
Software magazine on Pair Testing with developers.
Brian Marick consults
on Agile Testing. He was one of the authors of the Manifesto for Agile Software
Development and is vice-chair of the Agile Alliance board. His experience
moderating or co-moderating workshops includes a series of test patterns
workshops http://www.testing.com/test-patterns/index.html,
a highly successful workshop on acceptance testing at XP/Agile Universe
2002 http://www.pettichord.com/agile_workshop.html,
OOPSLA workshops on software archeology http://www.visibleworkings.com/archeology/
and constructing software to outlive its creators http://visibleworkings.com/built-for-life/,
and the recent University of Illinois Master of Fine Arts in Software trial
run http://wiki.cs.uiuc.edu/MFA.