Start the addition of associations by using the list in Table 11.1.
It contains common categories that are usually worth considering. Examples are drawn from the store and airline reservation domains.
Category | Examples |
---|---|
A is a physical part of B | Drawer—Register (or more specifically, a POST) Wing—Airplane |
A is a logical part of B | SalesLineItem—Sale FlightLeg—FlightRoute |
A is physically contained in/on B | Register—Store, Item—Shelf Passenger—Airplane |
A is logically contained in B | ItemDescription—Catalog Flight—FlightSchedule |
A is a description for B | ItemDescription—Item FlightDescription—Flight |
A is a line item of a transaction or report B | SalesLineItem—Sale MaintenanceJob—MaintenanceLog |
A is known/logged/recorded/reported/captured in B | Sale—Register Reservation—FlightManifest |
A is a member of B | Cashier—Store Pilot—Airline |
A is an organizational subunit of B | Department—Store Maintenance—Airline |
A uses or manages B | Cashier—Register Pilot—Airplane |
A communicates with B | Customer—Cashier ReservationAgent—Passenger |
A is related to a transaction B | Customer—Payment Passenger—Ticket |
A is a transaction related to another transaction B | Payment—Sale Reservation—Cancellation |
A is next to B | SalesLineItem—SalesLineItem City—City |
A is owned by B | Register—Store Plane—Airline |
A is an event related to B | Sale—Customer, Sale—Store Departure—Flight |
Here are some high-priority association categories that are invariably useful to include in a domain model:
A is a physical or logical part of B.
A is physically or logically contained in/on B.
A is recorded in B.
3.16.50.71