Billining System
Billining System
Billining System
Electricity consumers are often faced with the problem of inaccuracy and
delay in monthly billing due to some drawbacks. Thus, it is essential to have an
efficient system for such purposes via electronic platform with consideration to
proximity. The proposed system automates the conventional process of paying
electricity bill by visiting the Electricity Board which is tiresome and time
consuming. It is also designed to automate the electricity bill calculation and
payment for user convenience. The system is developed with Java swings as the
base programming language which can be used to develop websites, web
applications and web services. The Microsoft Structured Query Language (SQL)
server is also used for creating back-end database. The system would be having
two logins: the administrative and user login. The administrator can view the
user's account details and can add the customer's information of consuming units
of energy of the current month in their account. The Admin must feed the system
with the electricity usage data into respective user’s account. The system then
calculates the electricity bill for every user and updates the information into their
account every month. Users can then view their electricity bill and pay before the
month end.
i
ACKNOWLEDGEMENT
PANKAJ SHARMA
ii
TABLE OF CONTENTS
Abstract i
Acknowledgment ii
Table of contents iii
List of figures iv
1. Introduction
1.1 Preamble 1-2
1.2 Problem statement 2
1.3 Proposed solution 2
2. Analysis and System Requirements
2.1 Existing and Proposed System 3
2.2 Software & Hardware Requirements 3
3. System Design and Modelling
3.1 Preliminary Design
3.1.1 Entity-Relationship Diagram 4-6
3.1.2 Schema Diagram 7-8
3.2 Normalization
3.2.1 First normal form(1NF) 9
3.2.2 Second normal form(2NF) 9
3.2.3 Third normal form(3NF) 9
4. Implementation
4.1 Implementation of operations 10
4.2 Implementation of SQL statements 10-11
4.3 Algorithm or pseudocode of implementation 12-15
5. Testing
5.1 Testing process 16
5.2 Testing objectives 16
5.3 Levels of Testing
5.3.1 Unit Testing 16-18
5.3.2 Integration testing 18-19
5.3.3 System testing 19-20
6. Discussion and Snapshots
6.1 Tables 21-23
6.2 Snapshots 23-33
Conclusion 34
iii
LIST OF FIGURES
FIG 3.1.1: Schema diagram of Electricity Billing System 6
FIG 3.1.2: ER diagram of Electricity Billing System 8
FIG 6.1: Snapshot of List of tables 21
FIG 6.2: Snapshot login table description 21
FIG 6.3: Snapshot of customer table description 22
FIG 6.4 Snapshot of tax table description 22
FIG 6.5: Snapshot of rent table description 22
FIG 6.6: Snapshot of bill table description 22
FIG 6.7: Snapshot of meter_info table description 23
FIG 6.8: Snapshot of Splash page 23
FIG 6.9: Snapshot of Login page 24
FIG 6.10: Snapshot of Signup page 24
FIG 6.11: Snapshot of ForgotPassword page 25
FIG 6.12: Snapshot of Admin home page 25
FIG 6.13: Snapshot of New Customer page 26
FIG 6.14: Snapshot of Meter Info page 26
FIG 6.15: Snapshot of Customer Details page 27
FIG 6.16: Snapshot of Tax Details page 27
FIG 6.17: Snapshot of Calculate Bill page 28
FIG 6.18: Snapshot of Delete Customer page 28
FIG 6.19: Snapshot of Customer Home page 29
FIG 6.20: Snapshot of Update Customer Details page 29
FIG 6.21: Snapshot of View Customer Details page 30
FIG 6.22: Snapshot of View Customer Details page 30
FIG 6.23: Snapshot of PayBill page 31
FIG 6.24: Snapshot of Paytm page 31
FIG 6.25: Snapshot of Bill Details page 32
FIG 6.26: Snapshot of Generate Bill page 32
FIG 6.27: Snapshot of Deposit Bill page 33
FIG 6.28: Snapshot of About page 33
LIST OF TABLES
Table 5.1: Negative test case for phone number insertion 17
Table 5.2: Positive test case for phone number insertion 17
Table 5.3: Negative test case for email insertion 17
Table 5.4: Positive test case for email insertion 17
Table 5.5: Negative test case for customer name insertion 18
Table 5.6: Positive test case for customer name insertion 18
Table 5.7: Test case on basis of generation of bill 18
Table 5.8: Test case on basis of Deposit Details 19
Table 5.9: Test cases for the project 19-20
iv
Chapter 1
INTRODUCTION
Electricity Billing System is a software-based application.
i. This project aims at serving the department of electricity by computerizing the
billing system.
ii. It mainly focuses on the calculation of units consumed during the specified time
and the money to be charged by the electricity offices.
iii. This computerized system will make the overall billing system easy, accessible,
comfortable, and effective for consumers.
To design the billing system more service oriented and simple, the following features
have been implemented in the project. The application has high speed of performance
with accuracy and efficiency.
The software provides facility of data sharing, it does not require any staff as in the
conventional system. Once it is installed on the system only the meter readings are to
be given by the admin where customer can view all details, it has the provision of
security restriction.
The electricity billing software calculates the units consumed by the customer and
makes bills, it requires small storage for installation and functioning. There is provision
for debugging if any problem is encountered in the system.
The system excludes the need of maintaining paper electricity bill, administrator
does not have to keep a manual track of the users, users can pay the amount without
visiting the office. Thus, it saves human efforts and resources.
1.1 Preamble
We, the owners of our project, respect all customers and make them happy with
our service.
The main aim of our project is to satisfy customer by saving their time by payment
process, maintaining records, and allowing the customer to view his/her records and
permitting them to update their details.
The firm handles all the work manually, which is very tedious and mismatched.
The objectives of our project are as follows:
❖ To keep the information of consuming unit energy of current month.
❖ To keep the information of consuming unit energy of previous month.
❖ To calculate the units consumed every month regularly.
❖ To generate the bills adding penalty and rent.
❖ To save the time by implementing payment process online.
cost_per_unit
3.1.1 ER Diagram meter_rent
1
rent
gst
1 service_tax
tax
swacch_bharat_cess
total_bill
N
pays
bill month
meter_no
meter_no
name meter_location
city N N
state phase_code
bill_type
email
has
meter_type
N
phone
login
meter_no username
question password
user
answer
3.1.2 Schema Diagram
Database schema is described as database connections and constraints. It
contains attributes. Every database has a state instances represent current set of
databases with values. There are different types of keys in a database schema.
A primary key is a table column that can be used to uniquely identify every
row of the table. Any column that has this property, these columns are called
candidate key. A composite primary key is a primary key consisting of more than
one column. A foreign is a column or combination of columns that contains values
that are found in the primary key of some table.
All the attributes of each table are interconnected by foreign key which is
primary key in another column and composite key. Primary key cannot be null. The
fact that many foreign key values repeat simply reflects the fact that its one-to-many
relationship. In one-to-many relationship, the primary key has the one value and
foreign key has many values.
Figure 3.1.2 is a Schema diagram of Electricity Billing System which has six
tables i.e., login, customer, tax, rent, bill, and meter_info where each table contain
attributes some with primary key, foreign key. In the login table there are 6 attributes
"meter_no”, "username”, “password”, "user”, "question”, "answer”. The customer
table has 7 attributes "name”, "meter_no"(primary key), "address”, "city”, "state”,
“email”, "phone”. The rent table has 3 attributes "cost_per_unit"(primary key), "
meter_rent”, "service_charge". The tax table has 3 attributes " service_tax”,
"swacch_bharat_cess”, "gst”. The bill table has 5 attributes "meter_no"(foreign key
that references the primary key of the customer table meter_no), "month”,
"units”,"total_bill”, "status”. The meter_info table has 6 attributes
"meter_no"(foreign key that references the primary key of the customer table
meter_no), "meter_location”, "meter_type”, "phase_code”, " bill_type”, "days ".
3.1.2 Schema Diagram
Login
meter_no Username password user question Answer
customer
Name meter_no Address City state Email phone
rent
cost_per_unit meter_rent service_rent
tax
service_tax swacch_bharat_cess gst
bill
meter_no Month units total_bill Status
meter_info
meter_no meter_location meter_type phase_code bill_type Days
. Anomalies in DBMS There are three types of anomalies that occur whenthe
database is not normalized. These are –Insertion, update and deletion anomaly.
Customer
DepositDetails:
▪ This program will allow the admin to view bill details. If we need to sort the
particulars based on meter_no and month.
▪ If we need to search the particulars that has been viewed click onto search
option.
▪ If we need to print the particulars that has been viewed click onto print option.
TaxDetails:
▪ This program will allow the admin to add tax details.
insert the values into tax
else print error
Submit the details of tax that has been entered by clicking onto submit button.
▪ If we need to cancel the particulars that has been entered click onto cancel
option.
CalculateBill:
▪ This program will allow the admin to calculate total_bill when units consumed
are inserted where meter_no and month is selected.
insert the values into bill
else print error
Submit the details of tax that has been entered by clicking onto submit button.
▪ If we need to cancel the particulars that has been entered click onto cancel
option.
DeleteBill:
▪ This Program will allow the admin to delete the customer info when meter_no
is selected.
▪ If we need to delete the particulars that has been saved click onto delete
option.
▪ If we need to cancel the particulars that has been entered click onto back
option.
About:
▪ This program will allow the admin to view details of the project in short.
▪ If we need to exit the particulars that has been viewed click onto exit option.
ViewInfo:
▪ This program will allow the customer to view his/her own details.
▪ If we need to go back from the particulars that has been viewed click onto
back option.
PayBill:
▪ This program will allow the customer to view bill details and redirects to pay
▪ the bill where status will be updated.
▪ If we need to cancel the particulars that has been viewed click onto back
option.
▪ If we need to pay the bill amount that has been viewed click onto pay option.
BillDetails:
▪ This program will allow the customer to view bill details.
▪ If we need to print the particulars that has been viewed click onto print option.
GenerateBill:
▪ This program will allow the customer to generate bill when meter_no and
month is selected.
▪ Generate the details by clicking on generatebill button.
About:
▪ This program will allow the customer to view details of the project in short.
▪ If we need to exit the particulars that has been viewed click onto exit option.
6.2 SNAPSHOTS:
This software reduces the amount of manual data entry and gives greater
efficiency. The User Interface of it is very friendly and can be easily used by anyone.
It also decreases the amount of time taken to write details and other modules.