Use Case Book Title Book Copy Loan Book Copy onLoan Patron Reservation Search for book title R R Reserve book R R C Check out books U C C R U Check in book U U Enter new book information C C Print book title report R Delete book copy information D View overdue books R View reservations R
NEW USE CASES Update book information U U Update Patron information U Correct reservation U Print loaned book reports R R View Patron information R Remove book from library D D
END OF PERIOD CLEANUP Remove old loan information D D Remove old reservation information D
Sequence diagram for the use case Check out books in the university library system. 1a. Develop a first-cut sequence diagram, which only includes the actor and problem domain classes.
LoanItemList Design depends on contents of bookID, assume it includes cat#, copy# aBT:=getBook (bookID) getInfo ( ) title, author updateStatus (copy#, checkedout) aR:Reservation
BookTItleLilst info := getPatronInfo( ) 1b. Add the view layer classes and the data access classes to your diagram from part a.
LibraryEmployee :CheckoutHandler verifyPatronForLoan (ID) name, addr, tele, type, status *checkOutBook (bookID) closeLoan ( ) PatronDA aL:Loan createLoan (aP) checkOutBook (bookID) aLI:LoanItem createLoanItem (aL, bookID) BookCopyDA title, author, copy#, dueDate title, author, copy#, dueDate closeLoan ( ) BookTitleDA Check Out Books aBT:=getBk (bookID) updateStatus (copy#, checkedout) createBC (info) aP := getPatron (ID) aP:Patron createPatron (info) aBT:BookTitle createBT (info) aBC := getBC (bookID) aBC:BookCopy saveBC (aBC) LaonItemDA save (aLI) LoanDA save (aL) Two ways to use the DA classes 1. Create an empty object, which goes to DA to fill in the attributes. 2. Go directly to DA, which creates the object. <<View>> CheckOutForm