UML Representation: Package in the use-case model, either its top-level package, or stereotyped as
<<use-case package>>
+ Provide a hierarchical model structure with separate functional units. This is easier to
understand than a flat model structure (without packages) if the use-case model and the system is
relatively large.
+ Offer a good opportunity to distribute work and responsibilities among several developers
according to their area of competence. This is particularly important when you are building a large system.
Use-case packages also offer a secure basis if you need to ensure confidentiality among your developers so
that only a few know about the complete functionality of the system.
+ Because use-case packages should be units of high cohesion, changing one package will not affect
other packages.
- Maintaining use-case packages means more work for the use-case modeling team.
- Using use-case packages means that there is yet another notational concept for the developers to
learn.
If you use this technique you have to decide how many levels of packages to use. A rule of thumb is that
each use-case package should contain approximately 3 to 10 smaller units (use cases, actors, or other
packages). The table below gives some suggestions as to how many packages you should use given the number
of use cases and actors. The quantities overlap because it is impossible to give exact guidelines.
-
0-15: No use-case packages needed.
-
10-50: Use one level of use-case packages.
-
> 25: Use two levels of use-case packages.
|