|
It is useful to translate each use case into three analysis classes.
- boundary class
- control class
- entity class
Create a boundary class for each actor in a use case. The boundary class represents the interface between the actor and the system.
Create one control class for each use case. The control class represents the step by step flow of processing through the use case.
Create one entity class for each logical data item in the use case.
These should be data items that an actor would recognize and they should be named the way an actor would name them.
Entity classes should not look like data tables in an enterprise database. The goal here is to capture data the way an actor understands that data.
Creating analysis classes is very much a mechanical exercise. In most cases, you create one boundary class, one control class and one entity class per use case.
Once you have analysis classes for all your use cases, you will notice that some analysis classes can be combined while others will strike you as trivial.
Synthesize the analysis classes into your first cut at top level classes for the system you are developing.
|