Lab 8&9
Lab 8&9
As the size and capacity of the university is increasing with the time, it has been proposed to
develop a Library Management System (LMS) for the benefit of students and employees of the
university. LMS will enable the members to easily borrow a book (or return it) while sitting at his
desk/chamber. The system also enables a member to extend the date of his borrowing if no other
booking for that particular book has been made. For the library staff, this system aids them to
easily handling day-to-day book transactions. The librarian, who has administrative privileges and
complete control over the system, can enter a new record into the system when a new book has
been purchased or remove a record if any book is taken off the shelf. Any non-member is free to
use this system to browse/search books online. However, issuing or returning books is restricted
to valid users (members) of LMS only.
The final deliverable would be a web application (using the recent HTML 5), which should run
only within the university LAN. Although this reduces the security risk of the software to a large
extent, care should be taken that no confidential information (e.g., passwords) is stored in plain
text.
A robust database backend is essential for a high-quality information system. Database schema
should be efficiently modeled, refined, and normalized.
1. For each use case assigned to you, review the description so that it clearly describes the interaction
between the actor and the system, and the required processing. Ensure that at least the following
items are identified:
• the data to be entered by the actor,
• the data or information to displayed/sent to the actor,
• the data to be stored to the database/file,
• the data to be retrieved from the database/file
2. Based on the use cases, draw a Class Diagram with all the classes in the system. Identify the attributes
for each class based on the descriptions of data to be retrieved and stored in each class. Refer to
Document 8A on how to draw class diagrams:
3. Identify the relationships between the objects, if any, and draw the relationships in the Class Diagram
accordingly.
4. For each use case assigned to you, elaborate the process into a sequence of interaction between the
user and the system, for example (make appointment use case):
5. Based on the interactions, draw a sequence diagram for the use case. Refer to Document 8B on
how to draw Sequence Diagram:
6. Based on the Sequence Diagrams, verify that the Class Diagram contains the data objects that are
being processed in the use cases. Update the attributes in the Class Diagram with suitable data types.
(Right-click the class, Open Specification and click the Attributes tab. See example below)
7. Prepare a set of sample data that can be used in the use cases. The data could be entered into the
system and/or displayed by the system.