Telephone Billing System Capstone Project Document


The purpose of the project is to computerize the requirement of the Telephone Billing System and such to calculate the bills for postpaid mobile, landline, broadband customers.The software thus calculates and generates the telephone bills automatically. It does almost every work related to billing purposes via –

  • New connection
  • Customer record modification,
  • Viewing customer records &
  • All works related to rate of bills, meter readings in addition to bill calculation and bill generation.

System Objectives

Telephone Billing System which starts with a manual data entry and management  deals with hundreds of transactions , now-a-days  has become a complicated  and error prone job to maintain the telephone’s administrative system manually. So, we have decided to go about computerizing their operation.The new system created in the project i.e. “Computerization of telephone billing system” tends to computerize the Telephone Billing System by storing its associated data in database files and thus performing all works related to calculation and generation of bills.

Aim of the project

The main aim while implementing the project Telephone Billing System were to minimize the work and at the same time increase the speed of the work done.

The new system is built with the following objectives:-

  • Information retrieval will become easy.
  • Maintenance of database as well as overall project will become easy.
  • Security measure will be adopted, by maintaining the login of administrator password.

Overview Of Current System

Telephone Billing System is an approach by which the office staffs can store all the information about the customers, all the information of the Customers transaction and rectify them and review them whenever necessary.

  • The existing system is assumed to be a manual billing system and hence all the operations are assumed to be done manually by pen & paper works.
  • When any customer takes new connections then separate files were maintained.
  • Updating of data was very tedious job.
  • It was not easy to do several administrative works like managing rates of calls, addition or modification of metered calls & customer entries, modification of customer details

Definitions Of Problems With Current System

Here are some enlisted problems that we have found in the conventional system-

  • The existing system is totally manual thus there are chances of error in processing.
  • The basic and major drawbacks in the existing system are the speed of retrieval of data from files, which leads to delay.
  • There are plenty of chances of duplicity of data and information.
  • Maintenance of voluminous data is very cumbersome and laborious job.
  • Uses of hard copy are not safe always.
  • Large amount of storage space is needed.




Goals Of Proposed System

  • Maintaining accuracy

The level of accuracy in the proposed system will be higher. All operation would be done correctly and it ensures that whatever information is coming from the source is accurate.

  • Maintaining no duplicacy

                        In the proposed system utmost care should be taken so that no information is repeated anywhere, in storage or otherwise. This would assure economic use of storage space and consistency in the data storage.

  • Immediate retrieval & storage of information

The main objective of the proposed system is to provide for a quick and efficient retrieval of information. Any type of information would be available whenever the user requires.

  • Easy to Operate

The system will be easy to operate and should be such that it can be developed within a short period of time and fit in the limited budget of the user.

  • Secured

                        The system will provide certain level of security , one has to be properly authenticated to operate this.

System Analysis

Analysis is a detailed study of the various operations performed by a system and their relationships within and outside of the system. A key question is what must be done to solve the problem? One aspect of analysis is defining the boundaries of the system and determining whether or not a candidate should consider other related systems.

Identification Needs

The success of a system depends largely on how accurately a problem is defined, thoroughly investigated, and properly carried out through the choice of solution. User need identification and analysis are concerned with what the user needs rather than he/she wants. Not until the problem has been identified, defined, and evaluated should the analyst think about solutions and whether the problem is worth solving. This step is intended to help the user and the analyst understand the real problem rather than its symptoms.

Preliminary Investigation

The first step in the system development life cycle is the identification of a need. This is a user’s request to change, improve, or enhance an existing system. Because there is likely to be a stream of such request, standard procedures must be established to deal with them. The initial investigation is one way of handling this. The objective is to determine whether the request is valid and feasible before a recommendation is reached to do nothing, improve or modify the existing system, or build a new one.


Feasibility Study

Many feasibility studies are disillusioning for both users and analysts. First, the study often pre-supposes that when the feasibility document is being prepared, the analyst is in a position to evaluate solutions. Second, most studies tend to overlook the confusion inherent in system development –the constraints and the assumed attitudes.


Technical Feasibility

Technical feasibility centres on the existing computer system (hardware, software) and to what extent it can support the proposed addition. If the budget is a serious constraint, then the project is judged not feasible.

Economic Feasibility

Economic analysis is the most frequently used method for evaluating the effectiveness of a candidate system. More commonly known as cost/benefit analysisthe procedure is to determine the benefits and savings that are expected from a candidate system and compare them with costs .If benefits outweights costs, then the decision is made to design and implement the system .Otherwise, farther justification or alterations in the proposed system will have to be made if it is to have a chance of being approved. This is an on-going effort that improves in accuracy at each phase of the system life cycle.

Operational Feasibility

People are inherently resistant to change, and computers have been known to facilitate change .An estimate should be made of how strong a reaction the user staff is likely to have toward the development of a computerized system. It is common knowledge that computer installations have something to do with turn over, transfers, retraining, and change in employee job status. Therefore, it is understandable that the introduction of a candidate system requires special effort to educate, sell, and train the staff on new ways of conducting business.

System Security

The system security problem can be divided into four related issues: security, integrity, privacy, and confidentiality. They determine file structure, data structure and access procedures.

System security refers to the technical innovations and procedures applied to the hardware and operating system to protect against deliberate or accidental damage of a system from a defined threat. In contrast, data security is the protection of data from loss, and destruction.

System integrity refers to the proper functioning of hardware and programs, appropriate physical security and safety against external threats such as eavesdropping and wiretapping. Data integrity makes sure that data do not differ from their original form and have not been accidentally disclosed, altered, or destroyed.

 Privacy defines the rights of the users or organizations to determine what information they are willing to share with or accept from others and how the organization can be protected against unwelcome, unfit, or excessive dissemination of information about it.

The term confidentiality is a special status given to sensitive information in a database to minimize the possible invasion of privacy

Threats To System Security

A procedure for system protecting systems makes sure that the facility is physically secure, provides recovery restart capability, and has access to backup files. If we list in order of probability the threats to system security or data integrity, research shows the most damage comes from errors and omissions – people making mistakes. The threat of external attack on a computer system is virtually last. This means that in establishing a priority sequence, one would probably want to start from within the firm .The list if potential threats are

  1. Errors and Omissions.
  2. Disgruntled and dishonest employees.
  3. Fire
  4. Natural Disasters.

Security Measures

After system security risks have been evaluated, the next step is to select the measures that are internal and external to the facility. These measures are generally classified under the following:-

  1. Identification

There are three schemes for identifying persons to the computer:

  • Sometimes you know such a password. A password is the most commonly used for authenticating the identity of people. Password should be hard to guess and easy to remember.
  • Sometimes you are such a fingerprints or voice prints. Although fingerprinting is
  • Sometimes you have, such as the credit card, key, or special terminal. Magnetic strip credit card readers on terminals identify the operator to the system.
  1. Access control

One way to use an encoded card system with a log-keeping capability .The card serves as a key to unlock doors, including tape storage and other classified areas. The card is essentially a magnetic key and a “Keyport” is a lock.

  1. Encryption

An effective and practical way to safeguard data transmitted over telephone lines is by encryption .Data are scrambled during transmission from one computer or terminal to another. The process transforms data in such a way that they become utterly useless to unauthorized users. It eliminates the authentication problem by preventing a determined “intruder” from injecting false data into the channel or modifying messages.

  1. Audit control

Audit control protect a system from external breaches and internal fraud or embezzlement. The resources invested in audit controls, however, should balance with difficult to prove their worth until the system has been violated or a company officer imprisoned. For this reason, auditability must be supported at all management levels and planed into every system.

  1. System integrity

System integrity is a third line of defense that concentrates on the functioning of hardware, database and supportive software ,physical security, and operating procedures. The most costly software loss is program error. It is possible to eliminate such error through proper testing routines.

Software & Hardware Specification


Hardware Used: 

                                CPU TYPE                :    Intel CORE i3

                                CO- PROCESSOR   :    Installed

CPU CLOCK            :    2.8 GHZ 

                                RAM                           :    2048 MB

                                DISPLAY TYPE       :    LCD

HARD DISK              :    500 GB

                                FLOPPY DISK          :    1.44 MB

KEY BOARD             :    120 Keys

MOUSE                      :    Standard Serial

                                 MONITOR                 :    SVGA


Software Used:

                             OPERATING SYSTEM          :  Windows 7 home premium

LANGUAGE                             :  Java 7.0

RAD TOOL                               : Oracle Netbeans 7.0.1

RDBMS PACKAGE                 :  MySQL 5.5

REPORT PRESENTATION   :  Jasper-soft iReport 4.1.2

System Design

The design phase focuses on the detailed implementation of the system recommended in the feasibility study. Emphasis is on translating performance specifications into design specifications. The design phase is a transition from a user oriented document to a document oriented to the programmers or database personnel.

Logical and Physical Design:

System design goes through two phases of development: Logical & physical design. When analysts prepare the logical system design, they specify the user needs at a level of detail that virtually determines the information flow into and out of the system and the required data resources. The design covers the following:

  1. Reviews the current physical system- its data flows , file contents, volumes, frequencies, etc.
  2. Prepares output specifications- i.e. determine the format, content, and frequency of reports, including terminal specifications and locations.
  3. Prepares input specifications- format, content, and most of the input function.
  4. Prepares edit, security and control specification. This includes specifying the rules for edit correction, backup procedures, and the controls that ensure processing and file integrity.
  5. Specifies the implementation plan.
  6. Prepares a logical design walkthrough of the information flow, output, input, controls and implementation plan.
  7. Reviews benefits, costs, target dates and system constraints.

Following logical design is the physical design. This procedures the working system defining the design specification that tell the programmers exactly what the candidate system must do. Physical design consists of the following steps:

  1. Design the physical system
    1. Specify the input/output media.
    2. Design the database and specify backup procedures.
    3. Design physical information flow through the system and a physical design walkthrough.
  2. Plan system implementation.
    1. Prepare a conversion schedule and a target date.
    2. Determine training procedure, courses and time table.
  3. Devise a test and implementation plan and specify any new hardware/software.
  4. Update benefits, costs, conversion date and system constraints (legal, financial, hardware, etc).

Data Flow Diagram

The data flow diagram shows the flow of data between different processes in the system. A DFD provides a simple and intuitive method for describing processes without focusing on the details of computer systems. With the DFD in hand it becomes easier to identify the entities in the system and allows us to get a clear picture of how the system is supposed to work. DFD also helps in avoiding man pit- falls which might have not been recognized otherwise. Thus a DFD is a necessary part of the system design process.

Entity Relationship Diagram

E-R diagram identifies the different entities in the process and also the inter relationship between them . It is an intuitive way of knowing the system and its dependencies in a better way.

The E-R diagram is a high level conceptual data model. It describes the basic framework of system. It helps in discarding entities which are not related at all and also helps in reducing coupling and in building a robust model.

Gantt Chart

A Gantt chart is a type of bar chart that illustrates a project schedule. Gantt charts illustrate the start and finish dates of the terminal elements and summary elements of a project. Terminal elements and summary elements comprise the work breakdown structure of the project. Some Gantt charts also show the dependency (i.e., precedence network) relationships between activities. Although now regarded as a common charting technique, Gantt charts were considered revolutionary when they were introduced. In recognition of Henry Gantt‘s contributions, the Henry Laurence Gantt Medal is awarded for distinguished achievement in management and in community service. This chart is also used in Information Technology to represent data that have been collected. The Gantt chart for the project is as follows:

Gantt Chart

Gantt Chart

Database Design

A decade ago, database was unique to large corporations with mainframes. Today it is recognized as a standard of MIS and is available  for virtually every size of computer.Before the database concept became operational,users had programs that handled their own data independent of other users.It was a conventional file environment with no data integration or sharing of common data across applications . In a database environment, common data are available and used by several users. Instead of each program (or user) managing its own data , data across applications are shared by authorized user with the database software managing the data as an entity .


The term implementation has different meaning, ranging from the conversion of a basic application to a complete replacement of a computer system. The procedure ,however ,is virtually the same. Implementation is used here to mean the process of converting a new or a revised  system design in to an operational one. Conversion is one aspect of implementation. The other aspects are the post implementation review and software maintenance.

Post Implementation Review

A post implementation review measures the system’s performance against predefined requirements .A post implementation review determines how well the system continues to meet performance specification . It also provides information to determine whether major redesign is necessary.

A post implementation review is an evaluation of a system in terms of the extent to which the system accomplishes stated objectives and actual project cost exceeds initial estimates.

Software Maintenance

Maintenance is the enigma of system development.It holds the software industry captive,tying up programming resources. Analyst and programmers spend far more time maintaining programs then they do writing them .

Maintenance can be classified as corrective, adaptive, or perfective. Corrective maintenance means repairing processing or performance failures or making changes because of previously uncorrected problems or false assumptions. Adaptive maintenance means changing the program function. Perfective maintenance means enhancing the performance or modifying the programs to respond to the user’s additional or changing needs. Of this types, more time and money are spent on perfective than on corrective and adaptive maintenance together.

Testing Technique

The purpose of system testing is to identify and correct errors in the candidate systems .As important as this phase is, it is one that is frequently compromised .Typically, the project is behind schedule or the user is eager to go directly to conversion.

In system testing, performance and acceptance standards are developed .Standard performance or service interruptions that result in system failure are checked during the test. The following performance criteria are used for system testing:

  1. Turnaround time is the elapsed time between the receipt of the input and the availability of the output .the objective used to decide on and evaluate all the factors that might have a bearing on the turnaround time for handling all applications.
  2. Backup relates to procedures to be used when the system is down .Backup plans might call for the use of another computer .The software for the candidate system must be tested for compatibility with a backup computer.
  3. File protection pertains to storing files in a separate area for protection against fire, flood or natural disaster .Plans should also be established for reconstructing files damaged through a hardware mal function.
  4. The human factor applies to the personnel of the candidate system. During system testing, lighting, air conditioning, noise, and other environmental factors are evaluated with the people’s desks, chairs, CRTs, etc. Hardware should be designed to match human comfort.

Database Used

Overview Of RDBMS


RDBMS is the  acronym for Relational Database Management System.

The concept of relational database is known since 1980’s but idea of Database Management System is definitely quite old. The most famous RDBMS packages are Oracle, Sybase and Informix.


What Is Database Management System?

A Database Management System is essentially a collection of interrelated data and a set of programs to access these data. This collection of data is called the Database. The primary objective of a DBMS is to retrieve and store database information. Database Systems support single user and multiuser   environment. While on one hand DBMS permits only one person to access the database at a given time, on the other hand RDBMS allows many users simultaneous access to the database.

A Database System consists of two parts namely, Database Management System and Database Application. Database Management System is the program that organizes and maintains the information whereas the Database Applications the program that lets us view, retrieve and update information stored in the DBMS.

DBMS has to protect database against unintentional changes that could be caused by users and applications. In case of multi-user system, it must be capable of notifying any database change to the other user.

Database Management System Offers The Following Services:


Data Definition:

It is a method of data definition & storage.

Data Maintenance:

It checks whether each record has field containing all information about one particular item. For example STDDG_GINFOMAST table all information about the general information about like Name, Address, Stream, Class etc. are recorded.

Data Manipulation:

It allows data in the Database to be inserted, updated, deleted & stored.

Data Display:           

This method helps in viewing data.

Data Integrity:                                        

This ensures the accuracy of the data.

Advantages Of Database System

  1. Redundancy can be controlled.
  2. Inconsistency can be avoided.
  3. Data can be shared.
  4. Standards can be enforced.

With centralized control of data, the DBA can ensure that all application standards are followed in the representation of data. The applicable standards may typically include any or all of the following: company standards, departmental standards, national standards or international standards etc. Standardizing stored data formats is particularly desirable as aid to data interchange or migration between systems.

  1. Security restrictions can be applied.

Data security refers to protection of data against accidental or intentional disclosure to unauthorized person or unauthorized modifications or destruction.

  1. Integrity constraints can be maintained.

Maintenance of integrity of a stored system is ensuring that the data stored in it remain-s “PURE”. Inconsistency between two entries representing the same “fact” is an example of lack of integrity. By integrity constraints the designers’ knowledge of interdependencies between different components of the real world is expressed.

  1. Conflicting requirements can be balanced.

In a large system individual users may have certain requirements which are conflicting in nature, as the approach of a database system is a centralized one, it is possible for a super user like DBA to provide an overall service that is the best for the corporation.


What Is Normalization?

Normalization is the process of efficiently organizing data in a database. There are two goals of the normalization process: eliminating redundant data (for example, storing the same data in more than one table) and ensuring data dependencies make sense (only storing related data in a table). Both of these are worthy goals as they reduce the amount of space a database consumes and ensure that data is logically stored.


The Normal Forms

The database community has developed a series of guidelines for ensuring that databases are normalized. These are referred to as normal forms and are numbered from one (the lowest form of normalization, referred to as first normal form or 1NF) through five (fifth normal form or 5NF). In practical applications, you’ll often see 1NF, 2NF, and 3NF along with the occasional 4NF. Fifth normal form is very rarely seen and won’t be discussed in this article.

First Normal Form (1nf)

First normal form (1NF) sets the very basic rules for an organized database:

  • Eliminate duplicative columns from the same table.
  • Create separate tables for each group of related data and identify each row with a unique column or set of columns (the primary key).





Second Normal Form (2nf)

Second normal form (2NF) further addresses the concept of removing duplicative data:

  • Meet all the requirements of the first normal form.
  • Remove subsets of data that apply to multiple rows of a table and place them in separate tables.
  • Create relationships between these new tables and their predecessors through the use of foreign keys.


Third Normal Form (3nf)

Third normal form (3NF) goes one large step further:

  • Meet all the requirements of the second normal form.
  • Remove columns that are not dependent upon the primary key.


Fourth Normal Form (4nf)

Finally, fourth normal form (4NF) has one additional requirement:

  • Meet all the requirements of the third normal form.
  • A relation is in 4NF if it has no multi-valued dependencies.

Remember, these normalization guidelines are cumulative. For a database to be in 2NF, it must first fulfil all the criteria of a 1NF database.

Concept Of Keys

Primary key: – 

The attribute or combination of attributes that uniquely identifies a row or record.

Foreign Key: –

An attribute or combination of attributes in a table whose value matches a  primary key in another table.  

Composite key: – 

A primary key that consists of two or more attributes is known as  composite key

Candidate key: –

A column in a table which has the ability to become a primary key.

Alternate Key: –

Any of the candidate keys that is not part of the primary key is called an   alternate key.

Secondary key: – 

Alternate of primary key.

Super key:

A super key is a combination of attributes that can be uniquely used to identify a database record.

Data Structures

Data Structures of the tables used in the project are described as follows:

  • customer
Field name Data type Length Decimals Constraints
slno int 10
name text
address text
cust_id text Primary key
cust_type text
conn_type text
  • account
Field name Data type Length Decimals Constraints
acc_no int 20 Primary key
cust_id text
phone_no text
conn_type text
trf_code text Foreign key
  • meter
Field name Data type Length Decimals Constraints
acc_no int 20 Foreign key
conn_type text
call int 5
data int 10
sms int 10
onetm_chrg float 6 2
  • tariff
Field name Data type Length Decimals Constraints
trf_code int 20 Primary key
conn_type text
mnthly_chrge float 6 2
fdat_usge int 10
fcal_usge int 10
fsms_usge int 10
dat_rate float 6 2
cal_rate float 6 2
sms_rate float 6 2
frtof_datusge text
unldat_usge text
  • bill
Field name Data type Length Decimals Constraints
acc_no int 20 Foreign key
bill_no text Primary key
rental float 6 2
one_time_charge float 6 2
usg_charge float 6 2
discounts float 6 2
ST float 6 2
LF float 6 2
total_charge float 6 2
amt_pay float 8 2
bill_prd text
bill_dt date
pmtdu_dt date
  • payment_details
Field name Data type Length Decimals Constraints
acc_no int 20
bill_no text Foreign key
prv_balance float 6 2
payment_rcv float 6 2
balance_amt float 6 2
adjustments float 6 2
current_bill_amt float 6 2
amount_payable float 6 2
  • transaction
Field name Data type Length Decimals Constraints
acc_no int 20
bill_no text Foreign key
ph_no text
amt_pay float 6 2
pay_mode text
amt_received float 6 2
receipt_no text
paid_on date
status text

Screen shots

Password creation frame:























Screenshot PNG

Screenshot PNG



User manual

Hardware and Software:


Before loading and running the application program you must have MySQL, Navicat Premium & Java  installed in your machine.

Loading the Project :

Perform the following steps to load the application on your machine:

Step 1:  

Copy the “TelephoneBillingSystem” folder to the C-drive of your machine.

Step 2:

Open Navicat Premium and set up a connection for mysql. To do this follow the steps:

  1. Click on file à New Connection and then select MySQL.
  2. Give the connection name as “MySQl”
  3. Set the user-name to “root” and password to “jaan”.

Then create a database with name “Bill” and then import the tables (.sql files) from within the “Database” folder in the TelephoneBillingSystem .

To import a table follow the steps:

  1. Double-click on the “Bill” database in navicat and then right click on tables.
  2. There click on the “Execute sql files”
  3. And then navigate the .sql files one by one from the appropriate folder.


Step 3:

After the database tables are imported, the next type is to set the DSN connection in your machine. For this go through the following steps:

  1. On “ Control panel ” go to “Administrative tools” and open “Data Sources(ODBC)”.
  1. In the Data Sources dialog box, click on Add and select “ MySQL ODBC Driver ”.The value for each label are given below:

Data Source Name: Bill

Decription: Telephone billing system

TCP/IP Server: localhost ;  Port: 3306

User: root

Password: jaan

Database: Select the database “ bill ”

Test the connection. If test is successful then click on OK. After these steps , the application program is ready to access the database.

To Run The Project:

After the above steps done correctly ,  from TeleBill folder in TelephoneBillingSystem, run the TelephoneBillingSystem.jar file or you can also create a shortcut of the jar file to the desktop for convenience.

Future Scope

After implementing the system the project will be great scope of application. Now a days in all the organization the work culture has totally changed. The entire application of the system targets to connect the office as paperless office .The table should be converted to computer terminals and all officers are to be considered as the local workstations. In the near future all the systems will be manipulated by the computer system. Our application will be smart and modern.

In the general service many problems arise when billing and databases are stored in black and white. But in the near future the system will require fulfilling various operations. Day to day the databases will increase very rapidly in the Telephone Exchange. Therefore it is essential to maintain the administration in such a way that all the data storage and other administrative tasks are accurate and safe.

The project scope is very high. All promises are very conceptual and henceforth the result is absolute.


In this project we have tried our best to make a user friendly software .This software can be handled by any person who has little bit of idea of computers. In this software we have tried to meet most of the requirements of the present telephone billing services  including maintaining details of customers , their accounts and other informations.

We also keep provision to alter the database of customer details and  records of the accounts . We have given a professional look to the reports of the services of our system using data-report . In our effort we have tried to make our software all the more user friendly but there may some features which we would like to include  in our continuous attempts.

Share This Post!


Recent Posts