Project Report-Merged
Project Report-Merged
for
Small Scale Grocery Management System
Prepared by:-
Pratham Sharma 20BCE2463
Sahas Vivek 20BCE2701
Shreasi Sen 20BCE2738
1
Table of Contents
1 S/W PROCESS MODEL AND S/W PROCESS MANAGEMENT
A. INDIVIDUAL CONTRIBUTIONS
B. VIEWPOINT OF THE PROBLEM STATEMENT
- PURPOSE
- OBJECTIVE
- DOCUMENT CONVENTIONS
- INTENDED AUDIENCE
- PRODUCT SCOPE
C. PLANNING AND SCHEDULING DIAGRAMS
- WORK BREAKDOWN STRUCTURE
- GANTT CHART
- TIMELINE CHART
- PERT-CRITICAL PATH
A. INTRODUCTION
- PURPOSE
- SYSTEM OVERVIEW
B. ARCHITECHTURE
- OVERVIEW
- SUBSYSTEM, COMPONENT OR MODULE 1…N
C. USER INTERFACE DESIGN
- APPLICATION CONTROLS
- SCREEN 1…N
D. SOFTWARE USED
E. GRAPHICAL USER INTERFACE
- COMMON SCREEN
- LOGIN
3
- LIST OF AVAILABLE SHOPS
- LIST OF AVAILABLE SLOTS
- ADMIN SIDE LOGIN
- LIST OF USERS IN ADMIN SIDE
4
-
5
SOFTWARE ENGINEERING CSE3001
CONTRIBUTION:
I worked on the Gantt Chart and the Timeline Chart for this application by understanding the time and
customer requirements. We sub divided each task to understand fully the necessities to develop this
application to a highly scalable.
I will make UI / UX, basic frontend prototyping and the documentation using basic design tools like
Figma as developer handoff is facilitated using Figma. I will also be doing research to understand the
target users and their needs for enhancing the utility and scalability of this product. Once this phase is
completed, I will begin to build the basic frontend of the website using the design prototype using CSS to
style the website and HTML to build the basic skeleton of the webpage.
The demand for basic necessities prevails during this time of a global pandemic. People have to get daily
supplies like food and medicine and have to risk themselves getting affected by the virus. Hence, we aim
to allow the people of a particular area to buy the daily grocery items by maintaining social distancing
norms and thereby reducing the risk of spreading coronavirus.
1.2 OBJECTIVE
To help the shop owners continue with their business so that they are financially stable while also
enabling citizens to get the required items during this lockdown period to the maximum possible extent
along with reducing the risk of transmission of the virus and following all the norms of social-distancing
which has taken a hit on everyone’s lives.
The SRS is documented using MS Word. The font used to document the SRS is Times New Roman.
Words which have been bold is the point of discussion in that particular paragraph with the bullet points
acting as sub-information of that topic.
The intended audience for this involves people from all walks of life because our product aims to solve
the problem of availability of all perishable items. This product aims to solve the problem of accessibility
by delivering goods in an online mode to every single household. As we are in uncertain times, the best is
to make sure people remain indoors to minimize the spread of the deadly COVID 19 virus which is once
again back to wrecking havoc across the world.
Be it a pandemic or just a regular day this webapp will be useful in getting what the customers wish and
could possibly increase the business of the shop owners by making them widespread in the virtual world
which is often overlooked by the locals. It would save customers a lot of time and resources which
otherwise they might have spent in a futile trip to their known general store. Also, once the laws start to
loosen up a bit, we could also think of starting a doorstep delivery service.
The system would focus on the following key points:
1.Directing the buyer to the nearby seller that can fulfill his needs
2.Creating a slot system for buyer coming to one seller
3.Sending buyers to different sellers if a slot of buyer’s choice has already too many buyers
2.3.TIMELINE CHART
D- UI PROTOTYPING
J- BUG TESTING
K- DOCUMENTATION
L- FUTURE UPDATES
SUBTASKS TABLE
A - 3
B A 2
C A 5
D B,C 5
E D 4
F D 5
G E,F 8
H G 6
I E,F,G 2
J I 6
K - 2
L - 2
PERT DIAGRAM
A 0 3 *
B 3 5 -
C 3 8 *
D 8 13 *
E 13 17 -
F 17 22 *
G 22 30 *
H 30 36 -
I 30 32 *
J 32 38 *
K 0 2 -
L 0 2 -
Software Requirements
Specification
for
Prepared By:-
Revision History
1.1 Purpose
The demand for basic necessities prevails over their supplies during this time of a global
pandemic. People have to get general daily items like food and medicine and have to risk
themselves getting affected by the virus. Hence, we aim to allow the people of a particular area
to buy the daily grocery items by maintaining social distancing norms and thereby reducing the
risk of spreading coronavirus.
1.2 Objective
To help the small shop owners with their business so that they are financially better off and the
citizens to get the required items during this lockdown period to the maximum possible extent
along with reducing the risk of transmission of the virus and following all the norms of social-
distancing which has taken a hit on their lives.
The SRS is documented using MS Word. The font used to document the SRS is Times New
Roman. Words which have been bold is the point of discussion in that particular paragraph with
the bullet points acting as sub-information of that topic. Also note that priorities for higher-level
requirements are assumed to be inherited by detailed requirements.
The intended audience for this document involves people from all walks of life because our
product aims to solve the problem of availability of all perishable items. However, all the
sections might not be useful or of interest for people under a specific category. For example, a
housewife may find only the introduction and overall description of the product useful because
she is only interested in knowing the features and benefits of using our products. On the other
hand, a developer or a software engineer will overlook the external interface requirements and
system features section which is acceptable whereas a Marketing strategist will find his keen
interest in the introduction, overall description, non-functional and other requirements because it
somewhat defines his scope of investing in our product.
Be it a pandemic or just a regular day this webapp will be useful in getting what the customers
wish and could possibly increase the business of the shop owners by making them widespread in
the virtual world which is often overlooked by the locals. It would save customers a lot of time
and resources which otherwise they might have spent in a futile trip to their known general store.
Also, once the laws start to loosen up a bit, we could also think of starting a doorstep delivery
service.
2
3. Sending buyers to different sellers if a slot of buyer’s choice has already too many buyer
1.6 References
2. Overall Description
Our product is a self-contained product however we can say that the motivation and courage of
launching such a product came from the success that Amazon has enjoyed over these years.
The process model used for our product is the spiral model. The reason behind using it is because
our project is a large one, we need to commit releases frequently, we can also create a prototype
easily and lastly as the situation fluctuates we can make necessary changes to our product.
This product aims at the fulfillment of basic necessities of most people and even certain specific
groups of individuals along with aiding small-scale shop owners to be financially capable of
living through these tough times along with helping retail parts of bigger industries to contribute
to the nation's economy is this project’s novelty. It is one of the few well-planned techniques
where overcrowding at a particular medical, grocery etc stores can be prevented. The
government can also control the outburst of a helpless crowd by dividing the time slots vs no of
people in consideration with the social distancing norms. Lastly, due to its open Source nature
you can modify it according to your needs on completion.
The main objective is to get the required items during this lockdown period to the maximum
possible extent along with reducing the risk of transmission of the virus and following all the
norms of social-distancing which has taken a hit on their lives.
3
● We have also used the threshold number of customers allowed in a slot to be three which
can be increased according to the need and the government norms.
● Also a pin would be provided to each shopkeeper which would be unique but for demo
purposes we have given each shop an Id which starts from 123 for shop A and goes till
133 for shop W.
Administrator: He/she is the one who is responsible for maintaining all the login details
involving both the customer and the shopkeeper. Also any guidelines passed on by the
government which has to be displayed on the website has to be taken care of by him. Lastly,
the data base involved has to be maintained and secured by the administrator.
The General Public/Customer: They are the ones who will enjoy the benefits of our product.
They are only allowed to login and book the slots according to the availability. Lastly the most
important task they have to perform is to submit a wish list for the next day which has the details
of the customer demands.
The Shopkeeper: The first task the shopkeeper has to perform is to submit details of their shops
such as location, shop name, products provided etc. Second is to look into the wish list and try to
fulfill it to the extent that every customer gets the needful item which increases the value of our
webapp. Lastly, they need to update the stock time to time in order to avoid a situation where a
customer’s visit to the shop is futile which affects the reputation of the webapp.
Being a web application it can be used on any operating system as well as no restriction on the
type of environment to be used. A laptop, tablet and a smartphone will support this web app
providing smooth functionality and user experience.
One immediate requirement that a user should fulfill and is recommended from our side is to
have good internet connectivity. However, the user will still be able to surf the website but won’t
have the updated information which can be misleading sometimes. All the protocols will be
handled by our team however we might face challenges in areas such as corporate or regulatory
policies of that particular Municipal Corporation. Also maintaining such a large database can be
strenuous at times. One major problem that we identified while hosting this webapp all over
India and around the world is the communication protocols because the world is a diverse place
with people making use of many different languages, however with a positive vision we host the
website in English which is generally understood by everyone.
The list of user documentation components that will be delivered along with the software are
listed below:
● A tutorial video will be provided on the website’s home page itself.
4
● A 24/7 available chat box will also be set up to bring solutions for our users at that very
instance.
● A feedback text box will also be provided because we always want to improve our user
interface and experience.
● Guides and Api references will also be included.
We aim to take referral for maintaining our standards from companies such as Flipkart and
Amazon.
Assumptions:
● Our team assumes that all the users have access to internet connectivity.
● The users know how to surf online on a website.
● Have resources such as smartphones or laptops.
Dependencies:
● We need to get the approval of google to host this website prior to the fact that we fulfill
all the requirements.
● We are also dependent on a company to provide us with a domain name which enables us
to host our website.
● Also, we are heavily dependent on all the search browsers where our websites will be
available.
● External user interface.
● Business rules, Security and Safety requirements.
● Also on companies such as Oracle or MYSql with whom we will partner for maintaining
and creating the database.
SCHEDULING DIAGRAMS :-
GANTT CHART
5
TIMELINE CHART :-
PERT DIAGRAM :
6
SUBTASKS TABLE
A - 3
B A 2
C A 5
D B,C 5
E D 4
F D 5
G E,F 8
H G 6
I E,F,G 2
J I 6
K - 2
L - 2
7
Activity Immediate Predecessors Duration
A - 3
B A 2
C A 5
D B,C 5
E D 4
F D 5
G E,F 8
H G 6
I E,F,G 2
J I 6
K - 2
L - 2
PERT DIAGRAM
8
PERT DIAGRAM WITH CRITICAL PATH
A 0 3 *
B 3 5 -
C 3 8 *
D 8 13 *
E 13 17 -
F 17 22 *
G 22 30 *
H 30 36 -
9
I 30 32 *
J 32 38 *
K 38 40 -
L 40 42 -
A 0 3 *
B 3,4 5,6 -
C 3 8 *
D 8 13 *
E 13,17 17,23 -
F 17 22 *
G 22 30 *
H 30,33 36,39 -
I 30 32 *
10
J 32 38 *
K 38,40 40,42 -
L 40 42 -
WBS STRUCTURE :-
11
3. External Interface Requirements
Our website is integrated with menu-driven and graphical user-interface for ensuring easy
access of the interface elements and to provide the users with a better understandability
on how to facilitate the actions. The interaction design, visual design, and information
architecture are properly combined so that it does not leave any doubt for the users on
how to find or access any element in the interface. The overall layout is simple and
attractive. The softwares required for designing the UI are HTML, CSS and JavaScript.
4. System Features :-
12
4.1.1 Validation :-
The customers and the shopkeepers are supposed to create their respective accounts
specifying their details in the website. On logging into the site, the system must allow
the user to make a total of 3 entries of his/her username and password. If the details
are valid, log in the user else terminate. An alternative option of ‘Forgot Password’
should also be given to the user to reset his password.
13
4.1.7 New User registration :-This page provides registrations for new customers and
shop owners.
● The information of the users and the history of usage should not be lost. This is very
important as the history of the user is very essential information for both the user and
the admin.
● There should be data backup in case the website crashes so that the information is not
lost.
● There should be a backup server which will be useful whenever the main site crashes.
14
● Any personal information of users should not be made public. The Privacy of the user
should be taken care of.
● Switching of tabs should be restricted.
● Multiple logins of the same account should not be allowed.
6. Other Requirements
● The software should allow for new updates.
● It should be reusable.
● It should be tested for any bugs.
● It should be easily used by users.
● It should run smoothly and efficiently.
Appendix A:
15
Appendix B: Analysis Models
16
Software Design
Specification
for
Small Scale Grocery
Management System
Revision 1.0
Table of Contents
Revision History................................................................................ 2
Approved By...................................................................................... 2
1. Introduction.................................................................................. 3
1.1 Purpose.................................................................................. 3
2. Design Considerations.................................................................. 4
2.1 Assumptions........................................................................... 7
2.2 Constraints.............................................................................. 7
3. Architecture.................................................................................. 8
3.1 Overview................................................................................ 9
4. Database Schema.......................................................................... 10
4.1.1 Databases........................................................................... 11
1
Revision History
Approved By
Approvals should be obtained for the project manager, and all developers working on the project.
2
1. Introduction
1.1 Purpose
The demand for basic necessities prevails over their supplies during this time of a global
pandemic. People have to get general daily items like food and medicine and have to risk
themselves getting affected by the virus. Hence, we aim to allow the people of a particular area
to buy the daily grocery items by maintaining social distancing norms and thereby reducing the
risk of spreading coronavirus.
2. Design Considerations
All design considerations were handled in Binder Release Phase 1.
2.1 Assumptions
Metrics and TaskView reports will be handled in the workflow reporting project.
3
2.2 Constraints
Not applicable for this project.
4
2. Class diagram
3. State chart
5
4. Activity diagram
5. Sequence Diagram
6
6. Deployment Diagram
7. Collaboration Diagrams
7
2.5 Risks and Volatile Areas
Not identified for this topic
3. Architecture
This section provides user interface design descriptions that directly support construction of user
interface screens. The details of each sub module are as listed below. All the screens with their
workings have been listed below. A basic explanation will be added to each screen.
8
3.1 Overview
This product aims at the fulfillment of basic necessities of most people and even certain specific
groups of individuals along with aiding small-scale shop owners to be financially capable of
living through these tough times along with helping retail parts of bigger industries to contribute
to the nation's economy is this project’s novelty. It is one of the few well-planned techniques
where overcrowding at a particular medical, grocery etc stores can be prevented. The
government can also control the outburst of a helpless crowd by dividing the time slots vs no of
people in consideration with the social distancing norms. Lastly, due to its open Source nature
you can modify it according to your needs on completion.
The main objective is to get the required items during this lockdown period to the maximum
possible extent along with reducing the risk of transmission of the virus and following all the
norms of social-distancing which has taken a hit on their lives.
User side
In this screen, the user will be able to view the list of available shops in their locality. After the
user has selected their preferred area, they will be able to see the list of all the available slots for
that particular shop.
Admin side
This screen will allow the admin to view the list of users and their booked slots. After the user
has finished their slot, there is a status which can be updated accordingly.
4. Database Schema
4.1 Tables, Fields and Relationships
A description of the tables and their attributes are as listed below:
9
1. AdminTable
2. Customer Table
3. Slots Table
4. Shop Table
5. Bookings Table
6. Items Table
| item_id | item_name |
4.1.1 Databases
2 databases will be used for this project, one for development and testing and the other will be
deployed in production.
10
5. High Level Design
5.1 Binder Request Form
11
6. Low Level Design
Code:
Admin
position: relative;
width: 1155px;
height: 699px;
background: #FFFFFF;
Available slots
position: relative;
width: 1155px;
height: 699px;
background: #FFFFFF;
Available shops
position: relative;
width: 827px;
height: 515px;
background: #FFFFFF;
background: #FFFFFF;
12
6.1.1 Contact Changes
7.2 Screen 1… N
13
User side
View available shops- In this screen, a user will be able to view the list of available shops
View slots by shop- This page gives the user the list of available slots for that particular
shop
Admin side
View Users- View the list of users and their booked slots. When the user has finished their
slot, there is a status which can be updated.
14
7.2.1 Workflow Reports
15
GUI Design
Specification
for
Small Scale Grocery
Management System
Revision 2.0
Table of Contents
Revision History..................................................................................... 2
Approved By ............................................................................................2
1. Introduction ....................................................................................... 3
2. Architecture ....................................................................................... 8
4. Software used...............................................................................
1
4.1 Figma .....................................................................................
5. GUI ...............................................................................................
Contributions:
Sahas worked on the user side screens such as the login page functionality, the dashboard page.
and worked on the database functionality.
Pratham worked on the admin side functionality such as the dashboard page and the slots page to
view the slots.
Shreasi worked on the designing the components such as the shop cards, the list view and the
dashboard page
2
Revision History
Approved By
Approvals should be obtained for the project manager, and all developers working on the project.
3
Pratham Sharma 20BCE2463 01.03.2022
1. Introduction
1.1 Purpose
The demand for basic necessities prevails over their supplies during this time of a global
pandemic. People have to get general daily items like food and medicine and have to risk
themselves getting affected by the virus. Hence, we aim to allow the people of a particular area
to buy the daily grocery items by maintaining social distancing norms and thereby reducing the
risk of spreading coronavirus.
2. Architecture
4
This section provides user interface design descriptions that directly support construction of user
interface screens. The details of each sub module are as listed below. All the screens with their
workings have been listed below. A basic explanation will be added to each screen.
2.1 Overview
This product aims at the fulfillment of basic necessities of most people and even certain specific
groups of individuals along with aiding small-scale shop owners to be financially capable of
living through these tough times along with helping retail parts of bigger industries to contribute
to the nation's economy is this project’s novelty. It is one of the few well-planned techniques
where overcrowding at a particular medical, grocery etc stores can be prevented. The
government can also control the outburst of a helpless crowd by dividing the time slots vs no of
people in consideration with the social distancing norms. Lastly, due to its open Source nature
you can modify it according to your needs on completion.
The main objective is to get the required items during this lockdown period to the maximum
possible extent along with reducing the risk of transmission of the virus and following all the
norms of social-distancing which has taken a hit on their lives.
5
2.2 Subsystem, Component, or Module 1 …N
Common Screen- Choose whether you are a user or an admin
User side
In this screen, the user will be able to view the list of available shops in their locality. After the
user has selected their preferred area, they will be able to see the list of all the available slots for
that particular shop.
Admin side
This screen will allow the admin to view the list of users and their booked slots. After the user
has finished their slot, there is a status which can be updated accordingly.
https://github.com/sahas-01/Grocery-Management-Frontend
3.2 Screen 1… N
6
User side
View available shops- In this screen, a user will be able to view the list of available shops
View slots by shop- This page gives the user the list of available slots for that particular
shop
Admin side
View Users- View the list of users and their booked slots. When the user has finished their
slot, there is a status which can be updated.
7
4. SOFTWARE USED
4.1 FIGMA
Figma works on any operating system that runs a web browser. Macs, Windows PCs,
Linux machines, and even Chromebooks can be used with Figma. It is the only design tool
of its type that does this, and in shops that use hardware running different operating
systems, everyone can still share, open, and edit Figma files.
This is the common screen where the user will choose either a shopkeeper(for shops) and
customer(for normal users like us).
8
5.2 Login
The login page which is pretty much common for both the customers and the shopkeeper, the login
will be implemented mostly by using googleoauth or firebase.
This page gives the customer the list of shops in his/her radius. Only those shops are shown
which are within a radius of 5km or less from the customer.
9
5.4 List Of Available Slots
Once the user sees the shops in the radius, they can then view the number of slots for every
shop as listed in the screen above and if it shows up in green, then that slot is available to
be booked, else the booked slot is shown in red.
10
5.6 List of users in admin side
This is the screen on the admin side where the shop owner will be able to view the list of
users who have registered in different slots during the day, with an option to update the
status once the user has finished his slot timing.
11
Test Case Generation for
Small Scale Grocery
Management System
Revision 3.0
Individual Contributions:
White box Testing is used. White box testing techniques analyze the internal
structures the used data structures, internal design, code structure and the
working of the software rather than just the functionality as in black box
testing. It is also called glass box testing or clear box testing or structural
testing.
1
Generating manual test cases of project modules
2
Unit Testing-Shopkeeper side
3
Generating graph out of test case generation
Customer side
Shopkeeper side
4
Configuration Management-Use SVN subversion
tool for your project
It is an open-source tool for version control. SVN is used to manage the current
and previous versions of files like source code, documentation, and files. It acts
as the time machine for the developers and allows them to go back and browse
the history of the project.
We utilised this tool to keep all the revision history and create a complete
version of all the requirements.
[ Note: Automated Testing has been omitted for revision version 3.0 because
the backend development and the appending of frontend and backend are still
in progress. Hence, Software Testing has been carried out by using only Manual
Testing techniques. ]