Packages and Subsystems

As a model may have hundreds (if not thousands) of model elements, how do you organize the elements that make up a system and their relationships? And how do you use this information to determine how best to develop the system while considering technical trade-offs concerning the system, including which elements may be developed in parallel, which elements may be purchased rather than built, and which elements may be reused? Packages and subsystems, called model management elements, address these questions.

Packages

A package is a grouping and organizing element in which other elements reside, which must be uniquely named. In the UML, packages are used in a manner similar to the way directories and folders in an operating system group and organize files. For example, the project management system may be decomposed into a collection of classes organized into packages as follows:

Utility

Date, time, and other utility classes

Workers

The Worker class and any other worker-related classes in which the Worker class is contained inside of a package named Generic

Generic

Generic classes such as the Worker class and any other worker-related classes

Work Units

The UnitOfWork class and any other work-related classes

Work Products

The WorkProduct class and any other work product-related classes

User Interface

A package housing classes responsible for providing a user interface through which users may interact with the system

Business Processing

A package housing ...

Get Learning UML now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.