Software Requirements Specification Template Software Requirements Specification for Tiki Book Version 1 0 approved Prepar < > Table of Contents iiTable of Contents Revision History ii 1 Introduction 1 1 1 Purpose 1 1 2 Document Conventions 1 1 3 Intended Audience and Reading Suggestions 1 1 4 Project Scope 1 1 5 References 1 2 Overall Description 2 2 1 Product Perspective 2 2 2 Product Features 2 2 3 User Classes and Characteristics 2 2 4 Operating Env.
NOTE: This template is shareware downloaded from www.processimpact.com All shareware payments are donated to the Norm Kerth Benefit Fund to help a consultant who is disabled with a brain injury Please visit http://www.processimpact.com/norm_kerth.html to make a shareware payment ($10 suggested) Thank you! Software Requirements Specification for Tiki Book Version 1.0 approved Prepared by Trịnh Nhật Tân Present by Hồ Quốc Bửu eLearning versions of several popular Process Impact training seminars are available at www.processimpact.com/elearning.shtml, including “In Search of Excellent Requirements,” “Exploring User Requirements with Use Cases,” “Writing High-Quality Requirements,” “Software Inspections and Peer Reviews,” and “Project Management Best Practices” Single-user and corporate-wide site licenses are both available Copyright © 2002 by Karl E Wiegers Permission is granted to use, modify, and distribute this document Software Requirements Specification for Page ii Table of Contents Introduction .1 Overall Description System Features Change management 40 Supporting Information 41 Revision History Name Tiki-B [Gõ đây] Date 28/9/2021 Reason For Changes Initial Draft Version 1.0 Software Requirements Specification for Introduction 1.1 Purpose Page The purpose of this Systems Requirement Specifications document (henceforth referred to as SRS) is to provide the guidelines necessary to design and implement software that fulfills all the requirements given Designed for the need of Tiki E-Book Online Shopping Software (henceforth referred to as Tiki), the document will contain enough information so that in the event that the current team is not able to complete the software that still fulfills all the requirements This SRS will show requirements that the software need to claim the final version Moreover, this document can be used by clients as a representation of their requirements for the software Completing all the requirements in this document will be completing the contract with the clients 1.2 Definition, Acronyms, and Abbreviations Tiki-B: Tiki E-Book Online Shopping Software, the software that this SRS made for, selling Book – including E-Book and Physical Book and other Book related product SRS – Systems Requirements Software, this document which outlines the requirements that the software must achieve Admin: Person who use the program to prepare Book and manage Customer account Customer: consumer who buy books using this software 1.3 Intended Audience and Reading Suggestions This document is made for anyone who involved making Tiki-B software 1.4 Project Scope This SRS will cover the software Tiki E-commercial Software or Tiki This name is simply a developmental project name and in no ways reflects the final marketable name for the product Tiki-B will be an application to provide online shopping interface on multiple mobile devices This software focus on only books – including both physic and electronic books and other book related products Tiki aims to provide a smooth and easy in both shopping and reading experience by providing useful features and easy to use tools [Gõ đây] Software Requirements Specification for Page Tiki-B will provide an interface where the customer must select a book to get further information about it Tiki-B will ONLY sell censor-approved and non-age restricted books and products The objective of Tiki-B is to selling books - including both physical and electronic books at a good price by making the online shopping procedures better and easier Tiki-B's ultimate goal is to create online shopping and reading habits, thereby capturing the Electronic-Book Shopping Industry market The second goal is to catch the book market trends and thereby improve the book will be sold from it 1.5 References All the figure references below can be found in this link https://www.figma.com/file/4oORuOa4euaV6iDRZeRGtk/Untitled?node-id=0%3A1 Overall Description 2.1 Product Perspective Tiki-B is part of Tiki E-Commerce, which specializes in books Despite being part of Tiki E-Commerce, Tiki-B mostly independent and self-contained An integrated database will ensure the storage and the retrieval of customer related information, and required new products data from the server 2.2 Product Features i) Register function New customer must register in order to anything else, they will provide unique username and password, basis personal info which will be store on the server if valid and will allow the logging in of the registered user ii) Log-in function Registered users must enter their unique username/password combination in order to make a purchase or read their purchased book iii) Searching and sorting function The searching function will work as a searching bar, which always is displayed, go with a letters-based items suggestion system On the other hand, the sorting system will be built base on clients' requests in the present database and documents provided lately iv) Main screen feature, work as a list of books or produces after searching and/or sorting certain conditions This feature gave first-look to books on [Gõ đây] Software Requirements Specification for Page the list by their name, picture (cover for books and picture for produces), price, selling rate and amount v) Full-information feature, work with both books and produces after customer made their choice, which including: + A item’s full name + A descriptions box + A rating system + A price tag + Multiple picture frame + An amount choosing box vi) Cart feature to store selected items including a temporary price summing vii) Settings function A function allow customer change their basic info and password viii) Log-out Customer logs out to let another account log-in 2.3 User Classes and Characteristics - Type of users: [Gõ đây] Software Requirements Specification for Page + Mobile device customers at any age who interest in book and book related product + Admin of the application - Technical expertise: + All customer needs to have minimal technical expertise (need to know how to use smart mobile devices) + Admin need to have basic knowledge about database management 2.4 Operating Environment - Platform: + Must work on mobile smart devices Operating system: + For Android, must be 4.4 or above + For IOS, must be IOS or above Hardware: + The device must have touch screen + At least 256 MB of RAM + Minimum 480 x 640 screen resolution with 128 color 2.5 Design and Implementation Constraints - The device must have Internet access to search for new books or make purchases System Features 3.1 Interfaces 3.1.1 First Screen [Gõ đây] Software Requirements Specification for Figure 3.1.1: The first screen 3.1.1.1 3.1.1.1 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.1.2 User Name Field Allow customer to put username in, works as a text box Tap and keyboard will pop-up for text input User ID typed is displayed in the text box Tap within the button, Alphanumeric characters There should be none None Figure 3.1.1, item A1 Item Purpose Input Output Password Field Allow customer to put password in, works as a text box Tap and keyboard will pop-up for text input Customer Password will be represented by asterisks [Gõ đây] Page Software Requirements Specification for Page Validity Error Handling Relationships Reference 3.1.1.3 Tap within the button, Alphanumeric characters There should be none None Figure 3.1.2, item A2 Item Purpose Input Output Login Allows customer to Login Tap The customer is redirected to the Main Shopping Screen (3.1.4) if login was successful; otherwise the Login Screen (3.1.1) will be displayed again (or an error page) Tap within the button There should be no empty fields, there should be an existing User ID present in the Customer Account Database Relates to Customer Accounts File Figure 3.1.3, item A3 Validity Error Handling Relationships Reference 3.1.1.4 Item Purpose Input Output Validity Error Handling Relationships Reference Register Allow Customer to redirected to the Registration Screen (3.1.2) Tap Redirected to the Registration Subsystem Tap within the button There should be none None Figure 3.1.4, item A4 If the customer already login, they will be redirect to the Main shopping screen (3.1.4) 3.1.2 Registration Screen [Gõ đây] Software Requirements Specification for Figure 3.1.2 3.1.2.1 Item Purpose Input Output Validity [Gõ đây] User Name Field Allow Customer to put username in, works as a text box Tap and keyboard will pop-up for text input User ID typed is displayed in the text box Tap within the button, Alphanumeric characters Page Software Requirements Specification for Error Handling Relationships Reference 3.1.2.2 There should be none None Figure 3.1.2, item B1 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.2.3 Item Purpose Input Output Validity Error Handling Relationships Reference Password Field Allow Customer to put password in, works as a text box Tap and keyboard will pop-up for text input Customer Password will be represented by asterisks Tap within the button, Alphanumeric characters There should be none None Figure 3.1.2, item B2 Page Re-enter Password Field Allow Customer to put password in for verification, works as a text box Tap and keyboard will pop-up for text input Customer Password will be represented by asterisks Tap within the button, Alphanumeric characters Must match with Password Field (3.1.1.2) None Figure 3.1.2, item B3 3.1.2.4 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.3 Register Allow Customer to redirected to the basic info of the Basis Information after the Registration Subsystem complete (3.1.3) Tap Redirected to the Basis Information Screen (3.1.3) if Register was successful; otherwise the Resister Subsystem (3.1.2) will be displayed again (or an error page) Tap within the button There should be no empty fields, there should be none existing User ID present in the Customer Account Database Relates to Customer Accounts file Figure 3.1.2, item B4 Basic Information Subsystem [Gõ đây] Software Requirements Specification for 3.1.7.1 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.2 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.3 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.4 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.5 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.6 Item Purpose Input Output [Gõ đây] Page 27 Select Frame Contain Button to allow customers to select all to buy or delete what selected None Display the button to select all and delete None There should be none None Figure 3.1.7a, item G1 Select all button Allow customers to select all Tap Mark all the books in the cart selected Tap within button, there must be at least book in cart If there is no book in the cart, the button can not be tap Relates to Customer Accounts file Figure 3.1.7a, item G2 Delete button Allow customers to delete all books marked as selected Tap Mark all the books in the cart selected Tap within button, there must be at least book marked as selected If there is no book marked as selected, the button can not be tap Relates to Customer Accounts file Figure 3.1.7a, item G3 Select button Allow customers to select the book next to it Tap Mark the book next to it as selected Tap within button There should be none None Figure 3.1.7a, item G4 Book Cover Image Give a picture of Book Cover Image None Display the book cover image Book image data exists If the book cover image data does not exist, the current frame will display an error image Relates to box database file Figure 3.1.7a, item G5 Book Name Show name of the book in the same section None Display the book name Software Requirements Specification for Validity Error Handling Relationships Reference 3.1.7.7 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.8 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.9 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.10 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.7.11 Item Purpose Input Output Validity Error Handling [Gõ đây] Page 28 Book data exists If the book data does not exist, the current frame will display an error message Relates to box database file Figure 3.1.7a, item G6 Book Price Show price of the book in the same section None Display the book price Book data exists If the book data does not exist, the current frame will display an error message Relates to box database file Figure 3.1.7a, item G7 Select quantity Let customers choose the number of book Tap in + or – for add and sub 1, or inside the number box then type the number Display the number selected The quantity selected must be less than or equal to the number of books left in stock If the quantity selected is greater than the number of books remaining in stock, an error message will be displayed to inform the number of books remaining in stock Relates to box database file Figure 3.1.7a, item G8 Total Book Price Display the price of the book after calculating the quantity (3.1.7.8) None Display the book price after calculating the quantity Book data exists If the book data does not exist, the current frame will display an error message Relates to box database file Figure 3.1.7a, item G9 Delete button Allow customers to delete the book in the same section Tap Delete the book in the same section Tap within button There should be none Relates to Customer Accounts file Figure 3.1.7a, item G3 BUY Frame Contain the customer total price (3.1.7.12) of all selected book and BUY (3.1.7.13) button None Display the BUY button and total price None There should be none Software Requirements Specification for Relationships None Reference Figure 3.1.7a, item G13 3.1.7.12 Item Total Price Purpose Show customer total price of all selected book Input None Output Display the BUY button and total price Validity None Error Handling There should be none Relationships None Reference Figure 3.1.7a, item G12 3.1.7.13 Item BUY Purpose Let customer BUY all the selected book Input Tap Output An order will be placed with the information in the customer's database Validity Tap within button, there must be at least book selected in cart Error Handling If there is no book selected in the cart, the button can not be tap Relationships Relates to customer Accounts file Reference Figure 3.1.7a, item G13 3.1.7.14 The Cart screen can be scrolled to get more item in cart (Figure 3.1.7b) [Gõ đây] Page 29 Software Requirements Specification for 3.1.8 Setting Screen Figure 3.1.8 [Gõ đây] Page 30 Software Requirements Specification for 3.1.8.1 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.8.2 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.8.2 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.8.3 Item Purpose Input Output Validity Error Handling Relationships Reference [Gõ đây] Customer Name Show name of the customer current login None Display the customer name None There should be none Relates to customer database file Figure 3.1.8, item H1 Change password Allow customer to change their password Tap Redirect to the change password screen (3.1.9) Tap within button There should be none Relates to customer database file Figure 3.1.8, item H2 Change basic information Allow customer to change their basic information Tap Redirect to the basic information screen (3.1.3) Tap within button There should be none Relates to customer database file Figure 3.1.8, item H3 Logout Allow customer to logout Tap Redirect to the First screen (3.1.1) Tap within button There should be none None Figure 3.1.8, item H4 Page 31 Software Requirements Specification for 3.1.9 Change password screen Figure 3.1.9 [Gõ đây] Page 32 Software Requirements Specification for Page 33 3.1.9.1 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.9.2 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.9.3 Item Purpose Input Output Validity Error Handling Relationships Reference 3.1.9.4 Item Purpose Input Output Validity Error Handling Relationships Reference [Gõ đây] Current Password Field Allow customer to put their current password in for verification, works as a text box Tap and keyboard will pop-up for text input Customer Password will be represented by asterisks Tap within the button, Password type in must match current password (3.1.1.2) If password type in does not match the current password, an error message will display to inform the customer Relates to customer database file Figure 3.1.9, item I1 New Password Field Allow customer to put their password in, works as a text box Tap and keyboard will pop-up for text input Customer Password will be represented by asterisks Tap within the button, Alphanumeric characters If the password type in invalid, an error message will display to inform the customer Relates to customer database file Figure 3.1.9, item I2 Re-enter New Password Field Allow customer to put their new password in for verification, works as a text box Tap and keyboard will pop-up for text input Customer Password will be represented by asterisks Tap within the button, Password type in must match New Password (3.1.9.2) If password type in does not match the New Password (3.1.2.3), an error message will display to inform the customer Relates to customer database file Figure 3.1.9, item I3 Confirm Allow customer to confirm their new password Tap Change the current password to new password Tap within the button There must be no error in Current Password (3.1.9.1), New Password (3.1.9.2), Re-enter New Password (3.1.9.3) Relates to Customer Accounts file Figure 3.1.9, item I4 Software Requirements Specification for 3.2 Functions This section explains all functional requirements from a developer’s point of view It is categorized by screen [Gõ đây] Page 34 Software Requirements Specification for 3.2.1 Page 35 Accounts System 3.2.1.1 The system should allow customers to login Description Sequence of Operations Validity checks Input Output Error Handling The system should allow customers to login the their account to continue shopping with their cart and information Customer must type in User ID and Password in the corresponding text fields Customer must click on the login button Customer must login with the correct User ID and Password Registered user id and password, and tap “LOGIN” Verify and continue to the Main Shopping Screen If customer id and/or password are incorrect, then display an error message 3.2.1.2 The system should allow customers register an account Description Sequence of Operations Validity checks Input Output Error Handling 3.2.2 The system should allow customers to register an account Customer click on register The system redirect customer to register screen, fields are filled by customer Customer tap confirm, then the system checks the database; if valid, then redirect customer to the basic information screen Customer put their basic information in the fields, if valid, add new Customer with basic information into the Customer Table All the fields are filled out for account creation Tap “REGISTER” option Display either a success or failure message depending on of the registration was successful or not, if Register success, go to the Main shopping screen if certain fields are not filled out, or the same User ID already exist, then print out the error message and tell the customer to try again Setting System 3.2.2.1 The system should allow customers to change password Description Sequence of Operations Validity checks Input Output Error Handling The system should allow customers to change password Customer click on change password The system redirect customer to change password screen, fields are filled by customer Customer tap confirm, then the system checks the database; if valid change the password, then redirect customer to the setting screen All the fields are filled out correctly Tap “Change Password” option Display either a success or failure message depending on of the “Change Password” was successful or not, if “Change Password” success, go to the Setting screen if certain fields are not filled out, or incorrect, then print out the error message and tell the customer to try again 3.2.2.2 The system should allow customers to change basic information Description [Gõ đây] The system should allow customers to change basic information Software Requirements Specification for Sequence of Operations Validity checks Input Output Error Handling Page 36 Customer click on “Change basic information” The system redirect customer to “Change basic information” screen, fields are filled by customer Customer tap confirm, then the system checks the database; if valid change the information, then redirect customer to the setting screen All the fields are filled out correctly Tap “Change basic information” option Display either a success or failure message depending on of the “Change basic information” was successful or not, if “Change basic information” success, go to the Setting screen if certain fields are not filled out, or incorrect, then print out the error message and tell the customer to try again 3.2.2.3 The system should allow customers to logout Description Sequence of Operations Validity checks Input Output Error Handling 3.2.3 The system should allow customers to logout of the their account Customer tap the Logout Button Customer is logged out and redirect to the First screen (Login screen) Customer logged in with a valid account Customer selects “LOGOUT” option and a confirmation will be displayed and then customer selects either “YES” or “NO” Display a message indicating that the User has logged out and redirect them to First screen (Login screen) None Shopping System 3.2.3.1 The system should allow customers to search/filter for book Description Sequence of Operations Validity checks Input Output Error Handling The system should allow customers to search/filter for book Customer tap the search bar and input their search Customer has option to choose filter Customer tap search icon and is redirected to a new “Main shopping screen” with a new result related to the search/filter Customer input can be found in Book database Customer tap “Search” bar, input their search and filter Customer is redirected to the new “Main shopping screen” If there is no result match the input, an empty page with a message will appear to inform customer 3.2.3.2 The system should allow customers to select book, add book to cart, view review and check review Description Sequence of Operations [Gõ đây] The system should allow customers to select book, add book to cart, view review and check review Customer tap the book on screen The system redirect customer to the “Full detail” of the book Customer can add the current book to cart, write review for the book, or check review by other customer If customer tap in write review, a keyboard will appear for input, then Software Requirements Specification for Validity checks Input Output Error Handling None Page 37 customer must tap confirm to post review Customer tap on book, then “Add Book to Cart” or “Write review” or scroll down to “check review” If customer tap “Add Book to Cart”, the current book will be add to customer’s cart, if customer tap “Write review”, a Field will appear for customer to input their review, customer can view more review by keep scrolling down If there is none book left in stock or the quantity larger than the remain in stock, the system will display an error message to inform that 3.2.3.3 The system should allow customers BUY book Description Sequence of Operations Validity checks Input Output Error Handling [Gõ đây] The system should allow customers to BUY book The customer taps the BUY button on “Select Book” screen or “Cart” screen The system will automatically place an order with information taken from customer database There must be at least book left in stock or in cart Customer tap on BUY button The system place an order with information taken from customer database If there is none book left in stock or the quantity larger than the remain in stock, the system will display an error message to inform that Software Requirements Specification for Page 38 3.3 Performance Requirement This section describes the expected performance requirements This is an estimation of the system, and all the numerical values may vary depends on how large the final application is 3.3.1 Static numerical requirements The system shall support only one terminal The system shall support only one simultaneous customer on each device; however, it shall support multiple customer to create personal accounts and access the system on the same device at different times The system shall run on both Android (4.4 and above) and IOS (6 and above) device with at least 128 MB of memory The device has to be connected to the internet first in order to anything else 3.3.2 Dynamic numerical requirements The system shall be loaded and functioning within 15 seconds 95% of the time after starting the application Each account shall be stored and activated within seconds after creation Each screen shall be loaded and swap within 10 seconds Each user input shall be responded within second 3.4 Database Accessibility and Security The database will be stored and accessed from the server through internet and only be viewed and modified by admin (and the owner of that account) Customer Basic Information will be encrypted for further security 3.5 Software System Attributes 3.5.1 Reliability The data files will be stored on a nonvolatile storage device such as a hard drive so that the data files can be retained when the system is shut off, the system will check the validity of the user files when they are loaded If there is an error or un-match the system will try to recover it from the server [Gõ đây] Software Requirements Specification for 3.5.2 Page 39 Availability The system will only run infrequently The system will allow the user to restart the application after a crash All data will be saved on the server in real time The customer will be able to load their data file after the system has been restarted and continue using the system The system will have an average run time of 15 to 20 per session depending on the user, although the user may use the system longer 3.5.3 Security The system will use the device’s default operating system security The system will not try to take any information that is not allowed by the customer The data files will be encrypted on the server The system checks the validity of the data files when it is running and if the data is invalid the system will try to recover it from the server The system will not keep log files of the User’s usage 3.5.4 Maintainability The admin will be able to update new book often and the system will automatically take the new directly data from the server without any maintenance downtime 3.5.5 Portability The product will be able to run on IOS and Android The software will be written in a universal code language for both Android and IOS portability; there will be no platform specific code [Gõ đây] Software Requirements Specification for Page 40 Change management Any requests to change the project scope and requirements shall be discussed by all the members of team BFG A change will be made only when the majority of the team and the project manager, Tân (tanb1805812@student.ctu.edu.vn) agree on the change In this case, the SRS document shall be updated by the team members in order to reflect the changes, and the date of the change shall be noted in the file If this change request is made by the client or anyone outside of the team, he or she will have to contact the team communication manager, Tân (tanb1805812@student.ctu.edu.vn) via email If a the change request is made by a team member, he or she can raise it during the weekly team meeting or contact other team members via email [Gõ đây] Software Requirements Specification for Supporting Information 5.1 Outline of section 3.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 [Gõ đây] First Screen…Page Registration Screen…Page Basic Information Screen…Page Main Shopping Screen…Page 11 Search Screen…Page 16 Full Detail Screen Page 19 Cart Screen…Page 25 Setting Screen…Page 30 Change Password Screen…Page 32 Page 41 ... https://www.figma.com/file/4oORuOa4euaV6iDRZeRGtk/Untitled?node-id=0%3A1 Overall Description 2.1 Product Perspective Tiki- B is part of Tiki E-Commerce, which specializes in books Despite being part of Tiki E-Commerce, Tiki- B mostly independent and self-contained... document is made for anyone who involved making Tiki- B software 1.4 Project Scope This SRS will cover the software Tiki E-commercial Software or Tiki This name is simply a developmental project... that fulfills all the requirements given Designed for the need of Tiki E-Book Online Shopping Software (henceforth referred to as Tiki) , the document will contain enough information so that in the