In: Computer Science
Case Study: University Library System
This case is a simplified (initial draft) of a new system for the
University Library. Of course, the library system must keep track
of books. Information is maintained about both book titles and the
individual book copies. Book titles maintain information about
title, author, publisher, and catalog number. Individual copies
maintain copy number, edition, publication year, ISBN, book status
(whether it is on the shelf or loaned out), and date due back
in.
The library also keeps track of patrons to the library. Since it is
a university library, there are several types of patrons, each with
different privileges. There are faculty patrons, graduate student
patrons, and undergraduate student patrons. Basic information about
all patrons is name, address, and telephone number. For faculty
patrons, additional information is office address and telephone
number. For graduate students, information such as graduate program
and advisor information is maintained. For undergraduate student’s
program and total credit hours are maintained.
The library also keeps information about library loans. A library
loan is a somewhat abstract object. A loan occurs when a patron
approaches the circulation desk with a stack of books to check out.
Over time a patron can have many loans. A loan can have many
physical books associated with it. (And a physical book can be on
many loans over a period of time. Information about past loans is
kept in the database.) So, in this case, it is recommended that an
association class be created for loaned books.
If a book is checked out that a patron wants, he/she can put that
title on reserve. This is another class that does not represent a
concrete object. Each reservation is for only one title and one
patron. Information such as date reserved, priority, and date
fulfilled is maintained. When it is fulfilled, the system
associates it with the loan on which it was checked out.
For this case, develop the following diagrams:
1. Use Case description for checking out books with one any exceptional case
We have three main actors in our system:
Librarian: Mainly responsible for adding and modifying books,
book items, and users. The Librarian can also issue, reserve, and
return book items.
PATRON: All members can search the catalog, as well as check-out,
reserve, renew, and return a book.
LMS: Mainly responsible for sending notifications for overdue
books, canceled reservations, etc.
Here are the top use cases of the Library Management System:
Add/Remove/Edit book: To add, remove or modify a book or book
item.
Search catalog: To search books by title, author, subject or
publication date.
Register new account/cancel membership: To add a new member or
cancel the membership of an existing member.
Check-out book: To borrow a book from the library.
Reserve book: To reserve a book which is not currently
available.
loan a book: To loan a book
Renew a book: To reborrow an already checked-out book.
Return a book: To return a book to the library which was issued to
a member.