Download as pdf or txt
Download as pdf or txt
You are on page 1of 18

Software Requirements Specification (SRS)

Capstone Library System

Course:
Instructor:

IT Strategy and Policy/SWE Capstone, Summer 2004

Dr. Hassan Pournaghshband

Capstone Library Project Team: Patrick Garbin Ken Slate Jutamas Suwandee Kennan Xu

Table of Contents
Revision History 1. Introduction 4 5

1.1 Purpose .5 1.2 Project Scope....5 1.3 Definitions, Acronyms, and Abbreviations .6 1.4 Document Overview.6

2.

Overall Description

2.1 Product Perspective ..7 2.2 Product Functions .7 2.3 User Classes and Characteristics ......8 2.4 Operating Environment..9 2.5 Assumptions and Dependencies...9

3.

Specific Requirements

3.1 Functional Requirements .9 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 Making Use of Systems Security Module...9 Enter and Maintaining Members Personal Information..11 Enter and Maintaining Book Information.12 Process Book Transactions..13 Generate Reports..14 Query Information Resulting in Different Views.14 Add/Edit Book Location Information...15

3.2 External Interface Requirements 15 3.2.1 3.2.2 3.2.3 3.2.4 User Interfaces .15 Hardware Interfaces .........16 Software Interfaces ..16 Communication Interfaces ...16

3.3 Performance Requirements .16

3.4 Design Constraints ..16

3.5 Software System and Attributes..17 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.5.6 3.5.7 Reliability.17 Availability...17 Security.17 Portability..17 Maintainability..18 Flexibility..18 Testability.....18

3.6 Logical Database Requirements..18

3.7 Other Requirements.18

REVISION HISTORY
Version 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Name Patrick Garbin Patrick Garbin Patrick Garbin Patrick Garbin Patrick Garbin Patrick Garbin Patrick Garbin Date June 23 June 26 June 29 July 3 July 6 July 11 July 15 Changes from Previous Version Expanded section 1 (Introduction) Finished section 2 (General Description) Started section 3 (Specific Requirements) Corrections made, continued with section 3 Continued with section 3 Finished first draft of SRS Revisions made to 1st rough draft

1.
1.1

Introduction
Purpose

The following document presents the Software Requirement Specification (SRS) for 1.0 release of the Capstone Library System (CLS). Currently, the CLS is an automated system that will track library books and library members located in four university campuses in the State of Georgia. The libraries monitored will include the Lawrence V. Johnson Library at Southern Polytechnic State University and the main libraries at Georgia State University, the Georgia Institute of Technology (Georgia Tech), and the University of Georgia. However, we hope to expand the systems availability to other libraries in the near future. The CLS has also been developed to replace the current library book and member tracking methods at the aforementioned libraries.

This SRS contains detailed requirements and establishes a requirements baseline for development of the system. The requirements delineated in this document are independent, uniquely numbered, and organized by topic. The SRS will evolve over time as users and developers work together to validate, clarify and expand its contents.

1.2

Project Scope

As an increasing number of books are added to college libraries in Georgia, the need for a CLS has become increasingly apparent. The CLS must be able to not only track the books in the libraries but also to monitor the members who check them out. The system will include a unique user security module and will also provide capabilities to generate reports, which will enable library staffs to gain more knowledge about its members and the book movement within the libraries.

Book and member information are currently organized on a much inferior systems at the four Georgia university libraries. The CLS will automate the storage and retrieval of data, including member names, member addresses, member statuses, book titles, book authors, book statuses, book and user generated reports, etc. Automating this data and making improvements in the libraries current systems will provide many benefits.

1.3

Definitions, Acronyms, and Abbreviations

Member A person who checks-in and/or checks-out books in at least one of the libraries using the CLS. User A person who uses or operates the CLS (i.e., the Head Librarian or other library staff). CLS Capstone Library System GUI Graphic User Interface OS Operating System PC Personal Computer SPSU Southern Polytechnic State University SRS Software Requirements Specification UGA University of Georgia UI User Interface

1.4

Document Overview

The SRS is divided into three Sections. This first section, the INTRODUCTION, provides information regarding the purpose, project scope and a general summary of the project. The second section, OVERALL DESCRIPTION, gives an overview of the product system. It provides the product perspective, a short description of the product functionality, any special characteristics required of the target user, general constraints regarding the development and use of this system, and a list of assumptions underlying product development the product. The third section, or SPECIFIC REQUIREMENTS, represents a detailed description of all specific project requirements, including both functional and non-functional requirements. The functional requirements will specify all the activities that shall be automated, that is, all events and activities, which shall be supported by the system. The non-functional requirements shall specify all other requirements, limiting the range of possible solutions available to the development team. These include system performance requirements, design constraints, product attributes, and the external interface requirements as well as any extra requirements.

2.
2.1

Overall Description
Product Perspective

This product is the first phase of a library system being developed to replace methods of monitoring book movement within four university libraries in the State of Georgia. It is intended to be used by library staffs with the goal of making book and library member information easier to track. Also, the Capstone Library Project Team has aspirations to expand the CLS to be used in other libraries in the near future.

2.2

Product Functions

Phase One of the CLS will have the following functions: A security module where the user applies his or her last name when initially entering the CLS for the first time. After entering the users last name, a message box needs to appear stating that the password has expired and to Please enter a new one. Remember new Passwords require at least 6 characters and must include a combination of letters, numbers, and special characters. After entering a new password, the user must also enter the old password to change the password to the new one. The user must be able to change his or her password to a new one at any time. The database must contain profiles of each member or user of the library (member

ID, name, address, phone, email, member type, current status, and outstanding fees). The database must contain profiles of every book located in the library (book ID, author, title, category, ISBN, library, shelving ID, publisher, current status, etc.). The database must contain information on shelving information for books. Provisions to add, delete, and modify book/member information. The ability to view, save, and print any member or book profiles. The ability to view, save, or print, checked-out books sorted by various components. The ability to view, save, or print, lost or damaged books. The ability for a user to change his or her password to enter into the CLS.

A graphical user interface must be developed for this software. The interface must consist of multiple screens for different tasks. Members personal data will be stored in the system for several years from the date of the last time they checked out a library book.

2.3

User Classes and Characteristics

The following table describes general users characteristics that will affect the functionality of the software product: Type of User Head Librarian User Technical How User Affects CLS Expertise Functionality Responsible for monitoring Experienced with The UI should mimic book and member information operating MS the look and feel of MS that is tracked by system. Windows Windows applications. applications. Typically the only person UI should be easy to operating the system if present. learn and use. UI should provide appropriate error messages for invalid input as well as tool-tips and context sensitive help. Will access CLS if Head Experienced with The UI should mimic Librarian is absent or by operating MS the look and feel of MS instruction. Windows Windows applications. applications. UI should be easy to learn and use. UI should provide appropriate error messages for invalid input as well as tool-tips and context sensitive help. User Characteristics

Other Library Staff

2.4

Operating Environment

As the first phase of the overall application, the CLS is intended to be a stand-alone software product that can be run on a single computer workstation. The following outlines the type of system that CLS will operate on: Operating System Processor RAM MS Windows 2000 Intel Pentium 4 at 256 Mbytes Professional or 1.7 GHz greater Monitor 17 at 1280 x 1024 or 1024 x 768 resolution

2.5

Assumptions and Dependencies

The following is a list of assumptions and dependencies that would affect the software requirements if they turn out to be false: Users have basic understanding of PCs and MS Windows. All information on library books shall be preloaded into the system and shall be kept up to date and accurate at all times.

3.
3.1
3.1.1

Specific Requirements
Functional Requirements
Making Use of Systems Security Module

The system should allow a user to login through a unique security module.

3.1.1.1

Introduction

A unique security module will be created for the CLS, differentiating itself from other library book and member tracking systems.

3.1.1.2

Inputs

When a user is cleared to use the CLS, the Head Librarian will put his/her name into the User Log-On database. After a welcome screen is displayed, users will be asked to login using a login name given to them by the Head Librarian (i.e., users first and last name). 9

The user should see his/her first and last name given in the User Name scroll-down box. The first password given to the user will be his/her last name for the initial login.

3.1.1.3

Processing

Once the user scrolls to his or her name as their username and types in his/her last name for his/her password, a pop-up box should appear that reads something along these lines: Your password has expired. Please enter a new one. Remember new passwords

require at least 6 characters and must include a combination of letters, numbers and special characters. User must click an OK button to escape message box.

3.1.1.4

More Security Module Inputs

Users will be prompted to type in their old password (i.e., their last name), their new password, and a confirmation of the new password. Users will always have the option of changing their password at anytime. By

selecting Change User Password under the User Info tab, users can change password by typing in their old password, their new password, and a confirmation of the new password.

3.1.1.5

Outputs

If the user tries to cancel or leave the Password Change screen, the system will communicate to the user that he or she is required to make a password change before proceeding. If the user tries to proceed past the Password Change screen without completing all requests, he or she will be asked to Please complete all password boxes. If the user incorrectly chooses an inoperative password, he or she will be reminded that all passwords require at least 6 characters and must include a combination of letters, numbers and special characters.

10

Once the user selects and types in a valid password, he or she will be dispatched to the CLS main menu.

3.1.2

Enter and Maintain Members Personal Information

The system should allow the user to enter and maintain the personal information of the members of the libraries.

3.1.2.1

Introduction

Records will be kept containing information about the members who check-in and check-out books at the libraries. The system will allow the user to query, add, delete, update or view members personal and contact data.

3.1.2.2

Inputs

A new members personal data (member ID, name, address, phone email, email, member type, current status, and outstanding fees) shall be added once the member checks-out his or her first book at any of the libraries using the system. Input can also come from a new member filling out a New Member Form which will be filled in by members and entered into the system by library staff.

3.1.2.3

Processing

Data for members who are not in the system shall be added by library staff. Head Librarian or library staff shall Add a New Member to capture a new members demographic data. The user will be able to query members data by the book(s) the individual has checked out. If more than one member exists with the same name, the system will be able to retrieve all of the names so the user can view demographic data for all the selected members.

11

The user will be able to change data for a member. A selected members information can also be deleted. Deleting a members record will cause any outstanding fees or books checked-out to be deleted.

3.1.2.4

Outputs

All member information saved will be stored in the CLS database. If a member's information is deleted, then it will no longer exist in the database.

3.1.3

Enter and Maintain Book Information

The system should allow the user to enter and maintain the information of the books in the libraries.

3.1.3.1

Introduction

Records will be kept containing information about the books that are checked-in and checked-out at the libraries. The system will allow the user to query, add, delete, update or view all books data.

3.1.3.2

Inputs

A new books information (ID, author, title, category, ISBN, location, shelving ID, publisher and current status) will be added once the book enters a library.

3.1.3.3

Processing

Data for books which are not in the system will be added by library staff. Head Librarian or library staff will Add a New Book to capture a new books information into the system. The user will be able to query a books information by author and title. The user will be able to change the information for a book. A selected books information can also be deleted.

12

3.1.3.4

Outputs

All book information saved will be stored in the CLS database. If a books information is deleted, then it shall no longer exist in the database.

3.1.4

Process Book Transactions (Check-in and Check-out)

The system should allow the Head Librarian or library staff to check-in and check-out books within the library.

3.1.4.1

Introduction

From the systems main menu, under the Order Entry tab, the user will have the ability to select Member Information, Book Information, or Transaction Information. By selecting Transaction Information, the user will be able to check-in or check-out books within the library.

3.1.4.2

Inputs

Add a Transaction will automatically change the Transaction Number by adding a single digit to the previous transaction number and making the Transaction Date current. User must select a Member and Book using scroll-down buttons. User must select an Action Taken, whether the book is being checked-in or checked-out.

3.1.4.3

Processing

By choosing an invalid Member or Book value, it will be revealed to the user that the value entered is not valid for that particular field.

3.1.4.4

Outputs

All valid transactions will be automatically placed and kept in the CLS database.

13

3.1.5 3.1.5.1

Generate Reports Introduction

The system should allow users to generate reports pertaining to the books and members of the libraries.

3.1.5.2

Inputs and Processing

By selecting the Reports tab from the main menu, the user will be able to generate reports from any of the views listed as options under the Views tab. These Views which will be able to be generated as reports are as follows: Book Listing by Author Book Listing by Title Checked-Out Listing by Title Checked-Out Listing by Date Checked-Out Listing by Student Checked-Out Listing by Category Book Search by Author Book Search by Title Lost / Damaged Books by Title

3.1.5.3

Output

Report pertaining book and/or member data.

3.1.6 3.1.6.1

Query Information Resulting in Different Views Introduction

The system should allow users to query book and member information on the basis of multiple search criteria.

3.1.6.2

Inputs and Processing

By selecting the Views tab and selecting one of the views (e.g., Book Listing by Author, Book Listing by Title, Checked-Out Listing by Title, etc.) listed in the

14

3.1.5 Generate Reports section, the user will be able to query the information pertaining to the particular view.

3.1.6.3

Outputs

The CLS combines the criteria provided by the user, searches the available information within the selected view, and displays a list of the information that matches the users criteria.

3.1.7 3.1.7.1

Add/Edit Book Location Information Introduction

The system should allow users to look up where individual books are located in the library.

3.1.7.2

Inputs and Processing

By selecting Location Information under the Administrative tab, users can look up the locations of books sorted by ID number. For each individual book, a Shelving ID and a Shelf Location is identified. Selecting Add a New Location will give the user the capacity to identify where a book is located.

3.1.7.3

Output

The Add/Edit feature gives the user the ability to look up the location of specific books in a library and if need be, move the location of a book(s) to other shelves within the library.

3.2
3.2.1

External Interface Requirements


User Interfaces

The interface for the first release of the CLS will consist of a windows-based graphical user interface.

15

The interface to the system should contain screens for entering and viewing the data
that the system manages, with fields and selected drop-down lists for entering the data, as well as buttons and menus for executing the system functionality.

3.2.2

Hardware Interfaces

The system will require a standard PC keyboard and compatible mouse device.
3.2.3 Software Interfaces

The system must interface with a MS Access (version 2000 or later) database to store and retrieve all of the data related to the system. The database connection information will first be entered during the setup of the system, and will be modifiable thereafter.

3.2.4

Communication Interfaces

For the first phase, the system will be deployed on a stand-alone machine. No communication interfaces to external systems beyond standard OS operations will be needed.

3.3

Performance Requirements

No more than eight workstations, amongst the four Georgia libraries, will have access to the system for this initial phase. The add/edit functions in the system will respond to the user in no more than three seconds. The security module message notifications will respond to the user in no more than three seconds. Response times for retrieval and update queries will be within three seconds for a database with less than 100,000 records. Response times for databases greater than 100,000 records will not be handled during this phase.

16

3.4

Design Constraints

A single user uses the system. User is checked for authentication to use the system through the security module. The system is deployed on a MS Windows OS environment. The user should logoff after he or she is finished using the system. The data of the database should be backed up routinely.

3.5

Software System Attributes

The Capstone Library Project Team would like to achieve some attributes that address issues such as reliability, availability, security, portability, maintainability, flexibility, and testability.

3.5.1

Reliability

The system will generate error messages when the user attempts to enter invalid data. The system will reject invalid user input without crashing. The system will display appropriate messages when the database is down or any other component cannot be accessed. The system will be recoverable within a day if it is down.

3.5.2

Availability

The system will be available during normal library working hours during the week.

3.5.3

Security

Login to the system shall be handled by Windows Authentication. All users shall be provided with user IDs. Each individual user will create his or her own password with a combination of letters, numbers, and special characters.

3.5.4

Portability

The system shall be designed with portability in mind. 17

The first release of the CLS will operate on a MS Windows OS on a desktop PC, but in the future the system might be ported to a different platform allowing it to be accessed via a web interface on a LAN. The system shall be designed in such a fashion as to make a transition like this as little work as possible.

3.5.5

Maintainability

The database should be backed up with some regularity, preferably every night after the library closes.

3.5.6

Flexibility

The data entered into the system will be stored in the database in such a manner as to make it easy to export and load the data into another relational database management system. Non-standard features of the database system should be avoided. If the system is ported to the web in the future, then it is likely that a different database will be used.

3.5.7

Testability

No part of the system will be left untested before it is delivered.

3.6

Logical Database Requirements

The system will use a relational database management system that provides support for the concurrent access, field-level locking, and transaction control. Data contained within the database will be maintained for ten years from last access.

3.7
None.

Nonfunctional Requirements

18

You might also like