Requirements Specification SJSU Online Library System November 20, 2001 Software Development Inc. JVD Joel Frank, Project Manager (Sections V and VI) Hours Worked: Signature Valerie Stanton, Software Engineer (Sections III and IV) Hours Worked: Signature Dani Sablan Chalmers, Software Engineer (Sections I and II) Hours Worked: Signature S o f t w a r e Development Inc. JVD Table of Contents I INTRODUCTION SCOPE AND PURPOSE OVERALL SYSTEM DESCRIPTION SOFTWARE PROJECT CONSTRAINTS STRUCTURE OF DOCUMENT 3 3 3 3 3 II SYSTEM ARCHITECTURE 5 III INFORMATION DESCRIPTION 7 ENTITY RELATIONSHIP DIAGRAMS DATA FLOW DIAGRAMS IV FUNCTION DESCRIPTION FUNCTIONAL PARTITIONING FUNCTIONAL DESCRIPTION V NAVIGATION FLOW AND BEHAVIOR DESCRIPTION NAVIGATION FLOW VI VALIDATION AND CRITERIA PERFORMANCE BOUNDS CLASSES OF TESTS 7 9 18 18 18 22 22 30 30 30 VII BIBLIOGRAPHY 31 VIII APPENDIX 32 MAJOR FUNCTION SUMMARY 32 Page 2 of 32 Requirements Specification S o f t w a r e Development I Inc. JVD Introduction Scope and Purpose This document covers the requirements needed for a successful Online Library System. These requirements have been specified by the customer and have been validated by the project manager. The documentation will provide a basis for the system design stage. Overall System Description This system will allow students and faculty to access SJSU’s library system remotely via the internet, as well as through the library’s local area network (LAN). Students and faculty will login by providing their user name, ID and PIN. Once logged in, students and faculty can perform media searches, reserve media, check their account status, and pay late due fees (if needed). Library staff will have all student/faculty account options as well as implementing checkin/check-out functions, user account modification, and database report generation. Administrative personnel will have access to all levels of user functions including the following additional database maintenance functions: top-level user account modification, user access control, and top-level database modification. The administrator will be able to logon via the LAN connection or will be able to logon to the actual server. As account management, the administrator can update, create, or delete student, library staff, or administrator accounts. The system will provide an interface tailored to each user type. Software Project Constraints • • • • Administrator interface must run on Windows 98 or a more current operating system Student interface must support Internet Explorer 5.0 and up Student interface must support Netscape Navigator 5.0, or Netscape Communicator 4.0 and up The database and application server must run on Windows 2000 on a Dell Poweredge 8450 as outlined in the project plan Structure of Document System Architecture • This section contains the diagrams representing the architecture context (simple and detailed views), as well as the architecture flow. Information Description • This section includes the Entity Relationships Diagrams describing the relationships between the various the user accounts and throughout the complete system. The Data Flow Diagrams for the whole system are also included. Function Description • This section includes the diagram for functional partitioning, as well as detailed descriptions for each level of functions. Page 3 of 32 Requirements Specification S o f t w a r e Development Inc. JVD Behavior Description • This section has detailed state diagrams for students, faculty, library staff, and the administrator. Each diagram is followed with tables explaining the associated Events and Actions. Validation and Criteria • This section includes the performance bounds, the classes of tests that will be performed, and any other special considerations. Page 4 of 32 Requirements Specification S o f t w a r e Development II Inc. JVD System Architecture User Interface Process & Control Functions Input (Media Access & Credit Card Payment) Output (Query Results, Reports, & Credit Card Payment Verification) Maintenance & Account Management Figure 1: Architecture Context Diagram Students and Faculty Library Staff Administrator Internet Browser Internet Browser SJSU Online Library System LAN Connection LAN Connection Credit Card System (for late fees) Credit Card System (for late fees) Access Control Media Management Account Management Figure 2: Architecture Context Diagram (Detailed View) Page 5 of 32 Requirements Specification S o f t w a r e Development Inc. JVD Students & Faculty Internet Brow ser Login Library Staff Main Menu (All Users) Administrator Staff Menu (Staff & Admin.) Admin. Menu (Admin. only) LAN Connection LAN Connection Database System (Media Resoures, Account Info, & Late Fee Info) Credit Card System Internet Brow ser Media Search Check In/ Check Out Reserve Media User Accounts Account Status Generate Reports Late Fee Payment Media Management Credit Card System Account Management Access Control Figure 3: Architecture Flow Diagram Page 6 of 32 Requirements Specification S o f t w a r e Development III Inc. JVD Information Description Entity Relationship Diagrams is a Student see detail Address Email Address Phone No. Account Status set up User Account is a User Name User ID PIN User Type Library Staff Email Address Extension Position manages set up Faculty is a see detail see detail Office Email Address Extension Account Status is a Administrator see detail Email Address Extension Figure 4: Entity Relationship Diagram – User Accounts The data object USER ACCOUNT contains four types of users: STUDENT, FACULTY, LIBRARY STAFF, and ADMINISTRATOR. All of these accounts type have an inheritance relationship with the USER ACCOUNT data object. Page 7 of 32 Requirements Specification S o f t w a r e Development Inc. JVD Resources Borrowed Resources Reserved Title Date due Title Expected availability displays displays Late Fee Title Date due Fee ow ed Make payment Account Status displays pays checks Media reserved Media checked out Late fees provides checks Students is a is a setup Title Author Subject Locator ID Index no. ISBN borrows/ reserves searches 10 Library Staff is a check in/ check out setup searches Media Resources is a 25 Availability status borrows/ Date out reserves Date due Checked out to Reserved by Magazine/ Periodical Publication Issue date Shelf location Microfilm reel no. Faculty is a is a Administrator is a User Account Book manages Multi-media Title Subject Year of release Locator ID Index no. manages restricts Access Control manages Figure 5: Entity Relationship Diagram – Complete System MEDIA RESOURCES is the central data object and has objects related by both inheritance and association. The data objects BOOKS, MAGAZINES/PERIODICALS, and MULTI-MEDIA are all types of MEDIA RESOURCES (inheritance). All other data objects are related to MEDIA RESOURCES by association. Page 8 of 32 Requirements Specification S o f t w a r e Development Inc. JVD Data Flow Diagrams When examining an existing information system or analyzing the information that is going to be designed, it is important to recognize what the data is, where the data comes from, how it passes from one point to another within the information system, and how it will be used by the intended audience or user. The following data flow diagrams (DFDs) represent the movement of data within the system. They concentrate less on the actual functions and data constructs of programmers and more on the general processes inherent to the overall system. We started at the top of the system and moved deeper into the processes to the underlying database tables. The amount of detail specified in this document will include a level two representation for most functions and a level three where necessary. All diagrams include references to additional levels when applicable. Expanded functions are referenced using numbered tabs, which provide the corresponding diagram number. LEVEL 0 Diagram 1 SJSU Library System User ID Fees Due Banking System for Credit Card Transactions 2, Web-based Interface (Internet Browser or LAN Connection) SJSU Online Library System 9, 13 User Name User ID PIN Database Page 9 of 32 Requirements Specification S o f t w a r e Development Inc. JVD LEVEL 1 Diagram 2 Student/Faculty Login User ID User T ype From Level 0 Internet Brow ser/ LAN Connection Student/ Faculty Login 1 Display Main Menu 16 Verifi cati on User T ype User Name User ID PIN Menu Selection Database Media Search 3 Query 5 Resource Info Account Status Check User ID Account Info Database LEVEL 2 Diagram 3 Media Search 2 4 Media Search Menu Query Display Result Data Resource Info Search for Resource Database Result Display "No Matches" Page 10 of 32 NULL Result Requirements Specification S o f t w a r e Development Inc. JVD LEVEL 3 Diagram 4 Media Reservation Media Reservation 3 Select Resource User Emailed when Resource i s Available Flag Display Confirmation Flag Database LEVEL 2 Diagram 5 Account Status Check 2 Check Status Menu Menu Selection User ID Display T ype 6, 7, 8 Display Results Database Results Page 11 of 32 Requirements Specification S o f t w a r e Development Inc. JVD LEVEL 3 Diagram 6 Late Fees Due/Payment User ID Display Fees Due 5 Database New Balance New Balance User ID Credit Card Info Credit Card Payment Display Error Credit Card Info Flag 1 LEVEL 3 LEVEL 3 Diagram 7 Media Checked Out Diagram 8 Media Reserved User ID User ID 5 Display Media Borrow ed Database 5 Display Media Reserved Resource Info Resource Info Display Media Due Date Page 12 of 32 Database Media Status Display Availability Date Media Status Requirements Specification S o f t w a r e Development Inc. JVD LEVEL 1 Diagram 9 Library Staff Login User ID User T ype From Level 0 Internet Brow ser/ LAN Connection Library Staff Login 1 Display Main Menu 16 Verification User Type User Name User ID PIN Menu Selection Database 10 User Account Setup User Info Media Checkin/Checkout 11 User Account Resource Index No. Report Generation 12 Resource Status Change Query Report Database LEVEL 2 Diagram 10 User Account Set-up Menu Selection 9 User Account Set-up Menu Menu Selection Menu Selection Update User Account Fl ag User ID User Info Create User Account Delete User Account User ID Flag User ID User Info Flag Database Page 13 of 32 Requirements Specification S o f t w a r e Development Inc. JVD LEVEL 2 Diagram 11 Media Checkin/Checkout Menu Selection 9 Media Checkin/Checkout Display Menu Selection Medi a Checkin Flag Media Checkout Index No. User ID Index No. User ID Flag Database LEVEL 2 Diagram 12 Report Generation 9 Reports Menu Print Report Page 14 of 32 Menu Selection Database Requirements Specification S o f t w a r e Development Inc. JVD LEVEL 1 Diagram 13 Adm inistrator Login User ID User T ype From Level 0 Internet Brow ser/ LAN Connection Administrator Login 1 Display Main Menu 16 Verifi cati on User T ype User Name User ID PIN Menu Selection Database 14 Media Management Resource Update Resource Info Access Control 16 User T ype Account Management 17 Level of Access User Info User Account Database LEVEL 2 Diagram 14 Media Managem ent Menu Selection 13 Media Update Menu Menu Selection Menu Selection Update Media Flag Delete Media Index No. 15 Flag Index No. Resource Info Add New Media Resource Resource Info Flag Database Page 15 of 32 Requirements Specification S o f t w a r e Development Inc. JVD LEVEL 3 Diagram 15 Media Addition 14 Add New Media Resource Resource Info Flag Flag Assign Unique Index No. Database Index No. LEVEL 2 Diagram 16 Access Control Return to Login Display Error 2, 9, 13 Access Control Display Main Menu User Info Verification Fail ure User Info User Verification Database Flag Fl ag Page 16 of 32 Allow Student/Facul ty Level Access Flag Allow Library Staff Level Access Flag Allow Admini strator Level Access Flag Requirements Specification S o f t w a r e Development Inc. JVD LEVEL 2 Diagram 17 Account Management Menu Selection 13 Staff Account Set-up Menu Menu Selection Menu Selection Update Staff Account Flag Staff ID Staff Info Create Staff Account Delete Staff Account Staff ID Flag Staff ID Staff Info Flag Database Page 17 of 32 Requirements Specification S o f t w a r e Development IV Inc. JVD Function Description Functional Partitioning SJSU Online Library System Login Students & Faculty Media Search Media Reservation Library Staff Account Status Check Student/ Faculty Account Update Media Late Fees Media Checked Reserved Due Out (students only) Administrator User Account Set-up Media Report Media Check In Check Out Generation Student/ Faculty Account Creation Student/ Faculty Account Deletion Media Update Media Management Media Addition Access Control Account Management Media Deletion Account Account Account Update Creation Deletion Figure 6: Tree Diagram with Horizontal and Vertical Partitioning Functional Description Login Function (Shared Function) This function is both for security and to control the user’s level of access. This function requires the user’s name, ID, and PIN. The user type is managed by the access control function. The system will verify that the user name, ID, and PIN are all correct before allowing access to the online library system. If the information is not correct, the user will receive an error message requesting that the user try again. With a correct login, the user will be taken to the appropriate menu. The student and faculty users will be able to login from any machine using an internet browser or from within the library using the LAN connection. The library staff will login via the library’s LAN. The administrator will be able to login via the LAN connection or, for data management operations, the administrator will be able to logon to the actual server. Access time for account validation and determination of user access is expected to be no more than one second via the LAN connection and no more than five seconds using a remote internet browser. This time will be longer on older machines with slower modem speeds. Media Search Function (Shared Function) The media search function will search the media database for books, magazines/periodicals, and multi-media. The user can search for a book by title, author, subject, or ISBN. Magazines and periodicals can be searched by publication and issue date only. A separate system is already in place for specific article searches and will not be linked to the main online library system. Multi-media searches can be performed either by title or subject. This function will return and display all items that match the query criteria. Access time for this function is expected to Page 18 of 32 Requirements Specification S o f t w a r e Development Inc. JVD be no more than three seconds via the LAN connection and no more than ten seconds using a remote internet browser. This time will be longer on older machines with slower modem speeds. Media Reservation Function (Student/Faculty Function) The media reservation function allows the user to reserve media resources that are currently checked out. When the user performs a search, the availability information for the resource will also be displayed. The screen will display the resource status, the expected availability date, and if the book is already on reserve for another student or faculty member. The user will have the option to reserve the resource by selecting the reserve resource field. The student will automatically be notified by email when the resource is available. Only books and multi-media will be accessible for reservation. Magazines and periodicals can only be viewed in the library and are not available for check out. A student will not be allowed to have for than ten resources on reserve at one time. An error message will be displayed if the user tries to exceed this limit. Faculty may have up to 25 resources on hold. Access time for this function is expected to be no more than three seconds via the LAN connection and no more than ten seconds using a remote internet browser. This time will be longer on older machines with slower modem speeds. Account Status Check Function (Student/Faculty Function) The account status check will allow users to check the status of their library account. When this function is selected it will provide the following three options: view all resources currently checked out by the user, all resources on reserve, and a check for overdue fee. If the user selects resources borrowed, the title of each resource and the respective due date will be displayed. The resources reserved option will provide each title reserved by the user including the expected availability date. Only student accounts will include an overdue fee check; overdue fees will not be assessed for faculty. If the student selects this option, there will be an option to pay overdue fees online with a credit card (see overdue fee payment function). Access time for this function is expected to be no more than three seconds via the LAN connection and no more than ten seconds using a remote internet browser. This time will be longer on older machines with slower modem speeds. Times may also be slower for credit card payments as the credit card must be verified through the banking system. Overdue Fee Payment Function (Student Function) Students will be able to pay any overdue fees that may have been assessed using the overdue fee payment function. The user’s balance will be displayed when this function is selected along with a button labeled [pay fees]. The user will be prompted for a credit number, expiration date, and the name on the card. The user will then submit the request, which will be processed using an online banking system. The bank will verify the user’s information and return verification of the transaction once it has been approved. An error message will be displayed if the payment cannot be processed. The account balance field will be updated immediately. The time for this function will vary depending on the volume of transactions being processed through the online banking system, but the maximum transaction time is not expected to exceed 10 seconds. User Account Set-up Function (Library Staff and Administrator Function) Both library staff members and the system administrator will have access to this function, although most student and faculty accounts will be set up by the library staff. There are three subfunctions: account update, account creation, and account deletion. The menu will display Page 19 of 32 Requirements Specification S o f t w a r e Development Inc. JVD these three options and the staff member will make the appropriate selection. The screen will display fields for the user’s name, ID, PIN, user type, address, email address, and phone number. The user will be given a default PIN and then prompted by the system for a new PIN on the first login. After the new account information has been entered, the staff member will click UPDATE button. If the account is being deleted, the staff member will select the DELETE button and the system will require verification that the account should really be deleted before if will be permanently removed from the system. Access time for this function is expected to be no more than two seconds via the LAN connection. Media Check in/Check out Functions (Library Staff Function) The checkin/checkout functions will be performed by the library staff. All resources are identified in the database by a unique index number. This number will be entered to select the media resource. When checking out a resource, the availability status will change, the student/faculty member ID number will be assigned to the resource, and a due date assigned. There is a limit to the number of resources that can be checked out to a single user at any given time. The students are limited to 10 media resources while the faculty can checkout up to 25 media resources. Checking a book in will result in a change to the availability status and the association with the student/faculty member will be removed. If the resource has been reserved, an email will be generated with the availability status change. Access time for this function is expected to be no more than two seconds via the LAN connection. Report Generation Function (Library Staff and Administrator Function) Both the library staff and administrator will be able to generate a variety of pre-defined status reports as well as customized reports. The report function will include a complete resource status report, a listing of all user accounts, and a list of all overdue fees owed. Reports may also be generated using any combination of the search fields. The time required to generate reports is expected to be no more than ten seconds via the LAN connection. Media Management Function (Administrator Function) Managing the media will include adding new resources to the database, updating resources already in the database, and deleting resources. When adding a new resource to the database, the system will automatically assign it a unique index number. This number will be used for the checkin/checkout function to identify the media resource. The administrator will have direct access to the database server and will perform most media management functions while logged onto this server. This will result in immediate response times. Access Control Function (Administrator Function) The administrator will control the level of access for each type of user. Upon user login, the user type will identify the level of access and trigger the appropriate menu display. The user account validation will also be managed through this function. If the user name, user ID, and PIN can not be verified by the system, the user will be returned to the login screen and an error message will be displayed. If the user inputs an incorrect password on more than three consecutive attempts, the access control function will disable the account. Reinstatement of the account will require the assistance of a library staff member or the administrator. The administrator will have direct access to the database server and will perform most media management functions while logged onto this server. This will result in immediate response times. Page 20 of 32 Requirements Specification S o f t w a r e Development Inc. JVD Account Management Function (Administrator Function) All user accounts will be managed by the administrator. Although the library staff may set up student/faculty accounts, only the administrator may set up library staff accounts and other administrator accounts. There are three subfunctions: account update, account creation, and account deletion. The menu will display these three options and the administrator will make the appropriate selection. The screen will display fields for the library staff member’s name, ID, PIN, user type, extension, position , and email address. The staff member will be given a default PIN and then prompted by the system for a new PIN on the first login. After the new account information has been entered, the administrator will click UPDATE button. If the account is being deleted, the administrator will select the DELETE button and the system will require verification that the account should really be deleted before if will be permanently removed from the system. The administrator will have direct access to the database server and will perform most media management functions while logged onto this server. This will result in immediate response times. Page 21 of 32 Requirements Specification S o f t w a r e Development V Inc. JVD Navigation Flow and Behavior Description Navigation Flow Student Diagram Login Failed HTML Browser Display Login Menu Success Banking System Error Validate Payment Display Payment Menu Get Balance Get Balance Login Display Main Menu Get Account Info Display Account Info Menu Get Checked Out List Return Request Display Checked Out Media Return Request Logoff Update Balance Return Request Return Request Get Reserved List Display Media Info Additional Search Request Reserve Request Search Request Reserve Request Return Request Media Query Display Media Search Menu Display Reserve Media Menu Return Request Additional Reserve Request Reserve Confirmation Reserve Request Display Reserved Media Events and Actions Current State Display Login Menu Event Login Input User ID and Password Action Validate Login Display Main Menu Menu Menu Selection Output Selection Page 22 of 32 Next State If login fails, loop to current state. Else Display Main Menu Selected State Requirements Specification S o f t w a r e Development Inc. JVD Current State Display Media Search Menu Event Media Search Input Search Parameters or Return Request Action Query Database using user defined parameters Display Media Info Menu Menu Selection If reserve request, update database. Display Media Reserve Menu Reserve Input Media Parameters Update database to reflect user’s request to reserve media Reserve Confirmation Menu Menu Selection Output Selection Display Account Info Menu Display Reserved Media Menu Menu Selection No Input Output Selection Display Checked Out Media Get Checked Out List No Input Query database for user’s checked out list Display Payment Menu Banking System Menu Menu Selection User’s payment parameters Output selection to banking system Validate user’s payment parameters Confirmation code from banking system Update account database to reflect user’s payment Update Balance Page 23 of 32 Get Reserved List Payment validation Update Balance Query database for user’s reserved media list Next State Display media info resulting from query, or return to Display Main Menu. Reserve Confirmation, or return to Display Media Search Menu Reserve Confirmation, or return to Display Reserve Media Menu Display Reserve Media Menu, or return to Display Main Menu Selected Page Return to Display Account Info Menu upon return request Return to Display Account Info Menu upon return request Banking System If success, Update Balance. Else, return to Display Payment Menu Display Account Info Menu Requirements Specification S o f t w a r e Development Inc. JVD Faculty Diagram Login Failed Display Login Menu HTML Browser Logoff Display Account Info Menu Display Media Info Additional Search Request Return Request Return Request Get Checked Get Account Out List Info Return Display Request Checked Return Get Out Media Reserved List Request Media Query Display Media Search Menu Login Display Main Menu Reserve Request Return Request Display Reserved Media Reserve Request Search Request Display Reserve Media Menu Return Request Additional Reserve Request Reserve Confirmation Reserve Request Events and Actions Current State Display Login Menu Event Login Input User ID and Password Action Validate Login Display Main Menu Display Media Search Menu Menu Menu Selection Search Parameters or Return Request Output Selection Display Media Info Menu Menu Selection If reserve request, update database. Page 24 of 32 Media Search Query Database using user defined parameters Next State If login fails, loop to current state. Else Display Main Menu Selected State Display media info resulting from query, or return to Display Main Menu. Reserve Confirmation, or return to Display Media Search Menu Requirements Specification S o f t w a r e Development Inc. JVD Current State Display Media Reserve Menu Event Reserve Input Input Media Parameters Action Update database to reflect user’s request to reserve media Reserve Confirmation Menu Menu Selection Output Selection Display Account Info Menu Display Reserved Media Menu Menu Selection No Input Output Selection Display Checked Out Media Get Checked Out List Page 25 of 32 Get Reserved List No Input Query database for user’s reserved media list Query database for user’s checked out list Next State Reserve Confirmation, or return to Display Reserve Media Menu Display Reserve Media Menu, or return to Display Main Menu Selected Page Return to Display Account Info Menu upon return request Return to Display Account Info Menu upon return request Requirements Specification S o f t w a r e Development Inc. JVD Library Staff Diagram Request Failed Login Failed HTML Browser Display Login Menu Create Request Login Logoff Generate Report Display Account Options menu Account Request Return Request Display Report Menu Request Failed Return Request Display Main Menu Report Request Return Request Return Request Display Create Account Menu Delete Request Media Request Display Update Account Menu Update Request Request Failed Display Delete Account Menu Display Account Change Confirmation Confirm Change Display Report Display Media Menu Checkout Request Request Failed Checkin Request Confirm Change Validate Request Display Checkin Menu Request Failed Vaildate Request Display Checkout Menu Validate Request Display Media Change Confirmation Events and Actions Current State Display Login Menu Event Login Input User ID and Password Action Validate Login Display Main Menu Display Account Options Menu Menu Menu Selection Menu Selection Output Selection Next State If login fails, loop to current state. Else Display Main Menu Selected State Output Selection Selected State Page 26 of 32 Menu Requirements Specification S o f t w a r e Development Inc. JVD Current State Display Create Account Menu Event Create Account Input Account parameters Action Query database to validate request Display Update Account Menu Update Account Account parameters Query database to validate request Display Delete Account Menu Delete Account Account parameters Query database to validate request Display Account Change Confirmation Display Media Menu Display Checkin Menu Confirm Account Change Menu User confirm Update database to reflect change Next State If request valid, Display Change Confirmation. Else loop to current state If request valid, Display Change Confirmation. Else loop to current state If request valid, Display Change Confirmation. Else loop to current state Display Account Options Menu Output Selection Selected Menu Checkin Media Menu Selection Media parameters Query database to validate request Display Checkout Menu Checkout Media Media parameters Query database to validate request Display Media Change Confirmation Display Report Menu Confirm Media Change Menu User confirm Update database to reflect change If request valid, Display Change Confirmation. Else loop to current state If request valid, Display Change Confirmation. Else loop to current state Display Media Menu Menu Selection Query database to generate selected report Display Report Display Report No Input No Action Page 27 of 32 Display report or Display Main Menu upon return request Return to Report Menu upon return request Requirements Specification S o f t w a r e Development Inc. JVD Administration Diagram Request Failed Login Failed HTML Browser Display Login Menu Add Request Login Display Add Account Menu Request Failed Logoff Account Request Display Main Menu Return Request Media Request Display Delete Media Menu Add Request Request Failed Request Failed Display Update Media Menu Validate Request Confirm Change Display Add Media Menu Update Request Delete Request Request Failed Delete Request Display Delete Account Menu Return Request Display Media Management Menu Display Update Account Menu Display Update Account Management Request menu Display Account Change Confirmation Request Failed Vaildate Request Validate Request Validate Request Display Media Change Confirmation Confirm Change Events and Actions Current State Display Login Menu Page 28 of 32 Event Login Input User ID and Password Action Validate Login Next State If login fails, loop to current state. Else Display Main Menu Requirements Specification S o f t w a r e Development Inc. JVD Current State Display Main Menu Display Account Management Menu Display Add Account Menu Event Menu Input Menu Selection Menu Selection Action Output Selection Next State Selected State Output Selection Selected State Add Account Account parameters Query database to validate request Display Update Account Menu Update Account Account parameters Query database to validate request Display Delete Account Menu Delete Account Account parameters Query database to validate request Display Account Change Confirmation Display Media Management Menu Display Add Media Menu Confirm Account Change Menu User confirm Update database to reflect change If request valid, Display Change Confirmation. Else loop to current state If request valid, Display Change Confirmation. Else loop to current state If request valid, Display Change Confirmation. Else loop to current state Display Account Options Menu Menu Selection Output Selection Selected Menu Add Media Media parameters Query database to validate request Display Update Media Menu Update Media Media parameters Query database to validate request Display Delete Media Menu Delete Media Media parameters Query database to validate request Display Media Change Confirmation Confirm Media Change User confirm Update database to reflect change If request valid, Display Change Confirmation. Else loop to current state If request valid, Display Change Confirmation. Else loop to current state If request valid, Display Change Confirmation. Else loop to current state Display Media Menu Page 29 of 32 Menu Requirements Specification S o f t w a r e Development VI Inc. JVD Validation and Criteria Performance Bounds Response Time The system shall respond to any change request within three seconds, while query requests shall be completed in no more than ten seconds. In addition, the time required for either of these events will not be dependant on the number of users connected to the system. These requirements will be achieved by designing the server platforms with the capability to accommodate four times the maximum number of users during peak access time periods. Reliability System up time shall be no less than 98%. This will be achieved by the redundant server hardware platform implementation, which will facilitate, at a minimum, one server platform being on line during maintenance, scheduled and unscheduled. Classes of Tests Functionality This set of tests will verify system functionality is operational and meeting design criteria. Performance This set of tests will verify that the system is operating within the limits set in the Performance Bounds Section above. Reliability This set of tests, in conjunction with historical data, will allow overall system up time to be evaluated and compared to the specification set in the Performance Bounds Section above. Page 30 of 32 Requirements Specification S o f t w a r e Development VII Inc. JVD Bibliography Pressman, Roger S. Software Engineering - A Practitioner's Approach. Fifth edition. The McGraw-Hill companies, Inc. Barker, Richard. CASE Method Entity Relationship Modeling. Addison-Wesley. Page 31 of 32 Requirements Specification S o f t w a r e Development Inc. JVD VIII Appendix Major Function Summary Login Function (Shared Function) – provides security and to control the user’s level of access. Media Search Function (Shared Function) – search the media database for books, magazines/periodicals, and multi-media Media Reservation Function (Student/Faculty Function) – allow users to reserve media resources that are currently checked out Account Status Check Function (Student/Faculty Function) – allow users to check the status of their library account Overdue Fee Payment Function (Student Function) – allow users to pay overdue fees through online banking system User Account Set-up Function (Library Staff and Administrator Function) – allow library staff to add, delete, and update user accounts Media Check in/Check out Functions (Library Staff Function) – allow library staff to check media in and out Report Generation Function (Library Staff and Administrator Function) – allow library staff and administrator to generate reports Media Management Function (Administrator Function) – allow administrator to add, delete, and update media resources Access Control Function (Administrator Function) – controls the users level of access and provides user verification Account Management Function (Administrator Function) – allow administrator to add, delete, and update library staff accounts Page 32 of 32 Requirements Specification