Each use case can be partitioned to represent a single activity of an object. These partitions represent the simple sentences of the basic and alternative flows of events described in step 2. From these sentences we can identify objects (hence classes) by applying the following rules [Rosenberg, 1999; Rumbaugh et al., 1991; Siddalingaiash, 2000]:
Nouns become objects or attributes.
Verbs become methods or relationships.
Possessive clauses denote that the nouns should become methods instead of objects.
Hence, we have a first cut of a class diagram. In this step we can identify classes and at most some attributes that are derived from the domain analysis. Further attributes and methods are discovered later in the methodology (namely by robustness and interaction diagrams respectively).
[Fowler, 2000a] identifies three categories of class diagrams: