Rinku Project Report
Rinku Project Report
ON
“ELECTRICITY BILLING SYSTEM”
SUBMITTED IN THE PARTIAL FULFILMENT OF
THE REQUIREMENT FOR THE AWARD OF
THE DEGREE OF BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE AND ENGINEERING
[2020-24]
I hereby declare that the Major Project entitled as “Electricity Billing System” embodies the
original project work carried out by me under the supervision and guidance of Dr. Sanjay
Dahiya, Head of the Department, Ms. Arushi Bansal, Assistant Professor, Ms. Bharti Sethi,
Assistant Professor, Dr. Vidhu Kiran, Assistant Professor and Dr. Manju Devi, Assistant
Professor at the Department of Computer Science & Engineering, Ch. Devi Lal State Institute
of Engineering & Technology, Panniwala Mota, Sirsa, Haryana, India-125077. It is further
certified that this complete project has been checked by plagiarism software, the similarity
index is as per University norms. It is further certified that no part of this work has been
submitted, either partial or complete for any degree of Chaudhary Devi Lal University, or
any other Universitity/Institution.
(Signature of student)
i
ii
CERTIFICATE FROM SUPERVISOR
This is certify that the Major Project entitled as “Electricity Billing System” being submitted
by Mr. Rinku, Roll No: 200980772044 in the partial fulfilment of the requirements for the
award of degree of Bachelor of Technology, Department of Computer Science and Engineering,
Chaudhary Devi Lal University, Sirsa has been carried out by him under my supervision. I wish
him all the success.
DATE:
PLACE: Panniwala Mota, Sirsa Supervisor:
iii
CERTIFICATE FROM HOD
This is certify that the Major Project entitled as “Electricity Billing System” being submitted
by Mr. Rinku, Roll No.- 200980772044 in the partial fulfilment of requirements for the award
of degree of Bachelor Of Technology, Department Of Computer Science and Engineering,
Chaudhary Devi Lal University, Sirsa has been Carried out by him under my supervision. I
wish him all success.
Place: HOD
CSE Department
iv
ABSTRACT
The purpose of the electricity billing system is to automate the existing manual system with
computer equipment and full-fledged computer software to meet their requirements so that
their valuable data/information can be stored for a longer period of time with an easy access
and manipulation. The required software and hardware is readily available and easy to work
with. The electricity billing system described above can lead to a flawless, safe, reliable and
fast management system that can help the user to focus on their activities rather than record
keeping. This will help the organization make better use of resources. An organization can
maintain computerized records without redundant records. This means that one does not have
to distracted by information that is not relevant while still having to get to it. The aim is to
automate their existing manual system with computerized equipment and fulfill their
requirement so that their valuable information is preserved for a long time with easy evaluation
and manipulation. Basically, the project describes how to manage good performance and better
services for clients.
v
ACKNOWLEDGEMENT
I would like to share my sincere gratitude to all those who help us in the completion of this
project. During the work, I faced many challenges due to our lack of knowledge and experience
but these people help me to get overall the difficulties and in the final assembly of our concept
into a sculptural form.
I would like to thank Dr. Sanjay Dahiya, (Head of Department) of Computer Science and
Engineering, for his governance and guidance, because of which i was able to learn the minute
aspects of project work. We would also like to show our gratitude to our Project Coordinators
Ms. Arushi Bansal, Dr. Vidhu Kiran, Dr. Manju Devi ,Ms. Bharti Sethi and the Director
Principal for their continuous help and monitoring during the project work.
In the last, I would like to thank the management of Chaudhary Devi Lal State Institute of
Engineering and Technology, for providing us such an opportunity to learn from these
experiences.
I am thankful to Director Principal and Dr. Sanjay Dahiya and all the staff members of the
Department of Computer Science Engineering, for their help and support towards this project.
We are also grateful to our entire class and, most importantly, our parents, who have encouraged
us to take on all difficulties and overcome all obstacles in life.
Date:
vi
LIST OF FIGURES
vii
LIST OF TABLES
Table Tittle Page No
viii
TABLE OF CONTENTS
Topics Page No
Student Declaration i
Plagiarism Report ii
Certificate from Supervisor iii
Certificate from HOD iv
Abstract v
Acknowledgement vi
List of Figures vii
List of Tables viii
INTRODUCTION OF PROJECT
1.1 Introduction
Creating an electricity billing system involves modeling the factors involved, performing the
necessary calculations, and providing a user interface for interaction. Below is a simple
introduction to electricity billing system using Java.In a real-world scenario, you would likely
have a database to store customer information, a more complex billing algorithm, and a
graphical user interface (GUI) for better user interaction.
Additionally, you may want to implement error handling and user input validation.This system
is designed for a company's specific need to run operations smoothly and efficiently. No formal
user knowledge is required to use this system. Every organization, big or small, faces
challenges in overcoming and managing connectivity, electricity, account, customer and
payment information.
This is designed to aid your strategic planning and help ensure your organization is equipped
with the right level of information and detail for your future goals.Our project titled “Electricity
Billing System” aims to revolutionize the process of electricity bill generation by automating
various steps. The current manual system is not only laborious but also highly inadequate to
meet the growing demands of the industry. It's time-consuming and error-prone, making the
whole process unnecessarily difficult.
The project report is structured into several parts, each of which is further divided into
subsections. In this report we will cover the purpose, scope and objectives of the project along
with the approach used to develop this software. We will also address issues with the current
system and discuss the functionality of the organization.
1.2 Aim
The goal of an electricity billing system implemented in Java is to provide customers with an
efficient and accurate way to manage and calculate their electricity bills. The aim of the system
is to streamline the billing process, improve the user experience and offer a reliable platform
for both customers and administrators. Here are the main goals:
1
1. Automatic invoicing:
2. Accuracy of invoicing:
Provide customers with a user-friendly interface for entering data and viewing accounts.
4. Data Persistence:
Store customer information and billing history permanently in a database for future reference.
Facilitate easy management of customer accounts, including account creation, updates and
cancellations.
Support different pricing structures such as tiered or time-of-use rates to accommodate different
billing scenarios.
8. Notification System:
Notify customers of upcoming invoice due dates, payment confirmations, and other relevant
information.
Record historical electricity usage for each customer to identify usage patterns and trends.
2
11. Management tools:
Provide administrators with tools to manage customer accounts, view usage statistics, and
handle exceptions.
1.3 Modules
1. Payment module:
2. Customer module:
4. Invoicing module:
5. Login module:
6. User module:
• Keep information about the power consumption of the current unit of the month.
3
• Generate bills by adding fine and rent. To save time implementing an online payment process.
SYSTEM REQUIREMENTS
Software Requirements:
Hardware Requirement:
• RAM – 2 GB or more
Operating System :-
• Windows 7, 8, 10
• Linux Ubuntu
1.Java
Java is a third generation high-level programming language like C, Fortran, Pearl and many
others. It is a distributed computing platform - a development and runtime environment that
includes built-in support for the World Wide Web.
History of Java
Java development began at Sun Microsystems in 1991, the same year the World Wide Web was
created. Its goal was to create a common development environment for consumer electronics
devices that would be easily portable from one device to another. This effort evolved into a
language codenamed Oak and later renamed Java, which retains much of the syntax and
performance of c++ but is simpler and more platform independent.
4
Some of the important features of Java are as follows:
• Simplicity
• Orientation
• Platform independence
• Security
•High performance
• Multiple threads
• Dynamic linking.
• Garbage Collection.
A client application or operating system must have a Java bytecode interpreter to execute
bytecode instructions. The interpreter is part of a lager program called the JVM. It interprets
bytecode into native code and is available on platforms that support java.
When a user runs a Java program, it is up to the JVM to load it, possibly validate it, and then
execute it. The JVM can perform this function from a browser or any other container program
or directly from the operating system.
The second part of the J2EE platform is the reference implementation, which is Sun
Microsystems' complete implementation of the J2EE specification. It is available in both binary
5
and source form. The reference implementation can be used to determine the portability of your
own J2EE application. It can also be used to compare against your chosen implementation.
The third part of the J2EE platform is the J2EE Compatibility Test Suite. This set will verify
compliance with the implementation-specific specification. This kit must be used in
conjunction with the Java Conformance Kit (JCK), as it picks up where JCK leaves off.
• Java servlets
Java servlets provide object-oriented abstractions for building dynamic web applications.
Servlets are server-side components that are a high-performance, platform-independent
replacement for CGI. Like CGI, servlets dynamically generate HTML .
It is extension of the Servlet API that simplifies the generation of dynamic web pages by
providing template-driven web application development. It uses XML/HTML-like tags and
Java scriptlets to encapsulate the logic needed to generate pages in a platform-independent
manner.
2.MySQL
SQL was developed at IBM by Donald Chamberlin, Donald C. Messerli and Raymond F. Boyce
in 1970.
MySQL is open source and user friendly. To perform various operations, users make requests
by entering specific commands. The server responds to the information from the user and
displays it on the user's side.
6
MySQL Application:
7
CHAPTER-2
LITERATURE SURVEY
Brown and White (2020) benchmarks show Java's superiority in terms of system
responsiveness and error handling. Java-based invoicing systems show fewer errors and faster
processing compared to systems developed in other languages.
Case studies:
Numerous case studies highlight the successful implementation of Java in electricity billing
systems. For example, a metropolitan energy company saw a significant reduction in billing
errors after adopting a Java-based system. Java's modular structure enabled seamless
integration with existing infrastructure and minimized disruption during the transition.
In a rural environment, cooperatives successfully used Java for invoicing systems. Java's
scalability allows these cooperatives to efficiently expand their services and accommodate a
growing customer base without degrading system performance.
Despite Java's strengths, there are problems with implementing billing systems. Integrating
with legacy systems and ensuring data security are critical issues. Ongoing research proposes
middleware solutions and encryption techniques to address these issues, thereby increasing the
compatibility and security of Java-based billing systems.
8
Java in Billing Systems:
Java's popularity in billing systems stems from its platform independence and object-oriented
paradigm. Researchers highlight its versatility, Frameworks like Spring and Hibernate further
enhance Java's suitability for building complex billing architectures.
Quality assessment (QA) of the reviewed literature is paramount for a Systematic Literature
Review (SLR), as the quality of the conclusions is entirely dependent on the quality of the
literature selected. A number of software engineering (SE) researchers have developed various
QA tools and also reported their problems.
More importantly, we aim to paint a clear picture of QA used in SLR in SE by aggregating and
distilling best practices, including commonly used QA tools as well as the main roles and
aspects of QA in research.
There is no generally accepted definition of quality, and as such, it remains a challenging task
to assess study quality, which generally refers to research methods and the validity of study
results. The Center for Reviews and Dissemination (CRD) guidelines [25] and the Cochrane
Reviewers’ Handbook [6] provided a working definition of quality as the extent to which study
design and conduct minimize bias and maximize internal and external validity. Maximizing
internal validity is associated with flawless study design and execution, while maximizing
external validity is about generalizing the study results as much as possible [30]. Although it is
not always possible to retrospectively assess study quality or the extent to which researchers
identified and controlled for threats to the validity of their study [52], quality control of primary
studies can at least help reviewers recognize the strength of evidences (primary studies) and
select strong evidence to support their findings and conclusions .
9
consumption data are required for approximately 47% and 35% of the presented solutions,
respectively. The available solutions cover a vast range of cases, with the main limitation
identified being the absence of a single solution that would allow the detection of all types of
non-technical losses.
Payment systems offered to customers:
The Electricity Billing System payment gateway takes into account the debit or credit card
information of the end user who would place the order for the product. Netscape Secure
Commerce Server is a live tool that uses the electricity billing system with the help of a secure
socket layer to store banking information. This data is not made available over the Internet,
thus paying the way for high confidentiality and protection of customer data. The company
also provides an option for the customer to make a part of the online payment and the rest
through a telecommunication postal order.
10
CHAPTER-3
The main objective of the Electricity Billing System Project is to manage electricity billing,
payment data. Built for the administration and therefore only after that it is guaranteed that the
administrator will assess the purpose of this project is to build an application program to reduce
the manual work in managing the electrical connection of the customer's meter hit tracks all
the detail of the meter Billing, Payment method.
b. Keep information about the consumed unit of the current month's energy.
C. Keep information about the previous unit of energy consumed per month.
3.2 FUNCTIONALITY
• Provides search options based on various factors. For example, electricity, electricity meter,
bill, payment.
• The electricity billing system also manages customer data for billing data, payment data and
electricity.
• Editing, adding and updating of records has been improved, leading to proper management
of electricity data sources.
11
• integration of all payment records.
Two types of Users (electricity billing system) are available in the project:
• Administrator login
Customer management
Manage accounts
Payment management
• Statement of payments
12
• Edit customer profile
Feasibility study is the stage where the analyst checks whether the candidate system is feasible
for the organization or not. identification, description and evaluation of the system. If a
feasibility study is to serve as a decision-making document, it must answer key questions.
1. Is there a new and better way of working that will benefit users?
2. What is recommended?
The most successful system projects are not necessarily the largest or most visible in the
industry, but rather meet user expectations.
Feasibility Considerations
The feasibility study includes three key aspects. They are as follows:-
Economic Feasibility:
It is the most commonly used method of evaluating the effectiveness of a candidate system.
We analyze the candidate system (computer system) is feasible as a manual system because it
saves money, time and manpower.
Technical Feasibility:
Technical feasibility revolves around the technology used. This means that the candidate
system is technically feasible, i.e. it has no technical error and works correctly in the given
environment. Our system is technically feasible; gives us the desired output.
Behavioral Feasibility:
13
3.4 Requirements
Problem identification:
The old manual system suffered from a number of shortcomings. Since the entire system had
to be maintained by hands, processing, maintaining and retrieving information was very time-
consuming and tedious. The records were never used in a systematic order, there are used to be
a lot of difficulty in assigning any particular transaction specific to a given context. If any
information was found that it was necessary to go through the various registers, the documents
would never exist as report generation. It would always be a waste of time entering records and
retrieving records.
Once the records were inserted, it was very difficult to update those records. Currently, the
electrical panel is operated manually, which is a major headache for the department. This is
because there is a lot of information that needs to be maintained and must keep in mind when
doing business.
14
For this reason, we have the functions The current system is partially automated(computer
wise), in fact the current system is quite laborious to enter the same information in three
different places.
there may also be several reports that can assist management in making decisions about cost
creation and control, but since these reports are not required. Attention, this kind of news and
information has also been identified and given the necessary attention.
• With the implementation of a computerized system, the task of keeping records will be
handled in an organized manner.
• The biggest of all is the information retrieval that happens at the click of a mouse. Thus, the
designed system helps to save time in various operations and facilitates the flow of information
and provides valuable reports.
1. Client application
2. Database server
15
1. Client application:
The client application (ie frontend) is part of the system that users use to interact with data.
The task of the client is to request and receive information from the database server (back-
end). A client application can be developed quickly using Visual Basic.
2. Database server:
A database server focuses on efficient management of resources such as the table in which the
data resides. The primary role of the server is to optimally manage data tables between
multiple clients simultaneously requesting the same resources from the server. Visual Basic
can connect to a number of RDBMS that are trending.
Network and communication software is a means of transferring data between clients and a
server. Both the client and the server run communication software that allows them to
communicate on the network.
16
CHAPTER-4
SYSTEM DESIGN
In most situations, there are many decisions to make about the physical database design implicit
or eliminated when we choose database management technology for use with the information
system we are designing. Because many organizations have a standard for operating systems,
database management system and data access languages, we have to deal with only with those
choices that are not implicit in the given technologies.
i) Decide on the organization of the database on the computer storage and define the physical
structure of database management System.
ii) Outline the transaction processing and generation program expected management
information and decision support reports.
Field design:
A field is the smallest unit of application data recognized by the system software Selection of
data types: A data type is a detailed encoding scheme recognized by system software such as a
DBMS for representation organizational data.Choosing a data type involves four goals that will
vary relative importance for different applications:
With many DBMSs, data integrity checks can be built into the physical structure of the fields
and the checks enforced by the DBMS on them field. Some other typical controls that a DBMS
may support are Following:-
17
• Default values:
The default value is the value that the field will assume if not entered by the user explicit value
for an instance of this array. Default value assignment to the field can reduce data entry, the
time since entering the value can be skipped and can also help reduce data entry errors the most
common value.
• Range control:
It limits the set of allowable values that a field can take.The range can be a numeric lower to
upper limit or a set of specific ones values. It is better to implement any scope checks through
the DBMS because scope control in programs can be enforced inconsistently and it they are
more difficult to find and change.
The null value is an empty value that every primary key must have an integrity check that
disallows the null value. Any other required fields may also have a null value check if it is a
policy organization.
• Referential integrity:
Referential integrity on an array is a form of scope control in which the value of this field must
exist as a value in some field in another row same or different tables.
The design of the physical record includes choosing to sort arrays into contiguous storage
achieve the two goals of efficient use of secondary data storage processing speed.
We used five different tables to store different records. PUSH there are five tables - customer
table, billing table, billing table, service center table, business table.
The input stream shows the way information is passed to table as a record. We mainly used two
forms in the project entering a record into the table is first a business account record form and
the second is a form for recording a domestic account. We use these forms to enter records of
desk name, address, service center, customer_id, etc
18
4.3 Output flow:
The input stream shows the way the user views the information which are stored in the
database. Commercial account calculation form and domestic account calculation form are
used as the output stream, we can see the record and also see name , billing_date , total_account
etc.
A commercial report form and a domestic report form are used for acquisition total record of
domestic account and business account in printed form.
4.4ARCHITECTURAL DESIGN:
The development life cycle of a system is the sequence of events that it performs analysts,
designers and users to develop important information
3. System design
4. Software development
5. System testing
6. System maintenance
An important result of this is the determination whether the desired system is feasible or not.
Find out if it is possible to automate the system and if so suggest some acceptable options:
19
Technical feasibility
Economic feasibility
Operational feasibility
Technical Feasibility:
The analyst finds out whether the current technical means that are available in the organization,
is capable of handling user requests.
Economic Feasibility:
Economic or financial feasibility is the second part of the resource determination. Basic sources
to consider are:
Driving time
Time spent by the system analysis team
Cost of conducting a full system study
Estimated cost of hardware
Estimated cost of software
Operational Feasibility:
Operational feasibility depends on the determination of human resources for the project. It
refers to projecting whether the system will work and can be used after installation.
Detailed investigation
Analysis or determination of system requirement
Detailed investigation
The core of systems analysis is to have a detailed analysis understanding of all the important
facts of the project under consideration. An analyst working closely with employees and
managers must be able to answer the following key question:
20
What does the current system do?
How do you do it?
How often does it occur?
How big is the volume of transactions or decisions?
To answer the above question, a systems analyst talks to various people to get project details.
Questionnaires are used collect this information from large groups of people who cannot be
interview individually. A detailed examination also requires a study manuals and reports,
current observation of work activities and a collection of existing forms and documents to fully
understand project.
Following:
• Data to be retained
3. System design
• Identification of reports and outputs that the new system should have produce.
• Sketch the form or view as you expect it to appear at the end system completion. It can be
done on paper or on a computer display using one of the automated system design tools
description of the data to be inserted, calculated or stored individual data items and a detailed
calculation procedure.
21
• Written procedures should tell how to process data and produce output.
4. Development of Software
In this phase, the actual coding / writing of the program is done. Analyst– programmers do
analytics and design code programs programmers are responsible for program documentation
including comments that explain both how and why a certain procedure was coded in a specific
way. Programs they are individually tested using some test data. Documentation too necessary
to test programs and perform maintenance once the application has been installed.This system
development life cycle activity produces tested programs.
5. System test
Once programs are tested individually, the system as a whole needs to test. During testing, the
system is used experimentally to ensure that the software will not fail, that it will run on its
own terms specifications and how they are accepted by the user. special test data prepared as
input for processing and the result is examined and searched unexpected result.
6.System maintenance
Once installed, software is often used for many years. However, both change of organization
and user. The environment can also change for certain period of time therefore the software
must be maintained.
22
CHAPTER-5
Performing operations:-
• Add customer: Here the admin can add a new customer to the customer list who started using
the electricity bill system.
• Deposit Details Search: Here admin can search by meter number and month to view deposit
details.
• View details: Here admin and user can view details about and about customers details.
• Customer Update: Here the customer can update their details using meter_customer number.
5.1 SIGNUP
23
Signup as Admin
24
5.2 LOGIN
This program will allow the administrator to enter a username and password.
• If the entered data is correct, the login will be successful, otherwise you need to register.
• After successful login, the administrator will be redirected to the administrator portal page.
OUTPUT
25
5.3 Admin Landing Page
The administrator enters the customer's name, address, city, state, email and phone number.
26
OUTPUT
27
Here the administrator selects the location and type of installed meter customers end.
Admin will also select phase code and account type i.e. Residential or Commercial/Industrial
OUTPUT
Here admins can see details of all registered customers. Admin upon request, these data can
be printed in pdf format.
28
OUTPUT
29
5.7 Deposit Details
Here the admin can check the status if the customers have paid their accounts or not.
OUTPUT
30
5.8 Calculate Bill
Here the admin calculates the users account by selecting the appropriate one meter number,
units consumed and month.
31
5.10 View Customer Information
Here the customer can see their entered information, e.g name, meter number, address, city,
state, email address and telephone number.
OUTPUT
32
5.11 Update Customer Information
OUTPUT
33
5.12 Generate/Show Bill
Here the customer can generate / see his account in the correct breakdown of the entire
amount.
34
OUTPUT
35
5.13 Pay Bill
OUTPUT
36
5.14 TABLES:-
The table below is a snapshot of the backend view of the localhost and the structures of the
tables present in the electricity bill System. The tables present are login, customer, tax, bill,
meter_info.
✓ The login name is used to store login administrator and customer data meter_no.
37
Login Table
Table 5.1
Customer Table
Table 5.2
38
Bill Table
Table 5.3
Meter Info
Table 5.4
39
CHAPTER-6
TESTING
Testing Process:-
It is an integral part of software development. The testing process, in the method, certifies that
the product being developed meets the standards according to which it was designed. The
testing process involves creating test cases against which the product must be tested. In some
cases, test cases are performed based on the system requirements specified for the
product/software to be developed.
Testing Objectives:-
• Testing is the process of running a program with the intention of finding a bug.
Testing Levels:-
Different levels of testing are used in the testing process; each level testing aims to test different
aspects of the system. Base levels are units testing, integration testing, system testing and
acceptance testing.
Unit Testing:-
Unit testing focuses verification efforts on the smallest unit software design the module. The
software created is a collection individual modules. In this kind of testing the exact control
flow for everyone module has been verified. With a detailed design assessment used as a guide
critical inspection paths are tested to detect errors within boundaries module.
Integration Testing:-
The second level of testing is called integration testing. In this, many class-tested modules are
combined into subsystems, which are subsequently tested. The goal here is check that all
modules can be integrated correctly. We were identified and debugged.
40
System Testing:-
The entire application is tested here. The reference document for this process is requirements
document and determine whether the application meets its requirements. Every module and
component of ethereal has been thoroughly tested eliminate errors through a system testing
strategy. Test cases have been created for all of them possible input sequences and the
correctness of the output was verified.
41
CHAPTER 7
7.1 Conclusion
Our project is only a modest venture to meet the needs of managing their project work. It also
adopted several user-friendly codes. This package must prove to be a powerful package while
meeting all requirements. The goal of software planning is to provide a framework that allows
the manager to make reasonable estimates made within a limited time frame at the beginning
of a software project and should be updated regularly.
we can provide more advanced software for electricity billing system including more
devices
we will host the platform on online servers to make it available worldwide
integrate multiple load balancers to spread the system load
create a master and child database structure to reduce database query overhead
implement a backup mechanism to regularly back up the codebase and database to
different servers
42
7.3 References
• https://www.javatpoint.com/
• https://www.w3schools.com/
• https://www.geeksforgeeks.org/
• https://www.tutorialspoint.com/
• https://www.freeproectz.com/
43