(Version 2.0)
David Bellin
North Carolina A&T State University
Greensboro NC 27411-0002 - USA dbellin@ncat.edudbellin@acm.org
Intent:
To introduce organizational techniques CRC analysts use to discover
classes.
Motivation:
Students in CS programs often have a difficult time applying group
interaction techniques. This is because typical instruction, even that
which uses group projects, does not simulate many industry meeting
situations. Brainstorming techniques based upon social psychological
research have been proven effective when applied in a specific fashion
by OO analysts in discovering classes in a new system.
Applicability:
The Brainstorming pattern introduces a key technique used in CRC Card
Analysis.
Structure:
Step 1: Review Brainstorming Principles:
All Ideas Are Potential Good Ideas
Think Fast and Furious First, Ponder Later
Give Every Voice a Turn
A Little Humor Can Be a Powerful Force
Step 2: State Session Objectives
Step 3: Use a Round Robin Technique
Step 4: Discuss and Select Candidate Classes
Consequences:
The brainstorming pattern:
provides a method for early discovery of candidate classes in a new system
encourages students to recognize the importance of group interaction in early analysis stages
lets instructors make the class discovery process tangible
may be resisted by technology oriented students who view people skills as peripheral or time consuming
Implementation:
exercises can be difficult to implement if the available population is
not diverse
many references are to literature outside of computer science (but see
"The CRC Card Book" by Bellin & Simone (Addison-Wesley)
instructors with industry experience are likely to have more success
with this pattern
flipcharts and markers are essential aids to the process
don't criticize ideas; don't laugh at other participants suggestions
one person must serve as the scribe (whoever writes the fastest!)
pattern excludes revision of candidate classes (see related Role Playing pattern)
Example Instances:
Used to teach class discovery in applications including:
stock market
ATM machines
traffic light control
Related Patterns:
Role Playing Pattern
Three Bears Pattern (when you don't know where to go next)