You are on page 1of 13

Software Requirements and Specification of Online Food ordering system

Software Requirements

Specifications

For

Online Food Order System for Restaurants


Version 1.0 approved

Prepared by:

Raza Hameed FA18-BSE-050

Muhammad Muddassar FA18-BSE-054

Shahnawaz Khan FA18-BSE-058

Syed Irtaza Hasnain FA18-BSE-069

1
Software Requirements and Specification of Online Food ordering system

Contents

1. Introduction .................................................................................................................................. 4
1.1 Purpose .................................................................................................................................... 4
1.2 Document Conventions ............................................................................................................ 4
1.3 Intended Audience and Reading Suggestions ...........................................................................4
2. Overall Description....................................................................................................................... 5
2.1 Product Perspective................................................................................................................. 5
2.2 Product Functions.................................................................................................................... 5
2.3 Operating system ..................................................................................................................... 5
2.4 Design and Implementation Constraints .................................................................................. 6
2.5 User Documentation ................................................................................................................ 6
2.6 Assumptions and Dependencies............................................................................................... 6
3. External Interface Requirements.................................................................................................. 6
3.1 User Interfaces......................................................................................................................... 6
3.2 Hardware Interfaces ................................................................................................................ 6
3.3 Software Interfaces .................................................................................................................. 6
3.4 Communications Interfaces..................................................................................................... 7
4. System Features ............................................................................................................................ 7
4.1 System Features l ..................................................................................................................... 7
4.2 System Features ll.................................................................................................................... 8
Chef Order Queue....................................................................................................................... 8

4.2.1 Description and Priority ....................................................................................................... 8


4.2.2 Stimulus/Response sequences ............................................................................................. 9
4.2.3 Functional Requirements..................................................................................................... 9
5. Nonfunctional Requirements ......................................................................................................... 9
5.1 Performance requirements ...................................................................................................... 9
5.2 Safety requirements................................................................................................................. 9
5.3 Security requirements............................................................................................................ 10

2
Software Requirements and Specification of Online Food ordering system

5.4 Software Quality Attributes ............................................................................................. 10


5.4.1 Adaptability: ..................................................................................................................... 10
5.4.2 Availability: ....................................................................................................................... 10
5.4.3 Correctness: ...................................................................................................................... 10
5.4.4 Flexibility: ......................................................................................................................... 10
5.4.5 Interoperability: ................................................................................................................ 10
5.4.6 Maintainability: ................................................................................................................. 10
6. References................................................................................................................................11

3
Software Requirements and Specification of Online Food ordering system

1. Introduction

1.1 Purpose

It is known globally that, in today’s market, it is extremely difficult to start a new small-scale
Business and live-through the competition from the well-established and settled owners. In fast
paced time not today, when everyone is squeezed for time, the majority of people are finicky when
it comes to placing a food order. The customers of today are not only attracted because placing an
order online is very convenient but also because they have visibility into the items offered price
and extremely simplify navigation for the order. Online ordering system that is proposed here,
greatly simplifies the ordering process for both the customer and the restaurant. System presents
an interactive and up-to-date menu with all available options in an easy to use manner. Customer
can choose one or more items to place an order which will land in the Cart. Customer can view all
the order details in the cart before checking out. At the end, customer gets order confirmation
details. Once the order is placed it is entered in the database and retrieved in pretty much real time.
This allows Restaurant Employees to quickly go through the orders as they are received and
process all orders efficiently and effectively with minimal delays and confusion.

1.2 Document Conventions

A User manual will be created alongside with the software that will describe about the software
specification and how can you use our software. We will use normal documentation methods
to generate a document so that, a user with little knowledge can easily understand it.

1.3 Intended Audience and Reading Suggestions

The motivation for designing this application came because many families are involved in the fast
food Business and we personally do not like waiting for long in the store or to have to call store to
place an order especially during the peak lunch or dinner hours. Moreover, we value recent learning
about the Java Programming languages as well as seeing how powerful and dynamic they are when
it comes to web designing and applications. The languages used to build this application are JSP,
HTML and Java at client facing whereas MYSQL database at the back-end because we found
them to be extremely useful while working on the technologies.

4
Software Requirements and Specification of Online Food ordering system

2. Overall Description

2.1 Product Perspective

This software is developed to help computer science students to learn about the Web application
designing using JSP and HTML from their basic capabilities to build a complete working
application from scratch. Further, it gives insight about how GUI interacts with server-side
language, Java, and finally with My SQL database.

2.2 Product Functions

The Online Food Order System application would have the following basic functions:

Web Ordering System Modules


This module provides the functionality for customers to place their order and supply necessary
Details, Users of the system, namely restaurant customers, must be provided the following
functionality:

• Create an account.
• Manage their account.
• Log in to the system.
• Navigate the restaurant’s menu.
• Select an item from the menu.
• Add an item to their current order.
• Review their current order.
• Remove an item/remove all items from their current order.
• Provide payment details.
• Place an order.
• Receive confirmation in the form of an order number.
• View order placed.
• Chef account
• Admin control
• View Total sale
• Create graphs of sale on Admin demand
Other security features will be added as well.

5
Software Requirements and Specification of Online Food ordering system

2.3 Operating system

The software will be environment friendly. It can be from form any type of OS system later then
windows 7, you can also be able to use it on Mac OS but working may differ from windows.
Hardware requirements are a working keyboard, mouse or any other pointing device

2.4 Design and Implementation Constraints

The main constraint of this software is that the admin is not much experienced with these kinds of
software they required a particular knowledge to use it like, if he/she didn’t know about the databases
or reports then how can he generate a particular report for an event. Admin should know SQLite
language and an internet connection is requiring to access the database server and the main server for
the application.

2.5 User Documentation

The documentation followed in Online Food Ordering System is IEEE format. The font size
used by Main heading is 16. Similarly, Sub heading font size is 14. Description style is times in
roman, size followed is 12.

2.6 Assumptions and Dependencies

We will create a software that will use MYSQL database this is the external factor that we will
use in this software if not present then it may affect the software performance. Software is
dependent on a windows operating systems described in OS environment. A Keyboard and a
mouse is essential for this software.

3. External Interface Requirements

3.1 User Interfaces

The web pages shall permit complete navigation and food item selection using the Mouse alone, in
addition you can use keyboard for adding more information.

3.2 Hardware Interfaces

This software requires a printer a database utility software and input devices. We will use
monitor to display the soft form of data and hard copy of report through printer.

6
Software Requirements and Specification of Online Food ordering system

Internet connection will be required to access the application on-line and a main server
computer that will control all the database activities.

3.3 Software Interfaces

The Online ordering system will be coded in Java, Html and JSP languages using servlets and
MYSQL database is used. Different kind of pages is used to provide a particular function or give
information. Forms will be used to login or register a user. And user can also use a variety of
function such as edit there order change the quantity of food.

3.4 Communications Interfaces

Our application is web based hence a web browser is required to communicate with the software
Http protocol is used for sending request and receiving response. Backend server coding is used
to interact with database. Response time is mostly base on the internet speed and traffic on the
website.

4. System Features
In this we will describe functional requirements for our product and what are the features of our
software.

4.1 System Features l

Description and priority

All users of the system, are provided with below menu options:
Home, Menu, My Cart, User Account, e-Club, About Us and Contact Web Ordering System Module.
Customers of the Web Ordering system will interact with the application through an easy to use top
navigation menu.
• “Home” menu option: allows the users to see all food items offered with nice images as well.
• Select an item to place an order.
• Order can then be added to the cart using a single button click.
• “My Cart (x)” menu option:
- Allows users to see details of the items placed in cart. Details include Item number,
Product Name, Product Image, Product Description, Quantity, Unit Price, Total per
item and final total of the order. It also allows ‘Update’ and ‘Delete’ an item using
single button click.

7
Software Requirements and Specification of Online Food ordering system

• User can then use a ‘Proceed to checkout’ button to proceed further.


- Once Check Out button is selected, user will be prompted for the Sign In/Sign
Up process if not logged in else user will be presented with a simple “Payment
Information” form. User will be asked to provide all required details in displayed
text boxes and make appropriate Dropdown selections. Then, all this information
can be saved using a ‘Save’ button.
- User will then be presented with a “Review Order” page, which will display Payment
Information along with Order details to review. User can then use a
‘Check Out’ button to place an order.
- Once order is placed, user will be presented with appropriate Order confirmation
success/failure message.
• Add Category: Allows to add a food Category name in a simple form.
• Add Product: Allows to add Product Name, Description, Price and choose Category in a simple
Form along with Product Image.
• Modify Product: Allows updating or deleting product details.
• Order Retrieval System Module
• The application will automatically fetch new orders from the database at regular intervals and
display the order numbers.
• Under “My-Account’ menu a customer will be able to see only his/her order whereas a Restaurant
Employee or an Admin can see all users orders.
To view the details of an order, the user must click on that order number, which will display all
order details. This structure can intuitively be expanded and collapsed to display only the desired
information.

8
Software Requirements and Specification of Online Food ordering system

Figure 1: Block diagram of System

4.2 System Features ll

Chef Order Queue

4.2.1 Description and Priority

Whenever a new order is placed by the Customer, the dishes in the orders are classified into
categories. The system has the information of specialty of each chef, it will assign each dish
to a corresponding chef and place it in the order queue of that chef. There is a centralized
screen in the kitchen which displays queues for each chef. Each item in the queue is labeled
with the name of the dish.

Priority: high

4.2.2 Stimulus/Response sequences

1. Stimulus: Customer taps the “Confirm Order” button in “Place Order


screen”.
2. Response: Displays the dishes on kitchen screen in corresponding
chef’s queue.

9
Software Requirements and Specification of Online Food ordering system

4.2.3 Functional Requirements

System will classify the dishes in the order according to category and add this dish on a
particular chef’s queue in the kitchen screen.

- Add/Edit/Delete Members.
- Cancel order.
- Change order.

5. Nonfunctional Requirements

5.1 Performance requirements

The system must be interactive, and the delays involved must be less. So, in every action response
of the system, there are no immediate delays. In case of scrolling through the menu there should
be a delay of no more than 2 second before the next page of menu items is displayed otherwise
our people’s dining experience is affected. The order should be placed in pending orders and be
visible to the head chef/chefs in less than 1 second to start the preparation.
Cancel Order/ updates must be made with little delay to avoid delivery delay. Also, when
connecting to the Firebase server the delay to make a successful connection should be less for
effective real time communication.

5.2 Safety requirements

The software is completely environmentally friendly and does not cause any safety violations.
The menu will have a flexible font that can be zoomed so as to not over constrain the eyes.

5.3 Security requirements

There is a need for a proper and encrypted login authentication for head chef and admin as
employee sensitive information as well as inventory should be protected from hacking.
Information transmission should be securely transmitted to Firebase without any changes in
information to avoid disturbances in orders and billing.

5.4 Software Quality Attributes

5.4.1 Adaptability:

There can be a change in the menu and information stored in the database about employees and
inventory.

10
Software Requirements and Specification of Online Food ordering system

5.4.2 Availability:

The system is up and running for most of the time and server is not down for more than a few
minutes to avoid inconvenience of the customers.

5.4.3 Correctness:

The bill generated by the application must be accurate and the orders placed should exactly
be the same which the user has selected.

5.4.4 Flexibility:

If need arises in the future, software can be modified to change the requirements.

5.4.5 Interoperability:

The data is transferred from the customer’s end to the kitchen and then head chef assigns orders
to each chef. This way data is transferred from one part of the system to another.

5.4.6 Maintainability:

Software can be easily repaired if a fault occurs.

5.4.7 Portability:

Software can be easily installed on devices and would run smoothly according to the
requirement.

5.4.8 Reliability:

No matter how many orders are placed, system must give the correct results.
---------------------------------------------------------------------------------------------------------------------

Appendix A: Glossary
CRUD: In computer programming, create, read, update, and delete (CRUD) are the four basic
functions of persistent storage. Alternate words are sometimes used when defining the four basic
functions of CRUD, such as retrieve instead of reading, modify instead of update, or destroy
instead of deleting.

11
Software Requirements and Specification of Online Food ordering system

References
1. Android User Interface Guidelines, Available at:
https://developer.WebApplicationHelper.com/guide/practices/ui_guidelines/

2. IEEE. IEEE Std 830-1998 IEEE Recommended Practice for Software Requirements
Specifications. IEEE Computer Society, 19

12

You might also like