You are on page 1of 13

1.

1 Software Requirements Specification

for

<BIG BASKET>

Version 1.0 approved

Prepared by <Himanshu>

<Heritage Institute of technology>

<13th feb,2k18>

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Software Requirements Specification for <Project> Page ii

Table of Contents
Table of Contents...........................................................................................................................ii
Revision History.............................................................................................................................ii
1. Introduction..............................................................................................................................1
1.1 Purpose...........................................................................................................................................1
1.2 Document Conventions..................................................................................................................1
1.3 Intended Audience and Reading Suggestions.................................................................................1
1.4 Product Scope.................................................................................................................................1
1.5 References......................................................................................................................................1
2. Overall Description..................................................................................................................2
2.1 Product Perspective........................................................................................................................2
2.2 Product Functions...........................................................................................................................2
2.3 User Classes and Characteristics....................................................................................................2
2.4 Operating Environment..................................................................................................................2
2.5 Design and Implementation Constraints.........................................................................................2
2.6 User Documentation.......................................................................................................................2
2.7 Assumptions and Dependencies.....................................................................................................3
3. External Interface Requirements...........................................................................................3
3.1 User Interfaces................................................................................................................................3
3.2 Hardware Interfaces........................................................................................................................3
3.3 Software Interfaces.........................................................................................................................3
3.4 Communications Interfaces............................................................................................................3
4. System Features.......................................................................................................................4
4.1 System Feature 1............................................................................................................................4
4.2 System Feature 2 (and so on)..........................................................................................................4
5. Other Nonfunctional Requirements.......................................................................................4
5.1 Performance Requirements.............................................................................................................4
5.2 Safety Requirements.......................................................................................................................5
5.3 Security Requirements....................................................................................................................5
5.4 Software Quality Attributes............................................................................................................5
5.5 Business Rules................................................................................................................................5
6. Other Requirements................................................................................................................5
Appendix A: Glossary....................................................................................................................5
Appendix B: Analysis Models.......................................................................................................5
Appendix C: To Be Determined List............................................................................................6

Revision History
Name Date Reason For Changes Version
Software Requirements Specification for <Project> Page 1

1.Introduction

1.2 Purpose 

The main purpose of this document is to describe the role and requirements of the system 
BIGBASKET(BB). The system’s primary uses and required functionality as specified by our 
users(stakeholders and developers). It will illustrate the purpose and complete declaration for the 
development of system. It will also explain system constraints, interface and interactions with other 
external applications. Nonetheless, it helps any designer and developer to assist in software delivery
lifecycle (SDLC) processes.

1.3 Document Conventions

BB ­big basket
Stakeholder :­ A user of the system other than developer.
SDLC :­ Software delivery lifecycle
AI:­Artificial Intelligence
RAT: Rational
DESC: Description
DEP: Dependency
OTP: One time password

1.4 Intended Audience and Reading Suggestions

1.5 Product Scope

Primarily, the scope pertains to the E­Store product features for making big basket live.  It focuses 
on the company, the stakeholders and applications, which allow for online sales, distribution and 
marketing of day to day useable items.

This system is used by  people to buy new products and shop for all food and grocery needs with 
the comfort of your home or office without standing in big queue of payment window and carrying 
heavy bags. Food shopping online now easy as every product in your monthly shopping list , is now
available online at bigbasket.com.

The bigbasket.com will allow any user to create an account to become a customer or buy products 
as a guest user. The system will allow customers to browse, search, select, and add products to a 
shopping cart. Then, provided they have products in their shopping cart, check out products in 
shopping cart and decrement the stock that the inventory the system maintains. The BB also allows 
a manager to manage the inventory with full create, retrieve, update and delete (CRUD) 
functionality with regards to products in the system. It will also allow, on an inventory wide basis, 
customers and managers to interact with a promotion system that handles percentage­off 
promotions that can be applied to member’s orders. This interaction includes the creation (by 
managers) and the application to orders (by customers) of the promotions. The BB has full email 
Software Requirements Specification for <Project> Page 2

capabilities; the automated email functionality will be used to send promotions to members of the 
system as well as provide the managers with low­stock notifications.

1.6 References

2.5.1. Template based on IEEE Std 830­1998 for SRS. Modifications (content and ordering of 
information)

2. Overall Description
This section includes details about what is and is not expected of the BB system in addition to 
which cases are intentionally unsupported and assumptions that will be used in the creation of the 
BB system.

2.1 Product Perspective

BB is an online vegetables,fruits and grocery website which supports a number of functions for both
the consumer and warehouse's management. It makes user aware about their requrements , choices
and new products in the markets.It also care of own customer’s satisfaction by taking feedback and 
supports them by “may I help you” as AI.
 
This system will consist of two parts: one mobile application and one web portal. The web portal 
must be accessable to anyone using the internet and mobile application is used by user by using any
Kind of smart phones supporting android above version 5.0.

2.2 Product Functions

With the mobile application, the users will be able to search for products(category wise or putting 
name of the product) . The result will be based on the criteria the user inputs. There are several 
search criteria and it will be possible for the administrator of the system to manage the options for 
those criteria that have that.

The result of the search will be viewed either in a list view or in grid view, depending on what 
criteria included in the search. The list view will have one list item searched by the user the most 
matched product with be in the top of the list.If there is many products are available with same 
name the user can filter the product by using a filter option.

The web portal will provide functionality to manage the system and the restaurant information. It 
will also provide information about the system. The admin or manager  is able to add, delete update 
any items.

BB will provide a number of functions; each is listed below. 
• Maintain data associated with the inventory (a collection of goods) .
• A product will always have a title, specification and price.
• The inventory will also keep track of the stock/quantity of each product.
• Maintain records for all customers.
Software Requirements Specification for <Project> Page 3

• A customer can either be a member or non­member.
• A customer has a username (which will be unique), password (no restrictions), email address 
(verified), and postal address (unverified) phone number (verified by OTP).
• Anyone can sign up for a customer account. 
• Allow any customer to become a member as (BB special customer).
• Show a list of available products and for non­available products show the relevant products.
• Products will be displayed in ascending alphabetical order by most relevant product first or by       
filter choice selected by the user.
• Each product will be listed in the following  way from left to right:­
• Name
• Specification 
• Price 
• Allow customers and managers to log in and out off the system.
• Users (both customers and the manager) will be logged out if inactive for more than 30 minutes. 
• Shopping cart.
• Anyone can add products in their cart by their choice(if some product is added into the cart it may 
be possible that at the time of order the product may be out of stock due to concurrency). 
• The shopping cart may limit the quantity of products.
 • Checkout
 • Checkout is available for logged­in customers or guest users . A user that is not logged in as a 
customer is given a chance to log in or sign up or buy the product with giving some specific details 
for delivery .
Details for guest users are a valid 
.Customers full name
.Phone number(verified by OTP) 
.A valid address (verified by GPS)
Details of non­users who wish to sign up:­
. Customers should provide  all the details as asked by the sign­up page.
And verify the mandatory details like phone number and email Id .
.   
For becoming  a prime member he /she should pay a nominal fee.
 • Customers can enter a promotion code.
 • Only one promotion code may be used per purchase
 • The promotion is a fixed percentage discount that is to be applied to an entire order.
 • The discount is specified by the manager at the time of the promotion’s creation or most recent 
update/edit. 
• Each order has its own OrderID  having following feature:­ 

The customer is able to check the status of the product when it is delivered .The customer 
can choose the delivery by his/her own choice .The OrderId is used to claim every type of problem 
related to their order items .Most the products are raw so delivery is important on time.

• When the quantity a product falls below a threshold, the manager is notified that the product
needs to be reordered and ……………………………………. 

• One exception is if the manager is able to cancel the order by giving some specific reason to 
customer.
• Allow manager to update stock quantities 
• Allow manager to change any product's price 
• Allow manager to view transaction logs
• Allow manager to create promotions
 • A promotion is a percentage discount that can be applied to an entire order 
• Promotions may only be used by customers
Software Requirements Specification for <Project> Page 4

• A promotion has an expiration date specified by the manager When a promotion is created, it is 
emailed to all member customers via the email address specifing customer(member or non­
member).
. every  vegetables should come with recipe along with a video link that how it is prepared.

2.3 User Classes and Characteristics

There are three types of users that interact with the system: end users(as customers), working
employee(as delivery boy etc) and administrators. Each of these three types of users has
different use of the system so each of them has their own requirements.

The mobile application users can only use the application to stakeholders. This means that the
user have to be able to search products , add it into the cart and at the end of shopping ask for
checkout and ask for registered mail id if the user is not registered then ask for sign up by giving
the details or he/she is able to check out as guest_user only giving the details required for deliver
the item and idetify the person.

A moderator is considered as a staff who can manage orders for the time being. As a future update 
moderator may give facility to add and manage his own products. Moderators can reduce the work 
load of admin. Now moderator has all the privilege of an admin having except managing other 
moderators. He can manage users and manage products. He can also check the orders and edit his 
profile.

The adminstrator will not use the mobile application but the web portal instead. There they will
manage the information about their products, for example a description of the products. . The
administrators also only interact with the web portal. They are managing the overall system so
there is no incorrect information within it. The administrator can manage the information for each
staff as well as the options for both stakeholders and non stakeholders.

2.4 Operating Environment

This software is used in every types of web browser as well as in the mobile application,mobile 
having the android version above kitkat. The mobile application is constrained by the system 
interface to the GPS navigation system within the mobile phone. 

2.5 Design and Implementation Constraints

The mobile application is constrained by the system interface to the GPS navigation system within 
the mobile phone. Since there are multiple system and multiple GPS manufacturers, the interface 
will most likely not be the same for every one of them. Also, there may be a difference between 
what navigation features each of them provide. 
Software Requirements Specification for <Project> Page 5

The Internet connection is also a constraint for the application. Since the application fetches data 
from the database over the Internet, it is crucial that there is an Internet connection for the 
application to function.  

In the feedback forms, the replies will not be frequent and the petitioner will not be anonymous

Both the web portal and the mobile application will be constrained by the capacity of the database. 
Since the database is shared between both application it may be forced to queue incoming requests 
and therefor increase the time it takes to fetch data. 
Software Requirements Specification for <Project> Page 6

2.6 Assumptions and Dependencies

Client: We have assumed that all the customers able to use smart phones and browse frequently
. He /she is able to read and understand simple English written about the products and that the
user is capable of operating these system's basic functions including but not limited to being able
to power on the system, login and open either Internet Explorer or Mozilla Firefox, and navigate
the browser to the address of this BB website.

Provider: We have assumed that the BB will be running on a properly working web server and
database system with an Internet connection that allows this system to perform all
communications with clients.

Assumptions: .- Any user cannot edit their primary account information .BB is obiliged to give
delivery to his customers in fixed interval of time. It is assumed that the user is familiar enough
with a computer to operate the browser, keyboard and mouse and is capable of browsing to, from
and within simple websites [1]

3. External Interface Requirements

3.1 User Interfaces

A first-time user of the mobile application should see the log-in page when he/she opens the
application. If the user has not registered, he/she should be able to sign up or skip the first page
and go on home page and there is showing a search keyword showing below some attractive
offers on their products .There is another keyword termed as category for filtering the products as
the user’s requirement. If the user wish to buy something he /she can add that into cart and
product is shown in the cart with detailed information of bill.

3.1 Hardware Interfaces

The hardware requirement at the user end is really simple and the website can also run on the 
hardware that can run a basic simple browser, although the hardware should be good enough during 
peak times  for the web servers. 
Software Requirements Specification for <Project> Page 7

3.2 Software Interfaces

The application should support all major web browsers that will make it convenient for user to acess
our system with ease the back end i.e the database services will be used to a great extent and hence 
it will be quite efficient designed.

3.3 Communications Interfaces

The communication between the different parts of the system is important since they depend on 
each other. However, in what way the communication is achieved is not important for the system 
and is therefore handled by the underlying operating systems for both the mobile application and the
web portal.

4. System feature

This section includes the requirements that specify all the fundamental actions of the software
system.

4.1.Functional requirements

4.1.1 For Costumer
4.1.1.1:TITLE: Download mobile application   
DESC: A user should be able to download the mobile application through either an 
application store or similar service on the mobile phone. The application should be 
free to download.  

4.1.1.2:TITLE: User registration ­ Mobile application 
DESC: Given that a user has downloaded the mobile application, then the user 
should be able to register through the mobile application. The user must provide 
user­name, password and e­mail address. The user can choose to provide a regularly 
used phone number or user and can skip the log in page using a unique system 
generated GuestuserId.

4.1.1.3:TITLE:Login into the Portal. 
DESC: The user can login into the system by providing its login id as(email or phone
number) and password to the portal .

4.1.1.4:TITLE : Change password 
DESC : Change the password after logging into the system .The user will be asked a 
security question if he/she forgets his/her password. In case, he/she can use forget 
password function to reset their own  password verifying registered  phone number 
through OTP.

4.1.1.5:TITLE : View/change profile details. 
Software Requirements Specification for <Project> Page 8

DESC : The user can view or change some of his/her personal details like email id, 
contact details and address details. The profile will contain name, age, their address, 
their contact details etc. He /she can able to change their details.

4.1.1.6:TITLE : Help 
DESC: Can get help through the help option which gives information about the 
different features provided by the system. A copy of user manual will also be 
provided in this section.

4.1.1.7:TITLE: Search  
DESC: Given that a user is logged in to the mobile application, then the first page 
that is shown should be the search page. The user should be able to search for a 
specific product, according to several filter options. The search options are Price, 
company , category etc. There should also be a free text search option.

4.1.1.8:TITLE: print bill
DESC : This is able to show the detailed information of bill with base price  specific 
charges  as delivery charge ,GST etc.

4.1.1.9:TITLE:search a product name 
Unique ID (auto­increment starting at 1) 
Name 
Specification
Price 
Reorder Threshold
Stock 
4.1.1.10:TITLE:Browse Inventory 
Items Listed on single page 
Items shown in tabular format 
Each Item listing contains 
Name 
Specification 
Price .
Listing sorted by more relevant name first.
4.1.1.11:TITLE :Interaction 
 Each Item has add to card cart option on their page. 
 There is also a option is available to select the required
 amount.
Shopping Cart 
Logged In 
Can add items to cart 
If Item is not in stock, message displayed informing 
user to try again later and show the relevant products 
Customer can purchase (no quantities associated with 
orders).
 If shopping cart not empty, a user may begin 
Checkout procedure 
Not Logged In 
Can add items to cart 
User can login before they may begin Checkout     
procedure or by using guest user id.
4.1.1.12:TITLE: Checkout procedure 
User must successfully use shopping cart before beginning this procedure 
Checkout page consists of  
Software Requirements Specification for <Project> Page 9

A text box for promotion entering 
 An overview of the purchase  
A text box to hold the credit card number 
A button to complete the order 
Order details sent via email after the checkout has completed  
On order completion the inventory is decremented based on items 
purchased by user 

4.1.2 for manager
4.1.2.1:TITLE: Download and notify users of new releases
DESC: When a new/updated version or release of the software is released, the user 
should check for these manually. The download of the new release should be done 
through the mobile phone in the same way as downloading the mobile application. 

4.1.2.2:TITLE:Manager has these attributes 
 Username 
 Password 
Email address 
4.1.2.3:TITLE:Browse Inventory 
Items Listed on single page 
Items shown in tabular format 
Each Item listing contains 
Name 
Specification 
Price .
Listing sorted by more relevant name first.

4.1.2.4:TITLE: Create, Update and Destroy (CRUD) Functionality 
 Only managers are allowed to modify inventory 
 Managers have an interface to:
  Create a product entry 
Update a product entry 
Update the stock/quantity of a particular product
Create a new promotion 
Review current inventory 

Using the same interface to browse inventory as described in 
section 3.1, the manager has an additional “Edit Item” option 
for each product.

Manager has full CRUD capabilities on each product
Managers may delete items from the inventory
 

4.1.2.5:TITLE: Authentication System 
User Levels 
Manager (single, hardcoded user, no orders) 
Customer (unlimited, open creation, unlimited orders) 
Software Requirements Specification for <Project> Page 10

Account Creation 
 Everyone is allowed to create an account 
 Required Information 
  Account Modification 
 Users are not able to modify any aspect of their account after 
creation (“it would be nice but not needed”)
Login and Logout 
There is  lost­password recovery 
Logging in allows one to logout 
Logging in allows checkout 
There is a 30­minute session time out after which a logged in 
user will be logged out automatically. 
4.1.1.13TITLE: Promotions 
Specifications 
Applies to entire order 
 Percentage­off type promotion (x% off entire order) 
Expiration occurs at manager specified date
Multiple coupons cannot be applied to same order
Non­member users also apply promotions to order
Creation
 Promotion created by manager 
Each promotion has a unique identifying number (can be auto 
generated) 
Email containing promotion sent to all member users of the BB 
system  
Deletion 
 Promotions are auto­deleted when the expiration date has passed.

5. Other Nonfunctional Requirements

5.1 Performance Requirements

<If there are performance requirements for the product under various circumstances, state them
here and explain their rationale, to help the developers understand the intent and make suitable
design choices. Specify the timing relationships for real time systems. Make such requirements as
specific as possible. You may need to state performance requirements for individual functional
requirements or features.>

5.2 Safety Requirements

<Specify those requirements that are concerned with possible loss, damage, or harm that could
result from the use of the product. Define any safeguards or actions that must be taken, as well
as actions that must be prevented. Refer to any external policies or regulations that state safety
issues that affect the product’s design or use. Define any safety certifications that must be
satisfied.>
Software Requirements Specification for <Project> Page 11

5.3 Security Requirements

<Specify any requirements regarding security or privacy issues surrounding use of the product or
protection of the data used or created by the product. Define any user identity authentication
requirements. Refer to any external policies or regulations containing security issues that affect
the product. Define any security or privacy certifications that must be satisfied.>

5.4 Software Quality Attributes

<Specify any additional quality characteristics for the product that will be important to either the
customers or the developers. Some to consider are: adaptability, availability, correctness,
flexibility, interoperability, maintainability, portability, reliability, reusability, robustness, testability,
and usability. Write these to be specific, quantitative, and verifiable when possible. At the least,
clarify the relative preferences for various attributes, such as ease of use over ease of learning.>

5.5 Business Rules

<List any operating principles about the product, such as which individuals or roles can perform
which functions under specific circumstances. These are not functional requirements in
themselves, but they may imply certain functional requirements to enforce the rules.>

6. Other Requirements
<Define any other requirements not covered elsewhere in the SRS. This might include database
requirements, internationalization requirements, legal requirements, reuse objectives for the
project, and so on. Add any new sections that are pertinent to the project.>

Appendix A: Glossary
<Define all the terms necessary to properly interpret the SRS, including acronyms and
abbreviations. You may wish to build a separate glossary that spans multiple projects or the entire
organization, and just include terms specific to a single project in each SRS.>

Appendix B: Analysis Models
<Optionally, include any pertinent analysis models, such as data flow diagrams, class diagrams,
state-transition diagrams, or entity-relationship diagrams.>

Appendix C: To Be Determined List
<Collect a numbered list of the TBD (to be determined) references that remain in the SRS so they
can be tracked to closure.>

You might also like