Professional Documents
Culture Documents
CLASS : XI
SECTION : FIR
ROLL NUMBER : 39
CERTIFICATE
This is to certify that Saptarshi Mondal has successfully completed the assignment in
the subject of Computer Science (083), laid down in the regulations of CBSE for the purpose
on______________.
Name: _______________________
Examiner Number:_______________
TABLE OF CONTENTS
01 ACKNOWLEDGEMENT 04
02 INTRODUCTION 05-07
06 TESTING 14-15
08
BIBLIOGRAPHY 17
ACKNOWLEDGEMENT
Apart from the efforts of me, the success of any project depends largely on the
encouragement and guidelines of many others. I take this opportunity to express my
gratitude to the people who have been instrumental in the successful completion of this
project.
I express deep sense of gratitude to almighty God for giving me strength for the
successful completion of the project.
My sincere thanks to Manas Banerjee Sir & Kousik Kundu Sir, A guide, Mentor
all the above a friend, who critically reviewed my project and helped in solving each
and every problem, occurred during implementation of the project
The guidance and support received from all the members who contributed and
who are contributing to this project, was vital for the success of the project. I am
grateful for their constant support and help.
PROJECT ON BILLING MANAGEMENT SOFTWARE
INTRODUCTION
The "Billing Management Software" is a Python project designed to take a input of
the items to purchase, take its quantity, calculate the total price of the items
purchased including the tax, choose the mode of payment and then proceed to pay
for the items purchased with the chosen mode of payment . This project is
particularly useful for applications , such as check-out windows, order windows,
or any context where a human-readable format is preferred.
PROJECT COMPONENTS:
1. User Input:
The project begins by obtaining the number of items, name of items
from the user.
4. Error Handling:
The project incorporates error-handling mechanisms to deal with
invalid inputs gracefully. This ensures a smooth user experience and
prevents unexpected issues during execution.
Usage:
The "Billing Management Software" project finds applications in shopping
centres, e-commerce and e-marketing websites, where billing software is
preferred for the convenience of the customers.
Conclusion:
This Python project provides a practical solution for managing billing in
sectors of marketing and e-commerce, offering a versatile tool for
developers working on applications that require the presentation of
numerical data in a more user-friendly format.
2. Users then enter the items they want from the list of the items provided along with the
quantity:
print(f"\n Please select the item number {i} that you would like to purchase
from the list above: "
"(For example: Enter 1 for buying Tea)")
itn = int(input())
3. Computation of total cost of all the items is done and stored, without evaluation of tax
and the items purchased are stored in a list:
4. Personal details are taken as input from the user for the computation of the bill.
print("Thank you for selecting the items to purchase, please proceed to the
billing section: ")
print("Please enter your name: ")
name = input()
print("Please enter your phone number: ")
number = int(input())
5. Choice of mode of payments is provided and the user chooses the preferred mode of
payment.
print("Modes of payment:\ni) Cash \nii) UPI \niii) Credit Card \niv) Debit
Card")
print()
print("Discounts on total price for mode of payments:\nCash: 5%\nUPI: 4%\
nCredit Card: 5%\nDebit Card: 2% ")
print()
print("Please select your mode of payment: ")
pay_mode=input().lower()
if(pay_mode=="cash"):
dis_price=famt-(0.05*famt)
if(pay_mode=="upi"):
dis_price=famt-(0.04*famt)
if(pay_mode=="credit card"):
dis_price=famt-(0.05*famt)
if(pay_mode=="debit card"):
dis_price=famt-(0.02*famt)
print("Discounted price: Rs",dis_price)
6. The Invoice is printed along with the details of the customer and the total details of the
items purchased and the total money to be paid by the customer:
print("\n--------------------------------------------------
~~~~~~'INVOICE'~~~~~~---------------------------------------------")
print(f"Costumer name: {name}")
print(f"Phone number of costumer: {number}")
print(f"Number of items purchased: {n}")
print(f"Items purchased: {itemname}\n")
print("Tax levied: 5%")
print(f"Total amount to be paid (including tax): Rs {famt}\n")
print()
SOURCE CODE :
name = ""
pay_mode=""
itemname = ""
number = 0
itn = 0
n = 0
i = 0
amt = 0.0
qty = 0.0
totamt = 0.0
famt = 0.0
goods = {
1: ("Darjeeling Tea", 30),
2: ("Premium Coffee", 45),
3: ("Packaged Honey Jar", 35),
4: ("All Purpose Flour(Maida)",20),
5: ("Wheat Flour(Aata)", 14),
6: ("Mixed Lentils", 25),
7: ("Sugar", 15),
8: ("Packaged Salt Packs", 55),
9: ("Biscuit Packs", 26),
10: ("Condiment Packs", 25)
}
while True:
print("---------------------------------------------------------
~~~~~~'GROCERY SHOPPING
MALL'~~~~~~---------------------------------------------\n")
print("--------------------------------------------------------------------
~~~~~~'WELCOME'~~~~~~--------------------------------------------------------\
n")
print("For today, we have hefty-save deals on the following items: ")
print("i) Darjeeling Tea\nii) Premium Coffee\niii) Packaged Honey Jar\niv)
All Purpose Flour(Maida)\nv) Wheat Flour(Aata)\nvi) Mixed Lentils\nvii) Sugar\
nviii) Packaged Salt Packs\nix) Biscuit Packs\nx) Condiment Packs")
print()
print("Please enter the number of items you want to purchase: ")
n = int(input())
print()
print("\nGOODS"+"\t\t\t\t\t\t\t\t\t\t\t\t"+"PRICE(in Rs)")
for key, value in goods.items():
print(f"{key}. {value[0]}\t\t\t\t\t\t\t\t\t\tRs {value[1]} per unit")
for i in range(1, n + 1):
print(f"\n Please select the item number {i} that you would like to
purchase from the list above: "
"(For example: Enter 1 for buying Tea)")
itn = int(input())
qty = 0.0
amt = 0.0
if itn in goods.items():
print(f"Enter the quantity of {goods[itn][0]} you want : ")
qty = int(input())
amt = goods[itn][1] * qty
totamt += amt
itemname += f"{goods[itn][0]} "
print(f"Total cost of purchasing {qty} kgs of {goods[itn][0]}
(excluding tax): Rs {amt}\n")
print("\n--------------------------------------------------
~~~~~~'BILL'~~~~~~---------------------------------------------")
print(f"Costumer name: {name}")
print(f"Phone number of costumer: {number}")
print(f"Number of items purchased: {n}")
print(f"Items purchased: {itemname}\n")
print("Tax levied: 5%")
print(f"Total amount to be paid (including tax): Rs {famt}\n")
print()
print("If you want to continue shopping, please press Y or else press N to
exit.")
choice=input().lower()
if(choice=="y"):
continue
elif(choice=="n"):
print("\n-----------------------------------------------~~~~~~~'THANK
YOU FOR SHOPPING'~~~~~~-----------------------------------------")
break
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.
SPECIFICATION-BASED TESTING
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.
SOFTWARE REQUIREMENTS:
I. Windows OS
II. Python Compiler and an IDE
BIBLIOGRAPHY
***