You are on page 1of 21

(AISSCE: 2021-2022)

Kendriya Vidyalaya Kashipur


Computer Science (083)

● Topic –Grocery Management

● Submitted by – Nikita Banduni

● Class – 12 A Roll no-19

● Submitted to – Mrs. Shubhi Agarwal(PGT


Computer Science)

1
ACKNOWLEDGMENT

We would like to express our special thanks


of gratitude to my teacher Mrs. Shubhi
Agarwal as well as our principal Mr. Chetan
Arora sir who gave us golden opportunity to
do this project of Computer Science, which
also helped us in doing a lot of research
and we came to know new things about it.
Without their help, guidance and support it
would be impossible to complete this
project. Secondly, We would also like to
thank my parents and friends who helped us a
lot in finishing this project within limited
time. I am making this project not only for
marks but also to increase my knowledge.
Once again thanks to all who helped me doing
this project.

2
CERTIFICATE

This is to certify that Ashray Tiwari of class


XII A of Kendriya Vidyalaya has done his
Synopsis on GROCERY SHOP under my supervision.
He has taken interest and has shown at most
sincerity in completion of this project.
I certify this Project up to my expectation &
as per guidelines issued by CBSE, NEW DELHI.

Internal Examiner External Examiner Principal

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

3
INDEX

SNO CONTENT PAGE


NO
1 Introduction
Aims and Objectives of the Project
in about 300 words

2 Team Role and Project Plan

3 Problem Definition

4 Brainstorming

5 Data Source and Description of the


CSV file along with Instances and
Attributes

6 Design/Prototype/Tools

7 Methodology/Flow Diagram of the


proposed work

8 Hardware and Software Used

9 Analysis/Manipulation/Visualisation
Work Description
10 List of References

4
Project Logbook
PROJECT NAME: Grocery Shop

SCHOOL NAME: Kendriya Vidyalay


Kashipur

YEAR/CLASS: 2021-22/ XII ‘A’

TEACHER NAME: Mrs.Shubhi Agarwal

TEAM MEMBER NAMES


1. Ashray Tiwari

2. Dheeraj Joshi

3. Nikita Banduni

5
1. Introduction
This software is used to maintain the shop, customer detail ,product ,details ,worker

detail maintain the shop in updated and maintain records of in and out data of shop.

Objective & Aim

1. The program will give all the information about the grocery

shop provide better services to the customer

2. It provide customer bill on their registered mobile number

3. Main objective is to reduce the human error that is made

in making a bill of a consumer

6
2. Team Roles
2.1 Who is in your team and what are their roles?

Role Role description Team Member Name


Planning & Careful planning, Ashray Tiwari
Designing of project
particularly in the early
stages of a project, is
necessary to coordinate
activities and manage
project risks effectively. To
coordinate discussions
between user, audit,
security, design etc. A
planning Which includes
concept of operations,
system security and
systems engineering
management planning.
To Design the main
program and in it a user
interface. Maintaining a
sequential approach
towards problem and
program designing. Using
appropriate tools.
Preparing detailed logic
specification for each
software module. Design in
a professional way so that it
satisfies business
requirements.
Integration and Subsystem integration, Dheeraj Joshi
test phase system, security, and user
acceptance testing is
conducted during the
integration and test phase.
Responsible for quality
assurance, validates that
the functional
requirements, as defined in
the functional requirement
document, are satisfied by

7
the developed or modified
system
Implementation system is installed to Nikita Banduni
support the intended
And business functions.
Implementation includes
Maintenance user notification, user
training, installation of
hardware, installation of
software onto production
computers, and integration
of the system into daily
work processes
in maintenance –
to operate , maintain,
enhance the system. Certify
that the system can process
sensitive information etc.

2.3 Communications plan

Will you meet face-to-face, online or a mixture of each to communicate?


● We will do all of our communication through online mode keeping the coronavirus
and the SOP’S in mind

How often will you come together to share your progress?


● We will come on every Saturday and Sunday together to share our progress

Who will set up online documents and ensure that everyone is contributing?
● Dheeraj Joshi

What tools will you use for communication?


● For communication we will use Google meet or zoom and for file sharing we will
use Google drive and one drive

8
2.4 Team meeting minutes (create one for each meeting held)

Date of meeting:1/11/2021
Who attended: Nikita Banduni, Dheeraj Joshi, Ashray Tiwari
Who wasn’t able to attend: All attended the meeting

Purpose of meeting: To make synopsis of grocery shop management


system
Items discussed:
1 Making up a project plan.
2 . Colleting the data and Information about project through internet.
3 . Setting up the logbook.

3. Problem Definition
3.1 List important local issues faced by your school or community

Manual system are very time consuming and the chances of error in more as compared to a
program

3.2 Which issues matter to you and why?

Time Consumption: Manual systems are time consuming, as the shop


owner must keep track of Store sales on a daily basis, while updating the
system manually at the end of the day.

2. Poor Communication: A manual grocery system requires employees


and managers to write down each time an item is removed from the Store. If
one employee forgets to mention that the last coffee product has been
removed from the Store, a manager expects the item to still be available for a
customer during a sale. Compared with a technical Store system, a manual
Store system does not help the communication in the workplace.

3. Physical Counts: A manual Store system does not provide any number,
as all numbers from the Store are gained through physical Store counts. One
of the difficulties of running a manual Store system is that physical Store
counts must be performed frequently to control the items in the Store. This
is time consuming and can cost the business money, if employees must come
in to help out outside of business hours.

9
3.3 Which issue will you focus on?

● The major focus will be on reducing the waiting time for the consumer to get his bill
● Reduce the possible human error.
● Getting this update every time

4.1 Ideas
4.2 Briefly summarize the idea for your solution in a few sentences and be sure to identify
the tool that you will use.

The idea of my solution is to make a program which will help the store owner to make things happen faster
Tools that I will use –
Hardware and Software Requirement
● Device used- DELLInspron3935
● Processor- Intel(R) Core(TM) i7-11390H CPU @ 2.70GHz 4.70 GHz
● Ram- 8.00 GB
● OS- Winodows 11
● HDD-1TB
● SSD-256GB
● For Programming- Jupyter Notebook, Spyder

5. Data
5.1 What data will you need for your project?

Data will be needed for our project information about grocery billing system. For programming
we will use python and SQL.

6. Prototype
6.1 Which tool(s) will you use to build your prototype?
10
Tools that I will use –
Hardware and Software Requirement
● Device used- DELLInspron3935
● Processor- Intel(R) Core(TM) i7-11390H CPU @ 2.70GHz 4.70 GHz
● Ram- 8.00 GB
● OS- Winodows 11
● Architecture-64 bit
● HDD-1TB
● SSD-256GB
● For Programming- Jupyter Notebook, Spyder

6.2 What decisions or outputs will your tool generate and what further action
needs to be taken after a decision is made?

Tools we will use to generate the idea of required software program like Python and
SQL, We can perform various functions.
● Supplier module- 1 Admin can add new supplier 2 Admin can see the list of
supplier detail 3 only admin can see or edit the detail of supplier
● Costumer module- 1 Admin can add new customer record 2 Admin Can see the
list of customer detail 3 Admin will able to delete the costumer details
● Product Module- 1 Admin can manage edit or add any product 2 Admin can see
the list of all product

11
 Flow Chart

Python MySQL-Connecting

Software login with username and password

Ask user to enter his choice

Your need will be fulfilled by python by interfacing with MySQL

12
 Source Code
 import mysql.connector as sql
 conn=sql.connect(host='localhost',user='root',passwd='manager',dat
abase='grocery_shop')
 if conn.is_connected():
 print('successfully connected')
 c=conn.cursor()

 print('grocery shop management system')


 print('1.login')
 print('2.exit')
 choice=int(input('enter your choice:'))
 if choice==1:
 user_name=input('enter your user name=')
 password=input('enter your password=')
 while user_name=='nitin' and password=='nitin123':
 print('connected successfully')

 print('grocery shop')
 print('1.customer details')
 print('2.product details')
 print('3.worker details')
 print('4.see all customer details')
 print('5.see all product details')
 print('6.see all worker details')
 print('7.see one customer details')
 print('8.see one product details')
 print('9.see one worker details')
 print('10.stocks')
 print('11.pie chart for avalibility of stock')
13
 choice=int(input('enter the choice'))
 if choice==1:
 cust_name=input('enter your name=')
 phone_no=int(input('enter your phone number='))
 cost=float(input('enter your cost='))
 sql_insert="insert into customer_details
values("+str(phone_no)+",'"+(cust_name)+"',"+str(cost)+")"
 c.execute(sql_insert)
 conn.commit()
 print('data is updated')

 elif choice==2:
 product_name=input('enter product name=')
 product_cost=float(input('enter the cost='))
 sql_insert="insert into product_details
values(""'"+(product_name)+"',"+str(product_cost)+")"
 c.execute(sql_insert)
 conn.commit()
 print('data is updated')

 elif choice==3:
 worker_name=input('enter your name=')
 worker_work=input('enter your work=')
 worker_age=int(input('enter your age='))
 worker_salary=float(input('enter your salary='))
 phone_no =int(input('enter your phone number='))
 sql_insert="insert into worker_details values("
"'"+(worker_name)+"',"
"'"+(worker_work)+"',"+str(worker_age)+","+str(worker_salary)+",
"+str(phone_no)+ ")"
 c.execute(sql_insert)
 conn.commit()
 print('data is updated')
14
 elif choice==4:
 t=conn.cursor()
 t.execute('select*from customer_details')
 record=t.fetchall()
 for i in record:
 print(i)

 elif choice==5:
 t=conn.cursor()
 t.execute('select*from product_details')
 record=t.fetchall()
 for i in record:
 print(i)

 elif choice==6:
 t=conn.cursor()
 t.execute('select*from worker_details')
 record=t.fetchall()
 for i in record:
 print(i)
 elif choice==7:
 a=input('enter your name')
 t='select*from customer_details where cust_name=("{}")'.format(a)
 c.execute(t)
 v=c.fetchall()
 for i in v:
 print(v)
 elif choice==8:
 a=input('enter your product_name')
 t='select*from product_details where
product_name=("{}")'.format(a)
 c.execute(t)
15
 v=c.fetchall()
 for i in v:
 print(v)
 elif choice==9:
 a=input('enter your name')
 t='select*from worker_details where worker_name=("{}")'.format(a)
 c.execute(t)
 v=c.fetchall()
 for i in v:
 print(v)

 elif choice==10:
 print('******************************************')
 f=open('test.txt','r')
 data=f.read()
 print(data)
 f.close()
 print('******************************************')

 elif choice==11:
 import matplotlib.pyplot as plt
 items=('Macbook','Ipad','Mac','Homepod','Airtag')
 avalibility=[156,200,103,206,196]
 colors=['red','yellowgreen','blue','gold','lightcoral']
 plt.pie(avalibility,labels=items,colors=colors)
 plt.title('avalibility of items in shop')
 plt.show()

 else:
 print('wrong password, try again ')

 if choice==2:
 exit()
16
OUTPUT

Adding customer Details

Displaying All customer Details

17
Display All Product Detail

Availability of Product by Pie Grap

18
Testing

Software Testing is an empirical investigation conducted to provide


stakeholders with information about the quality of the product or service under test,
with respect to the context in which it is intended to operate. Software Testing also
provides an objective, independent view of the software to allow the business to
appreciate and understand the risks at implementation of the software. Test
techniques include, but are not limited to, the process of executing a program or
application with the intent of finding software bugs.
It can also be stated as the process of validating and verifying that a software
program/application/product meets the business and technical requirements that
guided its design and development, so that it works as expected and can be
implemented with the same characteristics. Software Testing, depending on the
testing method employed, can be implemented at any time in the development
process, however the most test effort is employed after the requirements have been
defined and coding process has been completed.

TESTING METHODS
Software testing methods are traditionally divided into black box testing and
white box testing. These two approaches are used to describe the point of view that a
test engineer takes when designing test cases.

BLACK BOX TESTING


Black box testing treats the software as a "black box," without any knowledge of
internal implementation. Black box testing methods include: equivalence partitioning,
boundary value analysis, all-pairs testing, fuzz testing, model-based testing,
traceability matrix, exploratory testing and specification-based testing.

SPECIFICATION-BASED TESTING
Specification-based testing aims to test the functionality of software according
to the applicable requirements. Thus, the tester inputs data into, and only sees the

19
output from, the test object. This level of testing usually requires thorough test cases
to be provided to the tester, who then can simply verify that for a given input, the
output value (or behavior), either "is" or "is not" the same as the expected value
specified in the test case. Specification-based testing is necessary, but it is insufficient
to guard against certain risks

ADVANTAGES AND DISADVANTAGES

The black box tester has no "bonds" with the code, and a tester's perception is
very simple: a code must have bugs. Using the principle, "Ask and you shall receive,"
black box testers find bugs where programmers don't. But, on the other hand, black
box testing has been said to be "like a walk in a dark labyrinth without a flashlight,"
because the tester doesn't know how the software being tested was actually
constructed.
That's why there are situations when (1) a black box tester writes many test
cases to check something that can be tested by only one test case, and/or (2) some
parts of the back end are not tested at all. Therefore, black box testing has the
advantage of "an unaffiliated opinion," on the one hand, and the disadvantage of "blind
exploring," on the other.

WHITE BOX TESTING

White box testing, by contrast to black box testing, is when the tester has access
to the internal data structures and algorithms (and the code that implement these)

Types of white box testing:-


The following types of white box testing exist:
Api testing - Testing of the application using Public and Private APIs.
Code coverage - creating tests to satisfy some criteria of code coverage.
For example, the test designer can create tests to cause all statements in the
program to be executed at least once.
fault injection methods.
mutation testing methods.
static testing - White box testing includes all static testing.

20
CODE COMPLETENESS EVALUATION

White box testing methods can also be used to evaluate the completeness of a
test suite that was created with black box testing methods. This allows the software
team to examine parts of a system that are rarely tested and ensures that the most
important function points have been tested.

Two common forms of code coverage are:


Function Coverage: Which reports on functions executed and
Statement Coverage: Which reports on the number of lines executed to
complete the test.
They both return coverage metric, measured as a percentage

BIBLIOGRAPHY

1. Computer science With Python - Class XI By: Sumita Arora


2. A Project Report on Blood Bank Management System (BBMS)
By: Praveen M Jigajinni
3. Website: https://www.w3resource.com
4.Thanks To all team members for their valuable contribution.

21

You might also like