Maybe you have heard of CRC cards before, but I hadn't. Not at least until I encountered them in An Introduction to Object-Oriented Programming by Timothy A. Budd.
Basically, CRC cards are a tool to help you design object-oriented programs. You describe different components and their behaviors on index cards, and then, while you go through various scenarios, you can arrange the cards to help you understand how the components interact with each other.
What's particularly nice about the CRC card technique, is that it focuses on behavior-oriented design. Although similar to UML, CRC cards a distinct approach because you don't need very much detail to get going with CRC cards, and CRC cards are a physical representation whereas UML is almost always electronic.
CRC cards were invented by Kent Beck and Ward Cunningham and are described in the paper "A Laboratory For Teaching Object-Oriented Thinking". So, read the paper if you want the details. And don't worry, the paper is short. :-)
Dr. Budd had us do a class exercise using CRC cards. I enjoyed the exercise, but I found the physical representation to be a bit limiting. Having to physically record an idea made it seem to permanent--it was easier for me to organize my thoughts electronically. Apparently Beck discourages electronic tools in place of CRC cards because physically manipulating the cards is supposed to give designers a better idea of how the software system will function.
Posted by enigma at January 22, 2004 09:14 PM