E-Library – Requirements Specification
This document is an example of a Software Requirements Specification document which can be imported into Polarion, then exported and re-imported in a collaborative process utilizing the Word Round-trip feature. It is intended for demonstration only. The document describes a fictitious online eBook lending library with optional eBook online sales component. The focus is on simplicity rather than depth and completeness, that you may more easily understand the Document features. This system provides an online portal analogous to a public library where registered patrons can borrow books.
The main difference is of course that the books in the library catalog are all in electronic formats which incorporate Digital Rights Management (DRM) enabling the system to “lend” an allowed number of copies to registered users. In addition, when a book has the proper rights, the E-Library can sell patrons a license for a personal copy of the electronic book which they can retain permanently. Carti. e. “shopping cart” – a collection of one or more eBooks that a patron has marked for purchase during the current session CatalogThe database of eBooks available for loan and possibly for sale as well Check OutThe act of “borrowing” an eBook from the library.
Term is not used in reference to the process of paying for a purchased eBook (see Purchase) Check InThe act or “returning” a previously “borrowed” (checked out) eBook. DRMDigital Rights Management eBookAn electronic book or other publication lent or sold by the E-Library system ISBNInternational Standard Book Number LCLibrary of Congress Loansee Lend LendThe process of flagging an eBook so the appropriate DRM understands that one of the allowable number of “copies” has been allocated to a patron for the lending period. PatronA user of the E-Library portal
PurchaseThe process by which library patrons purchase a DRM license for a personal copy of an eBook. Also the action of a user navigating into the process for purchasing the eBooks listed in their Cart. StoreAn area of the portal that lists a subset of the library’s eBooks, that being eBooks for which users may purchase a license for a personal copy of the eBook. Administration Requirements This section outlines the main requirements that relate to administration and management of the E-Library system.
Types of User Accounts and Permissions
User can access any component or area of the system including accounts of other users LibrarianUser can access the catalog management features of the system PatronUser can access the general library features, including browsing, searching, check out, check in, reserve, and purchase StudentSame as a Patron, except may not access Purchase features The system must provide user management to manage the user role assignments.
The system must provide user interfaces for the following roles/functions: System Administration – including database management, server management, backups, etc. User type: Administrator. Catalog Management – all non-technical functionality related to managing eBooks in the library catalog. User types: Administrator, Librarian 3. User Requirements This section outlines the main requirements that relate to the end users who borrow and purchase eBooks from the E-Library.
Users must be able to create Patron or Student accounts by registering online. A suitable registration page or pages should be provided. New users must go thru a verification process (TBD) to confirm their email address before their account is activated in the system. User Login/out Once verified, users must be able to log in to the portal. Users must be able to change their password (but not their user name/ID) There must be a way for users to retrieve a lost password Users must be able to log out.
There must be a session timeout mechanism that will automatically log the user out after a period of time (period TBD). On logout, the contents of user’s Select List and Cart are cleared. The contents of the Reserved List is preserved. Users must be able to search for eBooks The system should provide interfaces for both “simple” and “advanced” searches,“simple” should be a search on any one of fields Author, Title, or ISBN. “advanced” should provide an easy way to construct complex searches on multiple fields with different logic .
The system should provide several “quick search” options:
- Newest eBooks – returns a listing of the 10- 50 (configurable) most recently added eBooks
- Top 20 Titles – returns a listing of the 20 most frequently borrowed eBooks oThe actual number should be configurable by an administrator oThe UI should provide a pick list of values: 10, 20, 25, 50, 100
- Latest Returns – returns a list of 10-50 (configurable) most recently checked-in eBooks
Either explicitly checked in by a patron, or lending period expired freeing the eBook for loan
- eBooks listed in this set must not have any reservations must be available for immediate loan. Users must be able to browse the eBooks in the catalog Users must be able to select how they want to browse: Browse by Author
- Must be able to select an alphabetical subset… e. g. author names beginning with A, or M for example,Browse by Title oMust be able to select an alphabetical subset… e. g. author names beginning with A, or M for example,Browse by genre (e. g. fiction, non-fiction, science fiction, etc.
Advanced Catalog Browsing Users should be able to browse by Publisher Users should be able to browse by Book Award Users should be able to browse according to a combination of data, such as by Author + Genre, Title + Year of Publication, Author + Book Award, etc. 1. 12. Create Select List The Select List is similar to a shopping cart except that the checkout processes a loan of the eBooks in the list rather than a purchase. Each user must be able to save a list of eBooks they want to borrow – their “Select List”.
The Select List is only for the current session and is cleared when the session terminates.Each eBook added to the Select List remains in the list for 20 minutes. During this time, the number of copies available for loan is reduced by 1 and the number available is shown to other users. oIf the time expires and the eBook is removed from the Select List, then the number of copies available for loan is increased by 1 and the number available is shown to other users. The number of eBooks user may add to their Select List is limited to the checkout limit defined in the system configuration minus the number of eBooks patron has currently checked out. oIf user currently has the maximum number checked out, then all Add to Select List links should be disabled for that user. If all copies allowable under the eBook’s DRM are currently on loan to other users, then the eBook cannot be added to any user’s Select List (the UI widget is disabled) and the UI must inform the user that no copy is currently available for loan.
Check Out eBooks
User should be able to navigate to Check Out any time via a readily visible link or button The checkout page must display the eBooks in the user’s Select List The user must be able to remove eBooks from the Select List at this point Via an appropriate UI widget, user should be able to execute check out which processes on all the eBooks left on the Select List. When checkout is complete, user must be presented with a page of the checked out titles, each title having a Download widget. Clicking the widget downloads a copy of the eBook with appropriate DRM applied.
Each checked out eBook should remain listed on the user’s Downloads page until the loan period expires. Users must be able to “return” any eBook on their Downloads page that has not yet been downloaded via an appropriate widget. Executing the return must remove the eBook from the user’s downloads page, decreases the count of eBooks the user currently has checked out (if that value is greater than zero), and increases by 1 the number of copies of the eBook available for loan.