SRS - Sobhana-Jahan-Lisa/SRS-for-FoodBuzz GitHub Wiki

Software Requirements Specification for Food Buzz Prepared by Md. Nahid Hasan Shuvo(17511023) Sobhana Jahan(17511040) Rushda Alam(17511086) Bangladesh University of Professionals (BUP) ICT Project Management Lab(ICE-4202) 2. December 2020

Chapter 1

Introduction

1.1 Purpose

The objective of this document is to illustrate the requirements of the project which is an android app that helps the users to find the nearest restaurant and the prices of foods of restaurants. Through this app, users can also share their experience of visiting restaurants and provide reviews of foods. Basically, this app will help to create a social community for food lovers.

1.2 Document Conventions

The entire document should be justified. Convention for the main title : • Font Face: Times New Roman • Font Size:16 • Font Style: Bold Convention for subtitle: • Font Face: Times New Roman • Font Size:14 • Font Style: Bold Convention for the body: • Font Face: Times New Roman • Font Size:12

1.3 Intended Audience and Reading Suggestions

This document is intended for project managers, marketing staff, developers, testers, users, and documentation writers.

1.4 Product Scope

Through this software, users can easily find the nearest and most perfect place for eating according to their requirements as well as their needs. This app will track the current location of the user. Even, users can make a good community with food lovers. Restaurant owners can also be benefited from our app. They can register to our application then can post their foods, offers, reviews of their foods. This app will definitely increase restaurant business. On the other hand, this app is guiding food lovers to fulfill their requirements about restaurants. This app will be a common platform for users and restaurant owners to know the latest details about restaurants .This is the goal of our app.

1.5 References

https://www.slideshare.net/Chetan2608/software-requirements-specification-of-library-management-system? from_action=save

Chapter 2

Overall Description

2.1 Product Perspective

Often we see that at the time of traveling people can’t find the perfect place to have food at a reasonable price. To To avoid this problem we want to develop this app. This app will be a unique place where all food details, restaurant details, price details, the exact address will be together.

2.2 Product Functions

• Providing suggestions of nearby restaurants: This app will track the current location of the user through GPS. Then can suggest nearby restaurant’s details and exact address on google map. • Posts and Reviews: Restaurant owners can register to our application then can post their foods, offers, reviews of their foods. Even, users can also provide pictures of foods, give reviews of restaurants. Users can make a good community with food lovers. • Rating of Restaurants: Each registered restaurant will have a rating. Observing the rating of restaurant users can explore those restaurants and their food menu. Those ratings will be provided automatically according to the reviews.

2.3 User Classes and Characteristics

• User • Review • Restaurant • Comment

2.4 Operating Environment

The product will be operating in an android environment. THE minimum API level will be 16.

2.5 Assumptions and Dependencies

• Assumptions:

  1. We are assuming that users will have internet access.
  2. Device will have a built-In GPS • Dependencies:
  3. Users must have an android device in which the android API version is a minimum of 16 or more than 16.

Chapter 3

Requirements

3.1 Functional Requirements

• 1. a new user

I want to register my account

So that, I can get benefitted by the application.

• Confirmation:

-Open the application

-Click on SignUp

-Enter all required information

-Click on SignUp

(a) Success

User will be directed to the LogIn page

(b) Failure

– Email not match with regex, show error: Please provide a valid email

– Password is less than 6 digits, show error: Password must include at least 6 digits time.

– Any field left blank, show error: All the fields must be filled up

– User type not selected, default type will be buyer.

• 2. As a registered user

I want to change my password

So that, I can keep my account secure.

• Confirmation/Acceptance:

– Open the profile tab

– Click on Setting

– Click on ChangePassword

– Enter the new password

– Enter the old password

– Click on Save

a) Success

• “Congratulations! your password has been changed. Thanks!” - pop up will show.

(b) Failure

• Old password may not match with the given password [now], show error: Please provide your old password correctly.

• New password is less than 6 digits, show error: Password must include at least 6 digits time.

• Any field left blank, show error: All the fields must be filled up

• 3. As a restaurant owner

I will have my own profile

So that, I can post add new posts.

• Update the profile

• Results will be shown via portal.

• Can visit other restaurant’s profile

• 4. As an Admin

I will have full access to the system.

So that, I can edit update delete any thing.

I may have full access to the database also.

Chapter 4

System Features

4.1 System Feature

• User must register to open a profile. All information of user must be kept in Firebase (online database system) .Security of information will be maintained strictly. • Restaurant owners must register and pay an amount to create a profile. That information will be stored in Firebase. • Through GPS tracker user can find own location and nearest restaurants, foods, and prices. • Can also search for restaurants based on the provided location.Example :Dhaka->Mirpur ->section 12 • There will be a Home page after opening the app and on that home page user can see all reviews, comments, offers.Can also comment on those posts. • User and restaurant owners can upload posts in their profile. • Periodical monitoring will be maintained strictly.

4.2 The features that are available for users are:

• Users have their own profile. • Users can post pictures of food, can provide reviews of food. • Can share their experiences of traversing a restaurant. • Can also provide their own rating of restaurants. • Can visit the profiles of restaurants (authorized by app developers)

4.3 The features that are available for restaurant owners are:

• Restaurant owners can have their own profile. • Can update their profile, add new posts. • Can just visit other restaurant’s profile.

4.4 Tracking current location:

• This is the main feature of our app. Here we are using a GPS tracking system to get the current location of the app user and through the GOOGLE map easily we can recommend the nearby restaurants.

4.5 Posts and Reviews:

• We have already said, users and restaurant owners, both can post and provide reviews. Those documents should be kept safely and uniquely. To do so, here we are using firebase (online database) software.

4.6 Updating Ratings:

• Our app will be programmed in a way that, based on the reviews the ratings of restaurants will be provided

Chapter 5

Other Nonfunctional Requirements

5.1 Performance Requirements

• Application should able to collect data for a customer in a short time. Delay for data collection needs to be decreased to a minimum. The search result should be appropriate and location based. Restaurant location should be more precisely described and showed. The application should require low RAM to run on the device.

5.2 Safety Requirements

• Restaurant category should be well defined and described. No restaurant can be categorized in the wrong section. Proper address and contract number should be given. A person cannot edit any data from the given database. A customer can only review products. They cannot edit or add or delete any data from the database or reviews by other customers.

5.3 Security Requirements

• Login with Gmail should take user data as id, name, and picture. Other than this information should be avoided. A user should not able to create multiple accounts with the same email. Mobile verification code should be received automatically by the application. If the system fails to do that there must be a way to put the verification code manually. Personal information like mobile number, email id cannot be shared in public.

5.4 Software Quality Attributes

• Adaptability: Customer should able to use the software easily and simply. Availability: Software should be available in different application markets. Correctness: All information in the app should be correct. Maintainability: The application should be well maintained. To that Necessary update should be given in time. Reliability: Software should be reliable for the best. As there should be no system crash or not responding issues. We have applied two testing methods. Those are: • Unit testing • Integration testing

5.5 Business Rules

• Restaurant owners cannot have direct access to the application database. If they want to add their restaurant to the database, they need to contact the Application owner first. The relevant review can be posted. Other irrelevant reviews can be deleted, almost all users can get banned in a certain condition.

Chapter 6

Other Requirements

• Application should consume low memory in ROM. The application should give customer smooth user-friendly interface. An animated character should be included. Relating to that character an icon must be set. A user should able to take help from a data center anytime. So a help and FAQ button should be added.

Appendices

.1 Appendix A Glossary

• RAM: Random Access Memory • ROM: Read Only Memory • ICC: International Calling Code • FAQ: Frequently Asked Question • Character: An animated character to interact with the user • API: Application Program Interface