O'Reilly logo

Pattern-Oriented Software Architecture, Volume 2, Patterns for Concurrent and Networked Objects by Frank Buschmann, Hans Rohnert, Michael Stal, Douglas C. Schmidt

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

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 a component, an object, or a class of objects. The card consists of three fields that describe the name of the component, its responsibilities, and the names of other collaborating components. The use of the term ‘class’ is historical [Ree92]—we also use CRC cards for other types of components or even single objects.

UML Class Diagrams

The Unified Modeling Language (UML) [BRJ98] is a widely-used object-oriented analysis and design method. An important type of diagram within UML 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.

As an extension to the standard UML notation we introduce a symbol to indicate that instances of a class run in separate threads.

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 boxes. ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required