rEG Number NAME ROLL Number

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 37

rEG number () NAME ROLL number()

Online jewellary store

IN THE NAME OF ALLAH THE MOST


GRASIOUS THE MOST MERCIFUL AND THE
MOST COMPASSIONATE

Revision History
Date Description Author Comments
<Version 1> Name (Roll no)

Document Approval
The following document has been accepted and approved by the following:

Signature Printed Name Title Date


Dr. Supervisor
Online jewellary store

Table f Contents

1. Introduction 1
1.1 Aim 1
1.2 Scope 1
1.3 Definitions. 2
1.4 Overview 2

2. The Overal Descrption 3


2.1 Product Perspctive 3
2.2 Product Functions 3
2.3 User Characteristics 4
2.4 General Constraints 4
2.5 Assumptions and Dependencies 4

3. Specific Requirements 5
3.1 External Interface Requirements 8
3.1.1 System Interfaces 8
3.1.2 Interfaces 8
3.1.3 Hardware Interfaces 8
3.1.4 Software Interfaces 9
3.1.5 Comunications Interfaces 9
3.2 Functional Requirements 6
3.3 Use Cases 7
3.3.1 Use Case diagram 7
3.4 Class Diagram 7
3.4.1 class diagram 7
3.5 Nn-Functional Requirements 7
3.5.1 Performance 8
3.5.2 Reliability 8
3.5.3 Availability 8
3.5.4 Security 8
3.5.5 Maintainability 8
3.5.6 Portability 8
3.6 Inverse Requirements 8
3.7 Logical Database Requirements 8
3.8 Design Constraints 8
3.8.1 Standards Compliance 8

4. Analysis Models 9
4.1 Sequence Diagrams 9
4.2 Data Flow Diagrams (DFD) 9
4.3 State-Transition Diagrams (STD) 9
Online jewellary store

1. Introduction
The Software Requirements Specification is basically designed to write the requirements
of the software being developed by developer and requested by the user to build it. The
actual aim of this SRS is to provide a clear and descriptive definition of user
requirements that can be used for next development of the system. This document is split
into a number of sections to separate the software requirements into easy parts. This
Software Requirements Specification aims to describe the Functionality, Attributes and
Design implemented on the software system described throughout the rest of the
document. The language and terminology used in this System Requirements
Specification must be unambiguous.

SRS Document 1.0 Page 1 01/20/22 f


Online jewellary store

1.1 Purpose

To search and describe the functionalities and requirements of E-Commerce system is the
primary purpose of this Software Requirements Specification Document.The Software
Requirements Specification document describes the system’s uses and the functionalities
provided by the customer.The audience for the system is the people of Pakistan who want
to shop anything from home and online with reliability and timely.

1.2 Scope

The project being developed is called E-Commerce or Online Jewelar Store.This project
is developed to provide the facility to the users to buy anything on the internet and
facilitate the sale. This system is designed to run on the internet so anyone can use it by
surfing the internet and purchase the desired items. The software application will run on a
centralized server and the users will have to access this application by remote server. This
software application will allow the users to create their own accounts to use the
application. By creating the account, users can be members of the application and use it.
The users will be allowed to search, browse, and add items to cart. Then, they can have
items in their shopping cart and check out from the system to complete the transaction.
The system application also allows the admin to manage the inventory. Admin can add
new items, delete, view and update the details regarding any item in the inventory. The
system also allows the admin to apply promotion to the items in the inventory and
customer can purchase those items with some percentages off. This facility can be done
by the admin and the customer can then purchase the items. Email facility is also
provided in the system. Through this facility, new promotions can be sent to the members
of the software application. The system will allow the users to change their passwords
and edit their details anytime.The system will not be providing many facilities. The
system will not provide the credit card facility as the payment method will only be by
hand. Admins cannot be customers of the application software as they can only manage
the system. There will be only one admin and any other admin cannot be created for the
system.

1.3 Definitions, Acronyms, and Abbreviations.

SRS Document 1.0 Page 2 01/20/22 f


Online jewellary store

Inventory List of items being sold on the market

Item A single product being sold

Admin The person who is managing the system software

User The person who is using the system to purchase anything

Transaction Information regarding the purchase of an item by the customer

Promotion The discount provided on the items in the inventory for a


specific period of time

Cart List of the items that customer wants to buy from the system
software

SRS System Requirements Specification

1.5 Overview
This document contains the requirements of the system software that is being developed.
This document is split into many sections for the convenience of the reader. The first
section of the document describes the purpose and scope of the software system. The
second section of the document is named Overall Description. As the name shows, this
section contains the overall description of the document and slicing it into different
parts.The third section describes all the requirements in detail. The fourth section
contains all the necessary diagrams to model the system. In the fifth section, appendixes
is given in this section.

2. The Overall Description


This section describes the functionalities which can be expected from the system and
which cannot be expected, describing the scenarios in which the system can be working
successfully.

2.1 Product Perspective


Online jewelar store supports many functions for the users of this software system. This
application is available for all the persons having internet. They can browse and purchase
any item they want to buy. Only those items can be purchased which are available in the
inventory of the system. Payment method is limited to manual only.

SRS Document 1.0 Page 3 01/20/22 f


Online jewellary store

The following sections explain how the software operates.

2.1.1 Operations
Users of this system can perform many operations such as:
(1) User can create their accounts.
(2) Users can browse through the inventory.
(3) Users can add items to their cart.
(4) Users can checkout from the system and complete the transactions.
(5) Users can change their profile details.
(6) Admin can browse items of the inventory.
(7) Admin can edit items of the inventory.
(8) Admin can delete items of the inventory.
(9) Admin can update details of the items available in the inventory.
(10) Admin can add new items in the
inventory.
(11) Admin can view orders of the
customer.

2.1.2 Site Adaptation Requirements


In order to run this system, client does not have to be having any specific hardware. Only
requirements for this system are:
(1) User must have the computer or smart phone to run the system.
(2) User must have a working internet connection.

2.2 Product Functions


Online jewelar Store can perform many functions throughout the execution cycle. Each
function is for general users or for the admin of the system. Admin can perform some
specific functions and not of the general user.
The functions of the system are:
1) The system can maintain the records of different items in the inventory.
(a) Item name and the name of the manufacturer.
(b) Details about the item, e.g. color, size, weight.
(c) The price of the item.
(d) Total quantity of the item in the inventory.
2) The system can keep record of the many customers.
(a) Customer can have unique username, password, name, address, contact and
many other information.
(b) Any user can be a member of the system.
3) Anyone may be allowed to be the member of the system.
4) System can show the list of available items in the inventory.
(a) Items will be sorted in alphabetically.
5) Allow users and the admin of the system to log out from the system.
6) System will be able to show the shopping cart for the users.

SRS Document 1.0 Page 4 01/20/22 f


Online jewellary store

(a) Any user of the system can add any item from the inventory to the shopping
cart.
7) Members of the system can add different items from the inventory in the shopping cart
and check out from the system to complete the transaction.
(a) Only the logged in members of the system can check out from the system.
(b) If the member is not logged in, he will be asked to log in the system.
8) Users can get emails regarding different promotions and confirmation of the
transactions.

2.3 User Characteristics


The user of the software system is the person who has a working internet connection and
a web browser. That user must know how to operate the browser and browse through
different websites. If he does not know how to operate the browser, he cannot be the user
of this software system.

2.4 GeneralConstraints
There are many constraints on this software system. Password of the members of this
system is stored in the plain text in database. So, there is no security in storing the
passwords of members. If a person tries to log in to the system, but fails many times, the
system will not be locked down. Members of the system will not be forced to apply a
strong password. A strong password means the use of alphanumeric values along with
some special characters. User can store any password he likes. The username of the
account will be the email of the members. The system may not work correctly if any
other browser is used than firefox.

2.5 Assumptions and Dependencies


It is assumed that the user of this software system has access to a computer with all the
necessary hardware equipment. Computer must be able to run the OS and proper web
browser must be installed on it. It is also assumed that the user have access to working
web connection in order to access the software system on the internet.
Some other assumptions are as follows:
 The username and password of the admin may be not changed.
 Only one admin can be available for the system.
 No new admin can be created for the system.
 Admin cannot be the customer of the system.

3. Specific Requirements
The requirements specific to this software system are as follows:
1. Constraints

SRS Document 1.0 Page 5 01/20/22 f


Online jewellary store

1.1. Client Side


1.1.1.Software
1.1.1.1. Web Browser
1.1.2.Hardware
1.1.2.1. Computer System
1.2. Server Side
1.2.1.Software
1.2.1.1. Web Application
1.2.1.2. Web Server
2. Data Structure
2.1. Inventory Item
2.1.1.Serial No.
2.1.2.Name
2.1.3.Brand
2.1.4.Price
2.1.5.Color
2.1.6.Quantity
2.2. Member
2.2.1.Serial No.
2.2.2.Name
2.2.3.Father Name
2.2.4.Email Address
2.2.5.Password
2.2.6.Address
2.2.7.Contact
2.3. Admin
2.3.1.Name
2.3.2.Password
2.3.3.Email address
2.4. Orders
2.4.1.Serial No.
2.4.2.Customer ID
2.4.3.Date of Order
2.4.4.Username of customer
2.4.5.Details of items in the order
2.4.6.Total Bill
3. Project
3.1. Search Inventory
3.1.1.Display
3.1.1.1. Items shown on single page
3.1.1.2. Every Item display contains
3.1.1.2.1. Name
3.1.1.2.2. Brand
3.1.1.2.3. Price
3.1.1.3. Products shown in ascending order
3.1.1.4. Individual Item Page
3.1.2.Selection
3.1.2.1. Add to Cart button available for every item on the list
3.2. Search Product

SRS Document 1.0 Page 6 01/20/22 f


Online jewellary store

3.2.1.Search provided for the name of product


3.2.2.Exact name of product can be searched only
3.3. Product Modification
3.3.1.Admin can modify the products stored in inventory
3.3.2.Admin can:
3.3.2.1. Add new product
3.3.2.2. Update product details
3.3.2.3. Update the quantity of the product
3.3.2.4. Add New Brand
3.3.2.5. View Available inventory
3.3.3.Admin can delete the specific product from inventory
3.4. Shopping Cart
3.4.1.Must be logged in.
3.4.1.1. Member of system can add items in the cart
3.4.1.1.1. If item is out of stock, then a message will be shown that requested
product cannot be added to the cart
3.4.1.1.2. Customer can add as many items as the customer wants to buy from the
inventory
3.4.1.2. Member of the system cannot check out from the system unless there are some
items in the shopping cart
3.4.2.If member is not logged in
3.4.2.1. User cannot add items in the cart
3.4.2.2. User of the system cannot check out from the system
3.5. Process of check out
3.5.1.User of the system must have some items in the shopping cart
3.5.2.Details of checkout page
3.5.2.1. Details of the Purchased items
3.5.2.2. Total bill calculated
3.5.2.3. Total number of items in the cart
3.5.2.4. A button to complete transaction
3.5.3.An email will be sent to the customer regarding the order
3.5.4.When customer purchases an item, total quantity of the items in the inventory is
decremented according to the order
3.6. Authorization
3.6.1.Member
3.6.1.1. Admin(Single, can’t be changed, can’t order)
3.6.1.2. Customer (multiple,easily registered, multiple orders)
3.6.2.Account registration
3.6.2.1. Any person can create an account
3.6.2.2. Required Information
3.6.2.2.1. Email
3.6.2.2.2. Password
3.6.2.2.3. Name
3.6.2.2.4. Father name
3.6.2.2.5. Contact
3.6.2.2.6. Address
3.6.3.Profile Updation
3.6.3.1. Members of the system will be able to update their profile.
3.6.4.User Authorization

SRS Document 1.0 Page 7 01/20/22 f


Online jewellary store

3.6.4.1. No Password recovery


3.6.4.2. Only logged in users can be logged out
3.6.4.3. Only logged in customers can check out
3.6.4.4. Users will be automatically logged out from the system after a specific time in
which the session will be expired
3.7. Promos
3.7.1.Requirement
3.7.1.1. Promos will be for entire order
3.7.1.2. Specific percentage will be exempt
3.7.1.3. Promos will be for limited time
3.7.1.4. Only one promo will be opened in a given time
3.7.1.5. Only members can avail the promos.
3.7.2.Starting
3.7.2.1. Only admin can create the promos
3.7.2.2. Every promo has a different id
3.7.2.3. Email will be sent to the customer regarding different promo
3.7.2.4.
3.7.3.Expiry
3.7.3.1. Promos will be deleted automatically after the completion of promo
3.8. Saving order
3.8.1.Requirement
3.8.1.1. Required details
3.8.1.1.1. Order number
3.8.1.1.2. Customer id
3.8.1.1.3. Customer name
3.8.1.1.4. Total bill
3.8.1.1.5. Name of the items
3.8.1.1.6. Date of the order placed
3.8.1.1.7. Time of order placed
3.8.1.2. Admin can view all the orders from the system
3.8.1.3. Order details will be saved whenever the order is completed

3.1 External Interface Requirements

3.1.1 System Interfaces


As this software system is web based, it needs to have a web server to run and execute
the services and fetch the data from the database to show it to the customer and to store
data of different users. To store the order of users, there must also be a web server.

3.1.2 Interfaces
There are many interfaces included in this software system. This project basically involve
graphical user interface to interact with the user of this software system. Today, there is
must to have a graphical user interface for the application to be successful in the market.
Command line interface is not used nowadays.

SRS Document 1.0 Page 8 01/20/22 f


Online jewellary store

3.1.3 Hardware Interfaces


As this software application needs to be running on the internet, so the hardware system
must be connecting with a working internet connection. This software system can only be
run on the computer with having a working internet connection.

3.1.4 Software Interfaces


The software system must be able to communicate with the admin in order to manage
different things in the system. It must also be able to communicate with the sales
department of the system for order management. The system must also be able to
communicate with the data storage to get the product details. It must also be able
communicate with the customer in order to get information to get them registered.
3.1.4.1 MYSQL
The system must use MYSQL as its database component. Communication with the
database is through the server itself. So there must not be any issue communicating with
the database.
3.1.5 Communications Interfaces
The E-Commerce software system must use the HTTP protocol to communicate through
different users in the world. There must not be any other protocols be used in this
software system in order to avoid ambiguity. This is a standardized way of
communicating through different clients throughout the world.

3.2 Functional Requirements


Functional requirements of the system are those requirements which describes a function
of software system and also explains its components. A function can be defined as the set
of different things, e.g. input, processing, and output.
An E-commerce store can have many functional requirements according to its
functionalities and requirements. Functional requirement is of different functions of the
system. As there are many functions, there will be as many requirements. In order to meet
functional requirements, there has to be some inputs. There will be some processing
performed on the inputs and after the processing, the outputs will be provided to the user
or customer. There may be some errors in the process, but these errors can be resolved
accordingly and timely.
3.2.1.2 Inputs
In order to do different functions of the system, there must be different inputs. For example, if a
user wants to get registered on the system, user must have to provide his basic information as
an input for the registration. If a user wants to log in to the system, he must have to provide his
username and password as an input.

3.2.1.3 Processing

SRS Document 1.0 Page 9 01/20/22 f


Online jewellary store

After providing inputs to the system, processing is done on the inputs in order to gain output.
For example, when given the username and password, these inputs are sent to the database
and matched with the existing records. If it matches with the record, then user will be logged in
to the system.

3.2.1.4 Outputs
When a user provides input to the system, then the system performs some processing on the
inputs. After processing, the system will generate the output for the user. For example, when
user provides the username and password to the system, and database processing is done on
the input. Then if it matches, user will be logged in to the system. Otherwise, the system will
generate an error message.

3.2.1.5 Error Handling


If there appears to be any error in the processing of the required function, then it should be
handled accordingly and immediately. There must not be any error while execution of the
software system.

3.3 Use Cases


Use cases are basically designed to explain which things will be interacting with the
system. It will also explain the different functionalities graphically. Given below is the
different terms of use case diagram that will help understand the diagram to the reader of
this document.
Actors These are the objects that will directly interact with the
system. These are the sticks given in the diagram with a name
underneath them.

Use Cases These are used to show the functions of the system that are
must to be implemented. These are oval shapes in the diagram.
Interactions These are the lines that show the direct connection between
actor and the use cases.

Includes This shows that a use case uses the functionality of another use
case. This is shown with dotted line and written on it includes.
Extends This shows that a use case uses all of the other use cases
functionality and adds extra functionality as well. This is also
shown with dotted line but written on it is extends.

The System Boundary This shows the boundary of the system. Everything that is
within this is included in the system. And system will be
responsible for everything included in it. It is shown with a
large rectangle.
Use Case Template This is used to explain the basic functionality and uses of the

SRS Document 1.0 Page 10 01/20/22 f


Online jewellary store

use case diagram.

Type This is used to show if a use case is directly interacted with the
actor or not.
Cross Ref It is a field in the use case diagram which describes that which
requirement satisfies the specific use case.

Use-Cases It is a field in the use case template that explains that which
use case must be executed before executing the specific use
case.

3.3.1 System Use Case

SRS Document 1.0 Page 11 01/20/22 f


Online jewellary store

3.3.2 Admin Use Case

Sign in

View product

View brand

View product

login

Add product

Delete products
Administrator

update Product

SRS Document 1.0 Page 12 01/20/22 f


Online jewellary store

3.3.3 Product Use Case

New

Add

<<extend>> <<extend>>

Product <<extend>
View

<<extend>>

<<extend>>
Delete
Update
Actor

SRS Document 1.0 Page 13 01/20/22 f


Online jewellary store

3.3.4 Customer Use Case

New

Add

<<extend>> <<extend>>

Customers <<extend>
View

<<extend>>

<<extend>>
Delete
Update
Actor

SRS Document 1.0 Page 14 01/20/22 f


Online jewellary store

3.4 Class Diagram


Class diagram is used to show the communication between objects of the system in order
to achieve the functionality of use cases. Below is the description of some of the class
diagram terms and keywords.

Class Classes are represents by the use of rectangles. These rectangles


are split into three parts. One for the name of class, second for the
variables of the class and third is used to write the names of
functions of class.
Variable Variables names are represented by the text followed by the semi
colon. Their data type is also written on the end which shows which
type of data can be stored in the variable.

Functions Functions names are represented by the text followed by the


parenthesis. There will also be variable names in the parenthesis to
show how much data will be sent to the functions.
Generalization Generalizations are represented by the a line with an unfilled
triangle at the end of the line.

Aggregation Aggregations are represented by the lines with unfilled diamond at


the end of line. Aggregation means that the object with the
diamond is in possession of other objects with no diamond.
Associations Associations are represented by the lines which connects two
classes. These lines show that there is some relationship between
the two connected classes

Multiplicities These are the numbers on the end of every association and
aggregation. These numbers show that how many objects are

SRS Document 1.0 Page 15 01/20/22 f


Online jewellary store

connected to one another.

SRS Document 1.0 Page 16 01/20/22 f


Online jewellary store

3.5 Non-Functional Requirements

SRS Document 1.0 Page 17 01/20/22 f


Online jewellary store

There are so many requirements for this software system but we will discuss some of
them which are most important for online jewelar store.
 Effectiveness
 Performance
 Reliability
 Quality
 Easy to use
 Availability
 Security

3.6 Inverse Requirements


There are not any inverse requirements for this software system.

3.7Logical Database Requirements


In this section, requirement related to the database is described. It will be described that
how many tables are needed and what attributes will be there for any table. So, in the E-
Commerce system, total tables will be five. Details of the table is given below.
1. Tbl_admin
a. ID
b. Name
c. Contact
d. Email
e. Password
f. Last_activity
2. Tbl_Customers
a. ID
b. Name
c. Contact
d. Address
e. Email
f. Password
g. Last_activity

SRS Document 1.0 Page 18 01/20/22 f


Online jewellary store

3. Tbl_brands
a. ID
b. Name
c. Enabled
4. Tbl_products
a. ID
b. Name
c. Price
d. Brand_id
e. Quantity
f. Color
g. Enabled
5. Tbl_orders
a. ID
b. Customer_id
c. Total_bill
d. Items

3.8Design Constraints
In this section, design limitations are being discussed based on the hardware provided for
the system. In order to run the system, user must have the computer with an OS installed
in it. A browser must also be available in the system. A working internet connection is
also necessary for the system to run as the system is based on the web. So, without an
internet connection, system is unable to run.

4. Analysis Models
This section describes the analysis of the project in the real world. Analysis of the project
is done by using different diagrams of software engineering. These diagrams show
different angle of the project so that the designer of this project easily understands the
requirements of this project and implement them in an easy way.

SRS Document 1.0 Page 19 01/20/22 f


Online jewellary store

4.1 Sequence Diagrams


As the name indicates, sequence diagram describes or explains different sequences of
different tasks in the system. For the purpose of this diagram, it uses class diagram to
show different things in the system. Purpose of this diagram is to ensure that the system
is running and working in the proper way and nothing will go wrong at the time of
executing.
Below are some terms which will be used in the diagram.

Axis Thex-axis shows movement among different things and the y-axis
shows time.
Comment Comments are used to explain what is going on the specific time or
stage. These are written on the left side of the diagram.

Instance These are the solid boxes on the top of the diagram with dotted
lines.Instances are of some specific objects. The first part of the
text shown in the box is the name of the instance and the name of
the object is followed by it.
Call These are the lines with the triangle at the end of each line. These
are used to show the movement or transition of one instance to
another. There may be a label on the top of each line, which
represents a function call or a variable set.

Variable set This is shown by “+=”, “-=” etc. these show that a value of one
variable is assigned to the other
:= This symbol means that the variable is being set directly

+= This symbol means that the value of the variable is being added
-= This symbol means that the value of the variable is being
subtracted

Guard Statements Guard statement is used to set some kind of criteria on any
function
Returns These are used to show the return value of the function. Dotted
line with an arrow on the edge is used to show returns.

Object Execution Time The object execution time describes the time of execution of any
object in the diagram.

SRS Document 1.0 Page 20 01/20/22 f


Online jewellary store

SRS Document 1.0 Page 21 01/20/22 f


Online jewellary store

SRS Document 1.0 Page 22 01/20/22 f


Online jewellary store

SRS Document 1.0 Page 23 01/20/22 f


Online jewellary store

SRS Document 1.0 Page 24 01/20/22 f


Online jewellary store

SRS Document 1.0 Page 25 01/20/22 f


Online jewellary store

SRS Document 1.0 Page 26 01/20/22 f


Online jewellary store

4.2 Data Flow Diagrams (DFD)


There are many levels for the data flow diagram. These levels indicates different functions of the
system with different aspects.

Context Level

Level 1

SRS Document 1.0 Page 27 01/20/22 f


Online jewellary store

Level 2

SRS Document 1.0 Page 28 01/20/22 f


Online jewellary store

Level 3

SRS Document 1.0 Page 29 01/20/22 f


Online jewellary store

Level 3

SRS Document 1.0 Page 30 01/20/22 f


Online jewellary store

Login

SRS Document 1.0 Page 31 01/20/22 f


Online jewellary store

4.3 State-Transition Diagrams (STD)


The state diagram uses all the other diagrams to display the necessary changes in the system
and display the working of the system.

Starting Point This is the place which represents the starting stage of the system. There
may be a line with an arrow which guides to the starting point.
States States are shown with the use of rectangles with the rounded
edges. These are split in to two parts. Half has the name of the
state. And the other half contains the further attributes of the
state.
Transitions The transitions are the arrows which are used to show the
movement of the state from one state to another state in the
system.

Objects These are the classes of the system. They can contain many states
and transitions. These are shown with the use of bigger boxes.

SRS Document 1.0 Page 32 01/20/22 f


Online jewellary store

SRS Document 1.0 Page 33 01/20/22 f


Online jewellary store

SRS Document 1.0 Page 34 01/20/22 f

You might also like