[an error occurred while processing this directive]
exampler.com/testing-com > Test Patterns > PoST
2 > Preparation for new attendees [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]
Preparation for new attendees
The first day of PoST will be devoted to bringing people up to
speed on patterns, pattern reading groups, and pattern writing.
Here is some background reading that you might find helpful.
Introductions to Patterns
Brad Appleton's "Patterns
and Software: Essential Concepts and Terminology" or
James Coplien's "Software
Patterns Management Briefing" are good places to start.
Both are long, but both are nicely set up for skimming. You might
follow that with Doug Lea's Patterns-Discussion
FAQ.
The patterns community has evolved a certain style of
critiquing patterns and groups of patterns. It's based on
writer's workshops.
You should read at least the short summary titled "How
to Hold a Writer's Workshop". We strongly recommend you
read the longer "A
Pattern Language for Writer's Workshops", by James
Coplien.
We recommend you read "A
Pattern Language for Pattern Writing", by Meszaros and
Doble. (Note that the HTML version lost the footnotes in the
translation, but it's still quite usable. If you want the
footnotes, the pattern language is available in book form in Pattern
Languages of Program Design 3. As of January 24, 2001,
that volume is unavailable from Amazon and Fatbrain. It's still
available from Barnes&Noble.)
Consider also reading the shorter "Seven
Habits of Successful Pattern Writers", by John Vlissades
and "Tips
for Writing Pattern Languages", by Ward Cunningham.
More about patterns; testing patterns and ones from other
domains
Patterns were originally described by the architect
Christopher Alexander. Many people working on non-architectural
patterns have nevertheless found the following books useful.
- The
Timeless Way of Building, by Christopher
Alexander
- This book, on the architecture of towns and buildings,
has inspired a lot of software patterns work. The first
few chapters, which could be caricatured as being written
in a very 60's style, put some people off. If that
happens to you, skim forward until you hit chapter 14.
- A
Pattern Language, Christopher Alexander et. al.
- This book contains 253 specific patterns for building
towns and buildings.
- Christopher Alexander: The Search for a New Paradigm
in Architecture, Stephen Grabow (out of print)
- Woven together out of interviews with Alexander, it
covers work done since the previous two books.
Here are some sources for testing patterns:
- Testing
Object-Oriented Systems: Models, Patterns, and Tools,
by Robert Binder, presents 37 test design patterns,
17 patterns for test automation (Design Patterns
template), and 16 patterns for oracle development. A
pattern template for test design is introduced. More at www.rbsc.com/pages/toosmpt.htm.
- "Patterns
for System Testing", by David DeLano and Linda
Rising.
- "Pattern Language for Testing Object-oriented
Software", by Donald Firesmith, Object Magazine,
January 96.
- "Parallel
Architecture for Component Testing of Object-Oriented
Software", John McGregor & Anuradha Kare, Proceedings
of the Ninth International Quality Week, May 96.
There are a few other test patterns in Linda Rising's The
Pattern Almanac 2000. It is a book to help you
find patterns about a particular topic.
Many collections of patterns are online. Here are two sources:
Brian Marick also recommends the following books.
- How
Buildings Learn, Stewart Brand
- A discussion of how buildings change over time. Not
specifically about patterns, but definitely coming from
the same attitude toward architecture, building, design,
and change.
- Design
Patterns: Elements of Reusable Object-Oriented Software,
by Gamma, Helms, Johnson, and Vlissades
- This is the book in which Alexandrian ideas (with
modification) hit the mainstream of software development.
You pretty much need a reading knowledge of C++. (There's
a Java translation I haven't read.)
- Pattern
Hatching: Design Patterns Applied, by
John Vlissades
- Further ruminations on the topics of Design Patterns.
- Smalltalk
Best Practice Patterns, by Kent Beck
- A set of patterns intended to transmit some of the lore
of the expert Smalltalk programmer. Not understandable
unless you have read at least a few chapters of a
Smalltalk book.
- Patterns
of Software, by Richard Gabriel
- Gabriel considers in detail certain aspects of
Alexander's writings. His notion of "habitable
software" is particularly interesting.
- The "PLoPD"
books
- Collections of papers from the Pattern Languages
of Programs conferences.
[an error occurred while processing this directive][an error occurred while processing this directive]