User Story - noorshuvo95/CSE327-Software-Engineering GitHub Wiki

4.1.1

Functional requirement

ID: Performance Functional Requirement 1

TITLE: User Registration ACTOR: User PURPOSE: Register the user information OVERVIEW: Given that a user has accessed the website then the user should be able to register into the system. The user must provide Name, Password, Phone Number. TYPE: Primary function PRIORITY: High DEP: None COURSE OF EVENTS: I) Open the website II) Enter all the information III) Click on register ALTERNATIVE COURSE OF EVENTS: I) Email not match with registration, show error: Please provide a valid email II) Password is less than 6 digits, show error: Password must include at least 6 digits III) Any field left blank, show error: All the fields must be filled up IV) User type not selected, default type will be student.

4.1.2 Functional requirement ID: Performance Functional Requirement 2 TITLE: User Login ACTOR: User PURPOSE: Login the user OVERVIEW: Given that the user is already registered, the user will be able to login by providing the email and password. TYPE: Primary function PRIORITY: High DEP: PFR1 COURSE OF EVENTS: I) Select Already Registered button from the registration page. II) Enter email and password III) Click on login ALTERNATIVE COURSE OF EVENTS: I) Email not exist, show error: This email is not registered yet. Please Register first. II) Password does not match: Password or email is not correct. Please retry! III) Any field left blank, show error: All the fields must be filled up

4.1.3 Functional requirement ID: Performance Functional Requirement 3 TITLE: Multiple Search ACTOR: User PURPOSE: Search for book, they want to read OVERVIEW: From the home page the user must be able to search for their desirable books. The search will find the match the title of the book. TYPE: Primary function PRIORITY: Medium DEP: PFR2 COURSE OF EVENTS: I) Type the search keywords II) Provide Tags (Optional) III) Click on search ALTERNATIVE COURSE OF EVENTS: I) Search keywords are empty, show error: Please enter a keyword

4.1.4 Functional requirement ID: Performance Functional Requirement 4 TITLE: Collection ACTOR: User PURPOSE: Search the books OVERVIEW: From the product page a user will be able to click on place to get the book. User can also bookmark the book for future search here.They can bookmark multiple books. TYPE: Primary function PRIORITY: High DEP: PFR2 COURSE OF EVENTS: I) Click on a Book ALTERNATIVE COURSE OF EVENTS: I) Address must be valid, Admins will check for the validity of the address and manually send SMS to the user regarding the issue.

4.1.5 Functional requirement ID: Performance Functional Requirement 5 TITLE: Account Page ACTOR: User PURPOSE: View the profile page OVERVIEW: Show the user information to the user. This information will include, name, email. User will be able to modify any of this information except for the mail. TYPE: Primary function PRIORITY: Low DEP: PFR2 COURSE OF EVENTS: I) Select Profile button from home II) Click on update information ALTERNATIVE COURSE OF EVENTS: I) PDF not downloaded properly, show error: Couldn’t connect to server, please check your internet connection and try again later!

4.1.6 Functional requirement ID: Performance Functional Requirement 6 TITLE: Book Library Page ACTOR: User PURPOSE: View the Book Library page OVERVIEW: Book Library page can be accessed from various other views. It is assumed that this page is accessed by clicking on a book link. The information regarding that book pdf link will then be shown here. User can view the details of a book pdf from this view. TYPE: Primary function PRIORITY: High DEP: none COURSE OF EVENTS: I) Select a book pdf II) Select any functionality provided by the book library page ALTERNATIVE COURSE OF EVENTS: I) Book pdf details not downloaded in time limit of 50 seconds, show error: Couldn’t connect to server, please check your internet connection and try again later! -Appear retry button

4.1.7 Functional requirement ID: Performance Functional Requirement 7 TITLE: Administrator Login ACTOR: Admin PURPOSE: Login the admin OVERVIEW: Given that the admin is already registered the admin will be able to login in trough a web portal. TYPE: Primary function PRIORITY: High DEP: none COURSE OF EVENTS: II) Enter email/username and password III) Click on login ALTERNATIVE COURSE OF EVENTS: I) Email not exist, show error: This email/user is not registered yet. Please Register first. II) Password does not match: Password or email is not correct. Please retry! III) Any field left blank, show error: All the fields must be filled up

4.1.8 Functional requirement ID: Performance Functional Requirement 8 TITLE: Admin Dashboard ACTOR: Admin PURPOSE: View the admin dashboard OVERVIEW: The admin dashboard will show books overview and analytics, recent activity and latest search. TYPE: Primary function PRIORITY: High DEP: PFR7 COURSE OF EVENTS: I) Change book pdf status II) View book pdf details ALTERNATIVE COURSE OF EVENTS: I) No book pdf to view

4.1.9 Functional requirement ID: Performance Functional Requirement 9 TITLE: Category Menu ACTOR: Admin PURPOSE: Add new, remove or edit existing categories OVERVIEW: The admin will be able to create a new category. He will also be able to remove or edit existing categories. TYPE: Primary function PRIORITY: High DEP: PFR9, PFR8 COURSE OF EVENTS:

I) add a new category II) Edit existing category III)Remove existing category ALTERNATIVE COURSE OF EVENTS: I) No category to edit/delete II) Category Limit reached, no more category can be added.

4.1.10 Functional requirement ID: Performance Functional Requirement 10 TITLE: Book library menu ACTOR: Admin PURPOSE: Add new, remove or edit existing books OVERVIEW: The admin will be able to create a new book. He will also be able to remove or edit existing book. TYPE: Primary function PRIORITY: High DEP: PFR7, PFR8, PFR9 COURSE OF EVENTS: I) add a new book II) Edit existing book III)Remove existing book III) Add book description ALTERNATIVE COURSE OF EVENTS: I) No book to edit/delete II) Books capacity reached: no more books can be added!. III)Book file size too big: File is too large to upload

4.1.11 Functional requirement ID: Performance Functional Requirement 2 TITLE: AI Chat-Bot ACTOR: User PURPOSE: an AI chat-bot which helps a user to search a specific book and it gives the user the link of that specific book and also recommends the best book. OVERVIEW: From the book page the user can select the AI chat-bot button. This bring a small window in the page, where the user ask about a specific book pdf and our AI chat-bot will give the best answer for that question . TYPE: Primary function PRIORITY: High DEP: PFR8 COURSE OF EVENTS: I) Select the AI chat-bot button from any page II) Click on the AI chat-bot For use III) Ask Question about book IV) Automation answer will be given. V) Exit from the window. ALTERNATIVE COURSE OF EVENTS: I) If book not found, show error: “Please check the spelling For product” -ask for correct spelling ,Wait till correct spelling .

Functional requirements-

  1. Registration: For searching books, user has to registered. Otherwise he/she is unable to get books.
  2. Login: For getting, users need to use a valid user userID and password for login to the system.
  3. Library Notification: Notify for out of stock book
  4. Add to saved list: For getting books, user select the books what they need.
  5. Multiple search: Multiple search means, user can search different types of books from different section at a time.
  6. Category of menu: From here user can get various type of books from various sections.
  7. History of searches: After user selects/searches books the system will show user/recent history of user searches/books downloaded.
  8. Ai Chat-Bot: In this website, we are trying to implement an AI chat-bot which helps a customer to search a specific book and it gives the users the link of that specific book and also recommends the best books.
  9. Suggestions/feedback: If user needs any kind of help regarding any problems of the website or if user want to suggest some tips about any improvements, then this option will help to connect the user with admin.
  10. Logout: After finishing all the process in the site, user has to logout from the system.