SRS - This document includes user story,usecase,class diagram and state diagraams. PDF

Title SRS - This document includes user story,usecase,class diagram and state diagraams.
Course Object Oriented Software Engrg
Institution Centennial College
Pages 17
File Size 998.8 KB
File Type PDF
Total Downloads 41
Total Views 123

Summary

This document includes user story,usecase,class diagram and state diagraams....


Description

Software Requirements Specification On “Tiffin Ordering System”

By:

Amanpreet Singh (301109431) Gurkirat Singh (301119595) Simran Jeet (301116304) Krupaben Patel (301119585) Saurabh Sharma (301109394)

INDEX

Section 1: Problem statement 1.1 Problem & Needs Today, there are a lot of immigrant students coming to Canada to pursue further studies. They face several challenges during this transition and one of the major problems almost every international student goes through is the change in their food culture. Research recently showed that most of the international students have food insecurities because of the unavailability of their preferred food or the high cost related to them. This starts building feelings of homesickness, hunger, weight loss problems and depression. There are several videos on YouTube showing how international students struggle to keep pace with their food habits from back home. Either they don't know how to cook because they have come right after school or because they have busy schedules managing their studies and work together the fact is that the foreign students face a lot of difficulties finding their choice of food. Therefore, there is a huge need to start a service that can serve such students the food that they like and enjoy at an affordable cost. In our system, we have collaborated with several providers who can make cuisines of different countries and are also great chefs. They deal with both big and small grocery stores to buy food products at an economical price and therefore, can serve the food at affordable costs. Students will be able to log in to our system from where they can select from a variety of cuisine options available to them. The providers will also be able to register and login to the system to offer the type of food along with their prices and ingredients details so the students can make a clear choice. Customers will have an option to pay online or pay at the restaurant.

1.2 List of: (i) Capabilities Our system would be capable to: 1. Register and store customers information 2. Register and store providers information 3. View menu – for both providers and customers 4. Add / update / delete menu items – available to providers 5. Customers can choose items according to the provider’s specialty 6. Save Favorites for later use 7. View Favorites 8. View history transactions 9. Receive payments via credit/debit card 10. Allow customers to have the food delivered to them 11. Provide support to the customers 12. Collect feedback from registered customers

(ii) Benefits It is foreseen that the deployment of the new system will provide the following business benefits: 1. Students can order food at economical price. 2. It can help students feel less homesickness. 3. Students can focus on their studies better and not worry about their meals. 4. Food delivered right to the doorstep. 5. Provide opportunities for small-scale or upcoming food providers to upsell their sale. 6. Variety of cuisine options to choose from. 7. Opportunities for the providers from various countries or different states can sell their food at the same place. 8. Eliminates the geographical constraints. 9. Saves time and resources in commuting to restaurant in person. 10. Great way to help students.

b) Identify the stakeholders and their roles 1. 2. 3. 4.

Customer – They can order food or tiffin from the menu. Provider – They can upload menu items that they are offering System Administration – Maintain the application by solving issues Management – Manage the entire application

c) Sub-Systems of your application 1. 2. 3. 4.

Registration subsystem Search subsystem Order subsystem Feedback subsystem

d) Intended users of the SRS document 1. 2. 3. 4. 5.

Management Software Designers Software Developers Database Designers: Client

Section 2: General Overview Modelling 2.1 Context Flow Diagram – CFD

3. Requirements - functional and non-functional 3.1.

Non-Functional

NFR #

Name

Description

NFR001

Performance

NFR002

Security

NFR003 NFR004

Adaptability Interoperability

NFR005

Accessibility

Requirements about resources required, transaction rates, throughput and other specifications. Requires that the system to be able to protect its data and secure its customers’ privacy Ability to change something to fit to occurring changes. Capability of a system to work with other external systems in the present or in the future. Ability of a system to be used by a wide range of people.

3.2.

Functional Requirement

3.2.1. Registration Subsystem FR #

Name ( Goal Use Case)

Role Player

Description

FR01

Register

FR02

Upload menu and photos

Customer, Provider Provider

FR03

Send registration confirmation

Management

FR04

Maintain the subsystem

System Administrator

Customer or provider can register into the application. Provider can upload photos and menu of his restaurant. Customers and providers will receive a registration confirmation from the management Resolves issues and maintains the subsystem.

Use case Diagram:

User Story: 1. As a Customer, I want to register to the subsystem so that I can use the application. Acceptance Criteria: a) Should have a form to fill in my details. b) Should be able to read and agree to the terms and conditions. c) Should be able to correct any mistakes and resubmit my form. 2. As a provider, I want to register to the subsystem so that I can use the application. Acceptance Criteria: d) Should have a form to fill in my details. e) Should be able to read and agree to the terms and conditions. f) Should be able to correct any mistakes and resubmit my form. 3. As a provider, I want to upload the menu and photos, so that customers can see what I provide Acceptance Criteria: a) Should be able to upload all the menu items b) Should be able to upload the menu item photos. c) Should be able to update the menu items and their photos. d) Should be able to enter and update prices for the menu items. 4. As the management, I want to send registration confirmation to the customer and provider, so that they know their registration is successful Acceptance Criteria: a) Should be able to see that the customer is registered. b) Should be able to see that the provider is registered. c) Should be able to send an email to the customer and provider. 5. As the system administrator, I want to maintain the subsystem, so that no errors occur during using Acceptance Criteria: a) Should be able to see the tickets raised during website usage b) Should be able to resolve the tickets during website usage c) Should be able to send notification that the ticket has been resolved.

3.2.2. Search Subsystem FR # FR01

Name ( Goal Use Case) Login to the subsystem

FR02

Enter search criteria

FR03

Set Filters

FR04

Sort the Search Results

FR05

Maintain the subsystem

Role Player Customer, Provider Customer

Description Login to the subsystem to access the application. Customer can perform search based on provider, cuisine, or item. Customer Customer can set filters based on search. Customer Customer can sort search result alphabetically based on provider, cuisine or item System Resolves issues and maintains the Administrator subsystem.

Use case Diagram:

User Story: 1. As a Customer, I want to login to the subsystem so that I can use the application. Acceptance Criteria: a) Should be able to see the login option. b) Should be able to enter the login and password to authenticate the access. c) Should be able to enter captcha letters to confirm that a human is trying to login. d) Should be able to submit the login details. e) Should be able to see that I am logged in into the system. 2. As a provider, I want to login to the subsystem so that I can use the application. Acceptance Criteria: a) Should be able to see the login option. b) Should be able to enter the login and password to authenticate the access. c) Should be able to enter captcha letters to confirm that a human is trying to login. d) Should be able to submit the login details. e) Should be able to see that I am logged in into the system.

3. As a Customer, I want to enter a search criterion so that I can order accordingly. Acceptance Criteria: a) Should be able to search the menu items based on provider, cuisine, or menu. b) Should be able to view the searched items. c) Should be able to view the price, ingredients, provider information and ratings of the searched menu item. 4. As the Customer, I want to customize search by applying filters on my search results. Acceptance Criteria: a) Should be able to view the items based on the searched results. b) Should be able to filter the items in the search results based on provider, provider ratings, item ratings, cuisine, or item. c) Should be able to view the filtered search results. 5. As the Customer, I want to sort the searched results based on my likings. Acceptance Criteria: a) Should be able to view the items based on the customized searched results. b) Should be able to sort the items depending on provider, provider ratings, item ratings, cuisine, or item. c) Should be able to view the sorted search results. 6. As the system administrator, I want to maintain the subsystem, so that no errors occur during using Acceptance Criteria: d) Should be able to see the tickets raised during website usage e) Should be able to resolve the tickets during website usage f) Should be able to send notification that the ticket has been resolved. 3.2.3. Order Subsystem FR # FR01 FR02

Name ( Goal Use Case) Select tiffin menu Checkout the order

Role Player Customer Customer

FR03

Send payment receipt

Provider

FR04

Order confirmation

Management

FR05 FR05

View Order History Maintain the subsystem

Customer System Administrator

Description Customer selects the items to order Customer checks out the order to continue to payment Provider sends a notification to management that payment has been received Management will send the user an email with his confirmation details. Customer can view his past orders. Resolves issues and maintains the subsystem.

Use case Diagram:

User Story: 1. As a Customer, I want to select from the tiffin menu that I want to order. Acceptance Criteria: a) Should be able to choose the desired menu item. b) Should be able to add the chosen item to the cart. c) Should be able to see that the item selected is available in the cart. d) Should be able to add/ change/ delete the item from the cart. e) Should be able to change quantity of the selected item. 2. As a Customer, I want to check out my items in the cart that I wish to buy. Acceptance Criteria: a) Should be able to view the cart. b) Should be review the cart and see the price for every respective item along with the total amount that he would be charged with. c) Should be able to make changes in the cart for example, delete an item. d) Should be able to change quantity of an item in the cart. e) Should be able to check out the items in the cart after reviewing.

3. As a Customer, I want to get a confirmation that my order has been placed successfully. Acceptance Criteria: a) Should be able to get a confirmation from the management that my order has been placed. b) Should be able to get an order number. c) Should be able to see the item details, price & quantity for each item, total amount in the order receipt. d) Should be able to download and print the payment receipt. 4. As the system administrator, I want to view the items I have ordered in the past Acceptance Criteria: a) Should be able to see the order history including the order number and the order details. b) Should be able to download the order details. 5. As the system administrator, I want to maintain the subsystem, so that no errors occur during using Acceptance Criteria: a) Should be able to see the tickets raised during website usage b) Should be able to resolve the tickets during website usage c) Should be able to send notification that the ticket has been resolved.

3.2.4. Feedback Subsystem FR # FR01

Name ( Goal Use Case) Login to the system

FR02

Enter feedback details

Role Player Customer, Provider Customer

FR03

View and Reply feedback

Provider

FR04

Sort the Search Results

Customer

FR05

Maintain the subsystem

System Administrator

Description Login to the subsystem to access the application. Customer can provide feedback and rating to the provider Provider can view and reply to feedbacks provided by the customer Customer can sort search result alphabetically based on provider, cuisine or item Resolves issues and maintains the subsystem.

Use case Diagram

User Story: 1. As a Customer, I want to login to the subsystem so that I can use the application. Acceptance Criteria: a) Should be able to see the login option. b) Should be able to enter the login and password to authenticate the access. c) Should be able to enter captcha letters to confirm that a human is trying to login. d) Should be able to submit the login details. e) Should be able to see that I am logged in into the system. 2. As a provider, I want to login to the subsystem so that I can use the application. Acceptance Criteria: a) Should be able to see the login option. b) Should be able to enter the login and password to authenticate the access. c) Should be able to enter captcha letters to confirm that a human is trying to login. d) Should be able to submit the login details. e) Should be able to see that I am logged in into the system.

3. As a Customer, I want to provide feedback and give ratings to the provider and the items I purchased. Acceptance Criteria: a) Should be able to open the feedback form. b) Should be able to fill out the feedback form. c) Should be able to submit the feedback form. d) Should be able to provide ratings to the provider and the items ordered. 4. As a Provider, I want to see the feedback and ratings of my menu items and reply to them. Acceptance Criteria: a) Should be able to see the ratings given to the items offered by me. b) Should be reply to the feedback provided by customers. c) Should be able to change quantity of an item in the cart. d) Should be able to check out the items in the cart after reviewing. 5. As a Customer, I want to get a confirmation that my order has been placed successfully. Acceptance Criteria: a) Should be able to get a confirmation from the management that my order has been placed. b) Should be able to get an order number. c) Should be able to see the item details, price & quantity for each item, total amount in the order receipt. d) Should be able to download and print the payment receipt. 6. As the system administrator, I want to view the items I have ordered in the past Acceptance Criteria: a) Should be able to see the order history including the order number and the order details. b) Should be able to download the order details. 7. As the system administrator, I want to maintain the subsystem, so that no errors occur during using Acceptance Criteria: a) Should be able to see the tickets raised during website usage b) Should be able to resolve the tickets during website usage c) Should be able to send notification that the ticket has been resolved.

4. Class Diagram

5. ERD

6. Two Systems Sequence diagram 6.1.

Share Feedback Sequence Diagram

6.2.

Order Menu Item Sequence diagram

7. State Diagram 7.1.

Order Object

7.2.

Feedback Object State Diagram

8. Technologies • • •

Android: Kotlin IOS: Swift Database: Oracle Database

9. Project Management All the activities are scheduled according the Gantt chart....


Similar Free PDFs