Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
31 views74 pages

FSD - Internet Ordering System

This document provides functional specifications for an Internet Ordering System, including: - An overview of the system's data flow, screen flows, sitemap and key processes for customers and administrators. - Requirements for customers to view products, place orders and manage their profile and notifications, and for administrators to manage users, orders, stock and respond to queries. - Use case scenarios and requirements that further describe key customer and administrator functions. - Class and architecture diagrams that model the system. - Considerations for hardware, software, security and other technical requirements.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views74 pages

FSD - Internet Ordering System

This document provides functional specifications for an Internet Ordering System, including: - An overview of the system's data flow, screen flows, sitemap and key processes for customers and administrators. - Requirements for customers to view products, place orders and manage their profile and notifications, and for administrators to manage users, orders, stock and respond to queries. - Use case scenarios and requirements that further describe key customer and administrator functions. - Class and architecture diagrams that model the system. - Considerations for hardware, software, security and other technical requirements.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 74

10/05/2023

Internet Ordering System


Functional Specifications Document

PREPARED BY: Ateeq Ur Rehman


Internet Ordering System Functional Specifications Document

Table of Contents

1. Introduction 6
1.1 Purpose 6
1.2 Project Scope 6
1.3 Scope of the Document 6
1.4 Related Documents 7
1.5 Definitions of Terms, Acronyms, and Abbreviations 7
1.6 Risks and Assumptions 7
1.6.1 Risks 7
1.6.2 Assumptions 9
2. System Overview 10
2.1 Data Flow Diagram, Application Screen Flow, Sitemap, and Process Flows 10
2.1.1 High Level Data Flow Diagram 10
2.1.2 Application Screen Flow 11
2.1.3 Sitemap 12
2.1.3.1 Sitemap for Customer 12
2.1.3.2 Sitemap for Administrator 13
2.1.4 Process Flow 14
2.1.4.1 Process Flow for Customer 14
2.1.4.1.1 Sign Up 14
2.1.4.1.2 Sign In 14
2.1.4.1.3 Manage Profile 15
2.1.4.1.4 View Products 15
2.1.4.1.5 View Promotional Products 16
2.1.4.1.6 Manage Notifications Settings 16
2.1.4.2 Process Flow for Administrator 17
2.1.4.2.1 Sign In 17
2.1.4.2.2 Manage Profile 17
2.1.4.2.3 Manage Users’ Accounts 18
2.1.4.2.4 Add User 18
2.1.4.2.5 Manage Dashboard 19
2.1.4.2.6 Manage Stock 19

Page | 1 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.4.2.7 Manage Order 20


2.1.4.2.8 Manage Queries (Respond, Delete) 20
2.2 Intended Stakeholders/Audience 21
2.3 Dependencies and Change Impacts 21
2.3.1 Dependencies 21
2.3.2 Change Impacts 21
3. Functional Specifications 22
3.1 Functional Requirements 22
3.1.1 Customer 22
3.1.2 Consumer 24
3.1.3 Contractor 24
3.1.4 Administrator 25
3.2 Business Requirements 27
3.3 Use Case Scenarios 28
3.3.1 Customer 28
3.3.1.1 Sign Up 28
3.3.1.1.1 UCS# 01 28
3.3.1.1.2 Functional Requirements 29
3.3.1.2 Sign In 30
3.3.1.2.1 UCS# 02 30
3.3.1.2.2 Functional Requirements 31
3.3.1.3 Manage Profile (View, Edit) 31
3.3.1.3.1 UCS# 03 31
3.3.1.3.2 Functional Requirements 32
3.3.1.4 View Dashboard 32
3.3.1.4.1 UCS# 04 32
3.3.1.4.2 Functional Requirements 33
3.3.1.5 Manage Products (View, Search) 33
3.3.1.5.1 UCS# 05 33
3.3.1.5.2 Functional Requirements 34
3.3.1.6 Manage Order (View, Place) 34
3.3.1.6.1 UCS# 06 34
3.3.1.6.2 Functional Requirements 35

Page | 2 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.1.7 Manage Notifications Settings (View, Edit) 36


3.3.1.7.1 UCS# 07 36
3.3.1.7.2 Functional Requirements 37
3.3.2 Administrator 38
3.3.2.1 Sign In 38
3.3.2.1.1 UCS# 01 38
3.3.2.1.2 Functional Requirements 39
3.3.2.2 Manage Profile (View, Edit) 39
3.3.2.2.1 UCS# 02 39
3.3.2.2.2 Functional Requirements 40
3.3.2.3 Manage Dashboard (View, Edit) 40
3.3.2.3.1 UCS# 03 40
3.3.2.3.2 Functional Requirements 41
3.3.2.3 Manage Orders (Confirm/Cancel) 42
3.3.2.3.1 UCS# 03 42
3.3.2.3.2 Functional Requirements 43
3.3.2.4 Manage Users’ Accounts (Search, View, Remove) 43
3.3.2.4.1 UCS# 04 43
3.3.2.4.2 Functional Requirements 44
3.3.2.5 Add User 44
3.3.2.5.1 UCS# 05 44
3.3.2.5.2 Functional Requirements 45
3.3.2.6 Respond Queries 46
3.3.2.6.1 UCS#6 46
3.3.2.6.2 Functional Requirements 47
3.4 Class Diagram 48
3.5 Architecture Diagram 49
3.4 Field Level Specifications 50
3.4.1 Form Elements 50
3.4.2 Form Business Rules and Dependencies 50
3.4.3 Buttons, Links, and Icons 51
4. System Configurations 54
4.1 Hardware Requirements 54

Page | 3 Version 1.0


Internet Ordering System Functional Specifications Document

4.2 Operating Environment 54


4.3 Web Browser 54
5. Non-Functional Requirements 56
5.1 Usability 56
5.2 Scalability 56
5.3 Compatibility 56
5.4 Portability: 56
5.3 Performance 56
5.4 Security 57
5.5 Availability 57
5.6 Expendability 58
5.7 Maintainability 58
5.1 Responsiveness 58
6. Reporting Requirements 59
7. Integration Requirements 61
7.1 Exception Handling/ Error Reporting 64
8. Data Migration/ Conversion Requirements 65
8.1 Data Conversion Strategy 67
8.1.1 Data Migration Strategies 67
8.1.1.1 “Big Bang” Migration 67
8.1.1.2 “Trickle” Migration 68
8.2 Data Conversion Preparation 68
8.2.1 Explore and Assess the Source 68
8.2.2 Define and Design the Migration 69
8.2.3 Build the Migration Solution 69
8.2.4 Conduct a Live Test 69
8.2.5 Flipping the Switch 69
8.2.6 Audit 69
8.3 Data Conversion Specifications 70
9. References 71
10. Open Issues 72

Page | 4 Version 1.0


Internet Ordering System Functional Specifications Document

Sr. No Version Updated By Details/Updates/Modifications

1. 1.0 ABC Initial Draft

Page | 5 Version 1.0


Internet Ordering System Functional Specifications Document

1. Introduction
This document is originally prepared to describe the comprehensive Functional Specifications
Document of the project “Internet Ordering System”. This document describes the purpose,
problem statement, proposed solution, intended stakeholder/users, and their features in detail. It
outlines the functionality of the product that desires to meet the needs of both business and user
side stakeholders. However, all the written specifications are set out according to the IEEE
standards.
1.1 Purpose
The core aim of this document is to explain all the features and functionality specifications needed
for the project of “Internet Ordering System''. It will help to ensure that all the intended audience
involved in the project, including developers, designers, project managers, and clients, have a
shared understanding of what the system is supposed to do and what features it should have. It
illustrates, in clear terms, the system’s primary uses and required functionality as specified by our
customer. It shall also serve as a basis to update the system and to develop next versions.

1.2 Project Scope


The scope of the “Internet Ordering System” is to provide customers with an online platform to
purchase products from a company. The system will allow customers to search and buy their
desired product efficiently. It will allow customers to create profile. And will ensure that all
customers, whether account holders or not, can only order a maximum of 5 promotional products.
Account holders will be able to order more than 5 promotional products. The system will provide
various searching and filtering options. In short, the scope of the system is to provide a reliable,
secure, and user-friendly online platform for customers to purchase products, while improving
business operations and insights.

1.3 Scope of the Document


This is a functional specification document of “Internet Ordering System”. The document
contains high level data flow, process flows, application screen flow, sitemaps diagrams, actors,
dependencies, risks, assumptions, functional specifications, constraints, and configuration
requirements. This document is primarily based on functional specifications; therefore, the quality
specifications are beyond the scope of this document.

Page | 6 Version 1.0


Internet Ordering System Functional Specifications Document

1.4 Related Documents


The related documents are:
● Software Requirement Specifications Document (Internet Ordering System)

1.5 Definitions of Terms, Acronyms, and Abbreviations


There are some abbreviations and terms which are used in this document that are not commonly
used by the general public so these are explained here.

Sr.no Terms/Abbreviatio Description


n

1. FSD Functional Specifications Document

2. CRM Customer Relationship Management

3. FAQ’s Frequently Asked Questions

4. IEEE Institute of Electrical and Electronics engineering

1.6 Risks and Assumptions


1.6.1 Risks

Risk Effects Probability & Solution


Impact

During The user won’t Medium Try Signing up


registration, the be able to sign probability, high again to receive
user failed to get up, and needs impact the link
the verification the new
link. verification link
to finish the
process

Page | 7 Version 1.0


Internet Ordering System Functional Specifications Document

While exploring Outdated data Low probability, Display the


websites, their will be medium impact data of the
server is down discarded, latest rates
which will only.
affect the
system's
functionality.

The functions of The project Medium If the initial


the system are team will probability, high explanation of
not explicitly become impact the functions is
defined. perplexed, and unclear, request
the final for
product will not clarification.
meet the
requirements of
the customer.

Requirements are The Medium The writer


not written development probability, high must identify
properly team will not impact each
comprehend the requirement in
features and detail and
process flow. according to
the prescribed
format.

The project team There will not Low probability, Every member
is incapable of be consistency High impact of the team,
communicating in the work and from project
with one another. project managers to
schedule. testers, should
communicate
frequently

Page | 8 Version 1.0


Internet Ordering System Functional Specifications Document

regarding the
project's status.

System is not Errors will be Low probability, Analyze the


tested properly overlooked, medium impact system
which will have properly and
an impact on test each &
the system's every feature of
functionality. the system, be
it minor or
major.

The development System will Low probability, Analyse in


team does not cease to work High impact depth the
eradicate the properly. defects
testing-related identified by
error. the testing
team.

1.6.2 Assumptions
ASM.01: Customers have access to a device that can connect to the internet, such as a computer,
smartphone or tablet.
ASM.02: Customers have a basic understanding of how to navigate and use an e-commerce
website.
ASM.03: Customers are willing to create a user profile with a username, password, payment
method, and shipping address to place an order.
ASM.04: Customers are willing to abide by the order quantity restrictions for promotional
products.

Page | 9 Version 1.0


Internet Ordering System Functional Specifications Document

2. System Overview
The “Internet Ordering System” is a platform that allows customers to browse and purchase
products online. It includes features such as a searchable catalogue, product filters, and
accessibility options. Customers are required to create a profile to place an order, and there are
limitations on the quantity of promotional items for non-account holders. The system is designed
to function on various operating systems and web browsers.

2.1 Data Flow Diagram, Application Screen Flow, Sitemap, and Process Flows
2.1.1 High Level Data Flow Diagram

Browse Products
Buy Products

Make Payment
Manage Profile (view, edit, update)
Login
Sign In
Customer Sign Up
Internet Logout
Manage profile
Select Payment Method Ordering Manage reports Admin
Manage Users Accounts
Manage Notifications Settings (enable, Disable)
Get Customer Support
System Manage Stock
Manage Order

Track Order Manage Payments

Activate Promo code Manage Customer Support

Display discounted deals

Page | 10 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.2 Application Screen Flow

Internet Ordering
System screen

Selected Sign Up Selected Sign In


Sign Up Failed Invalid Sign in Details

Sign up screen Sign In Screen

Sign In Successfull

Account Created Successfully

Dashboard

Selected Profile

Selected products Selected cart

Selected Features Selected Notifications


Selected payment method

Profile Products Promotional Notifications Payment


Products Cart Screen
Screen Screen Screen Screen Screen

Selected Cancel
Selected Cancel
Selected Cancel
Selected Cancel Selected Cancel Selected Cancel

Dashboard

Page | 11 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.3 Sitemap
2.1.3.1 Sitemap for Customer

Sign Up Sign In

Customer
Dashboard

Manage Notification
Home Account Products Promotional Products Cart
Settings

View Categories
View Dashboard View Profile View View enable

Manage Payment
View Product Details Search View Order summary
method
disable

Change Password Add into Cart Add into Cart Select Payment method

View Order History View Shipping details

View Promotions/
Rewards

Page | 12 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.3.2 Sitemap for Administrator

Sign In

Admin
Dashboard

Home Profile Users Accounts Queries Manage Stock Manage Order

View View View View View View

Generate report of
Edit Theme Edit Search Respond Search
order

Manage Widgets Change Password Remove Remove Remove Cancel Order

View Requests Add Customer Add User Fill Form to Add Add Add more quantity

Page | 13 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.4 Process Flow


2.1.4.1 Process Flow for Customer
2.1.4.1.1 Sign Up

Sign In
Customer

Click on Enter
Start Sign In Sign In
Details End
button
System

Display Displays Sign In


Display
Sign In Error No Details yes
Dashboard
Form Message Valid?

2.1.4.1.2 Sign In

Sign up
Customer

Confirms Enters details


Clicks Sign up Selects the End
Start Enters Email Link in and sets
Button currency
Email password
System

Sends Displays form Signs up and


Displays form Displays page to
verification to enter Displays
to Enter Email select currency
Email details dashboard

Page | 14 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.4.1.3 Manage Profile

Manage Profile
Customer

Edit First Name, Click on


Click on My Enter Old, and Re-Enter New
Start Last Name, or Change End
Profile New Password Password
Email Password

Display Password
Display Error Confirm Old
False Updated
Displays Display updated Display Change Message Password?
Successfully
My Profile profile Password Screen True
System

True
Password Matched
False
Entered Password?

2.1.4.1.4 View Products

Manage Products
Customer

Click product View order Select payment Click on


Click on Add
Start that want to summary method checkout
product to cart
purchase
Click on view
cart button Click on End
continue
shopping

False

Display order
System

Displays Confirm order?


Display Added placed Successfully
product Display Cart
successfully
details section

Page | 15 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.4.1.5 View Promotional Products

View Promotional Products


Customer

Click on Search for Click on


Start Promotional desired product End
products product details
System

Display Display Display


promotional Search results details
products Section

2.1.4.1.6 Manage Notifications Settings

Manage Notifications Settings


Customer

Snooze/
Click on Enable/ Undo
Start Notification disable snooze End
Settings notifications extension
System

Display Updates Update


Settings Page settings settings

Page | 16 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.4.2 Process Flow for Administrator


2.1.4.2.1 Sign In

Manage Profile
Administrator

Edit First Name,


Click on
Click on My Last Name, Enter Old, and Re-Enter New
Start Change End
Profile Mobile No, or New Password Password
Password
Address

Display Password
Display Error Confirm Old
False Updated
Displays Updates the Display Change Message Password?
Successfully
System

Profile changes Password Screen


True

True
Password Matched
False
Entered Password?

2.1.4.2.2 Manage Profile

Manage Profile
Administrator

Edit First Name,


Click on
Click on My Last Name, Enter Old, and Re-Enter New
Start Change End
Profile Mobile No, or New Password Password
Password
Address

Display Password
Display Error Confirm Old
False Updated
Displays Updates the Display Change Message Password?
Successfully
System

Profile changes Password Screen


True

True
Password Matched
False
Entered Password?

Page | 17 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.4.2.3 Manage Users’ Accounts

Manage Users Accounts


Administrator

Click on Click on User Click on


Start Manage Search Users to view Remove Confirm Remove End
Users Details User

Yes

Confirm
System

Remove Remove User


Display Display Results of Display User Action? from System
Users Page Search Details

Display Users
Cancel
Page

2.1.4.2.4 Add User

Add User
Administrator

Click on Add Enters First Name, End


Users Section Last Name, Email
User
System

Display Form to Sends Invite and displays


Fill message Invite Sent
Successfully

Page | 18 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.4.2.5 Manage Dashboard

Manage Dashboard
Administrator

Click on
Click on Click on Widgets Edits the
Start Manage End
Home to Add or Remove Theme
Widgets
System

Display Users,
Display Widgets Display Display
Statistics,
for Dashboard Updated Updated
Requests
Dashboard Dashboard

2.1.4.2.6 Manage Stock

Manage Stock
Administrator

Click on Search Click on


Click on Stock add in Confirm add End
Start Manage Product s
to view stock
Stock stock

Yes

Confirm add
System

Display product in Add product in


Display Results of Displays the tock Action?
Stock stock
Search Stock
Section

Display updated
Cancel
stock Section

Page | 19 Version 1.0


Internet Ordering System Functional Specifications Document

2.1.4.2.7 Manage Order

Manage Order
Administrator

Click on View Click on


Start Manage customer s order Shipped order End
Order order section details

Yes
System

Display Confirm
Order Display Results order?
Section

Display Cancel
Cancel
order status

2.1.4.2.8 Manage Queries (Respond, Delete)

Manage Queries
Administrator

Send
Click on Click on Click Delete
Start Response of Confirm Delete End
Messages View Message
Message

Yes

Confirm
Display Delete
System

Display Message Delete


Messages Send Response Message from
Content, and user Action?
Page in Email System
details

Display
Cancel
Messages Page

Page | 20 Version 1.0


Internet Ordering System Functional Specifications Document

2.2 Intended Stakeholders/Audience


This section identifies the various users that will use this system. Users may be differentiated based
on the frequency of use.

• Product Owner
• Development team
• Business Analyst
• QA team
• Visitors
• Customers
• Contractors
• Admin

2.3 Dependencies and Change Impacts


2.3.1 Dependencies
DEP.01: Customers must have an internet connection to access the system.
DEP.02: Customers must have a compatible web browser installed on their device to access the
system.
DEP.03: Customers must have a valid payment method that is accepted by the system.
DEP.04: Customers must provide accurate and up-to-date shipping information to ensure that
orders are delivered correctly.
DEP.05: Customers must be able to access and use the accessibility features provided by the
system to meet their specific needs.
DEP.06: Customers must have a minimum level of trust in the system and the company behind it
to place orders and provide personal information.
2.3.2 Change Impacts
With this system, users will be able to purchase products online with different promotions. The
system provides an optimal shopping experience for customers. The system will allow customers
to search and buy their desired product efficiently. It will allow customers to create profile. And
will ensure that all customers, whether account holders or not, can only order a maximum of 5
promotional products. Account holders will be able to order more than 5 promotional products.

Page | 21 Version 1.0


Internet Ordering System Functional Specifications Document

The system will provide various searching and filtering options. In short, the scope of the system
is to provide a reliable, secure, and user-friendly online platform for customers to purchase
products, while improving business operations and insights.

3. Functional Specifications
3.1 Functional Requirements
Functional requirements describe all the operational features that must be implemented in the
system to allow users to perform their tasks thoroughly. Following are the functionalities of the
system under consideration.

3.1.1 Customer
Sr# Description
Registration/SignUp
FR-01 The system shall be able to provide the facility to customers to register
themselves by clicking the create profile button from the signup menu.
FR-02 The system shall be able to provide the facility customers to provide personal
information by filling out a basic registration form.
FR-03 The system shall be able to provide the facility to customers to provide a
• Username.
• Strong password of 8 characters including letters and numbers.
FR-04 The customer will create valid login credentials.
FR-05 The system shall be able to provide the facility to agree to the terms and
conditions during registration.
SignIn/SignOut
FR-06 The system shall be able to provide the facility to the customers to log in to the
system with valid login credentials.
FR-07 The system shall be able to provide the facility to reset the account’s password.
FR-08 The system shall be able to provide the facility to customers to logout from
system.
Manage Profile

Page | 22 Version 1.0


Internet Ordering System Functional Specifications Document

FR-09 The system shall be able to provide the facility to the customers to view the
profile details.
• Username
• Email
• Shipping Address (country, city, postal code)
• Payment details
FR-10 The system shall be able to provide the facility to view all the available products.
FR-11 The system shall be able to provide the facility to change the selected payment
method.
FR-12 The system shall be able to provide the facility to update the profile data.
FR-13 The system shall be able to provide the facility to change user’s password.
Browse Products
FR-14 The system shall be able to provide the facility to the customers to view available
products.
FR-15 The system shall be able to provide the facility to view promotion items.
FR-16 The system shall be able to provide the facility to customers to browse products
by various identifiers.
• Name
• Brand
FR-17 The system shall be able to provide the facility to customers to browse products
by various filters.
• Price
• Promotions
FR-18 The system shall be able to provide the facility to customers to view a thumbnail
of the relevant products as well as a brief description of each product.
Buy Products
FR-19 The system shall be able to provide the facility to the customers to buy their
desired product.
FR-20 The system shall be able to provide the facility to customers to add product in the
cart.

Page | 23 Version 1.0


Internet Ordering System Functional Specifications Document

FR-21 The system shall be able to provide the facility of edit cart.
• Increase quantity
• Decrease quantity
FR-22 The system shall be able to provide the facility of add product in the Wishlist.
FR-23 The system shall be able to provide the facility of continue shopping.
FR-24 The system shall be able to provide the facility of going to checkout.
FR-25 The system shall be able to provide the facility that once the customer will decide
to buy the items, the user is directed to the payment page for making payments.
Payment Method
FR-26 The system shall be able to provide the facility to the customers to select the
appropriate payment method, they will make payments by cash, debit/credit
cards.
FR-27 The system shall be able to provide the debit/credit card payment by asking for
CVV.
FR-28 The system shall be able to verify the payment details and the amount of the
product will be deducted from the customer’s account.

3.1.2 Consumer
Sr# Description
Purchase Product
FR-01 The system shall be able to provide the facility to customers that they become
consumers.
FR-02 The system shall be able to provide the facility to consumers to buy just 5
promotion items because they are non-account holders.

3.1.3 Contractor
Sr# Description
Purchase Product

Page | 24 Version 1.0


Internet Ordering System Functional Specifications Document

FR-01 The system shall be able to provide the facility to customers that they become
contractor (account holder).
FR-02 The system shall be able to provide the facility to contractors to buy more than 5
promotion items because they are account holders.

3.1.4 Administrator
Sr# Description
Login/Logout
FR-01 The system shall be able to provide the facility to login into the system using:
• Predefined Email ID
• Password
FR-02 The system shall be able to provide the facility to change account password.
FR-03 The system shall be able to provide the facility to reset the password if the admin
forgot his password.
FR-04 The system shall be able to provide the facility to logout from the system.
Manage Account
FR-05 The system shall be able to provide the facility to view profile.
FR-06 The system shall be able to provide the facility to update profile details.
Manage Reports
FR-07 The system shall be able to provide the facility to print a report.
FR-08 The system shall be able to provide the facility to download a report.
FR-09 The system shall be able to provide the facility to share a report.
FR-10 The system shall be able to provide the facility to apply filters on a report:
• Date
• Month
• Year
Manage Users Account
FR-11 The system shall be able to provide the facility to update users’ account by
following:
• Add

Page | 25 Version 1.0


Internet Ordering System Functional Specifications Document

• Update
• Delete
• Verify
• View
FR-13 The system shall be able to provide the facility to the admin that he can search
users’ account by various features:
• Filters
• Identifiers
FR-12 The system shall be able to provide the facility to view all the details of the user.
FR-13 The system shall be able to provide the facility to remove the user account if he
wants, in case of any acts regarding terms and conditions.
Manage Stock
FR-14 The system shall be able to provide the facility to manage stock when any product
item’s stock goes under the minimum level.
FR-15 The system shall be able to provide the facility to keep track of each product
item’s stock.
Manage order
FR-16 The system shall be able to provide the facility that admin will be responsible for
properly allocating the selected product according to the customer’s choice and
delivering products to the customers.
View payments
FR-17 The system shall be able to provide the facility to view customers transactions.
FR-18 The system shall be able to provide the facility to keep track of payment details.

Page | 26 Version 1.0


Internet Ordering System Functional Specifications Document

3.2 Business Requirements


Sr# Description
BR01 The system must provide an up-to-date catalogue that reflects all of the products
being sold, as well as any current promotions.
BR02 The system must provide customers with the ability to search for products by
varying identifiers, such as name and brand, and filter options such as price and
promotions.
BR03 The system must display a thumbnail of the relevant products as well as a brief
description of each upon searching for a product.
BR04 System must provide the restriction where non-account customers cannot order
a quantity of more than 5 for an item that is on promotion; quantities of more
than 5 on promotional products are reserved for account holders only.
BR05 System must provide facility to all the customers where they are required to
create a profile on the system before placing an order.
BR06 The internet ordering system must have accessibility features, such as the ability
to increase font size and contrast for people with vision impairment.

Page | 27 Version 1.0


Internet Ordering System Functional Specifications Document

3.3 Use Case Scenarios


3.3.1 Customer
3.3.1.1 Sign Up
3.3.1.1.1 UCS# 01

Name Sign Up

Priority High

Actor User

Summary This use case allows the user to create an account


and become the Customer

Pre-condition ● System must be connected to the internet


● System URL is load in browser

Post-condition The user signed up successfully

Include None

Extends ● Sign up with Google

Normal Course of events

User Action System Response

1. The user clicks on the “Sign up 2. The system displays the “Sign up page” to
with email” button enter Email and Verify the Captcha.

3. The user fills the form and 4. The system sends verification email to the
clicks on the “Continue” button. user and displays the message “Verify link in
<Alt1>: email”. <Exp1> <Exp2>

5. The user verifies the email by 6. The system redirects user to the “Finish
clicking on the “Activate” account set up page having following details
button in the email. to be filled
● First Name
● Last Name
● Choose Password
● Repeat Password

Page | 28 Version 1.0


Internet Ordering System Functional Specifications Document

7. The user enters the details in 8. The user is signed up as a customer


form and clicks on the successfully and views the dashboard.
“Continue” button. <Alt1>

Alternative Path <Alt1>: The user cancels the process.

Exceptions <Exp1>: The system displays that the user entered


an invalid email.
<Exp2>: The user tries to make an account with
existing account details.
<Exp3>: The system displays the user to enter a
valid password.

Assumption User will be registered successfully.

3.3.1.1.2 Functional Requirements


FR-01. The system shall be able to provide the facility to start sign up process directly with
email by entering following details
● Email
● Verify the Captcha
FR-02. The system shall be able to provide the facility to users to receive a confirmation email
after sign up.
FR-03. The system shall be able to provide the facility to the user to activate the account by
clicking on the link in the email.
FR-04. The system shall be able to provide the facility to the user to Finish Setting up Account
by entering the following details
● First Name
● Last Name
● Choose Password
● Repeat Password
FR-05. The system shall be able to provide the facility to user to view the dashboard

Page | 29 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.1.2 Sign In
3.3.1.2.1 UCS# 02

Name Sign In

Priority High

Actor Customer

Summary This use case allows the user to sign in into the
system

Pre-condition ● System must be connected to the internet


● System URL is load in browser
● The user is registered as customer

Post-condition The user signed in successfully

Include None

Extends None

Normal Course of events

User Action System Response

1. The user clicks on the “Sign 2. The system displays the page to enter the sign
In” button. <Alt1> in details
● Email
● Password

3. The user enters details and 4. The system signs in the user and displays the
clicks on the “Login” button. dashboard. <Exp1> <Exp2>
<Alt2>

Alternative Path <Alt1>: The user selected “Sign in with Google”


<Alt2>: The user cancels the process

Exceptions <Exp1>: The user entered an invalid email or


password.
<Exp2>: The system asks the user to re-enter the
valid details.

Assumption User signed in the system as a customer successfully.

Page | 30 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.1.2.2 Functional Requirements


FR-01. The system shall be able to provide the facility to users to enter the sign in details.
FR-02. The system shall be able to provide the facility to the user to view the dashboard.
3.3.1.3 Manage Profile (View, Edit)
3.3.1.3.1 UCS# 03

Name Manage Profile (View, Edit)

Priority High

Actor Customer

Summary This use case allows the user to view and edit his/her
profile into the system

Pre-condition ● System must be connected to the internet


● System URL is load in Browser
● The user is signed in as customer

Post-condition The user viewed and edited the profile successfully.

Include None

Extends Change Password

Normal Course of events

User Action System Response

1. The user clicks on the “My 2. The system displays the user profile and
Profile” button on dashboard following editable details
● Email
● First Name
● Last Name

3. The user edits the desired 4. The system validates the updated details,
details and clicks on the “Save saves them and displays the message “Profile
Changes” button. <Alt1> details updated”. <Exp1> <Exp2>

Alternative Path <Alt1>: The user cancels the process

Exceptions <Exp1>: The user entered the invalid profile


information.
<Exp2>: The system displays the user to re-enter the
valid details.

Page | 31 Version 1.0


Internet Ordering System Functional Specifications Document

Assumption User viewed the profile and updated successfully.

3.3.1.3.2 Functional Requirements


FR-01. The system shall be able to provide the facility to users to view the profile details.
FR-02. The system shall be able to provide the facility to user to edit the profile details
● Email
● First Name
● Last Name
FR-03. The system shall be able to provide the facility to the user to save changes.

3.3.1.4 View Dashboard


3.3.1.4.1 UCS# 04

Name View Dashboard

Priority High

Actor Customer

Summary This use case allows the user to view the dashboard

Pre-condition ● System must be connected to the internet


● System URL is load in browser
● The user is signed in as customer

Post-condition The user viewed the dashboard successfully.

Include None

Extends View Products, View Order History

Normal Course of events

User Action System Response

1. The user clicks on the “My 2. The system displays the dashboard with
dashboard” button following details
● Overview of products
● Order History

Alternative Path ● None

Page | 32 Version 1.0


Internet Ordering System Functional Specifications Document

Exceptions • None

Assumption User viewed the profile successfully.

3.3.1.4.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the user to view the dashboard.
FR-02. The system shall be able to provide the facility to the user to view overview of earned
products.
FR-03. The system shall be able to provide the facility to the user to view the order history on
dashboard
3.3.1.5 Manage Products (View, Search)
3.3.1.5.1 UCS# 05

Name Manage Deals (View, Search)

Priority High

Actor Customer

Summary This use case allows the user to view and search
the deals

Pre-condition ● System must be connected to the internet


● System URL is load in browser
● The user is signed in as customer

Post-condition The user viewed the products.

Include None

Extends None

Normal Course of events

User Action System Response

1. The user clicks on the “Products” 2. The system displays the products that are
button to view the Products available in stock
section. ● Promotional Products

3. The user searches for the desired 4. The system displays the search results.
product in the product section. <Exp1>

Page | 33 Version 1.0


Internet Ordering System Functional Specifications Document

5. The user clicks on the “Products 6. The system redirects user to the related
with promotions” button. page of the promotional products.

Alternative Path ● None

Exceptions <Exp1>: There are no results for the user’s


searched query.

Assumption User searched and viewed the products


successfully.

3.3.1.5.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the user to view the promotional
products (discount deals).
FR-02. The system shall be able to provide the facility to the user to search for the products.
3.3.1.6 Manage Order (View, Place)
3.3.1.6.1 UCS# 06

Name Manage Booking (View, Reserve)

Priority High

Actor Customer

Summary This use case allows the user to view and


place order

Pre-condition ● System must be connected to the


internet
● System URL is load in browser
● The user is signed in as customer

Post-condition The user viewed and place the order

Include None

Extends None

Normal Course of events

User Action System Response

Page | 34 Version 1.0


Internet Ordering System Functional Specifications Document

1. The user searches for the desired 2. The system displays the websites with
product. their promotional products.

3. The user clicks on the “Product” that 4. The system redirects user to the
he wants to order. available products items.

5. The user clicks on the button “Add 6. The system displays message “Add
product in the cart”. product in the cart successfully”.

7. The user clicks on the “Cart” button 8. The system displays the cart with
to see the order details. price, quantity and details of the
products.

9. The user clicks on “Confirm order” 10. The system displays the payment page.
button. <Exp1>

11. The user adds the payment details. 12. The system deducts exact amount from
the user’s account.

Alternative Path ● None

Exceptions <Exp1>: The payment module is not working.


<Exp2>: The system cannot share the
discounted rates offered by websites.
<Exp3>: The system is unable to proceed the
payment.

Assumption User viewed and placed the order


successfully.

3.3.1.6.2 Functional Requirements


FR-01. The system shall be able to provide the facility to user to view the promotional products,
and place order.
FR-02. The system shall be able to provide the facility to user to add products in the cart.
FR-03. The system shall be able to provide the facility to user to proceed to checkout.
FR-04. The system shall be able to provide the facility to the user to confirm order.

Page | 35 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.1.7 Manage Notifications Settings (View, Edit)


3.3.1.7.1 UCS# 07

Name Manage Notifications Settings (View, Edit)

Priority High

Actor Customer

Summary This use case allows the user to view and edit
the notifications settings (Enable/Disable)

Pre-condition ● System must be connected to the internet


● System URL is load in browser
● The user is signed in as customer

Post-condition The user viewed and edited the settings.

Include None

Extends None

Normal Course of events

User Action System Response

1. The user clicks on the “Notification 2. The system displays the page with
Settings” button on the dashboard. notifications settings.

3. The user “Enables/Disables” 4. The system updates the settings and


automatically disappear displays the message “Settings updated
notifications. successfully”. <Exp1>

5. The user “Enables/Disables” 6. The system updates the settings and


website notifications. displays the message “Settings updated
successfully”. <Exp1>

Alternative Path ● None

Exceptions <Exp1>: The system is unable to update the


settings.

Assumption User viewed and updated the settings


successfully.

Page | 36 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.1.7.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the user to view the notifications
settings.
FR-02. The system shall be able to provide the facility to the user to enable/disable the
automatically disappear notifications.
FR-03. The system shall be able to provide the facility to the user to enable/disable the website
notifications.

Page | 37 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.2 Administrator
3.3.2.1 Sign In
3.3.2.1.1 UCS# 01

Name Sign In

Priority High

Actor Administrator

Summary This use case allows the administrator to sign in into


the system

Pre-condition ● System must be connected to the internet


● The user is registered as administrator

Post-condition The user signed in to the system as administrator.

Include None

Extends None

Normal Course of events

User Action System Response

1. The user visits the page for 2. The system displays the page to enter the sign
admin to sign in. in details
● Email
● Password

3. The user enters details and 4. The system signs in the user as administrator
clicks on the “Login” button. and displays the dashboard. <Exp1>, <Exp2>
<Alt1>

Alternative Path <Alt1>: The user cancels the process

Exceptions <Exp1>: The system displays that the user entered an


invalid email or password.
<Exp2>: The system displays the user to re-enter the
valid details.

Assumption User will be signed in successfully.

Page | 38 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.2.1.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the administrator to enter the sign in
details.
FR-02. The system shall be able to provide the facility to the administrator to click on the
“Login” button.
FR-03. The system shall be able to provide the facility to the administrator to view the
dashboard.

3.3.2.2 Manage Profile (View, Edit)


3.3.2.2.1 UCS# 02

Name Manage Profile (View, Edit)

Priority High

Actor Administrator

Summary This use case allows the administrator to view and edit
his/her profile.

Pre-condition ● System must be connected to the internet


● The user is signed in as administrator

Post-condition The administrator viewed and edited the profile


successfully.

Include None

Extends Change Password

Normal Course of events

User Action System Response

1. The user clicks on the “My 2. The system displays the user profile and
Profile” button on the following editable details
dashboard. ● First Name
● Last Name
● Mobile Number
● Address

Page | 39 Version 1.0


Internet Ordering System Functional Specifications Document

3. The user edits the desired 4. The system displays the “Save Changes” button.
details. <Alt1>

5. The user clicks on the “Save 6. The system validates the updated details, saves
Changes” button. them and displays the message “Profile details
updated”. <Exp1>, <Exp2>

Alternative Path <Alt1>: The administrator cancels the editing process

Exceptions <Exp1>: The user entered the invalid profile


information.
<Exp2>: The system displays the user to re-enter the
valid details.

Assumption Administrator’s profile will be updated successfully.

3.3.2.2.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the administrator to view the profile
information.
FR-02. The system shall be able to provide the facility to the administrator to edit the profile
information
● First Name
● Last Name
● Mobile Number
● Address
FR-03. The system shall be able to provide the facility to the administrator to save changes.

3.3.2.3 Manage Dashboard (View, Edit)


3.3.2.3.1 UCS# 03

Name Manage Profile (View, Edit)

Priority High

Actor Administrator

Summary This use case allows the administrator to view


and edit the dashboard.

Page | 40 Version 1.0


Internet Ordering System Functional Specifications Document

Pre-condition ● System must be connected to the internet


● The user is signed in as administrator

Post-condition The administrator viewed and edited the


dashboard successfully.

Include None

Extends Add Users

Normal Course of events

User Action System Response

1. The user clicks on the “Home” 2. The system displays the dashboard with
button. following details for to view
● Statistics of the System
● No. of Active Users
● No. of Registered Users
(Customers)
● Requests to add partners

3. The user clicks on the “Edit Theme” 4. The system makes the theme editable for
button. users to edit and make changes.
● Change background colors
● Replace Icons
● Change buttons’ colors

5. The user edits the theme of the 6. The system updates the theme and
system and clicks on the “Save displays the preview of the updated
Changes” button. <Alt1> theme. <Exp1>

Alternative Path <Alt1>: The administrator cancels the editing


process

Exceptions <Exp1>: The system is unable to save changes.

Assumption Administrator viewed and edited the dashboard


successfully.

3.3.2.3.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the administrator to view the following
information on the dashboard
● Statistics of the system

Page | 41 Version 1.0


Internet Ordering System Functional Specifications Document

● No. of Active Users


● No. of Registered Users (Customers)
● Requests to add partners by Customers
FR-02. The system shall be able to provide the facility to the administrator to edit the theme of
the system.
FR-03. The system shall be able to provide the facility to the administrator to save changes.

3.3.2.3 Manage Orders (Confirm/Cancel)


3.3.2.3.1 UCS# 03

Name Manage Widgets (Add, Remove)

Priority High

Actor Administrator

Summary This use case allows the administrator to Shipped


or cancel the order from dashboard

Pre-condition ● System must be connected to the internet


● The user is signed in as administrator

Post-condition The administrator confirmed or canceled the


customer’s order successfully.

Include None

Extends None

Normal Course of events

User Action System Response

1. The admin clicks on the “Manage 2. The system displays the checkboxes of
order” button on the dashboard. confirmed or canceled the order.

3. The admin marks the unmarked 4. The system displays the feature on the
checkboxes to confirmed or dashboard.
canceled the customer’s order.

Alternative Path ● None

Exceptions • None

Page | 42 Version 1.0


Internet Ordering System Functional Specifications Document

Assumption Administrator confirmed or canceled the


customer’s order successfully.

3.3.2.3.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the administrator to accept or reject the
customer’s order.
3.3.2.4 Manage Users’ Accounts (Search, View, Remove)
3.3.2.4.1 UCS# 04

Name Manage Users’ Accounts (Search, View,


Remove)

Priority High

Actor Administrator

Summary This use case allows the administrator to view


and remove the users’ accounts.

Pre-condition ● System must be connected to the


internet
● The user is signed in as administrator

Post-condition The administrator viewed, and removed the


users’ accounts successfully.

Include None

Extends Add Users’ Accounts

Normal Course of events

User Action System Response

1. The user clicks on the “Manage 2. The system displays the users’
Users” button on the dashboard. accounts in the list.

3. The user clicks on the account to 4. The system displays the details of the
view. user’s account.

5. The user searches for the accounts in 6. The system displays the search results
the search bar by “Name or Email” with options to view or remove.
<Exp1>

Page | 43 Version 1.0


Internet Ordering System Functional Specifications Document

7. The user clicks on the “Remove” 8. The system removes the user account
button to remove the account of the from the database. <Exp2>
user.

Alternative Path ● None

Exceptions <Exp1>: The search results don't exist.


<Exp2>: The system is unable to remove the
user from the database.

Assumption Administrator viewed and removed the user’s


account successfully.

3.3.2.4.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the administrator to view the user’s
accounts.
FR-02. The system shall be able to provide the facility to the administrator to search the user’s
accounts.
FR-03. The system shall be able to provide the facility to the administrator to remove the user’s
accounts from the system.
3.3.2.5 Add User
3.3.2.5.1 UCS# 05

Name Add User

Priority High

Actor Administrator

Summary This use case allows the Administrator to Add Users


to the system.

Pre-condition ● System must be connected to the internet


● The user is signed in as administrator

Post-condition The administrator must be able to add users and their


details.

Include None

Extends None

Page | 44 Version 1.0


Internet Ordering System Functional Specifications Document

Normal Course of events

User Action System Response

1. The user clicks on the “Add 2. The system displays the form to fill the
User” button in the “Manage following details to add the user
Users Section” ● First Name
● Last Name
● Email

3. The user enters the details and 4. The system sends the invite email to the
clicks “Send Invite”. <Alt1> invitee and displays “invite sent
successfully” on a new page. <Exp1>,
<Exp2>

Alternative Path <Alt1>: The administrator clicks on the “Cancel”


button to cancel the process

Exceptions <Exp1>: The email does not exist.


<Exp2>: The system is unable to send the email
link.

Assumption The user accepts the invite and signs up to the


system.

3.3.2.5.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the administrator to add the user to the
system
FR-02. The system shall be able to provide the facility to the administrator to enter the details of
the user
● First Name
● Last Name
● Email
FR-03. The system shall be able to provide the facility to the administrator to send the invite link
to the user.

Page | 45 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.2.6 Respond Queries


3.3.2.6.1 UCS#6

Name Respond Queries (Reported Issues)

Priority High

Actor Administrator

Summary This use case allows the Administrator to


respond to the customer’s queries.

Pre-condition ● System must be connected to the internet


● The user is signed in as administrator

Post-condition The administrator must be able to respond to the


customer’s queries.

Include None

Extends None

Normal Course of events

User Action System Response

1. The user clicks on the “Messages” 2. The system displays the queries and
button on the dashboard. issues reported by users in messages.

3. The user clicks on the “View” 4. The system displays the message along
button to view the message. with the user’s name and email.

5. The user responds to the query to 6. The system delivers the message to the
solve the reported issue. user’s email address. <Exp1>

7. The user clicks on the “Delete” 8. The system deletes the received query
button on the message to delete the and its details from the message box.
query.

Alternative Path ● None

Exceptions <Exp1>: The system is unable to respond to the


message.
<Exp2>: The system is unable to delete the
query.

Assumption The response has been delivered to the user.

Page | 46 Version 1.0


Internet Ordering System Functional Specifications Document

3.3.2.6.2 Functional Requirements


FR-01. The system shall be able to provide the facility to the administrator to view the reported
problems by the customer in messages.
FR-02. The system shall be able to provide the facility to the administrator to respond to the
customer’s query and resolve the issue.
FR-03. The system shall be able to provide the facility to the administrator to remove the
customer’s queries.

Page | 47 Version 1.0


Internet Ordering System Functional Specifications Document

3.4 Class Diagram


1
User SessionManager
<<Enumeration>>
-User_ID:string is -userID:string
UserState -User_password:string -departmentName:string
-Login_status:string +getUser()
New +verifyLogin() +getallGenres()
Active is
Blocked
1
Banned
is

has

Customer
-Customer_Name:string
1
-Customer_address:string Adminitrator
-Customer_email:string
-Customer_ph_no:string -adminName:string
-CreditCardInfo:string 1 -email:string Genre
-ShippingInfo:string +createGenre()
+register() +createProduct() -genreID:int
+Login() +deleteGenre() -genreName:string
+updateProfile() +deleteProduct() -description:string
+search() +editCatalogDetails() +getallProducts()

add product in 1 1

manages

Keyword

ShippingInfo has -keyword:string


Product
1 +findkeyword(in
-shippingID:int -productID:int keyword:string):keyword
has -shippingType:string -productName:string
-shippingCost:int -genre:string
-shippingRegionID:int 1
0..1 -artist:string
+updateShippingInfo() -description:string fetch from
-price:int
ShoppingCart * 1 -imageFileName:string
is made by +select(in productName:string)
-cartID:int
-productID:int Order +displayProduct() ProductSet
-quantity:int +getProductDetails()
-dateAdded:int -memberName has -memberName 1 -setID:int
1..* -productID:int
+addCartItem() -orderID:int
+deleteCartItem() -dateCreated:string 1 +MatchtoProduct(in
0..* -dateShipped:string OrderDetails keyword:string):productSet
+updatequantity()
+viewcartDetails() -memberName
-custonerName:string has 1 -orderID:int
+checkout()
-customerID:string productName:string
+calcUnitPrice()
-shippingID:string -productID:int
+calcTotalPrice()
-status:string -quantity:int 0..*
1 -unitCost:float has
+placeOrder()
-memberName -subTotal:float
<<Enumeration>>
OrderStatus

has New
Hold
Delivered
Shipped

CartItem
1
-cartName:string
0..1 1
-productID:int
adds -genre:string adds
-quantity:int RecommendationSet
-unitCost:float
-subTota:float -productID:int
+new(in cartID:int) +getrecs(in product ID:int):productSet

Page | 48 Version 1.0


Internet Ordering System Functional Specifications Document

3.5 Architecture Diagram

Relational Database
(for order management)
Authentication User Services
and
Authorization

Delivery Engine
Owner Order
Service

Payment
service
Elastic Search Cluster

UI API Gateway

Customer Inventory
service

Tracking
Service
Mobile App
Central
Message
Queue
Micro
Delivery services

Partners

Notification Service

Page | 49 Version 1.0


Internet Ordering System Functional Specifications Document

3.4 Field Level Specifications


3.4.1 Form Elements

Call Field UI Mand Editable Data Value Default Data Data


out Label control atory Type Set Value Example Source

Call Email Textbox Yes Yes Alpha- none NA abc@xyz User


out-1 numeric .com entry

Call Password Textbox Yes Yes Alpha- >= 8 NA Internet7 User


out-2 numeric & 65@ entry
<=50

Call First Textbox Yes Yes Alpha- none NA Abc User


out- 3 Name numeric entry

Call Last Textbox Yes Yes Alpha- none NA Xyz User


out- 4 Name numeric entry

Call Media Button Yes No Video none NA Imported User


out- 5 Files File file of entry
traffic
analysis
data

Call Drop Button Yes No Text none Currenc USDs, User


out-6 down y: USDs GBPs etc entry
menu

Call Message Textbox Yes Yes Text >=50 none Facing User
out-7 login entry
issue

3.4.2 Form Business Rules and Dependencies

Field Validation/ Error Messages Data Additional Info/


Label Business Rule Dependencies Notes

Email Email shall be a The email has an User must enter None
valid email ID incorrect format email id which
was used while
signing up

Create Password shall The password User has to create None


Password be a valid format must be case- a password with at

Page | 50 Version 1.0


Internet Ordering System Functional Specifications Document

sensitive, contain least eight


at least one characters. Must
numeric contain uppercase
character, or and lowercase
contain at least letters, numbers,
one special and at least one
character. special character

Enter Password Password None None


password exactly matches Incorrect
with the
database.

Login User enters Incorrect email, Email & password


correct email & or password, or
password both.

Select User must select NA None None


currency one of the
available
payment
method.

3.4.3 Buttons, Links, and Icons

Button/lin Onclick Other Visible Enabled Navigat Validatio Dependenc


k/ Icon event event Vs e to n y
label Disabled

Login Verify the Display Yes Enabled Dashboa Verify if None


email the always rd page email &
address and followin password
password. g match
If message with
correct then : “Please details in
log the user enter database.
in. your
email
and
passwor
d

Page | 51 Version 1.0


Internet Ordering System Functional Specifications Document

Activate Redirect to None Yes Enabled Website Verify that None


the website always offering the code is
to Activate the not
Promo promo expired
code discount

Send Sends the User Yes Enabled Dashboa User must None
Message Message of cancels always by rd enter at
reporting sending default least Fifty
issue the characters
message

Share Select the None Yes Enabled Sharing NA NA


desired always by window
sharing default
options
from the
pop-up
menu that
appears.

Select Select None Yes Enabled Change None None


currency always the
from list currency
to the
selected
one

Search Enter the None Yes Enabled Opens None None


search always new
keyword window
to show
searched
keyword
data

Page | 52 Version 1.0


Internet Ordering System Functional Specifications Document

Save Save the None Yes Enabled Discount None None


search always ed Rates
results saved
successf
ully

Toggle Enable Disable Yes By Enabled None None


button notification always default, successf
s to Disabled, ully
disappear on click
automatical enabled
ly

Page | 53 Version 1.0


Internet Ordering System Functional Specifications Document

4. System Configurations
4.1 Hardware Requirements
Sr.no Browser name Supported versions

1. Processor Family Intel x86 or x64

2. Processor Speed 1 GHz

3. Memory (RAM) 1 GB RAM

4. Display 1024 x 768

4.2 Operating Environment


Sr.no Browser name Supported versions

1. IOS iPhone 8 and above

2. Windows 8, 10, 11

3. Android 9 and above

4. Linux Linux Mint 21.1 “Vera”

4.3 Web Browser


Sr.no Browser name Supported versions

1. Chrome Version 107.0.5304.107 (64-bit)

2. Safari Version 107.0.02.107 (64-bit)

3. Firefox Version 110.0.1.0 (64-bit)

Page | 54 Version 1.0


Internet Ordering System Functional Specifications Document

4. Opera Version 17.0.5.37 (64-bit)

5. Microsoft edge Version 107.0.1418.34 (64-bit)

Page | 55 Version 1.0


Internet Ordering System Functional Specifications Document

5. Non-Functional Requirements
5.1 Usability
U_1: System must have a user-friendly interface in which users can clearly identify the buttons,
links, images, logo, and controllers of the system.
U_2: The system should have an information message when the user hovers up on buttons.

U_3: Error messages displayed must explain the problem and its solution in words instead of
showing the error code so that the user can recognize the error immediately and solve it.

U_4: The system shall be able to provide the facility to the user to report the issues.

U_5: The system should have clear and intuitive navigation that allows customers to easily
browse and search for products, view product details, and place orders.
U_6: The system should have robust search and filter options that allow customers to quickly
and easily find the products they are looking for, including search by name, brand, and price
range, as well as filtering by promotions.
U_7: The system should allow customers to easily create and manage their user profile,
including updating personal information and preferred payment methods.

5.2 Scalability
The system should be designed to handle increased traffic and data volumes as the business grows,
without compromising performance or usability.

5.3 Compatibility
The system should be run on different operating systems, such as mobile platforms and
conventional desktop environments.

5.4 Portability:
The system should function on any web browser, such as Chrome, Safari and Firefox etc.

5.3 Performance
P_1: The system must include a response to the user’s action within one second to minimize the
latency and speed up the process.

P_2: The system must update the change in the state according to the transaction in real-time (2
sec maximum).

Page | 56 Version 1.0


Internet Ordering System Functional Specifications Document

P_3: Page load must not take more than one second in perfect internet conditions.

5.4 Security
S_1: The system must provide protected transactions on payments by encrypting the credit card
details using the hashing algorithm to assure confidentiality.

S_2: When the user enters a password, system should only accept 8 characters password
including numbers and letters.
S_3: The system shall only have read access to the user's connected payment details.

S_4: The system must restrict the user to add digits and special characters in the password.

S_5: Whenever the user writes a password, the system must encrypt it using a hashing algorithm
to assure privacy and confidentiality.

S_6: The system should encrypt sensitive data, in transit and at rest, to protect it from
unauthorized access.

S_7: The system shall verify the authorization of the registered user through CAPTCHA.

S_8: The system shall not leave any cookies on the user’s device containing the user’s password.

S_9: The system should not allow access to information outside of the user’s authorized scope.

S_10: The user’s data must only be accessible by the administrators of the system.

5.5 Availability
A_1: The users should be able to use the system 24 hours per day, 7 days a week, 365 days a
year (99% of the time.), except during updates or maintenance.

A_2: The system should notify users of planned downtime five days prior to the downtime.

A_3: Maintenance downtime should not be more than two hours

A_4: Maintenance of the system should be handled on time other than during office hours for
the region

A_5: Unplanned downtime should be handled on an immediate basis to make the system
available for users again

Page | 57 Version 1.0


Internet Ordering System Functional Specifications Document

A_6: The system should have regular maintenance schedules to fix bugs to improve performance
and availability.

A_7: The system should have a reliable data recovery system to protect the data loss.

5.6 Expendability
E_1: The system should be able to handle a high volume of users without crashing down

E_2: The system should have capability to add new features without disrupting the flow of
already existing features.

5.7 Maintainability
M_1: The system should be easy to make changes at the code level, and the code should be well
refactored.

M_2: The system should be designed in modular way to make it easier to update and modify
individual components

5.1 Responsiveness
R_1: The system will have a responsive user interface for browser in all devices, i.e. mobiles,
desktop computers, laptops, and tablets.

Page | 58 Version 1.0


Internet Ordering System Functional Specifications Document

6. Reporting Requirements
Sr. No Reporting Requirements Priority

Scope Requirements

RR.01 The reporting document shall contain all the necessary information for High
updates and their effects on the existing project.
RR.02 The reporting document shall specify all the errors and bugs as well High
as their remedies.
RR.03 The reporting document shall describe the changes if made in the project. High

RR.04 The reporting document shall contain all the remedial steps taken during High
the development.
Format Requirements
RR.05 The functional specifications document provides a title page with name of High
title, document type, company name, and date.
RR.06 The document provides a table of contents. High

RR.07 The document provides 16 font size of heading one. High

RR.08 The document provides 14 font size of heading two. High

RR.09 The document provides 13 font size of heading three. High

RR.10 The document provides 12 font size of heading four. High

RR.11 The document provides 12 font size of heading five. High

RR.12 The document provides Times news roman font style. High

RR.13 The document provides all headings in bold. High

RR.14 The document provides lines spacing of 1.5 High

Data Elements and contents


RR.15 The document provides an introduction of the document. High

Page | 59 Version 1.0


Internet Ordering System Functional Specifications Document

RR.16 The document provides scope of the project. High

RR.17 The document provides the purpose of the document. High

RR.18 The document provides High level, application screen flow, Sitemap, and High
process flow diagrams of the system.
RR.19 The document provides business, functional, non-functional, integration, High
exception handling, and reporting requirements of the system.
RR.20 The document provides use case scenarios of functional requirements for the High
customer and administrator.
RR.21 The document provides system configurations. High

RR.22 The document provides data migration/conversion requirements. High

File type and extraction Mechanism


RR.23 File shall be in MS word supported extensions High

RR.24 File shall be supported .doc extension High

RR.25 File shall be supported .docm extension High

RR.26 File shall be supported .docx extension High

RR.27 File shall be supported .pdf extension High

RR.28 File shall be supported .text extension High

RR.29 File shall be supported .xml extension High

Accessibility and Usability


RR.30 The report provides the facility to address discriminatory aspects related to High
equivalent user experience for people with disabilities.
RR.31 The system shall be able to provide the facility to work well with assistive High
technologies.
RR.32 The report provides the English language. High

Page | 60 Version 1.0


Internet Ordering System Functional Specifications Document

7. Integration Requirements
Sr. No Description Priority

Integration Requirements

IR-1 The system shall be able to provide the facility to integrate with PayPal.com High

IR-2 The system shall be able to provide the facility to integrate with stripe.com High

IR-3 The system shall be able to provide the facility to integrate with Square.com High

IR-4 The system shall be able to provide the facility to integrate with FedEx.com High

IR-5 The system shall be able to provide the facility to integrate with DHL.com High

IR-6 The system shall be able to provide the facility to integrate with the UPS.com High

IR-7 The system shall be able to provide the facility to integrate with High

GoogleAdds.com

IR-8 The system shall be able to provide the facility to integrate with the Google High

search console.

IR-9 The system shall be able to provide the facility to integrate with Google High

Analytics.

IR-10 The system shall be able to provide the facility to integrate with High

awardwallet.com

IR-11 The system shall be able to provide the facility to integrate with High

SalesForce.com

Page | 61 Version 1.0


Internet Ordering System Functional Specifications Document

IR-12 The system shall be able to provide the facility to integrate with MixPanel.com High

IR-13 The system shall be able to provide the facility to integrate with High

AdobeAnalytics.com

IR-14 The system shall be able to provide the facility to integrate with Credit Card High

System

IR-15 The system shall be able to provide the facility to integrate with Debit Card High

System

IR-16 The system shall be able to provide the facility to integrate with Bitcoin Wallet High

Hardware Requirements

IR-17 The system shall be able to provide the facility to use processor family: High

● Intel x86

● Intel x64

IR-18 The system shall be able to provide the facility to use 1 GHZ processor speed High

IR-19 The system shall be able to provide the facility to use memory RAM of 1 GB High

IR-20 The system shall be able to provide the facility to use Display of 1024x768 High

Operating Environment Requirements

IR-21 The system shall be able to provide the facility to user to use system on High

Microsoft windows of /8/10/11

IR-22 The system shall be able to provide the facility to user to use system on High

Linux Mint 21.1 “Vera”

Page | 62 Version 1.0


Internet Ordering System Functional Specifications Document

IR-23 The system shall be able to provide the facility to user to use the system on High

IOS 8 and above.

IR-24 The system shall be able to provide the facility to user to use the system on High

Android version 8 and above.

Web Browser Requirements

IR-25 The system shall be able to provide the facility to user to use the system in High

Google Chrome 45.0.2454 and above versions.

IR-26 The system shall be able to provide the facility to user to use the system in High

Safari.

IR-27 The system shall be able to provide the facility to user to use the system in High

Microsoft Edge.

IR-28 The system shall be able to provide the facility to user to use the system in High

Opera.

Page | 63 Version 1.0


Internet Ordering System Functional Specifications Document

7.1 Exception Handling/ Error Reporting


Exception/ Error Cause Solution Strategy
Error ID
Err.01 The email has an User has entered incorrect User must enter valid email
incorrect format while email address while signing up address while signing up
signing up
Err.02 Invalid password User created an invalid User must create the valid
format password format password format
Err.03 Wrong password User entered wrong password User must enter the correct
while logging in the system password he/she created for the
account
Err.04 The message field can't User entered less text in the User must enter more than 49
be less than 50 message field of “Reporting an characters in the Message field.
characters. Issue”

Page | 64 Version 1.0


Internet Ordering System Functional Specifications Document

8. Data Migration/ Conversion Requirements


Data migration is the process of transferring data from one storage system, format, or location to
another. This process is often performed when an organization upgrades or replaces its existing
hardware or software systems, such as moving from an old database management system to a new
one, or transferring data from a legacy system to a modern one. Data migration can also be required
when merging two different systems, consolidating multiple databases, or moving data to the
cloud.
Data migration typically involves a series of steps, such as planning the migration, identifying the
data to be migrated, preparing the data for migration, testing the migration process, executing the
migration, and verifying the data after the migration is complete. The process can be complex and
time-consuming, and it requires careful planning and execution to ensure that the data is migrated
accurately and securely, without data loss or corruption.
Usually, data migration comes as a part of a larger project such as

● Legacy software modernization or replacement


● The expansion of system and storage capacities
● The introduction of an additional system working alongside the existing application
● The shift to a centralized database to eliminate data silos and achieve interoperability
● Moving IT Infrastructure to the cloud
● Merger and acquisition (M&A) activities when IT landscapes must be consolidated into a
single system

Sr. No# Requirements Priority

Storage Migration/ Conversion Requirements

DMR.01 The system shall be able to migrate data from paper to High
digital documents.

DMR.02 The system shall be able to migrate data from hard disk Medium
drives (HDDs) to faster and more durable solid-state drives
(SSDs)

Page | 65 Version 1.0


Internet Ordering System Functional Specifications Document

DMR.03 The system shall be able to migrate data from mainframe Medium
computers to cloud storage.

Database Migration/ Conversion Requirements

DMR.04 The system shall be able to upgrade to the latest version of Medium
DBMS (so-called homogeneous migration)

DMR.05 The system shall be able to switch to a new DBMS from a High
different provider — for example, from MySQL to
PostgreSQL or from Oracle to MSSQL

Application Migration/ Conversion Requirements

DMR.06 The system shall be able to move data from one computing Medium
environment to another.

DMR.07 The system shall be able to work with different data Medium
formats.

Data Centre Migration/ Conversion Requirements

DMR.08 The system shall be able to keep data safe during relocation Medium
of existing computers and wires to other premises

DMR.09 The system shall be able to protect data while moving Medium
digital assets, including data and business applications to
new servers and storage.

Business Process Migration/ Conversion Requirements

Page | 66 Version 1.0


Internet Ordering System Functional Specifications Document

DMR.10 The system shall be able to transfer the business Medium


applications and databases with data on customers, and
operations to the new environment.

Cloud Migration/ Conversion Requirements

DMR.11 The system shall be able to move data from on-premises to Medium
the cloud or between different cloud environments without
loss of any data.

8.1 Data Conversion Strategy


A strategic data migration plan should include consideration of these critical factors

● Knowing the data: Before migration, source data needs to undergo a complete audit.
Unexpected issues can surface if this step is ignored.
● Cleanup: Once you identify any issues with your source data, they must be resolved. This
may require additional software tools and third-party resources because of the scale of the
work.
● Maintenance and protection: Data undergoes degradation after a period, making it
unreliable. This means there must be controls in place to maintain data quality.
● Governance: Tracking and reporting on data quality is important because it enables a
better understanding of data integrity. The processes and tools used to produce this
information should be highly usable and automate functions where possible.
8.1.1 Data Migration Strategies
There is more than one way to build a data migration strategy. An organization’s specific business
needs and requirements will help establish what’s most appropriate. However, most strategies fall
into one of two categories: “big bang” or “trickle.”

8.1.1.1 “Big Bang” Migration


● In a big bang data migration, the full transfer is completed within a limited window of time.
Live systems experience downtime while data goes through ETL processing and transitions
to the new database.

Page | 67 Version 1.0


Internet Ordering System Functional Specifications Document

● The drawback of this method is that it all happens in one time-boxed event, requiring
relatively little time to complete. The pressure can be intense, as the business operates with
one of its resources offline. This risks a compromised implementation
8.1.1.2 “Trickle” Migration
● Trickle migration, in contrast, completes the migration process in phases. During
implementation, the old system and the new are run in parallel, which eliminates downtime
or operational interruptions. Processes running in real-time can keep data continuously
migrating.
● Compared to the big bang approach, these implementations can be complex in design.
However, the added complexity, if done right, usually reduces risks, rather than adding
them.
8.2 Data Conversion Preparation
Each strategy will vary in the specifics, based on the organization’s needs and goals, but generally,
a data migration plan should follow a common, recognizable pattern:

8.2.1 Explore and Assess the Source


● Before migrating data, we must know as well as how it fits within the target system.
Understand how much data is pulling over and what that data looks like.
● There may be data with lots of fields, some of which won’t need to be mapped to the target
system. There may also be missing data fields within a source that will need to be pulled
from another location to fill a gap.
● Beyond meeting the requirements for data fields to be transferred, run an audit on the actual
data contained within. If there are poorly populated fields, a lot of incomplete data pieces,
inaccuracies, or other problems, it may reconsider whether we really need to go through
the process of migrating that data in the first place.
● If an organization skips this source review step, and assumes an understanding of the data,
the result could be wasted time and money on migration. Worse, the organization could
run into a critical flaw in the data mapping that halts any progress in its tracks.

Page | 68 Version 1.0


Internet Ordering System Functional Specifications Document

8.2.2 Define and Design the Migration


● The design phase is where organizations define the type of migration to take on — big
bang or trickle. This also involves drawing out the technical architecture of the solution
and detailing the migration processes.
● Considering the design, the data to be pulled over, and the target system, you can begin to
define timelines and any project concerns. By the end of this step, the whole project should
be documented.
● During planning, it’s important to consider security plans for the data. Any data that needs
to be protected should have protection threaded throughout the plan
8.2.3 Build the Migration Solution
● It can be tempting to approach migration with a “just enough” development approach.
However, since you will only undergo the implementation one time, it’s crucial to get it
right. A common tactic is to break the data into subsets and build out one category at a
time, followed by a test. If an organization is working on a particularly large migration, it
might make sense to build and test in parallel.
8.2.4 Conduct a Live Test
● The testing process isn’t over after testing the code during the build phase. It’s important
to test the data migration design with real data to ensure the accuracy of the implementation
and completeness of the application
8.2.5 Flipping the Switch
● After final testing, implementation can proceed, using the style defined in the plan.
8.2.6 Audit
● Once the implementation has gone live, set up a system to audit the data in order to ensure
the accuracy of the migration.

Page | 69 Version 1.0


Internet Ordering System Functional Specifications Document

8.3 Data Conversion Specifications

Source Source Data Target Target Data Conversion Notes


Element Element Rules

Database 1 Customers’ Database Insert, update, and That source


personal 2 delete data is
information converted to
the format of
the
destination

Database 1 Tables and Database Insert, update, edit A runtime


data 2 and delete check is
performed
prior to the
conversion to
determine if
the
destination
data type can
hold the
source value.
If it cannot, an
error occurs

Page | 70 Version 1.0


Internet Ordering System Functional Specifications Document

9. References
• https://www.daraz.pk
• https://www.naheed.pk
• https://24hours.pk
• https://www.clicky.pk
• https://www.shophive.com
• https://shoptheworld.in

Page | 71 Version 1.0


Internet Ordering System Functional Specifications Document

10. Open Issues

Issue Issue Raised Raised Solution/ Resolved Resolved Status


ID By On By On
Decision

ID.01
4xx errors Customer MM/D Check the Customer MM/DD/ Solved
D/YY spelling of the YY
URL, have you
mistyped it?

Clear cookies
and cache.

It could be the
receiving
server.

Refresh the
page.

Check out
other websites.

If a user is
trying to login
to a protected
area, ensure he
is using the
correct URL.
ID.02
Pop-up not Customer MM/D Find the origin Developer MM/DD/ Solved
displaying D/YY of the problem YY

Page | 72 Version 1.0


Internet Ordering System Functional Specifications Document

ID.03
Free Miles Customer MM/D Make the Developme MM/DD/ Solved
not getting D/YY function to add nt team YY
added the free miles
on the user's
dashboard
when the user
earns free
miles.

ID.04
Rewards Customer MM/D Integrate with Developme MM/DD/ solved
Withdrawal D/YY wallets and nt team YY
Issue withdrawal
services to
make rewards
redeemable

ID.05
Promo Customer MM/D Remove the Developme MM/DD/ Solved
Code D/YY promo codes nt team YY
Activation from the deals
Issue once they are
outdated

Page | 73 Version 1.0

You might also like