Assignment title: Information
Report
(30 marks)
Individual Assessment
University Library System
This case is a simplified version of a new system for the University Library. Of course,
the library system must keep track of books. Information is maintained both about book
titles and the individual book copies. Book titles maintain information about title, author,
publisher, and catalogue 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 its patrons. Because 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
students, 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, an association class should probably be created for loaned books.
If a patron wants a book that is already checked out, the patron 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 a book is fulfilled, the system associates it
with the loan on which it was checked out.
Patrons have access to the library information to search for book titles and to see
whether a book is available. A patron can also reserve a title if all copies are checked out.
When patrons bring books to the circulation desk, a clerk checks out the books on a loan.
Clerks also check books in. When books are dropped in the return slot, clerks check in
the books. Stocking clerks keep track of the arrival of new books.
The managers in the library have their own activities. They will print reports of
book titles by category. They also like to see (online) all overdue books. When books get
damaged or destroyed, managers delete information about book copies. Managers also
like to see what books are on reserve.
Assessment tasks
Part 1 (Draft report due in Week 7) (10 marks)
For the university library system case, write a report and develop the following diagrams:
a) A domain model class diagram
b) A list of uses cases and a use case diagram
c) A fully developed description for two use cases: Add a seller and Record a book
order
d) An SSD for each of the two use cases in question 1.3
All questions (a-d) carry equal marks (2.5 marks each).
Part 2 (Final Report due in Week 13) (20 marks)
For the use case Check out booksin the university library system. Do the following and
explain the diagrams in your report:
a) Develop a first-cut sequence diagram that only includes the actor and problem
domain classes.
b) Develop a design class diagram based on your solution. Be sure to include your
controller class
c) Add the view layer classes and the data access classes to your diagram in 2.1. You
may do this with two separate diagrams to make them easier to work with and read.
d) Develop a package diagram showing a three layer solution with view layer, domain
layer, and data access layer packages.
All questions (a-d) carry equal marks (5 marks each).