Class-responsibility-collaboration card

CRCCRC cardCRC-card
Class-responsibility-collaboration (CRC) cards are a brainstorming tool used in the design of object-oriented software.wikipedia
23 Related Articles

Kent Beck

They were originally proposed by Ward Cunningham and Kent Beck as a teaching tool, but are also popular among expert designers and recommended by extreme programming supporters.
Beck popularized CRC cards with Ward Cunningham, the inventor of the wiki.

Ward Cunningham

Cunningham's lawHoward CunninghamCunningham, Ward
They were originally proposed by Ward Cunningham and Kent Beck as a teaching tool, but are also popular among expert designers and recommended by extreme programming supporters.
Ward Cunningham has contributed to the practice of object-oriented programming, in particular the use of pattern languages and (with Kent Beck) the class-responsibility-collaboration cards.

Brainstorming

brainstormbrain-stormingbrainstormed
Class-responsibility-collaboration (CRC) cards are a brainstorming tool used in the design of object-oriented software.

Object-oriented programming

object-orientedobject orientedobject-oriented programming language
Class-responsibility-collaboration (CRC) cards are a brainstorming tool used in the design of object-oriented software.

Extreme programming

XPcollective code ownershipcourage in programming
They were originally proposed by Ward Cunningham and Kent Beck as a teaching tool, but are also popular among expert designers and recommended by extreme programming supporters.

Martin Fowler (software engineer)

Martin FowlerFowler, Martin
Martin Fowler has described CRC cards as a viable alternative to UML sequence diagram to design the dynamics of object interaction and collaboration.

Unified Modeling Language

UMLUnified Modelling Languageinteraction diagram
Martin Fowler has described CRC cards as a viable alternative to UML sequence diagram to design the dynamics of object interaction and collaboration.

Sequence diagram

sequence diagramsevent-trace diagramSequence
Martin Fowler has described CRC cards as a viable alternative to UML sequence diagram to design the dynamics of object interaction and collaboration.

Index card

card indexindex cards3x5 index cards
CRC cards are usually created from index cards.

Class (computer programming)

classclassesPartial class
Members of a brainstorming session will write up one CRC card for each relevant class/object of their design.

Implementation

implementedimplementimplementing
It focuses designers on the essentials of the class and prevents them from getting into its details and implementation at a time when such detail is probably counter-productive.

Responsibility-driven design

data designdata drivendata-driven
The CRC-card modelling technique is used to generate these behavioral abstractions.

Rebecca Wirfs-Brock

Rebecca J. Wirfs-Brock
Most of the more recent "driven" design approaches acknowledge their roots and the influence of RDD, of which class-responsibility-collaboration cards are one popular technique.