Online Shopping

IN THE NAME OF ALLAH THE MOST GRASIOUS THE MOST MERCIFUL AND THE MOST COMPASSIONATE

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

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 Shopping. 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, and 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.

InventoryList of items being sold on the market
EmitA single product being sold
AdminThe person who is software managing the system
UserThe person who is using the system to purchase anything
TransactionInformation regarding the purchase of an item by the customer
PromotionThe discount pr vided on the items in the inventory for a o specific period of time
CartList of the items that customer wants to buy from the system software
SRSSystem 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, an appendix 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 Shopping 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.

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 check out 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 Shopping 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, and contact and much 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.

(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 General Constraints


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

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

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 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   Updating

3.6.3.1.         Members of the system will be able to update their profile.

3.6.4. User Authorization

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.

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 describe a function of software system and also explain 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

                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.

Please wait for :

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.

Leave a Comment