Professional Documents
Culture Documents
Library Circulation
System
Software Requirements Specification
7/8/2013
Library Circulation System
Software Requirements Specification
SE 406
Submitted by:
Submitted to:
Associate Professor,
University of Dhaka
Submission Date:
ii | P a g e
LETTER OF TRANSMITTAL
Dr. K M Sakib
Associate Professor
Institute of Information Technology (IIT)
University of Dhaka
July 8, 2013
Dear Sir,
The primary purpose of this report is to summarize our findings from the work that we
completed as our Software Requirements Specifications and Analysis course project. This report
includes the details of each steps we followed to collect the requirements.
Sincerely Yours,
Lamisha Rawshan
Md. Shafiuzzaman
Nadia Nahar
iii | P a g e
Executive Summary
iv | P a g e
Acknowledgements
v|Page
Table of Contents
Chapter 1: Introduction .............................................................................................................. 1
2.2 Conclusion............................................................................................................................ 7
Chapter 3: Elicitation................................................................................................................... 9
vi | P a g e
4.1 Introduction ....................................................................................................................... 14
4.3.3 Update.......................................................................................................................... 19
4.3 Activity Diagram and Swimlane Diagram of generated Use Cases .......................... 29
vii | P a g e
8.2 Sequence Diagram ............................................................................................................ 80
Appendix ...................................................................................................................................... 86
List of Figures
Figure Description Page
1 Level 0 for circulation system 25
2 Level 1 for circulation system 25
3 Level 2.1(Authentication) for circulation system 26
4 Level 2.2(Configure) for circulation system 26
5 Level 2.3(Borrow) for circulation system 27
6 Level 2.4(Return) for circulation system 28
7 Level 2.5(Update) for circulation system 28
8 Activity Diagram of Sign Up 29
9 Swimlane Diagram of Sign Up 30
10 Activity Diagram of Sign In 31
11 Swimlane Diagram of Sign In 32
12 Activity Diagram of Sign Out 33
13 Swimlane Diagram of Sign Out 33
14 Activity Diagram of Change Password(s) 34
15 Swimlane Diagram of Change Password(s) 35
16 Activity Diagram of Change User Type 36
17 Swimlane Diagram of Change User Type 37
18 Activity Diagram of Configure the Due Date for an Item(s) 38
19 Swimlane Diagram of Configure the Due Date for an Item(s) 39
20 Activity Diagram of Configure the Fine for an Over Due Item(s) 40
21 Swimlane Diagram of Configure the Fine for an Over Due Item(s) 41
22 Activity Diagram of Change default Due date for Item 42
23 Swimlane Diagram of Change default Due date for Item 43
24 Activity Diagram of Add an Item 44
25 Swimlane Diagram of Add an Item 45
26 Activity Diagram of Edit an Item 46
27 Swimlane Diagram of Edit an Item 47
28 Activity Diagram of Delete an Item 48
29 Swimlane Diagram of Delete an Item 49
30 Activity Diagram of Issue an Item 50
31 Swimlane Diagram of Issue an Item 51
32 Activity Diagram of Retrieve an Item 52
33 Swimlane Diagram of Retrieve an Item 53
34 Activity Diagram of Reports on Over Due Item(s) 54
35 Swimlane Diagram of Reports on Over Due Item(s) 55
36 Activity Diagram of Search for Item(s) 56
37 Swimlane Diagram of Search for Item(s) 57
38 Activity Diagram of Renew Item(s) 58
viii | P a g e
39 Swimlane Diagram of Renew Item(s) 59
40 Activity Diagram of Booking Item(s) 60
41 Swimlane Diagram of Booking Item(s) 61
42 E-R Diagram 64
43 Data Schema 65
44 CRC 68
45 Level 0 for circulation system 69
46 Level 1.1 (User) for circulation system 70
47 Level 1.2 (Admin) for circulation system 70
48 Level 1.3(Librarian) for circulation system 71
49 Level 2.1(User) for circulation system 71
50 Level 2.2 (Admin) for circulation system 72
51 Level 2.3(Librarian) for circulation system 73
52 Level 3.1(User) for circulation system 74
53 State diagram (Item Class) 75
54 State diagram (Admin Class) 75
55 State diagram (Librarian Class) 76
56 State diagram (System Class) 77
57 State diagram (Database Class) 78
58 State diagram (User Class) 79
59 Sequence diagram (Registration) 80
60 Sequence diagram (Sign In) 81
61 Sequence diagram (Borrow) 82
62 Sequence diagram (Return) 83
63 Sequence diagram (Configure) 83
64 Sequence diagram (Update) 84
List of Tables
ix | P a g e
Chapter 1
Introduction
This chapter is intended to specify the purpose of this document and the intended audiences
of it.
1.1 Purpose
This document is the Software Requirements Specification (SRS) for the Library Circulation
System (LCS). It contains detailed functional, non-functional, and support requirements and
establishes a requirements baseline for development of the system. The requirements
contained in the SRS are independent, uniquely numbered, and organized by topic. The SRS
serves as the official means of communicating user requirements to the developer and
provides a common reference point for both the developer team and stakeholder
community. The SRS will evolve over time as users and developers work together to
validate, clarify and expand its contents.
1|Page
The testers will use this SRS to derive test plans and test cases for each documented
requirement. When portions of the software are complete, the testers will run their
tests on that software to ensure that the software fulfills the requirements documented
in this SRS. The testers will again run their tests on the entire system when it is
complete and ensure that all requirements documented in this SRS have been fulfilled.
2|Page
Chapter 2
Inception
In this chapter, the Inception part of the SRS will be discussed briefly.
2.1 Introduction
Inception is the beginning phase of requirements engineering. It defines how does a software
project get started and what is the scope and nature of the problem to be solved. The goal of
the inception phase is to identify concurrence needs and conflict requirements among the
stakeholders of a software project. To establish the groundwork we have worked with the
following factors related to the inception phases:
Identifying Stakeholders
Recognizing multiple viewpoints
Working towards collaboration
Asking the First Questions
3|Page
Concluding thoughts on Stakeholders, We identified following stakeholders for our
automated book circulation system of a library:
1. The University Librarian (Project Sponsor): The University Librarian is the person who
has the final authority over our budget, our personal resources, and ultimately the finished
product. His position empowers him to veto a decision made by the other Stakeholders.
2. The Associate University Librarian (Systems Head): As head of Library Systems, the
Associate University Librarian has direct authority over our Systems budget, and our team
— the people developing the site and doing much of the “management” end of this project.
4. System Operator: System Operator will directly interact with this software.
5. Student and Faculty: The largest user group of the system. They will search for items,
renew items and reserve items
6. Developers: We selected developers as stakeholder because they develop this system and
work for further development. If occurs any system interruption, they will find the problem
and try to solve it.
7. University: University will finance the project and it has some has rules and regulation to
maintain our system. We have to follow them strictly.
4|Page
2.1.2 Recognizing multiple viewpoints
We collect these view points by discussing with the chief librarian, associate librarian, chief
circulation manager and some students and teachers from different departments of University
of Dhaka.
1. The University Librarian (Project Sponsor)’s view points:
Restrict access to functionality of the system based upon user roles. For example,
only Administrators of the system will be provided functionality to change user types,
configure how long items may be checked out and the fines for overdue items.
Web-Based Interfaces
The application can be accessed from any computer that has Internet access.
A user guide describing how to use LCS need to be deployed with the system.
A product reference manual describing how to install, setup, and run the application
shall be provided.
4. Borrowers’ view points:
5|Page
5. University’s view points:
Web-Based Interfaces
The application can be accessed from any computer that has Internet access
Allow any user to use the system and allow valid user to use the system
Final Requirements:
We finalized following requirements for the system by categorizing and prioritizing the
requirements:
Web-based interfaces
6|Page
Allow administrators of the system to change user types and configure parameters of
the system
Allow any user to search for items in the library’s circulation without having to log in
to the system
Allow valid users that log in to renew items, reserve items, and view the items they
have checked out.
Allow Librarians to generate reports on the items in the system (e.g., all overdue
items, all missing items.)
Allows valid users to renew items online by logging into the system
Restrict access to functionality of the system based upon user roles. For example,
only Administrators of the system will be provided functionality to change user types,
configure how long items may be checked out and the fines for overdue items.
2.2 Conclusion
Inception phase helped us to establish basic understanding about book circulation system in a
library, identify the people who will be benefited if book circulation system becomes
automated, define the nature of the book circulation software and establish a preliminary
communication with our stakeholders.
7|Page
Group meeting
1.
Date: 06.09.2012
Place: IIT
Subject: Identifying Stakeholders
Members:
Lamisha Rawshan BIT-0311
Shafiuzzaman BIT-0322
Nadia Nahar BIT-0327
2.
Date: 13.09.2012
Place: Central Library, University of Dhaka
Subject: Collecting requirements from the stakeholders
Members:
Lamisha Rawshan BIT-0311
Shafiuzzaman BIT-0322
Nadia Nahar BIT-0327
3.
Date: 15.09.2012
Place: IIT, University of Dhaka
Subject: Discussion on requirements
Members:
Lamisha Rawshan BIT-0311
Shafiuzzaman BIT-0322
Nadia Nahar BIT-0327
8|Page
Chapter 3
Elicitation
3.1 Introduction
Elicitation is a task that helps the customer to define what is required. To complete the
elicitation step we face many problems like problems of scope, problems of volatility and
problems of understanding. However, this is not an easy task. To help overcome these
problems, we have worked with the Eliciting requirements activity in an organized and
systematic manner.
The meetings were conducted with the assistant librarian (program) of the Central
Library, University of Dhaka; the librarian was questioned about their requirements and
expectations from the automated book circulation system.
The librarian was asked about the problems she is facing with the current manual system.
9|Page
At last we selected our final requirement list from the meetings.
10 | P a g e
5. The system shall enable the Librarian to change the number of items each user can check-
out.
6. The system shall enable the Administrator to configure the fine/item/day for an overdue
item.
7. The system shall enable any Librarian to give Librarian rights to other users.
8. The system shall allow the user to log in based upon an assigned login id and password.
9. The system shall automatically compute the due date for every item
10. The system shall automatically set the user status to “ABLE TO BORROW” and
“UNABLE TO BORROW”
11. The system shall automatically send e-mail to the user when an item is overdue.
12. The system shall compute fines automatically for overdue items.
13. The system shall automatically set the Item Status to
“AVAILABLE”,“UNAVAILABLE” ,”RENEWED”,”MISSING”.
14. The system shall enable Librarians to add, edit or delete an item.
15. The user interface of the system shall be easy to use and shall make use of drop-down
boxes, radio buttons, and other selectable fields wherever possible instead of fields that
require the user to type in data
11 | P a g e
3.5 Usage Scenarios
At first a user authenticate in our system by creating an account .If a user already has an
account then he/she will log in the system with his/her own password and username. Then
our system will search the book that is requested by a user. If the book is not found, the
system will exit. Otherwise system will check the availability of the book.
12 | P a g e
elicitation.
Set of usage scenarios.
Description of the system’s technical environment
Group meetings
1.
Date: 24.09.2012
Place: Central Library, University of Dhaka
Subject: Meeting with Assistant Librarian (program) of the Central Library, University of
Dhaka
Members:
Lamisha Rawshan BIT-0311
Shafiuzzaman BIT-0322
Nadia Nahar BIT-0327
2.
Date: 26.09.2012
Place: IIT, University of Dhaka
Subject: Defining the QFD
Members:
Lamisha Rawshan BIT-0311
Shafiuzzaman BIT-0322
Nadia Nahar BIT-0327
3.
Date: 27.09.2012
Place: IIT, University of Dhaka
Subject: Preparing the user scenario
Members:
Lamisha Rawshan BIT-0311
Shafiuzzaman BIT-0322
Nadia Nahar BIT-0327
13 | P a g e
Chapter 4
Scenario-Based Model
This chapter describes the scenario based model for the library circulation system.
4.1 Introduction
In this model the system is described from the user’s point of view. As this is the first model,
it serves as input for creation of other modeling elements.
14 | P a g e
4.3 Use Case Descriptions
In this section use case scenarios are described elaborately.
4.3.1 Authentication
Authentication system is divided into four sub-systems.
4.3.1.1 Sign Up
Use Case: Sign Up
Primary Actors: Student, Faculty
Goal in context: To register in the system
Precondition:
1. System has been programmed for add new user in database
2. System has interface for registration
Triggers: The student and faculty has a need to register
Scenario:
1. Visit the register page
2. Input required information
3. Check availability for username & check validity of Password
4. Authentication and Robot checking
5. E-mail sent to user e-mail address
6. User confirm from his/ her e-mail address
7. Confirmation message showed
Exception:
User in not authorized for registration
Ambiguous Input
Authentication Fail
Priority: Essential, must be implemented
When Available: First increment
15 | P a g e
4.3.1.2 Sign In
Use Case: Sign In
Primary Actors: Student, Faculty, Administrator, Librarian
Goal in context: To enter the system
Precondition: Must be registered
Triggers: Need to log in the system
Scenario:
1. Visit the login page
2. Input Username & Password
3. Proceed to the next activity
Exception:
Unrecognized Username
Wrong Password
User is blocked
Priority: Essential, must be implemented
When Available: First increment
16 | P a g e
Scenario:
1. Visit the login page and login
2. Click on Edit button
3. Change Password
4. Proceed to the next activity
Exception: Weak Password: Password length is too short
Priority: Essential, must be implemented
When Available: First increment
4.3.2 Configure
4.3.2.1 Change User Type(s)
Use Case: Change User Type(s)
Primary Actors: Administrator, Librarian
Goal in context: To change the user type
Precondition: Must be logged in as Administrator/ librarian
Triggers: The administrator and librarian have a need to change the user type.
Scenario:
1. Visit Login page and Log in
2. Click the Edit User button
3. Select the User
4. Click on the Edit button
5. Change the type for the selected User
6. Proceed to the next activity
Exception:
Invalid User: User may not be eligible for that type
Unrecognized: User does not exist
Priority: Essential, must be implemented
When Available: First increment
17 | P a g e
Precondition:
Must be logged in as Administrator
System has been programmed for editing due date
Triggers: The administrator has a need to configure the due date for an item.
Scenario:
Visit Login page and Log in
Click on Maintain Item button
Select the Item
Click on Edit Due Date for an Item button
Change the Due Date for selected Item
Proceed to the next activity
Exception:
Item Unavailable: Requested item does not exist
Ambiguous Input
Priority: Expected
When Available: Second increment
18 | P a g e
Priority: Expected
When Available: Second increment
4.3.3 Update
4.3.3.1 Add an Item(s)
Use Case: Add an Item(s)
Primary Actors: Librarian
Goal in context: To add new item(s)
Precondition:
System has been programmed for adding item in database
Must be logged in as Librarian
Trigger: The librarian has a need to add new item(s)
Scenario:
Visit Login page and Log in
Click on Maintain Item button
Click on Add Item button to add new item
Enter the new Item data (select Location) and confirm changes
19 | P a g e
Proceed to the next activity
Exception: Already Exist: Requested item is already added in the database
Priority: Essential, must be implemented
When Available: First increment
20 | P a g e
Trigger: The librarian has a need to delete an item(s).
Scenario:
Visit Login page and Log in
Click on Maintain Item button
Search and Select the Item to delete
Click on Delete Item button
Delete the selected Item and confirm changes
Proceed to the next activity
Exception: Does not exist: Requested item does not exist in the database
Priority: Essential, must be implemented
When Available: First increment
4.3.4 Return
4.3.4.1 Retrieve an Item(s)
Use Case: Retrieve an Item(s)
Primary Actors: Librarian
Goal in context: To retrieve an item
Precondition: Item must be issued for the particular user
Trigger: The librarian has a need to retrieve an item
Scenario:
Visit Login page and Log in
Click on Retrieve button
Enter User name and Click Search for user
Select the User
Enter Item Name and Click Search item
Select the Item
Click Retriever button and Status changes from Issued to Retrieved
A message is displayed
Proceed to the next activity
Priority: Essential, must be implemented
When Available: First increment
21 | P a g e
4.3.4.2 Reports on Over Due Item(s)
Use Case: Reports on Over Due Item(s)
Primary Actors: Student, Faculty
Goal in context: To generate reports on overdue item(s)
Precondition:
System has been programmed for automated report generation
Must be logged in as Librarian
Triggers: Report need to be automatically generated of overdue item(s).
Scenario:
Database is automatically checked daily for Over Due
Send mail to users having Over Due
Increase fine if not cleared
Update database
Proceed to the next activity
Exception: Error: System is not ready
Priority: Essential, must be implemented
When Available: First increment
4.3.5 Borrow
4.3.5.1 Search for Item(s)
Use Case: Search for Item(s)
Primary Actors: Librarian, Student, Faculty, Administrator
Goal in context: To perform a search for item(s)
Precondition: System has been programmed for searching all items in database
Triggers: The student, faculty, librarian, administrator has a need to search for item(s)
Scenario:
1. Visit the main page
2. Enter data and information such as title, author’s name etc.
3. Click the Search button
4. View the search result
5. Proceed to the next activity
Exception:
Search item does not exist
22 | P a g e
User is not eligible for searching that item
Priority: Essential, must be implemented
When Available: First increment
23 | P a g e
Triggers: The student, faculty, librarian has a need to extend item(s) due date.
Scenario:
Visit the login page and log in
List of Issued items for that User will be displayed
Extend due date button will be shown for all the items which were not
renewed in the past
Click on the Extend due date button to renew the item
Item(s) due date will be extended for 14 days
Exception:
Time Limit Exceeded: Renew chance has been finished
Unavailable: Item is unavailable for renew
Priority: Essential, must be implemented
When Available: First increment
24 | P a g e
4.4 Use case Diagram
Circulation
System Database
Authentication
User
Administrator Database
Configure
Librarian Borrow
Item
Database
Return
Student
System
Database
Update
Faculty
Fig 2: Level 1 for circulation system
25 | P a g e
Sign up
Administrator
Sign in
User
Librarian Database
Sign out
Student Change
password
Faculty
Fig 3: Level 2.1(Authentication) for circulation system
System
Database
Librarian Change default due
dates
26 | P a g e
Search
Item
Administrator Database
Issue
Renew
Librarian
User
Database
Booking
Student
Faculty
27 | P a g e
Retrieve
Item
Database
Librarian
Reports on over
due User
Database
Student
Faculty
Add
Edit
Item
Database
Librarian
Delete
28 | P a g e
4.5 Activity Diagram and Swimlane Diagram of generated Use Cases:
Use case 1: Sign Up
Activity Diagram:
Click Registration
Username not
Check availability available
of Username
Available
Password not Valid
Check validity of (Max length 6)
Password
Valid
Failed
Authentication and
Robot checking
OK
Registration Complete
29 | P a g e
Swimlane Diagram:
User Interface
Click Registration
Username not
Availability available
of Username
Available
Password not Valid
Validity of (Max length 6)
Password
Valid
Authentication Failed
and Robot
checking
E-mail sent to Users Mail Address
Registration Complete
30 | P a g e
Use case 2: Sign In
Activity Diagram:
Enter User ID
Enter Password
Invalid User ID
Valid User ID
Invalid
Password
Valid
Password
Prompt for
Re-entry
Logged in
Retries
No retry
remain
remain
31 | P a g e
Swimlane Diagram:
User Interface
Enter User ID
Enter Password
Invalid User ID
Valid User ID
Invalid
Password
Valid
Password
Prompt for
Re-entry
Logged in
Retries
No retry
remain
remain
32 | P a g e
Use case 2: Sign Out
Activity Diagram:
Logged Out
Swimlane Diagram:
User Interface
33 | P a g e
Use case 4: Change Password(s)
Activity Diagram:
Log in
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
Click Edit
Button
Retries
No retry remain
remain
Change
Valid
Password
Password
Password length
is too short
34 | P a g e
Swimlane Diagram:
User Interface
Log in
Valid
Password/ID Invalid
Password/ID
Logged in
Prompt for
Re-entry
Click Edit
Button
No retry Retries
remain remain
Change
Password
Password Successfully
Weak
Changed
Password
35 | P a g e
Use case 5: Change User Types
Activity Diagram:
Log in as
Administrator
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
Click Edit User
User not
Select User Recognized
Retries
No retry remain
remain
Click Edit
36 | P a g e
Swimlane Diagram:
Administrator Interface
Administrator
Log in
Valid
Password/ID Invalid
Password/ID
Logged in
Prompt for
Click Edit User Re-entry
User not
Recognized
Click Edit
37 | P a g e
Use case 6: Configure the Due Date for an Item(s)
Activity Diagram:
Log in as
Administrator
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
Click Maintain Item
Item not
Select Item Available Retries
No retry remain
remain
Click Edit Due Date
Ambiguous Input
Fig 18: Activity Diagram of Configure the Due Date for an Item(s)
38 | P a g e
Swimlane Diagram:
Administrator Interface
Administrator
Log in
Valid
Password/ID Invalid
Password/ID
Logged in
Prompt for
Click Maintain Item Re-entry
Item not
Available
Ambiguous Input
Activity Diagram:
Log in as
Administrator
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Click Maintain Re-entry
Validation Data
Item not
Select Over Due Item Available Retries
No retry remain
remain
Click Configure the Fine
Ambiguous Input
Fig 20: Activity Diagram of Configure the Fine for an Over Due Item(s)
40 | P a g e
Swimlane Diagram:
Administrator Interface
Administrator
Log in
Valid
Password/ID Invalid
Password/ID
Logged in
Prompt for
Click Maintain Re-entry
Item not
Validation Data
Available
Ambiguous Input
Fine Updated for
Over Due Items Invalid Input
Activity Diagram:
Log in as
Librarian
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
Click Maintain Item
Item not
Select Item Available Retries
No retry remain
remain
Click Change Due Date
Ambiguous Input
Fig 22: Activity Diagram of Change default Due date for Item
42 | P a g e
Swimlane Diagram:
Librarian Interface
Log in as
Librarian
Valid
Password/ID Invalid
Password/ID
Logged in
Prompt for
Click Maintain Item Re-entry
Item not
Available
Ambiguous Input
Fig 23: Swimlane Diagram of Change default Due date for Item
43 | P a g e
Use case 9: Add an Item(s)
Activity Diagram:
Log in as
Librarian
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
Click Maintain Item
Enter Item
44 | P a g e
Swimlane Diagram:
Librarian Interface
Log in as
Librarian
Valid
Password/ID Invalid
Password/ID
Logged in
Prompt for
Click Maintain Item Re-entry
Select Location
Enter Item
Item already
exist
Item Added
Invalid Input
45 | P a g e
Use case 10: Edit an Item(s)
Activity Diagram:
Log in as
Librarian
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
Click Maintain Item
Item not
Edit Item Details Matched
Item Edited
46 | P a g e
Swimlane Diagram:
Librarian Interface
Log in as
Librarian
Valid
Password/ID Invalid
Password/ID
Logged in
Prompt for
Click Maintain Item Re-entry
47 | P a g e
Use case 11: Delete an Item(s)
Activity Diagram:
Log in as
Librarian
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
Click Maintain Item
Item not
Item Deleted Matched
48 | P a g e
Swimlane Diagram:
Librarian Interface
Log in as
Librarian
Valid
Password/ID Invalid
Password/ID
Logged in
Prompt for
Click Maintain Item Re-entry
Item Deleted
Item does
not exist
Item not
Matched
49 | P a g e
Use case 12: Issue an Item(s)
Activity Diagram:
Log in as
Librarian
Valid Invalid
Password/ID Password/ID
No
Found Retries
No retry
remain
Yes remain
Availability Booking
No
Yes
Check the borrower
No
If valid
Yes
Update the
user in DB
50 | P a g e
Swimlane Diagram:
Librarian Interface
Log in as
Librarian
Valid Invalid
Password/ID Password/ID
Search Item
Retries
No
remain
Found No
Yes
Booking No
Availability
Yes
Check the borrower
Update the
user in DB
51 | P a g e
Fig 31: Swimlane Diagram of Issue an Item
Use case 13: Retrieve an Item(s)
Activity Diagram:
Log in as
Librarian
Valid Invalid
Password/ID Password/ID
If Valid
Retries
Yes No retry
remain
remain
Get issue details No
Update the
Create a bill
user in DB
52 | P a g e
Swimlane Diagram:
Librarian Interface
Log in as
Librarian
Valid Invalid
Password/ID Password/ID
Yes
Get user type
No
If Valid
No
Check for fine
Yes
Change the status
of the book in DB Add fine against
the user
Update the
user in DB Create a bill
53 | P a g e
Use case 14: Reports on Over Due Item(s) – Fine Generate
Activity Diagram:
If yes
Cleared?
If not
If Request Yes
Increase
limit exceeds the fine
Not
Update Database
Generate request
54 | P a g e
Swimlane Diagram:
User Interface
If yes
Cleared?
If not
If Request
limit Exceeds
Yes
Not
Generate request
Update Database
55 | P a g e
Use case 15: Search for Item(s)
Activity Diagram:
Click Search
If found No Result
No Found
Yes
Result
56 | P a g e
Swimlane Diagram:
User Interface
Click Search
else
Not eligible for
searching the Item
Result If found
Yes
No
No Result
Found
57 | P a g e
Use case 16: Renew Item(s)
Activity Diagram:
Log in
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
List of Issued Item
Time Limit
Exceed
58 | P a g e
Swimlane Diagram:
User Interface
Log in
Valid
Invalid
Password/ID
Password/ID
Time Limit
Exceed
59 | P a g e
Use case 17: Booking Item(s)
Activity Diagram:
Log in
Valid Invalid
Password/ID Password/ID
Logged in
Prompt for
Re-entry
Search Item
Not found
Retries
remain
Item found
Item missing
Item Available
Not available
Issue
Click Booking
Request Generated
60 | P a g e
Swimlane Diagram:
User Interface
Log in
Valid
Invalid
Password/ID
Password/ID
Search Item
Retries
No remain
Not found
Item found
Item missing
Item Available
Not available
Issue
Click Booking
Request Generated
Attributes:
User_id
Password
Name
Address
Email
User-Type
Date of Birth
Department/Institution
Attributes:
Call Number
ISBN
Title
Author
Publisher
Location
Subject
Resource Type
Item status
62 | P a g e
Data Object: Report
Attributes:
User_id
Issue date
Fine amount
Attributes:
Id
Password
Name
Ema
63 | P a g e
5.3 E-R Diagram
Max Items
ID Password
Publisher Author
Title Subject
Update User
Database Item
Location
Call No.
Date ISBN
Resource Type
Item
E-mail Interface Status
Type
Administrator/
Librarian Name
Update Item
ID Password Database
Date
Generate
Report Report
64 | P a g e ID
LIBRARIAN
ID
Password
Name
E-mail
Update
This Chapter is intended to describe class based modeling of library circulation system.
Class-based modeling represents the objects that the system will manipulate, the operations that
will applied to the objects, relationships between the objects and the collaborations that occur
between the classes that are defined.
Selection characteristics:
1. Retained information
2. Needed services
3. Multiple attributes
4. Common attributes
5. Common operations
66 | P a g e
6. Essential requirements
Potential Class Characteristic Number That Applies
Student Rejected: 3 fails
Faculty Rejected: 3 fails
Database Accepted: all apply
System Accepted: all apply
Interface Rejected:1,4,5 fails
Report Rejected:1,3,6 fails
E-mail Rejected:1,3,6 fails
Password Rejected: 3 fails
Button Rejected: 1,3,5,6 fails
Fine Rejected: 1,3,4,6 fails
Administrator Accepted: all apply
Librarian Accepted: all apply
Item Accepted: all apply
Search Rejected: 3 fails
Issue Rejected: 3 fails
Retrieve Rejected: 3 fails
Renew Rejected: 3 fails
Booking Rejected: 3 fails
Update Rejected: 3 fails
Department/Institute Rejected: 4,5,6 fails
Location Rejected: 3 fails
Type Rejected: 3 fails
User Accepted: all apply
Server Rejected: 3 fails
Computer Rejected: 3 fails
Internet Rejected: 3 fails
67 | P a g e
6.3 Class Responsibility Collaboration (CRC)
System
Item
Call number
Admin
Title
generate email() Publish
generate report() Author
Configure()
Database
ID User
Librarian
Type ID
ID
Total- Password
Password
amount Name
Name
update()
Mail
insert()
check()
select() borrower()
issue()
delete() renew()
retrieve()
sign up()
update()
sign in()
add()
sign out()
edit()
search()
delete()
booking()
7.1 Introduction
The DFD takes an input-process-output view of a system. In the figures, data objects are
represented by labeled arrows and transformations are represented by circles.
User
Circulation System
Admin Database
Librarian
69 | P a g e
User
Database
Input and
User accept
Item
Database
Input and
System
Admin accept
Database
70 | P a g e
Input and
User
Librarian accept
Database
Authentication
User
User
Database
Borrow Item
Database
71 | P a g e
Authentication
System
Admin
Database
Borrow
72 | P a g e
Update
Authentication
Database
Return
73 | P a g e
Change
Sign up User
Password
Database
Booking
User Sign In
Item
Search Renew
Database
74 | P a g e
Chapter 8
Behavioral Model
The behavioral model indicates how software will respond to external events.
Change
Status
Not available
return Done
Idle Checking
request available
Do: availability
Issued Issue
updated Update
Databas
75 | P a g e
Fig 54: State diagram (Admin Class)
collected
no fine
return item
User not valid
updated
76 | P a g e
ID, Password doesn’t match
and No. of Tries < MaxTry
Comparing Feedback
Match
Log in requested with DB
Do: validatePassword
Done
Done Send
E-mail
77 | P a g e
done
Select Send to
Interface
d
Request search
Information not valid
request
done Insert,
done
update
Delete
78 | P a g e
Sign Up
Booking
Exit from Sign
Register into System Out
System
Search for
Item Renew
Search
79 | P a g e
8.2 Sequence Diagram
Sequence diagram indicates how events cause transitions from object to object.
System
ready Reading
Enter
Information
Checking
Information
lookup
result
Confirmation
Mail
send
Confirm
Insert into Update
database
80 | P a g e
User System Database
System
ready Reading
Enter
Username,
Password
lookup
Compare
result
No. of Password
tries>maxTry
Access in
correct
Block Database
81 | P a g e
Librarian User DB Item DB
Check user
request validity
valid
Check item
availability
available
Issue
update
update
82 | P a g e
Librarian User DB Item DB
Check for
request fine no fine
Update
has fine
Collect
Update
Admin System DB
Need
configuration
Update configured data
Update
83 | P a g e
Libration Item DB
Requirement
of add, edit,
Update new/change in data
delete Update
84 | P a g e
Chapter 9
Conclusion
We are pleased to submit the final SRS report on Library circulation system. From this, the
readers will get a clear and easy view of library circulation system. To improve Library
System efficiency, library management needs to automate the acquisition and circulation
tasks. A library with automated software system is more effective than paper based manual
system. This SRS document can be used effectively to maintain software development cycle.
It will be very easy to conduct the whole project using this SRS. Hopefully, this document
can also help our junior BSSE batch students. We tried our best to remove all dependencies
and make effective and fully designed SRS. We believe that reader will find it in order.
85 | P a g e
Appendix
References
86 | P a g e