Professional Documents
Culture Documents
0 Introduction
1.1 Purpose:
The main objective of this document is to illustrate the requirements of the
project Library Circulation system. The document gives the detailed
description of the both functional and non -functional requirements.
The document is developed after a number of consultations with the client
and considering the complete requirement specifications of the given Project.
The final product of the team will be meeting the requirements of this document.
The SRS typically contains the brief description of the project. The purpose of the
requirement document is to specify all the information required to design, develop
and test the software.
The purpose of this project is to provide a friendly environment to maintain the details
1.2 Scope:
The project scope is the definition of what the project is supposed to accomplish
and the budget of both time and money that has been created to achieve these
objectives.
We cant provide PC in the library
We cant provide internet
Cant provide network connection
Cant provide manpower
We cant provide warranty service more than one year
1.3 Features:
Our project will provide the following features Authentication system
Searching system without login
Borrower can check his eligibility and availability of books
Anyone can borrow book by logging in
Admin can verify the valid user to permit for borrowing book
When book is unavailable, user can request for advanced booking
If anyone over his issuing date, he will be inform by a warning message
Also have the re-new facility
Finally has a fine generating system
Page | 4
2.0 Inception
In software industry requirement engineering is one of the most important parts
of software engineering process. Which one gives us the proper scenarios what
the customer wants, analyzing needs and feasibility, negotiating a reasonable
solution etc. Inception is the initial step of requirement engineering which make
us understand how does a software project get started?. In software industries,
a software project begins when a business need is identified. So the first step is
we need to understand the customer needs. Figure out a rough feasibility
analysis, not only the customers need but also with the people who are
apparently involved with the introducing system. This stage is called inception.
Inception involves the following phases:
Identifying Stakeholders
Recognizing multiple viewpoints
Working towards collaboration
Asking the First Questions
The phase ends with identifying credibility and go/no go decision. Though we
did not have any interaction with the stakeholders, especially with the client
Total Solutions Enterprise, this paper is more on assumption. This paper will
be more easeful after communicating with our client. In this paper we will focus
on Accounting and Inventory management module. Again, this paper is a partial
submission; more details will be included as per communicating with all of the
stakeholders.
2.1 Stakeholders:
The stakeholders of a software project are those people or positions, who are
directly or indirectly affected or effected by the project. The stakeholders and
users who are most immediately involved in a Book Circulation System
implementation can be divided into four groups.
Library Authority: Library authority is one of the major stakeholders of our
software because they operate and maintain book circulation system of a
library.
Database Admin:
Database Admin has the adminstrative power to handle the
software.So he is also our stakeholder.
Borrowers: Borrowers will directly interact with this software. So they are also
a major stakeholder of our system.
Page | 5
University viewpoints:
Buy the system within their budget
No disruption of rules and regulation
Page | 7
2.7 Questioners:
We set our first set of context-free questions focuses on the customer and other
stakeholders, overall project goals and benefits. The questions are mentioned
above. These questions helped us to identify all stakeholders, measurable benefit
of the successful implementation and possible alternatives to custom software
development. Next set of question helped us to gain a better understanding of
problem and allows the customer to voice his or her perception about the
solution. The final set of question focused on the effectiveness of the
communication activity itself. We can follow the following steps to prepare a
questioner.
Page | 8
What was the previous state before this use case comes into play?
What happens once the use case is complete?
BIT-0309
BIT-0329
Date: 13.09.2012
Place: Central Library, University of Dhaka
Subject: Discussion on inception
Members:
Md. Samsuddoha
BIT-0309
BIT-0329
Page | 9
3.0 Elicitation
Elicitation refers on what process we should keep focus. To do a great a
elicitation for a SRS we need to conduct a error free focusing use case from
different viewpoints. In this process we need to think on what is basic unit of this
project, what is domain that we work for, for whom we make the software, who
is going to be benefitted by this system and a lot of correlated functions.
After ice breaking, in elicitation we need to understand the users need. We
should have to a make choice on that concern by which the Software can be
much more sophisticated. We should rapidly decrease the complexity in case of
using the product but have to convey our attention on how we develop this.
To elicit the total process anyone must need to gather information. To gather
this info we hold some meetings, did some team work, understood what
requirements we need.
Here is the info we got from some meetings-
Page | 10
Normal
Requirements
Expected
Requirements
Wow factors
Normal Requirements:
Normal requirements consist of objectives and goals that are stated during the
meeting with the customers. Normal requirements of our project are
Expected Requirements:
These requirements are implicit to the system and may be so fundamental
that the customer does not explicitly state them .Their absence will be a
cause for dissatisfaction.
Well security
Make it error less
Decrease the human work
Make it automated
Exciting requirements:
These requirements are for features that go beyond the customer's
expectations and prove to be very satisfying when present
requirements elicitation.
View on the set of usage scenarios.
Total description of the systems technical environment.
5.0 Elicitation
5.1 Product Functionality:
The main functionality of the circulation system are
Borrowing/ Holding the books
Issue
Renew
Proper description of this function will be described later in this SRS document.
Registered Graduate
Teacher
Undergraduate Student
PHD student
Researcher
Page | 13
Development Tools Some Development tools like CSS3 can be used to make it much more user
friendly.
According to the schedule, our team will hand-over the complete SRS of Dhaka
University Library Management System. At the same time, the team will also
provide a user manual if it is required. The team is also responsible to conduct
training sessions for the Administrative task, where they will provide tutorials,
notes along with the hands on training. They will give feedback to the coder and
future developer. The team will be ready for solving any type of mistakes if
occurred in this SRS.
Page | 14
Authentication
Fine Generation
Borrowing
Re-Issue
Booking
Page | 15
Authentication
1
User(students/ teachers / other
people)
Library staffs
User has to login to authenticate
himself/herself
Must take the digital Id
To borrow or renew or doing
anything.
Checking the validity of users.
Borrowing
2
User(students/teacher /
Undergraduate Student/PHD
students/researchers )
Library people.
The process of lending books.
Must take the digital Id and must be
logged in and eligible for lending.
To get the books.
Give the user the books that he is
searching for.
Booking
3
User(students/teacher /
Undergraduate Student/PHD
students/researchers )
Library people.
The process of booking the books if
not available at that time .
Must take the digital Id and must be
logged in and eligible for booking.
To Get the book when it arrives in
the library.
Generate booking request.
Page | 16
Fine Generation
4
Library people
Null
The process of generating fines for
whom didnt return the book in
time.
Must be authorized as authority.
To generate fines request.
Generate the fine, give warning mail
automatically, increase the fine
everyday and update the DB.
Re-Issue
5
User(students/teacher /
Undergraduate Student/PHD
students/researchers )
Library people.
The process of renew the books and
extending the time.
Must take the digital Id and must be
logged in and eligible for renewal.
To get the same books for some
more days.
Give the user the other copy of same
book if available.
Page | 17
Authentication
Borrowing
Booking
Librarian/Admin
User
Fine generation
Re-Issue
DB
Fig : Level 0
Page | 18
Sign up
Verify
Sign in
Librarian/Admin
User
Retry
Sign out
Block
Fig: Authentication
Page | 19
Renew Request
Changing book
with same book
Showing fines
Librarian/Admin
User
Changing DB
Booking
Borrowing
Fig: Re Issue
Page | 20
Librarian/Admin
Page | 21
User
Reset Password
Have
Account?
Yes
Try>3 ?
Sign Up
Yes
No
Give Input
No
Try=Try+1
No
Check
Confirmation Mail
Correct
Username/
Password
Yes
Logged in
System
Fig: Authentication
Page | 22
Borrowing
Book
No
Eligible
borrower?
Exit
Yes
Is the book
Available ?
No
Booking
Yes
Change Borrower
Data
Page | 23
Booking
Book
Check Booking
requests
No
Exit
Available
Book >0
Yes
Send mail
Wait 24 hours
No
Book
Taken ?
Delete Request
Yes
Change the DB
Page | 24
Re- Issue
Yes
Has any
Fine ?
Clear Fines
No
If Available
No
Booking
Yes
Borrowing
Fig: Re-Issue
Page | 25
Fine Generation
Yes
Cleared after
warning ?
EXIT
No
Already have
request ?
Yes
No
Generate request
DONE
User
UI
System
Borrow
Eligible ?
No
Yes
Books
availability?
Exit
Yes
No
Borrow
Call slip
generator
Change
borrower DB
Change book DB
Page | 27
User
System
UI
Booking
Booking
Check Booking
request
EXIT
No
Yes
Send
Mail
Wait 24 hour
Delete
Request
No
Book Taken?
Yes
Update
Database
Page | 28
User
UI
System
Return
The book
Re-issue
Clear
Fines
Yes
No
Re-issue
If available
Yes
Re-Issue
Booking
No
Fig: Re-Issue
Page | 29
Subject
Author
Title
Publish
er
ID
Book
Name
Borrowed
by
Status
ISBN
Call Num
Username
Email
Fines
User
Address
Password
Return Date
Call Num
Type
Type
Is A
Issue Date
Holder
Borrower
ISBN
Notify Date
ISBN
Return Date
Page | 30
User
Book
Borrow
Authentication
Booking
Re-Issue
Fine
Librarian
Clearance
Database
Identifying analysis classes:
Page | 31
External entities
Things
Occurrences Or Events
Roles
Organizational Units
Places
Structures
Potential Classes
User
Book
Authentication
Borrower
Booking
Re-Issue
Fine Generation
Librarian
Clearance
Database
Class Cards
Attributes:
ChangePassword( ); String
ID : Bigint
BookCollection( ); void
Username: String
Password: String
Name: String
Type: String
Department: String
Page | 32
Attributes:
SearchBook( ); String
Subject: String
DB(Object)
Title: String
Name: String
Author: String
ISBN: String
Category: String
Attributes:
SignUp( ); Void
AuthenticationNumber : Bigint
SignIn( ); void
User(Object)
SignOut( );void
DB(Object)
Attributes:
SearchBorrower( ); User
BorrowerNumber : Bigint
UpdateBorrower( ); void
CallNumber: Bigint
DeleteBorrower( ); Void
BorrowerStatus: boolean
User(Object)
Page | 33
Attributes:
SearchBorrower( ); User
RequestId : Bigint
UpdateBorrower( ); void
BorrowerStatus: boolean
User(Object)
DeleteBorrower( ); Void
Attributes:
GenerateFines( ); User
User(Object)
CheckFines( ); void
DB(Object)
Attributes:
checkFine( );Bigint
QueryString: String
Search( ); String
Result: Resultset
InsertBorrower( ); void
Page | 34
Attributes:
Renew( );void
User(Object)
User.GenerateFines( ); User
DB(Object)
Borrower(Object)
Booking.update( ); void
Fine Generation(Object)
Booking(Object)
Authentication
Fine Generation
Book
Database
User
Booking
Borrower
Engine
Page | 35
Booking
Borrowing
Circulation
System
Fine
Generation
Re- Issue
Fig: Level 0
Page | 36
Get username,
password
No
Correct
Password?
Counter++
Yes
Logged in
Successfully
Sign Up Page
Counter>3
?
Yes
Give Confirmation
Mail
Update the DB
Blocked
No, Let
him try
again
Page | 37
Borrowing
If searched
If not eligible
Check
Users
Exit
If eligible
Check if Book
Available
If not available
Booking
If available
Update Database
Fig: Level 1 (Borrowing)
Page | 38
Booking
If a copy is available
Send Mail
Wait 24 hours
Taken?
No
Delete Request
Yes
Update DB
Page | 39
Check User
Authentication
Check Fines
No
No Fines
Check Limit of
Books
No
Give Permission
Page | 40
Get username,
password
No
Correct
Password?
Counter++
Yes
Logged in
Successfully
Sign Up Page
Counter>3
?
Yes
Blocked
If reset password
is given
Give Confirmation
Mail
Update the DB
No, Let
him try
again
Fig : Authentication
Page | 42
Booking
Process
Update Database
Page | 43
Insert a
borrower
Generate
Call slip
Insert a user
in booking
list
Search Book
Update Database
Insert a
query into
the String
Prepare A Query
Execute
query in sql
server
Execute Query
Execute
query in sql
server
Get Resultset
If resultset is
empty
If resultset is
not empty
Show Result in UI
Fig: Database
Page | 44
Control
Panel
System
DB
Reading
System
Ready
Borrow
User
Checking
Book
Checking
System
Ready
Control
Panel
Generate
Request
System
DB
Check if Book
Available
Notify
If not
Taken
Delete Request
Page | 45
7.0 Conclusion:
In our project, we have established a basic understanding of the problem, the
nature of the solution that is desired and the effectiveness of preliminary
communication and collaboration between the stake-holders and the software
team. More studies and communication will help both side (developer and client)
to understand the future prospect of the project. Our team believes that the full
functioning document will help us to define that future prospect.
Page | 46