What do you think?


Using CRC Cards: An Informal Approach to Object-Oriented Development
Using CRC Cards is a comprehensive introduction to CRC (Class, Responsibility, Collaborator) cards. It includes a description of the cards and how they can be used in interactive sessions to develop an object-oriented model of an application. In this book, the author draws on her years of project experience to describe how CRC cards can contribute at all stages of the software lifecycle. It includes practical examples of how to utilize CRC cards in projects using either formal or informal development techniques. Using CRC Cards also provides a detailed look at how designs created with CRC cards can be mapped to an effective and efficient implementation in C++. Software analysts, designers and developers will use this book to guide their transition to the object-oriented paradigm, as well as provide a process for development of their object-oriented applications.
- GenresSoftware
250 pages, Paperback
First published January 13, 1998
Ratings & Reviews
Friends & Following
Create a free account to discover what your friends think of this book!
Community Reviews
Displaying 1 - 1 of 1 review
September 5, 2024
This book offers valuable insights, despite software engineering moving past the 90s hype around object-oriented design. Although I’ve used CRC (Class Responsibility Collaboration) cards informally, I was curious to explore what 200+ pages on the subject might offer. While I didn’t follow the book verbatim, I found its principles still relevant. The tools and processes have evolved, but the core ideas—understanding problems, refining designs, and improving implementation—remain essential.
The simplicity of CRC cards works well for fostering discussions and workshops, whether using physical index cards or digital tools like Miro or LucidChart. The book frames conversations at various stages and provides activities that can be adapted for team use. Even something as basic as defining a CRC Card can spark valuable discussions:
Using CRC Cards can facilitate low-effort, blameless discussions, helping teams connect the dots between system components. Asking simple questions like "What does this class represent?" or "Why does it exist?" can uncover insights, making it easier to identify adjustments.
A key takeaway is the use of scenarios to test designs early on. Wilkinson emphasizes:
I often find teams neglect to ask these crucial "what happens when" questions, leading to gaps in understanding. Wilkinson’s approach encourages using scenarios to challenge your design while it’s still easy to change.
While this book isn’t a silver bullet for software issues and may feel outdated with its references to C++, the insights are still valuable. It’s a quick read, and sections that feel irrelevant today are easily skimmed or skipped.
For team exercises, I recommend pairing this with Gamestorming: A Playbook for Innovators, Rulebreakers, and Changemakers, which offers great tips for running workshops. For a quick overview of CRC Cards, check out this helpful guide on GeeksforGeeks.
Now, excuse while I go grab some index cards and an erasable pen... I've got some modeling to do.
The simplicity of CRC cards works well for fostering discussions and workshops, whether using physical index cards or digital tools like Miro or LucidChart. The book frames conversations at various stages and provides activities that can be adapted for team use. Even something as basic as defining a CRC Card can spark valuable discussions:
A CRC Card is an index card that is annotated in a group setting to represent a class of objects, its behavior, and its interactions.
Using CRC Cards can facilitate low-effort, blameless discussions, helping teams connect the dots between system components. Asking simple questions like "What does this class represent?" or "Why does it exist?" can uncover insights, making it easier to identify adjustments.
A key takeaway is the use of scenarios to test designs early on. Wilkinson emphasizes:
[Scenarios] are the answers to questions that begin with 'what happens when... [These scenarios] correspond to what happens rather than how it happens.
I often find teams neglect to ask these crucial "what happens when" questions, leading to gaps in understanding. Wilkinson’s approach encourages using scenarios to challenge your design while it’s still easy to change.
While this book isn’t a silver bullet for software issues and may feel outdated with its references to C++, the insights are still valuable. It’s a quick read, and sections that feel irrelevant today are easily skimmed or skipped.
For team exercises, I recommend pairing this with Gamestorming: A Playbook for Innovators, Rulebreakers, and Changemakers, which offers great tips for running workshops. For a quick overview of CRC Cards, check out this helpful guide on GeeksforGeeks.
Now, excuse while I go grab some index cards and an erasable pen... I've got some modeling to do.
Displaying 1 - 1 of 1 review


