Find analysis classes from use-case behavior
To identify a candidate set of analysis classes which will be capable of performing the behavior described in use
cases. These classes will provide the necessary behavior to fulfill functional and non-functional
requirements.
Refer to Concept: Entity-Control-Boundary Pattern for guidance on how to identify these
classes. Another source for finding analysis classes are the analysis mechanisms and analysis patterns being considered
for this project. Once identified, then name and briefly describe the analysis classes in a few sentences.
Distribute behavior to analysis classes
For each scenario, express the use-case behavior in terms of collaborating analysis classes. This helps to determine
the responsibilities of analysis classes. You may find useful to capture the interaction between analysis classes (and
between classes and external entities such as actors) on diagrams like communication or sequence diagrams (tipically
one diagram for each scenario).
Describe responsibilities
Class responsibilities are either actions to be performed by an object or knowledge maintained and provided to
other objects. Each class will typically have several responsibilities; each responsibility will evolve into one
or more operations during design.
Responsibilities are derived from messages on interaction diagrams or from non-functional requirements that a class has
to convey. Document a responsibility by giving it a name, and optionally a brief description (what it does).
Describe attributes and associations
To perform their responsibilities, classes may depend on other classes to supply needed behavior. Associations in a
class diagram can be used to represent inter-class relationships.
A class may have to store simple data information, like: string, integer, and the like. For such simple type of
information, attributes are defined for classes. For a more complex or "behavioral' attribute, consider creating an
extra class and establish an association to it.
|