Project1 Report
Project1 Report
Project1 Report
A minor project report submitted in partial fulfilment of the requirements for the
award of the Degree of Bachelor of Technology
In
Submitted by
Ashis Mohanty(1601292038)
Pabitra Kumar Sahoo(1601292070)
Kunal Kar(1601292379)
Certificate
Acknowledgement
Abstract
1. Introduction 1
3. Feasibility Analysis 2
5. Design 5
6. Database Specification 11
8. E-R Diagram 15
9. Coding 16
10. Testing 19
12. Conclusion 24
14. Bibliography 26
` Abstract
A new software system to modernize the electricity billing procedure is required. This electricity billing system would
replace the traditional and analog type of electricity billing system ensuring security, ease and comfort in billing. it meets
the current user demands and new features can be easily integrated into the system in future as per user requirements. The
application has high speed of performance with accuracy and efficiency. The software provides facility of data sharing. It
does not require staff as in the conventional system. It has the provision of security restriction. It require small storage for
installation and functioning. There is a provision for debugging if any problem is encountered in the systemThe purpose of
the electricity billing system is to automate the existing manual system by the help of
computerized equipments and full fledged computer
A new software system to modernize the electricity billing procedure is required.
This electricity billing system would replace the traditional and analog type of electricity billing system ensuring security,
ease and comfort in billing.
it meets the current user demands and new features can be easily integrated into the system in future as per user
requirements
. The application has high speed of performance with accuracy and efficiency. The software provides facility of data
sharing. It does not require staff as in the conventional system
. It has the provision of security restriction
. It require small storage for installation and functioning.
There is a provision for debugging if any problem is encountered in the system.
1.Introduction about the project
The Project Electricity billing system is system is made to keep the records about the bills of the customer
The admin can manage all the accounts and the registered users like employees and customers can only manage their own
accounts. This system helps in maintaining the bills and the payments.A different module is there for employees to check
the customer’s details if their job requires. Admin, employees, and customers all have a different interface and different
privileges according to their need.Like a customer can only manage his account and cannot see any details of other
customers, employees can see the details of all the customer’s accounts and admin can manage all the accounts including
the customers and employees account.This system also has the option for customers to pay their electricity bills by online
mode. Either through internet banking or by debit card.This system also has the feature to add and delete customer and
employee’s accounts in case a customer wants to cut the connection or an employee wants to leave the job.All the
employees are divided into different departments according to their job profile and the customers are divided according to
their wards.
Existing System:
In the existing system only we can see the details of particular information about the police stations in our state,
the existing system has more workload for the authorized person, but in the case of Proposed System, the user can
registered in our site and send the crime report and complaint about a particular city or person.
Electrcity billing System can help to meet and overcome the problem of manual processing. Electricity billing
System offer flexible client-server technology based on a scalable system. It’s Centralized and customer centric design
offers a complete set of integral retails banking modules sharing a user-friendly interface. This project includes the entire
upgraded feature required for the computerization electricity system. This system is very easy to use, so that any user
can use without getting pre-knowledge about this.
This system is completely GUI based and can be use by mouse and as well as keyboard. This system is melded
in such a way that has got all features to upgrade without making much change in existing components .
Proposed System:
The aim of proposed system is to develop a system of improved facilities. The proposed system can overcome all
the limitations of the existing system. The system provides proper security and reduces the manual work. The existing
system has several disadvantages and many more difficulties to work well. The proposed system tries to eliminate or
reduce these difficulties up to some extent. The proposed system will help the user to reduce the workload and mental
conflict. The proposed system helps the user to work user friendly and he can easily do his jobs without time lagging.
3. Feasibility Analysis:-
Depending on the results of the initial investigation, the survey is expanded to a more detailed feasibility study.
A feasibility study is a test of a system proposal. According to its workability, impact on the organization, ability to
meet user’s needs and effective use of the resources its main task done during the feasibility study are:-
1. Evaluation of existing system and procedures. Our group went to various electricity Professionals
to gather information about the software system. They are using and evaluating those system and
the procedures invoked in it during the period of feasibility study.
2. Analysis of alternative candidate systems after studying the various systems we derived various
alternatives through which we develop our project and evaluated the alternative. The most appropriate
is selected.
FEASIBILITY STUDY
The only tangible benefit provided by the proposed system is that the paper work is reduced to the minimum
and hence the reduction in cost incurred on Stationary and its storage.
The system provides many benefits that can’t be measured in terms of Money for e.g. user’s friendliness, more
user response being more efficient.
TECHNICAL FEASIBILITY:-
The proposed system is technically feasible as it can be developed easily with the help of available technology. The
proposed system requires Sublime Text Editor using JAVA as a Interface for Programming & back-end as ORACLE
SQL for storing/maintaining database.
OPERATIONAL FEASIBILITY:-
Automation makes our life easy. The proposed system is highly user friendly and is much easily able to interact with the
system. Therefore the users will readily accept the system as data entry and making queries can be easily done.
A Systems Development Life Cycle (SDLC) adheres to important phases that are essential for developers, such
as planning, analysis, design, and implementation, and are explained in the section below.It include evaluation of present
system, information gathering, feasibility study and request approval. A number of system development life cycle (SDLC)
models have been created: waterfall, fountain, spiral, build and fix, rapid prototyping, incremental, and synchronize and
stabilize. The oldest of these, and the best known, is the waterfall model: a sequence of stages in which the output of each
stage becomes the input for the next. These stages can be characterized and divided up in different ways, including the
following:
Systems analysis, requirements definition: Defines project goals into defined functions and operation of the
intended application. Analyzes end-user information needs.
Systems design: Describes desired features and operations in detail, including screen layouts, business rules,
process diagrams, pseudo code and other documentation.
Development: The real code is written here.
Integration and testing: Brings all the pieces together into a special testing environment, then checks for errors,
bugs and interoperability.
Acceptance, installation, deployment: The final stage of initial development, where the software is put into
production and runs actual business.
Maintenance: What happens during the rest of the software's life: changes, correction, additions, moves to a
different computing platform and more. This is often the longest of the stages.
Software Specification:-
Operating System : Windows 10
Languages : java
Platform : Netbeans
Web Servers : Wampserver
Backend : Oracle11g
Browser Program : Google Chrome
5. Design:-
Java a supports this application and the follow features make it one of the best programming languages.
It is simple and object oriented
It helps to create user friendly interfaces.
It is very dynamic.
It supports multithreading.
It is platform independent
It is highly secure and robust.
It supports internet programming
Java applications are typically compiled to byte code which can run on any Java virtual machine (JVM)
regardless of computer architecture.
Different "editions" of the platform are available, including:
Java ME (Micro Edition): Specifies several different sets of libraries (known as profiles)
for devices which are sufficiently limited that supplying the full set of Java libraries would
take up unacceptably large amounts of storage.
Java SE (Standard Edition): For general purpose use on desktop PCs, servers and similar
devices.
Java EE (Enterprise Edition): Java SE plus various APIs useful for multi-tier client-server
enterprise applications.
The heart of the Java Platform is the concept of a "virtual machine" that executes Java bytecode
programs. This bytecode is the same no matter what hardware or operating system the program is running
under. There is a JIT compiler within the Java Virtual Machine, or JVM. The JIT compiler translates the
Java bytecode into native processor instructions at run-time and caches the native code in memory during
execution.
Platform independence:-
One characteristic, platform independence, means that programs written in the Java language
must run similarly on any supported hardware/operating-system platform. One should be able to write a
program once, compile it once, and run it anywhere. And JAVA is platform Independent.
Although a J2EE application can consist of the three or four tiers shown in Figure J2EE multitier
applications are generally considered to be three-tiered applications because they are distributed over
three different locations: client machines, the J2EE server machine, and the database or legacy machines
at the back end. Three-tiered applications that run in this way extend the standard two-tiered client and
server model by placing a multithreaded application server between the client application and back-end
storage.
J2EE Clients
A J2EE client can be a Web client or an application client.
Web Clients :
A Web client consists of two parts: dynamic Web pages containing various types of markup
language (HTML, XML, and so on), which are generated by Web components running in the Web tier,
and a Web browser, which renders the pages received from the server.
A Web client is sometimes called a thin client. Thin clients usually do not do things like query
databases, execute complex business rules, or connect to legacy applications. When you use a thin
client, heavyweight operations like these are off-loaded to enterprise beans executing on the J2EE
server where they can leverage the security, speed, services, and reliability of J2EE server-side
technologies.
Application Clients :
A J2EE application client runs on a client machine and provides a way for users to handle tasks
that require a richer user interface than can be provided by a markup language. It typically has a
graphical user interface (GUI) created from Swing or Abstract Window Toolkit (AWT) APIs, but a
command-line interface is certainly possible.
Application clients directly access enterprise beans running in the business tier. However, if
application requirements warrant it, a J2EE application client can open an HTTP connection to establish
communication with a servlet running in the Web tier.
JavaBeans Component Architecture:
The server and client tiers might also include components based on the JavaBeans component
architecture (JavaBeans component) to manage the data flow between an application client or applet
and components running on the J2EE server or between server components and a database. JavaBeans
components are not considered J2EE components by the J2EE specification.
JavaBeans components have instance variables and get and set methods for accessing the data
in the instance variables. JavaBeans components used in this way are typically simple in design and
implementation, but should conform to the naming and design conventions outlined in the JavaBeans
component architecture.
Business Components :-
Business code, which is logic that solves or meets the needs of a particular business domain
such as banking, retail, or finance, is handled by enterprise beans running in the business tier. An
enterprise bean also retrieves data from storage, processes it (if necessary), and sends it back to the
client program
Java Server Pages (JSP):
Java Server Pages technology is the Java platform technology for building applications
containing dynamic Web content such as HTML, DHTML and XML. The Java Server Pages technology
enables the authoring of Web pages that create dynamic content easily but with maximum power and
flexibility.
Wampserver is a servlet container and Java Server Pages implementation it may be used stand
alone, or in conjunction with several popular web servers.
Wampserver is a security update release. This release closes a whole that potentially allowed access to
resources protected by a <security constraint > in web.xml.
6. Database Specification:-
A database is an organized mechanism that has the capability of storing information through which a user can
retrieve stored information in an effective and efficient manner. The data is the purpose of any database and must be
protected.
The database design is a two level process. In the first step, user requirements are gathered together and a database
is designed which will meet these requirements as clearly as possible. This step is called Information Level Design and it
is taken independent of any individual DBMS.
In the second step, this Information level design is transferred into a design for the specific DBMS that will be
used to implement the system in question. This step is called Physical Level Design, concerned with the characteristics of
the specific DBMS that will be used. A database design runs parallel with the system design. The organization of the data
in the database is aimed to achieve the following two major objectives.
o Data Integrity
o Data independence
Normalization is the process of decomposing the attributes in an application, which results in a set of tables with
very simple structure. The purpose of normalization is to make tables as simple as possible. Normalization is carried out
in this system for the following reasons.
To structure the data so that there is no repetition of data , this helps in
Saving.
To permit simple retrieval of data in response to query and report request.
To simplify the maintenance of the data through updates, insertions,
Deletions.
To reduce the data need to restrict which new application requirements arise.
Introduction to SQL: -
DFD SYMBOLS:
A system defined a source or destination of data.
An arrow identifies data flow, data in motion.
A circle represents the process that transforms incoming data flow to outgoing data flow.
An open rectangular is data store-data at rest or a temporary repository of data.
Diagram Below :-
Connection Meter no
8. E-R DIAGRAM:-
ER-modeling is a data modeling technique used in software engineering to produce a conceptual data model of a
information system. Diagrams created using this ER-modeling technique are called Entity-Relationship Diagrams, or
ER diagrams or ERDs. So you can say that Entity Relationship Diagrams illustrate the logical structure of databases.
The original notation for ER-Diagrams uses rectangles to represent entities, and diamonds to represent
relationships.
There are three basic elements in ER-Diagrams:
Entities are the "things" for which we want to store information. An entity is a person, place, thing or event.
Attributes are the data we want to collect for an entity.
Relationships describe the relations between the entities.
1-package electricity.billing.system;
import java.sql.*;
}catch(Exception e){
System.out.println(e);
}
}
}
2- package electricity.billing.system;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
}
}
class fframe extends JFrame implements Runnable{
Thread t1;
fframe(){
super("Electricity Billing System");
setLayout(new FlowLayout());
ImageIcon c1 = new ImageIcon(ClassLoader.getSystemResource("icon/elect.jpg"));
Image i1 = c1.getImage().getScaledInstance(730, 550,Image.SCALE_DEFAULT);
ImageIcon i2 = new ImageIcon(i1);
JLabel l1 = new JLabel(i2);
add(l1);
t1 = new Thread(this);
t1.start();
}
public void run(){
try{
Thread.sleep(7000);
this.setVisible(false);
3- package electricity.billing.system;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
l1 = new JLabel("Username");
l2 = new JLabel("Password");
tf1 = new JTextField(15);
pf2 = new JPasswordField(15);
b1.addActionListener(this);
b2.addActionListener(this);
setLayout(new BorderLayout());
p1 = new JPanel();
p2 = new JPanel();
p3 = new JPanel();
p4 = new JPanel();
add(l3,BorderLayout.WEST);
p2.add(l1);
p2.add(tf1);
p2.add(l2);
p2.add(pf2);
add(p2,BorderLayout.CENTER);
p4.add(b1);
p4.add(b2);
add(p4,BorderLayout.SOUTH);
p2.setBackground(Color.WHITE);
p4.setBackground(Color.WHITE);
setSize(440,250);
setLocation(600,400);
setVisible(true);
}
public void actionPerformed(ActionEvent ae){
try{
conn c1 = new conn();
String a = tf1.getText();
String b = pf2.getText();
String q = "select * from login where username = '"+a+"' and password = '"+b+"'";
ResultSet rs = c1.s.executeQuery(q);
if(rs.next()){
new Project().setVisible(true);
this.setVisible(false);
}else{
JOptionPane.showMessageDialog(null, "Invalid login");
setVisible(false);
}
}catch(Exception e){
e.printStackTrace();
System.out.println("error: "+e);
}
}
A good test case is one that has high possibility of finding an undiscovered error.
Integration testing is systematic technique for constructing the program structure while at the same time conducting
tests to uncover errors associated with interfacing. The objective is to take unit tested components and build a program
structure that has been dictated by design. The entire program is tested as whole. Correction is difficult because isolation
of causes is complicated by vast expanse of entire program. Once these errors are corrected, new ones appear and the
process continues in a seemingly endless loop.
After unit testing in Sell-Soft System all the modules were integrated to test for any inconsistencies in the interfaces.
Moreover differences in program structures were removed and a unique program structure was evolved.
This is the final step in testing. In this the entire system was tested as a whole with all forms, code, modules and class
modules. This form of testing is popularly known as Black Box testing or System tests.
Black Box testing method focuses on the functional requirements of the software. That is, Black Box testing enables
the software engineer to derive sets of input conditions that will fully exercise all functional requirements for a program.
Black Box testing attempts to find errors in the following categories; incorrect or missing functions, interface errors,
errors in data structures or external data access, performance errors and initialization errors and termination errors.
4. OUTPUT TESTING OR USER ACCEPTANCE TESTING
The system considered is tested for user acceptance; here it should satisfy the firm’s need. The software should keep
in touch with perspective system; user at the time of developing and making changes whenever required. This done
with respect to the following points.
1. Input Screen Designs,
2. Output Screen Designs,
3. Online message to guide the user and the like.
The above testing is done taking various kinds of test data. Preparation of test data plays a vital role in the
system testing. After preparing the test data, the system under study is tested using that test data. While testing the
system by which test data errors are again uncovered and corrected by using above testing steps and corrections are also
noted for future use.
2. We can establish and start various Branches and available help centers for Account Holder’s Queries.
3. We can also deal through internet by creating web pages and a banking website for internet dealing.
4. To attract Account Holder’s we can offer various offers during festivals months.
6. To have more and more customer satisfaction we will emphasize more and more on our dealings.
14-Bibliography:-
BOOKS:
ONLINE REFERENCE:
www.geeksforgeeks.com
www.w3schools.com
www.wikipedia.com
WWW.TECHNOBUZZ.COM