Now we'll create and label associations between some of the classes. The verbs and verb phrases can help us with the labeling, but we won't limit ourselves to the ones from the interview.
Labels
that are somewhat more descriptive might suggest themselves.
Let's start with the member first. Let's label the associations by generating phrases that characterize the associations. Here are some phrases that immidiately come to mind:
![]() |
The member searches the paper cards or data records. |
![]() |
The member goes to the lending place. |
![]() |
The member lends a sample. |
![]() |
The member makes a reservation. |
![]() |
The members takes a sample. |
![]() |
The member browse the multimedia data. |
![]() |
The member goes to the reception area. |
![]() |
The member prints the electronic item. |
When we labeled out the associations, we can put multiplicities into associations lines. After this customer's class will look like this:
The member class with included multiplicities in the associations |
The associations for the item's (here item is standing for both book and journal) class might be the phrases from the following list:
![]() |
The item can be recommended to the member. |
![]() |
The item is reserved by a member. |
![]() |
The item (electronic) is printet by a member. |
![]() |
The items are sorted alphabeticaly in paper cards and data records. |
![]() |
The item has sample(s). |
![]() |
The item has multimedia data. |
After filling out associations names and multiplicities, the item's class will be:
Associations with the items (books and journals) |
Interesting, also is the process of forming associations and multiplicities for the emplyee's class. Bear in mind that employees are also a members of the library, thus all the member's class associations can be putted into the emplyee's class, but some of the employees perform some actions that members are not allowed:
![]() |
The lender produces a lending record. |
![]() |
The lender lends an item to the member. |
![]() |
The DataEntry clerk enters data for the books. |
![]() |
The DataEntry clerk enters data for the journals. |
![]() |
The DataEntry clerk enters data for the authors. |
![]() |
The DataEntry clerk enters data for the members. |
![]() |
The DataEntry clerk enters data for the samples. |
After filling out associations names and multiplicities, the lender's and DataEntry clerk's classes will be:
Associations with the lender | |
Associations with the DataEntry clerk |
Try
drawing out the associations with the Author's class and Sample's class. This will be also
an exercise for you given in the workshop for this day.
We've been forming and naming abstract classes and associations, and another organizational dimension awaits. The next step will be finding out classes that are components of other classes. A library for instance consists of a set of parts, but for as interesting will be: corridor, lending area and reception area. Next picture shows this compozition.
Compozition in the Digital Library domain |
If you have some probles understanding processes of forming associations, multiplicities and compozitions, please see these lessons learned in DAY 2: Associations and Aggregations.