34
Online Library Management System Version 1.0 Software Requirements Specification 27-02-2011 itchamps itchamps, MIET Meerut U.P. Page 1 itchamps Online Library Management System Synopsis Requirements Specification Version 1.0 Team Name : itchamps Team Member : Abhishek Bhardwaj (0806813002) Anshu Sagar (0806813009) Gaurav Kumar (0806813019) Course : B.Tech. (I.T. 6 th Semester) College Name : Meerut Institute Of Enginerring & Technology. Meerut. State : Uttar Pradesh

Online Library Management System PHP MySql

Embed Size (px)

Citation preview

Page 1: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 1

itchamps

Online Library Management System

Synopsis Requirements Specification

Version 1.0

Team Name : itchamps

Team Member : Abhishek Bhardwaj (0806813002)

Anshu Sagar (0806813009)

Gaurav Kumar (0806813019)

Course : B.Tech. (I.T. 6th

Semester)

College Name : Meerut Institute Of Enginerring & Technology. Meerut.

State : Uttar Pradesh

Page 2: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 2

Revision History

Date Version Description Author 27-02-2011 1.0 First SRS itchamps

Page 3: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 3

Table Of Contents

Description Page No.

1.0 Introduction………………………………………………………05

1.1 Purpose..................................................................................05

1.2 Scope.....................................................................................05

1.3 Definition, Acronyms, and Abbreviations ............................06

1.4 References.............................................................................07

1.5 Technologies to be used........................................................07

1.6 Overview...............................................................................07

2.0 Overall Description........…………………………………………08 2.1 Product Perspective..............................................................08 2.2 Software Interface................................................................08 2.3 Hardware Interface...............................................................09 2.4 Communicational Interface.................................................09 2.5 Product Function....……………………...……………...…09 2.6 User Characteristics……………………….………………10 2.7 Constraints……………………….……….………………..10

2.8 Use Case Model Description ……………………………..10 2.9 Database Design…………………………………………...12

Page 4: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 4

2.11 Assumptions & Dependencies…………………………...20

3.0 Specific Requirements…………………………………………21

3.1 State Diagrams as System use case

reports…………………………………………………….21

3.2 Supplementary Requirements……………………………33

Page 5: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 5

Software Requirements Specification

1.0 Introduction

1.1 Purpose: Conventionally the readers have to go to library for searching books &

magazines and they may have to stand in long reservation lines for

reserving/issuing the material. This kind of functionality leads in wastage of time

and extra efforts. Here we have provided an online facility through which anyone,

anywhere in campus, having a library account can search for and reserve books,

find out who is having a particular book and put in a request to library for buying

new books.

1.2 Scope: The scope of Online Library Management System includes-

Create different system users based on their roles and permissions.

Authenticate users at their login.

Provide mechanism of searching available books and magazines using

title, author name, or field of the book.

Facility to reserve books or journals or magazines.

An status page for all users to view books or magazines reserved by

them, their respective due dates, their respective fines if any.

Facility for cancelling a reservation for a book made earlier.

Facility for reserving books that are borrowed by others currently.

A facility for searching about a user having a particular book and its due

date for the same.

An interface to review user history.

Impose fines on users considering holidays, exams or special leaves.

Provide mechanism for changing account settings such as passwords,

choosing from different skins & etc.

Reports exportable in .XLS, .PDF or any other desirable format.

Page 6: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 6

Place an automated email, on reserving a book, to the user who has

currently reserved it and to all of the users who are having that book,

stating that the particular book has been reserved.

Place requests for purchasing new books to the library, by giving details

about the name of the book, name of the author, publisher.

Add new book details to the store.

Removing particular book details from library.

1.3 Definitions, Acronyms, and Abbreviations:

Librarian- He is able to add new books/journals/magazines and remove

books from inventory.

Users- Those who visits the service for searching, reserving and requesting

for a book/journal/magazine. The system is designed for two users students

and the faculty.

User Detail- Details of an user such as name, id, address, contact number,

reserved books, requested books and etc.

Book Detail- Details of a book such as its title,publisher,author name, subject

or field of book, number of pages etc.

HTML- Hyper Text Markup Language. It is used to create static web pages.

PHP(Hypertext Processor) - It is used to create dynamic web content.

JavaScript- It is a client side scripting language. Mainly use for form

validation and interaction between user and html page.

AJAX - Asynchronous java script and XML.-used to change page content

without reload.

MySQL - MySQL Database is the database management system that delivers

a flexible and free database platform to build robust on demand business

applications.

Page 7: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 7

Apache HTTP Server- Apache HTTP Server is an server that runs business

applications and supports the PHP and web services standards.

HTTP - Hypertext Transfer Protocol is a transaction oriented client/server

protocol between web browser & a Web Server.

XML (Extensible Markup Language):-It is a markup language that was

designed to transport and store data.

1.4 References:

IEEE SRS format

Problem Definition(Provided by IBM)

1.5 Tools & Technologies to be used:

HTML – Hypertext Markup Language.

PHP – Hypertext Processor, a Server-side scripting language.

MySQL- MySQL community server, freeware database provided by

ORACLE.

AJAX - Asynchronous Java Script and XML.

XML - Extension Markup Language.

JavaScript – Client-side scripting language.

Apache– Apache HTTP server

1.6 Overview

Overall Description - will describe major components of the system,

interconnection and external interfaces.

Specific Requirements - will describe the functions of actors, their

role in the system and constraints.

Page 8: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 8

2.0 Overall Description Describes the general factors that affect the product and its requirements. 2.1 Product Perspective :

The web pages (XHTML/PHP) are present to provide the user interface

on client side. Communication between client and server is provided

through HTTP/HTTPS protocols.

The Client Software is to provide the user interface on system user

client side and for this TCP/IP protocols are used.

On the server side web server is for PHP and database server is for

storing the information.

2.2 Software Interface:

Client on Intranet - Web Browser, Operating System (any)

Web Server - Apache Http Server, Operating System (Windows based)

Data Base Server - MySQL, Operating System (Windows based)

Page 9: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 9

Development End - PHP, MySQL, Windows based OS, Web Server.

2.3 Hardware Interface:

Minimum hardware requirements –

Client Side -

IE6.0 & above,

Chrome, Mozilla

firefox

Processor RAM Disk Space

Pentium III at

500MHz

128 MB 1GB

Server Side –

Processor RAM Disk Space

Apache HTTP

Server V2.2.17

Pentium IV at 1.3 GHz

512MB 100MB

MySQL V5.5.8 Pentium IV at 1.3 GHz

512MB 200MB(Excluding

Data Size)

2.4 Communication Interface :

Client on Internet will be using HTTP/HTTPS protocol.

2.5 Product Functionalities:

A Person Should be able to login to the system through the first page of

the application and change the password after login into the system.

see the status of the books/journals borrowed/reserved by him and the

respective due dates and other relevant details

search for a particular book/journal based on the name of the

book/name of the author/subject/etc and also list for books/journals

based on the name of the autor/subject etc

Page 10: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 10

place requests for purchasing new books to the library, by giving

details about the name of the book, name of the author, publisher.

see who has borrowed a particular book/journal and when is the due

date for the same

cancel the reservation made earlier for a particular book/journal

reserve a particular book/journal borrowed by others currently

As soon as a reservation is made for a particular book, an automatic

mail should be sent to the person who made the reservation about the

details. Then, a mail should be sent to people who are having the book

currently, stating a reservation has been made on that book.

Reports exportable in .XLS, .PDF or any other desirable format.

2.6 User Characteristics –

Every user should be comfortable of working with computer and net

browsing. He must have basic knowledge of English too.

2.7 Constraints –

GUI is only in English.

Login and password is used for identification of customer and there is no

facility for guest.

2.8 Use Case Diagram-

Page 11: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 11

1. Librarian- Responsible for activities such as adding book records, deleting book

records, updating book status such as if book is issued & etc.

2. Library Database- Responsible for keeping records of all present & requested

books in library.

3. Guest- Registers for a new account for becoming a library member.

4. User- Already registered member who can access library services such as

searching books, registering books, requesting for new books and etc.

2.9 Database Design-

Page 12: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 12

ER Diagram-

Page 13: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 13

1 Database library

1.1 Table structure for table books

Field Type Null Default

id int(5) No

name varchar(100) No

author varchar(100) No

publisher varchar(100) No

subject varchar(50) No

type varchar(20) No

days int(3) No

fine_per_day int(3) No

copies int(3) No

available int(3) Yes NULL

1.2 Table structure for table books

Field Type Null Default

id int(5) No

name varchar(100) No

author varchar(100) No

publisher varchar(100) No

subject varchar(50) No

type varchar(20) No

days int(3) No

fine_per_day int(3) No

Page 14: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 14

copies int(3) No

available int(3) Yes NULL

1.3 Table structure for table course

Field Type Null Default

id int(2) No

name varchar(20) No

max_books int(2) No 0

tbl int(2) Yes NULL

1.4 Table structure for table course

Field Type Null Default

id int(2) No

name varchar(20) No

max_books int(2) No 0

tbl int(2) Yes NULL

1.5 Table structure for table faculty

Field Type Null Default

uname varchar(25) No

fname varchar(20) No

lname varchar(20) No

email varchar(25) No

pass varchar(50) No

reg char(15) No

Page 15: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 15

department varchar(25) No

photo varchar(35) No

activated int(1) No

1.6 Table structure for table faculty

Field Type Null Default

uname varchar(25) No

fname varchar(20) No

lname varchar(20) No

email varchar(25) No

pass varchar(50) No

reg char(15) No

department varchar(25) No

photo varchar(35) No

activated int(1) No

1.7 Table structure for table faculty_activity

Field Type Null Default

uname varchar(30) No

time timestamp No CURRENT_TIMESTAMP

status varchar(500) No

doc varchar(100) Yes NULL

1.8 Table structure for table faculty_activity

Field Type Null Default

Page 16: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 16

uname varchar(30) No

time timestamp No CURRENT_TIMESTAMP

status varchar(500) No

doc varchar(100) Yes NULL

1.9 Table structure for table failed_reservations

Field Type Null Default

bookid int(3) No

uname varchar(30) No

last_rep_date varchar(10) No

1.10 Table structure for table failed_reservations

Field Type Null Default

bookid int(3) No

uname varchar(30) No

last_rep_date varchar(10) No

1.11 Table structure for table holidays

Field Type Null Default

date int(2) Yes NULL

month int(2) Yes NULL

year int(2) Yes NULL

description varchar(100) Yes NULL

1.12 Table structure for table holidays

Field Type Null Default

Page 17: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 17

date int(2) Yes NULL

month int(2) Yes NULL

year int(2) Yes NULL

description varchar(100) Yes NULL

1.13 Table structure for table issue

Field Type Null Default

bookid int(5) No

uname varchar(30) No

return_dd int(2) No

return_mm int(2) No

return_yyyy int(4) No

type varchar(15) No

1.14 Table structure for table issue

Field Type Null Default

bookid int(5) No

uname varchar(30) No

return_dd int(2) No

return_mm int(2) No

return_yyyy int(4) No

type varchar(15) No

1.15 Table structure for table librarian

Field Type Null Default

Page 18: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 18

id int(2) No

uname varchar(25) No

pass char(50) No

1.16 Table structure for table librarian

Field Type Null Default

id int(2) No

uname varchar(25) No

pass char(50) No

1.17 Table structure for table new_book_request

Field Type Null Default

name varchar(100) Yes NULL

author varchar(100) Yes NULL

publisher varchar(100) Yes NULL

subject varchar(100) Yes NULL

time timestamp No CURRENT_TIMESTAMP

1.18 Table structure for table new_book_request

Field Type Null Default

name varchar(100) Yes NULL

author varchar(100) Yes NULL

publisher varchar(100) Yes NULL

subject varchar(100) Yes NULL

time timestamp No CURRENT_TIMESTAMP

Page 19: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 19

1.19 Table structure for table reserve

Field Type Null Default

res_id int(10) No

bookid int(3) No 0

uname varchar(30) No

type varchar(20) No

dd int(2) No

mm int(2) No

yyyy int(4) No

1.20 Table structure for table reserve

Field Type Null Default

res_id int(10) No

bookid int(3) No 0

uname varchar(30) No

type varchar(20) No

dd int(2) No

mm int(2) No

yyyy int(4) No

1.21 Table structure for table student

Field Type Null Default

uname varchar(25) No

fname varchar(20) No

lname varchar(20) No

Page 20: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 20

email varchar(25) No

pass varchar(50) No

reg char(15) No

course varchar(25) No

photo varchar(35) No

activated int(1) No

1.22 Table structure for table student

Field Type Null Default

uname varchar(25) No

fname varchar(20) No

lname varchar(20) No

email varchar(25) No

pass varchar(50) No

reg char(15) No

course varchar(25) No

photo varchar(35) No

activated int(1) No

2.11 Assumptions and Dependencies

The end user should have a basic knowledge of English and computer usage. Administrator is created in the system already. Roles and tasks are predefined.

Page 21: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 21

3. Specific Requirements

3.1 State Diagrams As System Use Reports

3.1.1 State diagram of whole system

Main Menu1

Enter Book Info14

do/ Insert a student into DB

Add a book

Enter books. student Info13

do/ Check In, Check Out

Enter Search Info2

Reset

Search books

Display Results3

entry/ Search books in DB

Display Book Detail4

do/ Update, Delete

Display MyList5

exit/ Send from List message

Update/Delete

Enter Student Info7

do/ Insert student into DB

Add a student

Enter Search Info11

Search students

Display Results12

entry/ Search students in DB

Update Detail60

do/ Update,Delete

Update,Delete

Totally 12 windows.All states except "Display Exit Info" can go back to Main Menu.

Display Exit Info

Exit

Help ContentGet Help

Search

Back

View Detail / UpdateDelete

Check In/Out

Check In/Out

View Mylist

Search

New Search

Check In/Out

View Detail

Add to list

Back

Add to list

Check In/Out

Page 22: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 22

3.1.2 Activity diagram of each operation

Student class

• AddStudent : add a new student

• DeleteStudent : delete an existing student

• UpdateStudent : update information of existing student

validateStudent

add the student record to Student table

return error message

return success message

[ not exists ]

[ exists ]

validateStudent

delete the student record to Student table

return error message

return success message

[ exists ]

[ not exists ]

Page 23: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 23

• SearchStudent : search students

• ValidateStudent : validate student

Update the student record in the Student table

Query the student record in Student table

return Resultset

Page 24: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 24

Query the student in Student table according to studentID

Return Resultset

Return false

[ empty ]

Return true[ not empty ]

Page 25: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 25

Book class

addBook: Add a new book in database

Check Book record in database

exist

Insert book record in database

no

Return "Book already exist" message

yes

return success message

Page 26: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 26

exist: Check if the book record already exist in database.

Search Book record in database

found record?

return exist message

yes

return not exist message

no

Page 27: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 27

searchBook: Search books in database

updateBook: modify book info

search book record in database

return resultset

update record in database

return success message

Page 28: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 28

deleteBook: Delete a book in database

check existence

exist?

delete the record

yes

return success message

return fail message

no

Page 29: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 29

Transaction class

checkIn() : check in one book

SQL Statement (Update.....)

Exception?Print "error message"

return true return false

No

Yes

Page 30: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 30

checkOut() : check out one book

SQL Statement (Update.....)

Exception?Print "error message"

return true return false

No

Yes

Page 31: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 31

MyList class

addTolist() : add one book to mylist

SQL Statement (Insert.....)

Exception?Print "error message"

return true return false

No

Yes

Page 32: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 32

deleteFromList() : delete one book from mylist

SQL Statement (Delete.....)

Exception?Print "error message"

return true return false

No

Yes

Page 33: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 33

Mylist.viewList() : retrieve books in mylist

3.2 Supplementary Requirements

24 x 7 Availability - If the base is now the entire world, staying open 24 hours a day becomes critical. Because system can be an automated Process, so it can stay open for 24 hours a day. So UPS support must be on server site for at least 8 hours in case of power failure. System will remain inaccessible to users at 2:00 to 4:00 am for backup and maintenance purpose.

Dynamic Website - Many early Web implementations consisted of static HTML pages. This becomes very difficult to manage if the number of pages gets too large. An effective system should be largely dynamic taking advantage of technology that automates this process rather than relying on manual processes. Application should serve dynamic user based customized web pages to its clients from server.

Integration with existing enterprise systems – Any existing Web site that relies on the manual duplication of data from another system is one that can be improved. Most of the business data in the world today exists in enterprise servers that can be connected to the Web servers to make this process far more effective.

SQL Statement (Select....)

Exception?Print "error message"

return true return false

No

Yes

Page 34: Online Library Management System PHP MySql

Online Library Management System Version 1.0

Software Requirements Specification 27-02-2011

itchamps

itchamps, MIET Meerut U.P. Page 34

Provide good performance and the ability to scale the server – The Web application Server should provide good performance and the ability to manage performance with techniques, such as support for caching, clustering, and load balancing.

Providing session management capability - Web application developers should not spend valuable time worrying about how to maintain sessions within the application. The Web Application Server should provide these services.