ProductsLogo
LogoStudy Documents
LogoAI Grader
LogoAI Answer
LogoAI Code Checker
LogoPlagiarism Checker
LogoAI Paraphraser
LogoAI Quiz
LogoAI Detector
PricingBlogAbout Us
logo

Software Engineering for Library Management System

Verified

Added on  2023/05/30

|13
|1520
|478
AI Summary
This paper discusses the fundamentals of a web application for library management system along with UML diagrams. It defines the functionalities, classes, object diagram, OCL, state machine diagram, sequence diagram and communication diagram.

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
Running head: SOFTWARE ENGINEERING
Software Engineering
Name of the student
Name of the university
Author note

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
Table of Contents
Introduction:...............................................................................................................................3
Requirements:............................................................................................................................3
a) classes.................................................................................................................................4
a) Class Diagram.....................................................................................................................4
b) Object diagram....................................................................................................................5
c) OCL....................................................................................................................................6
e) State Machine Diagram......................................................................................................8
f) Sequence Diagram..............................................................................................................9
g) Communication diagram...................................................................................................10
Question 2:...............................................................................................................................10
Question 3: Sequence Diagram................................................................................................12
Document Page
Introduction:
A library system must include some basic functionality in order to maintain the
transaction and ease the librarians work efforts. In a library, there are several operations
needs to be conducted for a single transaction. A web application can assist to automate most
of the work and as result it could provide optimal support and operation with less effort. In
this paper, the fundamentals of such application is discussed along with the UML diagrams
which will assist to understand and define the operations of the library management
application. A library must consist of librarians who manage the transactions, items which
can be borrowed, borrower who borrow the items. Similarly, the web application will involve
these to be more productive and improve their library services to library users. This approach
will not only assist them to automate the processes, it will also reduce the amount of time
spent looking for library items and speed up the delivery of library items to borrowers.
Requirements:
In order to define the functionalities of the new web application, requirements of the
application needs to be defined clearly. This application is associated with the library, hence
there must be functionalities such as checked out, returned, put on reserve and renewed. Even
though, the rules differ from one library to another. For this application, the items stored in
the library is categorized in the three sections such as books, DVDs and magazines.
Librarians will be the principal user of the application. The system should automate their
daily functions, which include: checkout, return, placing items on reserve, and renewing
items. The system should also allow a borrower or librarian to search for an item based on
title, author, or keywords.
Document Page
a) Classes
In software engineering, a class diagram in the Unified Modeling Language (UML) is a type
of static structure diagram that describes the structure of a system by showing the system's
classes, their attributes, operations (or methods), and the relationships among objects.
Borrower, item, librarian, transaction, reservation are the candidate classes along with books,
DVD and magazine.
a) Class Diagram

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Figure 1: Class diagram for library management system
As shown in the above figure, classes are comprised with the relative attributes and
operations along with multiplicities of the associations. For the class item there are six
attributes as item id, name, rack number, number of copies, item type, loan date and the
operations are display details, update status and check condition. Classes books, DVD and
magagizens forms inheritance with the item class. For the class librarian the attributes are
name, address, email address, phone number along with operations search book, checkout,
return, reserve, renew and confirmation. Items and librarian is associated with each other with
one to many relation. The transaction class is associates with the fine and librarian. Librarian
is responsible for creating the transaction and close them. Borrowers must pay a fine for
overdue items. This is $1 per day for books and $2 per day for magazines. There are also a
class name reservation which enables the reservation for any specific item, if the item is not
currently available.
b) Object diagram
Figure 2: object diagram
Document Page
The object diagram specifies the state of the system after the borrower named ‘Bob’
(identifier of this borrower is borrower1) has borrowed two books and one magazine as per
the following table (rows 1–3). Bob has also reserved another book, which is on loan now.
Information about this book is shown in the last row of the table. For the borrowed items in
the table the date column shows the loan date. For the reserved item this column shows the
date Bob made the reservation.
Row Title Type Identifier Date
1 C++ programming Book book1 15/08/2017
2 Java programming Book book2 18/08/2017
3 PC magazine Magazine Magazine1 18/08/2017
4 PHP programming Book Book3 20/08/2017
c) OCL
CL is a typed, declarative and side-effect free specification language. Typed means that each
OCL expression evaluates to a type (either one of the predefined OCL types or a type in the
model where the OCL expression is used) and must conform to the rules and operations of
that type. Side-effect free implies that OCL expressions can query or constrain the state of
the system but not modify.
1. The calss diagram does not specify the limit of item which can be borrowed. This
statement defines the limitations.
Context transaction inv noitemtransaction: self. Item -> forall (I | I.count < self.transaction)
2. Fine for the books is applicable if the book is not returned in 3 weeks which is
equivalent to 21 days and the fine is 1$ per day.
Document Page
Context item :: loanduration : string derive:
If not self.item.book. -> loanduration ()>=21
Then 0 else 1 endif
3. Fine for the books is applicable if the book is not returned in 2 weeks which is
equivalent to 14 days and the fine is 2$ per day.
Context item :: loanduration : string derive:
If not self.item.magazine. -> loanduration ()>=14
Then 0 else 2 endif
4. Items which are available cannot be reserved.
context borrower :: reserve: boolean init: false

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
e) State Machine Diagram
Figure 3: State Machine diagram
The state machine diagram is associates with the class item and specifies the availability and
reserve functionality with appropriate notations. The conditions are also applied in certain
states as to check the availability of the items and eligibility to borrow items.
Document Page
f) Sequence Diagram
Figure 4: Sequence Diagram for checkout
The above sequence diagram involves for classes, librarian, and borrower, item and
transaction. The diagram is illustrated with the synchronize and asynchronies messages. It
describes the the checkout process.
Document Page
g) Communication diagram
Figure 5: Communication diagram
A communication diagram is an extension of object diagram that shows the objects along
with the messages that travel from one to another. In addition to the associations among
objects, communication diagram shows the messages the objects send each other. It specifies
for the checkout scenario in this case.
Question 2:
The banking class diagram showcase a set of class and multiplicities. Every class
consists of mainly two section as attributes and operations. The given banking system
consists of several classes as bank, branch, loan, account and customer. The bank class
includes the name of the bank along with the unique code. The operations are defined as
addbranch. Remove branch, get branch and getallbranches. The branch class includes the

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
branch code and the location of the branch. The operations are defined as addaccount, remove
account, get account, add loan, remove loan and get loan. The loan class includes the
customer class includes customer ID, name, address and phone. The bank and branch forms 1
to many relationship as multiple branch falls one bank. The account number forms zero-many
to one relationship with branch. The account class consists of account number and balance.
The operations of the class are classified as debit amount, credit amount and get balance. The
loan class forms many to 1 relationship with the class branch. The customer forms a 1 to
many relationship with loan. Assuming from the diagram, there are two type of accounts the
bank deals with. Saving and current account forms composition with the class account.
b) The given object diagram specified the classes bank and branches. The name of the bank
is declared as ANZq along with the code 0.6q. Four different branches are declared with
different name and location. The diagram showcase the relationship of the two classes
with attribute values.
Document Page
Question 3: Sequence Diagram
Document Page
1 out of 13
[object Object]

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]