This action might not be possible to undo. Are you sure you want to continue?
Online Library Management System
Software Requirements Specification
Team Members:Nilay Sancheti Pradeep Rohit Khandelwal
Project Guide:Mr. Gajanand Sharma sir
Index & Tables
1) Introduction: 1.1)Purpose: 1.2)Scope: 1.3)Abbreviations: 1.4)Refrences: 1.5)Technologies: 1.6)Overview: 2) Overall Description: 2.01)Product Perspective: 2.02)Software Interface: 2.03)Hardware Interface: 2.04)Communication Interface: 2.05)Product Function: 2.06)User Characteristics: 2.07)Constraints: 2.08)Use – Case Model Survey: 2.09)Architecture Diagram: 2.10)Database Design:
2.11)Assumptions & Dependencies: 3) Specific Requirements: 3.1)Use – Case Reports: 3.2)Supplimentary Requirements:
1.1)Purpose :- This project ia an intranet based application that can be accessed throughout the campus . This system can be used for search for books/magazines, reserve books, find out who is having a particular book, put in request to buy a new book.etc. This is one integrated system that contains both the user component and the librarian component. There are features like e-mail notification / reminders, report generators etc. in this system. 1.2)Scope of the Project:-
• Create different system users and assign different roles with related permissions.
Manage all the details such as user name, password, phone numbers, address, e-mail addresses of all the users from one central location. Track all the fine details of the users and their book, magazines, newspapers, reserve books ownership detail. Maintain history of each user and their related information about the books issued. View all the details of all the issue / submission made by the users.
• • • • • . based largely on modular software components running on an application server. 1. EJB: Enterprise Java Beans.3)Abbreviations:• DB2: DB2 Database is the database management system that delivers a flexible and cost effective database platform to build robust on demand business applications. HTTPS: Secure Hypertext Transfer Protocol is a HTTP over SSL (Secure Socket Layer). creations done in the system by the system administrator will be maintained. Every user of the campus can view his/her own details and can view the details of the others user also. J2EE: Java 2 Enterprise Edition is a programming platform— part of the Java Platform—for developing and running distributed multi tier architecture Java applications. HTML: Hypertext Markup Language is a markup language used to design static web pages. HTTP: Hypertext Transfer Protocol is a transaction oriented client/server protocol between web browser & a Web Server.• Activities like updations.
providing fully dynamic web application utilizing EJB’s.google.• RSA: IBM® Rational Software Architect is an integrated development toolset that supports the management and evolution of enterprise solutions and services.data mapping tools & a universal test client that is designed to aid testing of EJB’s.resources.tgmc. This consist of EJB tools . CMP .com www. WAS: Web Sphere application server is an application server that runs business applications and supports the J2EE and web services standards RDA: Rational Data Architect is a Database Design and • • Modeling tool 1. Rational Software Architect is a toolkit which is designed for the creation of more complex projects.com 1.4)Refrences: • Problem Definition (Provided by IBM) • IEEE SRS Format • • www.5)Technologies: • JAVA Script + JSP: Application Architecture • J2EE:Application Architecture • DB2: Database .
01)Product Perspective: HTML CLIENT (USERS) HTTP/HTTPS Client Software (System Administra tor) TCP/IP WAS DB2 . • 2)Overall Description: Describe the general factors that affect the product and its requirements. their role in the system and constraints.6)Overview: SRS will include two sections: • Overall Description will describe major components of the system. 2.• WSAD: Development Tool • WAS: Web Server • AJAX • Rational: Design Tool 1. interconnection and external interfaces. Specific Requirements will describe the functions of actors.
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 EJB and database server is for storing the information. internet explorer 7 or above.Opera 9 or above.Application side Server Client Database Server • The web pages (XHTML/JSP) are present to provide the user interface on customer clientside. Google chrome. TCP/IP support . For _Server_side: Web_server Apache Tomcat 5 OR Jakarta Tomcat 5 OR Apache 1. . Support HTTP/HTTPS on local system.5 or above. • • 2. For_Client_Side_Application_interface: JVM.02)Software Interface: For_Client_Side_Web_interface: Client on Internet: Browser Netscape 9 or above. Communication between customer and server is provided through HTTP/HTTPS protocols.
Java. DB2. Net Beans 1. Java Bean. Web Browser.6. Operating System (any) Development End: WSAD (J2EE.Java Core and Application Devlopement IntellJidea : Web based JSP devlopement Dreamweaver for Static Web Page Design . Web Server.03) Hardware Interface: Client Side . Operating System (any) Data Base Server: DB2.POP3.5 or above Language Compiler/Interpreter : JVM. ---------------Client on Intranet: Client Software. Servlets. OS (Windows). 2. JBOSS or J2EE SDK1.6 --------------------------------------------------------IDE and Supportive Software for Devlopement. Operating System (any). JDK1.Database :DB2 Application_Servers: SMTP. HTML). Web Server: WAS.
.Processor Disk Space Internet 1 GB Explorer 6. journals. 2. • Users of the same branch will be using TCP/IP protocol.04) Communication Interface: • Users of remote branch will be using HTTP/HTTPS protocols.05)Product Function: • PRODUCT OWNERSHIP DETAILS:-It maintains the information that which user (student or faculty) owns which books.1 1GB (Excluding data size) Pentium III at 1 GHz Pentium III at 1 512 MB 512 MB 2.0 500 MHz Pentium II at Ram 64 MB Server Side Web sphere 2 GB Application server DB2 V8. magazine.
contact and department)of the user.e. student without permission of admin can’t register). He must have basic knowledge of English too.06) USER CHARACTERISTICS: Every user should be comfortable of working with computer and net browsing. • Maintaining Logs: Activities of the System Users can be tracked through the logs. which is maintained by the system.07)Constraints: • GUI is only in English. • Login and password is used for identification of all the system users and there is no facility for outsiders(i.official. 2. 2. 2. • There is maintainability of back up in case of main system data loss.• USER CONTACT INFORMATION:-It maintains all the details (personal.08) Use-Case Model Survey: .
Add New Student : InsertStudentRecord Librarian ViewStudentDetails VerifyStudent Failure Update Delete Student: Failure ViewStudentDetails VerifyStudent Librarian UpdateDeleteStudentRecord Add Book: Failure Librarian ViewBookDetail AddBookRecord .
Update Delete Book Failure Librarian ViewBookDetail UpdateDeleteBookRecord Search Book ViewBookDetail Success Librarian EnterSearchParameters DispalySearchResult AddToMyList <<extends>> Failure ShowMyList <<extends>> CheckInBook CheckOutBook CheckIn Book <<extends>> Success Librarian EnterStudentID PayLateFee Failure .
Checkout Book Success Librarian EnterBookCallNo EnterStudentID Failure USE-CASE DIAGRAM Add New student Librarian View student details Add student Astudent : Student Validate Error .
Update Delete Student Librarian Astudent : Student View Student details Delete student Validate student Delete successfully return error (if delete unsuccessfully) Add Book Librarian Abook : Book View book details Add the book Error .
Update/Delete Book Librarian View book details Abook : Book Delete the book Delete successfully Return error if delete unsuccessfully .
Book) Validate CheckIn Compute latefine Check in successfully Error .Search Book Librarian Enter search parameters System : System Abook : Book Search search result Display search result View book details Add to my list View my list display my list Error (if operated unsuccessfully) Ceck In Book Librarian Atransction : Transction Check in ( StudentID.
Book call#) validate checkout Check out successfully Error ViewBookDetail Librarian Abook : Book View book details display book details .Checkout Book Librarian : Librarian Atransaction : Transction Check out (StudentID.
09)E-R Diagram: .ViewtudentDetails Librarian AStudent : Student View student details display student details 2.
10)Data base Design: .2.
journals.11)Assumptions & Dependencies: • The details related to books . users.AddNewStudent (from csi518team) UpdateDeleteStudent (from csi518team) AddBook (from csi518team) UpdateDeleteBook (from csi518team) SearchBook (from csi518team) Librarian (from csi518team) CheckInBook (from csi518team) CheckOutBook (from csi518team) PayLateFee (from csi518team) ViewStudentDetails (from csi518team) ViewBookDetail (from csi518team) 2. . newspapers and issue & submission provided manually.
3)Specific Requirements: 3.• Data Administrator(Librarian) is created in the system already.1)Use-Case Reports: . • Roles and tasks are predefined.
The following is a use case diagram for a library system: Library System Reserve a book * Borrow copy of book * * * Book Borrower * Return copy of book * Update catolog * * Librarian Use cases are used to identify the user requirements for a particular software product. A scenario is a written interaction between a user and a system. The box enclosing the use cases indicate the system boundary.. A use case is represented by an oval. An external entity (e. A use case diagram may show more than one use case. This boundary is labeled with the name of the system. representing a task or function of a system. a person) interacting with the use case is called an actor. A use case is a task (called functional requirement in software engineering) that an actor is expecting the software to perform. usually shown as a stick person. A use case diagram is easy to understand by a user of a system and it allows the communication between a system developer and its users. Use cases are related to scenarios. There is a normal scenario for a task when everything works as .g.Use case diagrams: A use case describes what a system does from the standpoint of a user (anything external).
Several other scenarios associated with a normal scenario respond to unusual situations of the interaction between a user and a system. . The system finds out that Joe has borrowed the maximum number of books allowed by the library. and the system let him borrows the book.expected. a use case “includes” the functionality of another use case. The system verifies that the Joe has not borrowed the maximum number of books. feature. That is. The system refuses to loan the book to Joe. The <<include>> relationship (<<uses>> in Visio use case diagram) is used when a common behavior. both use cases require the system to check whether another borrower has reserved the book. Unusual scenario 2: Book borrower Joe Doe needs to borrow a copy of the book “Programming Languages.” Normal scenario: Book borrower Joe Doe needs to borrow a copy of the book “Programming Languages. The outcome of any of these scenarios differs from the others. Joe simply leaves the system. in the use cases “Borrow copy of book” and “Extend loan”. Unusual scenario 1: Book borrower Joe Doe needs to borrow a copy of the book “Programming Languages. Relationship between use cases Two types of relationship between use cases have been identified: <<include>> and <<extend>>. The <<include>> relationship is shown in the following diagram. For instance. These three scenarios are possible instances of the use case. The library does not have a copy of the book. Example of scenarios for the use case “Borrow copy of book. He finds a copy of the book and proceeds to check out the book. He finds a copy of the book and proceeds to check out the book. or subtask from two or more use cases are abstracted in a use case.
6. with a main case (normal scenario) and one or more special (unusual scenarios) cases. Draw the use case diagram. 3. Determine the goal of the use case. Use cases are functionality of a system satisfying actor’s needs. An arrow from use case A to use case B (main case) indicates that A is a special case of B. identify the state of the system at the start and at the end of a use case. Some actors (primary) initiate the interaction with the system. 4. “Refuse loan” represents the unusual scenario when a borrower has already borrowed the maximum number of books allowed for him or her. Here. Identify use cases. «extends» Borrow copy of book * Book Borrower * Refuse loan A use case analysis involves the following steps: 1. etc. Identify <<include>> and <<extend>> relationships and modify the use case diagram with these identified relationships. others (secondary) respond to system requests. That is. 7.) that interact with the software produce to be implemented. and the various unusual or alternate scenarios that can happen during the process of a use case. the “Refuse loan” is a special use case of the main case “Borrow copy of book”.* Borrow copy of book * «uses» * Book Borrower * Extend loan «uses» Check for reservation The <<extend>> relationship is used for a use case that have different scenarios. .and post conditions. 2. Specify the main scenario that would result in a normal operation for the use case. Determine the actors (people. Example of an <<extend>> relationship is shown in the diagram below. Keep in mind that the direction of the arrow is opposite to the direction of the <<include>> relationship. 5. Identify pre. systems.
confirmation number and other information regarding the trip. Customer continue with the purchase of the tickets 8. 13. Main scenario: 1. Customer enters the information and click “Submit purchase” 10. FlightsDB: Database with the scheduled flights BillingSystem: System for processing the charger to credit cards Precondition: Graphical user interface displays main web page for the search of flights. GUI displays forms to enter credit card information. 9. 7. Customer selects a particular set of flights. generates and records a confirmation number of the purchase. FlightDB is updated. GUI displays matching flights. For example. FlightDB puts on hold for 30 minutes on selected flights and seats 6. Several alternate or unusual scenarios can be written after the main scenarios. 2. if the customer did not purchase the trip within 30 minutes. The database and web server are active for the processing of the searches. 3. GUI displays itinerary. 12. Customer closes the session.Example of the documentation of a use case: Use case: Book a Reservation Goal: A customer books a reservation using an online airline reservation system. Actors: Customer: person who makes the reservation. GUI displays the price and final itinerary for the selected flights. User types information required to search for flights for a trip. FlightDB searches the DB and lists available flights satisfying the trip. 4. the system will not let the customer to purchase the tickets. . 5. Billing System verifies the CC information and charges the CC 11. in step 5.
System is required to be available 24X7 so UPS support must be on server site for at least 8 hours in case of power failure. Most of the business data in the world today exists in enterprise servers . Tie the existing Web site into existing enterprise systems – Any existing Web site that relies on the manual duplication of data from another system is one that can be improved. Make the existing Web site more dynamic in nature .Many early Web implementations consisted of static HTML pages. so it can stay open for 24 hours a day.3. System will remain inaccessible to users at 2:00 to 4:00 am for backup and maintenance purpose. An effective system should be largely dynamic taking advantage of technology that automates this process rather than relying on manual processes.2) Supplementary Requirements: Have hours of operation that are 24 x 7 . This becomes very difficult to manage if the number of pages gets too large. Application should serve dynamic user based customized web pages to its clients from server.Because system can be an automated process.
that can be connected to the Web servers to make this process far more effective. clustering. 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. Providing session management capability . and load balancing. The Web Application Server should provide these services. .Web application developers should not spend valuable time worrying about how to maintain sessions within the application.
This action might not be possible to undo. Are you sure you want to continue?