Pattern-Oriented Software Architecture Volume 3: Patterns for Resource Management
by Michael Kircher, Prashant Jain
Notations
Class-Responsibility-Collaborator Cards
Class-Responsibility-Collaborators (CRC) cards [BeCu89] help to identify and specify objects or the components of an application in an informal way, especially in the early phases of software development.

A CRC card describes an entity such as a component, an object or a class of objects. The card consists of three fields that describe the name of the entity, its responsibilities, and the names of other collaborating entities. The use of the term ‘class’ is historical [Rees92].
UML Class Diagrams
The Unified Modeling Language (UML) [Fowl03] is widely used for analysis and design of software applications. An important type of UML diagram is the class diagram. A class diagram describes the types of objects in a system and the various types of static relationships that exist among them.

![]() |
Class. A rectangular box denoting the name of the class and optionally its attributes and operations. Abstract classes’ names are labeled in italics along with their corresponding abstract methods. |
![]() |
Operation. Operation names are written in the class ... |
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access

