Logical View  «Prev 

Customer Preferred Customer Modeling Associations

Association: Customer places Order
Association: Customer places Order
In the above diagram, 4) Customer is a class and 2)Places is an association.

  1. Role: Must have a name or roles or both
  2. Association name: Must have a name or roles or both
  3. Role: Must have a name or roles or both
  4. Class
  5. Constraint: Optional
  6. Multiplicity: Required
  7. Association
  8. Multiplicity: Required
  9. Class

Modeling associations

An association is a relationship between an actor and a use case. It is an instance of the same Association metaclass used to model relationships between classes on a Class diagram. The relationship is represented by a line between an actor and a use case. The association represents the fact that the actor communicates with the use case. In fact, in earlier versions of the UML specification, the line was called a Communicates With relationship. This is the only relationship that exists between an actor and a use case. Figures 4-6.1 and 4-6.1 model associations between the customer actor, the agent actor, and the use cases with which they each interact.

Modeling associations between agents and use cases.
Figure 4-6.1: Modeling associations between agents and use cases.

Modeling associations between customers and use cases.
Figure 4-6.2: Modeling associations between customers and use cases.

Different actors may access same Use Case

Notice that different actors may access the same use case. This typically means that they interact with the use case in different ways. If their interactions are identical, it might mean that their roles are the same. I emphasize might because the purpose of two interactions also has to be the same in order to merge them. For example, in Figure Figure 4-6.1, a person in the customer role uses the PlaceOrder use case because he wants to place an order for himself. In Figure 4-6.2:, the agent uses the PlaceOrder use case because she is helping a customer place an order. The result is the same in both cases; an order is created for a customer. But the relationship to the result is different. The completed order belongs to the customer in both cases, but the person who entered the order is different.