Interaction Models at the Design Level

10 points

Goal: To practice concepts related to Interaction Modeling during design

Problem Statement: Please refer to your notes to understand the term system operation and what its role is while thinking about a use case.

Consider the use case "Checkout Books" for the University Library system. Assume that the description of the use case "Checkout Books" is as follows:

• Actor: Borrower
1. The borrower enters identification. The system identifies and authenticates the borrower.
2. The borrower checks out one book at a time by entering information about the book. The system displays the new status of the book as "Checked out" along with the due date, and also displays the number of items currently checked out.
3. Repeat step 2 as many times as needed.
4. The borrower informs the system that all books were entered.
Consider the system operation corresponding to step 2 above, i.e, for checking out a single item. The goal of this assignment is to model the internal behavior (i.e., the design) of the library application to perform the checkout operation (step 2). Note that the checkout operation is not the same as the Checkout Books use case. Just focus on the checkout operation.

Assume the pre-condition holds, i.e., the borrower information exists in the system. Also assume that the borrower has been correctly identified. The checkout system operation begins thereafter. One checkout operation is performed for each item checked out. During this operation, an identifier corresponding to the particular copy of the item is entered into the system. The system responds by listing the name of the item checked out and the due date on the display.

• Develop a UML Design Sequence Diagram that models the messages that are sent and other interactions that occur in order to fullfill the checkout system operation. Use the concepts that you developed in a previous Discussion Assignment. Note that a common mistake in this assignment is to draw system sqeuence diagram, which is a diagrammatic representation of a use case. We are asking you to draw a sequence diagram that shows the design of a particular system operation used in the overall use case.

• Assign operations to the library classes, based on the above design sequence diagram.

Note that you may add attachments to your postings. This will help you add diagrams. Note also that we have only seen the UML notation so far, and not discussed the design principles and patterns yet. These will be discussed in the next few weeks.

Part A (3 + 2 = 5 points)

Part A consists of your initial solution to the group posted in the private discussion group "D5".
This must be more than "Me, too!" or "Sounds good!"

Be sure to clearly state the reasons or rationale behind your suggestions