This lab continues our work on creating a domain model for a library information system. In our first lab, we concentrated on identifying the relevant use cases. In this lab, we will practice writing use cases and depicting them with UML use case diagrams.
Assume that we have identified the following actors and goals:
| Actor | Goals | Notes |
|---|---|---|
| Librarian | Loan book to patron | Authenticate patron, identify book, mark book as on-loan in catalogue, and add book to list of books on loan to this patron, with a specific due date. If patron's membership has expired, either refuse to lend book or enter "Manage patron information" use case to renew membership. |
| Renew book | Identify patron and book, assess fine if overdue, and revise due date. Patron's membership status is checked. Renewal can be done by telephone. | |
| Process book returned by patron | Identify book, mark as available, and remove from list of books loaned to patron; if book is overdue, assess patron a fine. | |
| Handle book reported as lost | Identify book, mark as lost, and assess patron a fine. | |
| Manage patron information | Create, retrieve, update, or delete patron information. | |
| Cataloguer | Process new book | Add new record to online catalogue, or add a copy to an existing record if book is a duplicate. |
| Patron | Search for a book in the online catalogue | Enter a search string, specifying whether to search for a name, a title, or a subject, to see a list of books matching the search string, then select a book to see the full record for that book; or enter a call number, and see a display of the system record for the specified book. |
| Administrator | Send overdue book notices. | Request a list of all books that are overdue by more than some minimum number of days. |
Note that book ordering and accessions are not currently included in the scope of the automated library information system.
Submit the use case diagram and text in hard-copy form by the beginning of the lab session on Thursday, October 4. Late submissions will be assessed a penalty of 1% per hour.
Copyright © 2003, 2007 Jonathan Mohr