Project Report On Telephone Directory System
Project Report On Telephone Directory System
UNIVERSITY, JAIPUR
Project Report
On
“Telephone Directory
System”
1
Submitted By: Guided
To:
Birendra k. Rathor Bright
KESWANI M.C.A. (iv sem)
(HOD CA Dept..)
CERTIFICATE
This is to certify that this report embodies the original
work done by Birendra k. Rathor during this project
submission as a partial fulfilment of the requirement for
the System Design Project of Masters of Computer
Application IV Semester, of the Suresh Gyan Vihar
University, Jaipur
Bright Keswani
(HOD of M.C.A Dept.)
Suresh Gyan Vihar Universe
2
ACKNOWLEDGEMENT
The satisfaction that accompanies that the successful
completion of any task would be incomplete without the
mention of people whose ceaseless cooperation made it
possible, whose constant guidance and encouragement
crown all efforts with success.
We are grateful to our project guide Mr. Bright Keswani
for the guidance, inspiration and constructive suggestions
that helpful us in the preparation of this project.
Birendra
k.Rathor
MCA (4th sem)
3
Table of Contents
Chapter 1:-
1.1 Introduction 5
1.2 Objective 5
1.3. Application 6
1.4. Feature 6
1.5. DFD 7
1.5. Overview 8
Chapter 2:-
2.1. System Description 9
2.2. Block Diagram 11
Chapter 3:-
3.1. Technologies Used 13
3.2. Basic Components 16
3.3 . Liquid Crystal Display
18
4
Chapter 4:-
4.1. Feasibility Study 19
Chapter 5:-
5.1. Data Tables 21
Chapter 6:-
6.1. Cost estimation 23
6.2. Conclusion 26
CHAPTER: 1
1.1 Introduction
A telephone directory (also called a telephone book and phone
book) is a listing of telephone subscribers in a geographical area
or subscribers to services provided by the organization that
publishes the directory. It consists of the name as well as the
telephone number of people added as contact in the directory.
Name and telephone number are displayed in alphabetical order.
1.2 Content
Subscriber names are generally listed in alphabetical order, together with their
postal or street address and telephone number. In principle every subscriber in the
geographical coverage area is listed, but subscribers may request the exclusion of
their number from the directory, often for a fee. Their number is then said to be
"unlisted" American English, "ex-directory" English or "private" Australia and New
5
Zealand. Practices as to the display of Caller-ID on calls made by unlisted
subscribers vary by jurisdiction. Sometimes the Caller-ID on outbound calls is not
shown; in other jurisdictions unlisted numbers are displayed unless the caller dials
a blocking code; in others the customer may request automatic blocking by the
telephone company. In the US, under current rules and practices, mobile phone and
Voice over IP listings are not included in telephone directories. Efforts to create
cellular directories have met stiff opposition from several fronts, including a
significant percentage of subscribers who seek to avoid telemarketers.In 1991 the
U.S. Supreme Court ruled (in Feist v. Rural) that telephone companies do not have
a copyright on telephone listings, because copyright protects creativity and not the
mere labor of collecting existing information. Within the geographical reach of the
Court, the Feist ruling has resulted in the availability of many innovative telephone
directory services on CD-ROM and the World Wide Web.
1.3 Objectives
We are determined to design a system which is intended in
saving name and number of desired persons. The main objective
of telephone directory is to add, search, edit and delete various
contacts.
1.4 Applications
Telephone directory has been frequently in use in our daily life.
Wecommonly see telephone directory installed in PSTN telephone
sets, mobile phone etc. Telephone Directory application provides
the ability to search, view, and manage entries in a directory.
Mobile Directory application should allow any subscriber with any
type of mobile device that supports GPRS to instantly search
telephone contact number of any individual . The search result
data loads directly to the mobile screen and gives the user
option :-
6
CALL,
SAVE,
VIEW,
SEND TO FRND or
1.5 Features:-
Secure
Easy to use
Reliable and accurate
No need of remember
7
1.7 Overview of Project :-
The report is organized in chapters; each dedicated to explaining
the project in easier way. Although detailed information is not
provided due to security reasons of the project and its replication
protection, but the chapters are brief enough to convey the work
done. In the chapter, a brief introduction of the project is
presented. The second deals with the system description of the
project where we have describe the block diagram of the project
and hardware and software portion of the project. In the third , we
have described the detail information of project where function of
each hardware components and software portion is described.
Fourth deals with observation. Fifth deals with limitation and
8
further implementation of project. And finally it gives conclusion
to the project.
CHAPTER 2
2.2 Diagram:-
9
2.2 Block Diagram :-
10
2.3 Description of the block
diagram :-
The above block diagram describes the project architecture.
From the block diagram we can understand the flow of the
system. As shown above first of all number and name are entered
via keypad .These data are displayed regularly in the lcd
connected to a port of microcontroller.These contact of the
11
individual can be stored in the external memory (EEPROM). As
further these records can be further manipulated by retrieving
them from the EEPROM. These contacts can be edited, deleted,
also searched as required by the user
a. Software part
b. Hardware part
Software part ;-
a. C-programming
b. SDCC
c. EZ-Downloader
e. Proteus
12
a. Microcontroller
b.LCD display
c. EEPROM
d.Keypad
CHAPTER 3
3.1 TECHNOLOGIES USED
Front end as:
HTML
Server:
13
Apache tomcat 6.0
Database:
Microsoft access
Querying language:
Sql
Microcontroller (AT89c51)
Features :-
14
6. 0n-chip oscillator and clock circuitry.
LCD is a Liquid Crystal Display. A LCD is a thin, flat panel used for
electronically displaying information such as text, images, and
moving pictures. Its uses include monitors for computers,
televisions, instrument panels, and other devices ranging from
aircraft cockpit displays, to every-day consumer devices such as
video players, gaming devices, clocks, watches, calculators, and
telephones.
15
Table of LCD pin:-
16
memory technology and is compatible with the industry-standard
80C51 instruction set and pin out.
Microcontroller Board:-
17
initialized with following control codes as shown in the table.
When data bus of LCD is provided with 8-bit data then certain
output is generated.
Limitations:-
18
This project on “TELEPHONE DIRECTORY” has following
limitations
• While storing the flipped char in the array name[rr] all the
flipped characters
were also stored so a new name1[tt] array was made and the last
value stored
19
Further Implementation:- This architecture is a basic backbone
for other electronics projects.
CHAPTER 4
FEASIBILITY STUDY
4.1 ECONOMIC FEASIBILITY:-
20
Technical feasibility centers on the existing manual system of the
test management process and to what extent it can support the
system. According to feasibility analysis procedure the technical
feasibility of the system is analyzed and the technical
requirements such as software facilities, procedure, inputs are
identified. It is also one of the important phases of the system
development activities. The system offers greater levels of user
friendliness combined with greater processing speed. Therefore,
the cost of maintenance can be reduced. Since,processing speed
is very high and the work is reduced in the maintenance point of
view management convince that the project is operationally
feasible.
21
CHAPTER 5
TABLE DESIGN
CHAPTER 6
6.1 Cost estimation:-
24
Software cost estimation is the process of predicting the effort required to develop a software
system. Many estimation models have been proposed over the last 30 years. This paper provides
a general overview of software cost estimation methods including the recent advances in the
field. As a number of these models rely on a software size estimate as input, we first provide an
overview of common size metrics. We then highlight the cost estimation models that have been
proposed and used successfully. Models may be classified into 2 major categories: algorithmic
and non-algorithmic. Each has its own strengths and weaknesses. A key factor in selecting a cost
estimation model is the accuracy of its estimates. Unfortunately, despite the large body of
experience with estimation models, the accuracy of these models is not satisfactory. The paper
includes comment on the performance of the estimation models .
Line of Code: This is the number of lines of the delivered source code of the software,
excluding
comments and blank lines and is commonly known as LOC [10]. Although LOC is programming
language dependent, it is the most widely used software size metric. Most models relate this
measurement to the software cost. However, exact LOC can only be obtained after the project
has
completed. Estimating the code size of a program before it is actually built is almost as hard as
estimating the cost of the program.
A typical method for estimating the code size is to use experts' judgement together with a
technique called PERT [3]. It involves experts' judgment of three possible code-sizes: Sl, the
lowest possible size; Sh the highest possible size; and Sm, the most likely size. The estimate of the
code-size S is computed as:
S=S1+Sn+Sm/6
Cost estimation
There are two major types of cost estimation methods: algorithmic and non-algorithmic.
Algorithmic models vary widely in mathematical sophistication. Some are based on simple
arithmetic formulas using such summary statistics as means and standard deviations [9]. Others
are based on regression models [38] and differential equations [30]. To improve the accuracy of
algorithmic models, there is a need to adjust or calibrate the model to local circumstances. These
models cannot be used off-the-shelf. Even with calibration the accuracy can be quite mixed.
We first give an overview of non-algorithmic methods.
Non-algorithmic Methods
Analogy costing:
This method requires one or more completed projects that are similar to the
new project and derives the estimation through reasoning by analogy using the actual costs of
previous projects. Estimation by analogy can be done either at the total project level or at
25
subsystem level. The total project level has the advantage that all cost components of the system
will be considered while the subsystem level has the advantage of providing a more detailed
assessment of the similarities and differences between the new project and the completed
projects. The strength of this method is that the estimate is based on actual project experience.
However, it is not clear to what extend the previous project is actually representative of the
constraints, environment and functions to be performed by the new system. Positive results and a
definition of project similarity in term of features were reported in [33].
Expert judgment: :-
This method involves consulting one or more experts. The experts provide
estimates using their own methods and experience. Expert-consensus mechanisms such as Delphi
technique or PERT will be used to resolve the inconsistencies in the estimates. The Delphi
technique works as follows:
1) The coordinator presents each expert with a specification and a form to record estimates.
2) Each expert fills in the form individually (without discussing with others) and is allowed
to ask the coordinator questions.
3) The coordinator prepares a summary of all estimates from the experts (including mean or
median) on a form requesting another iteration of the experts’ estimates and the rationale
for the estimates.
4) Repeat steps 2)-3) as many rounds as appropriate.
A modification of the Delphi technique proposed by Boehm and Fahquhar [5] seems to be
more effective: Before the estimation, a group meeting involving the coordinator and experts is
arranged to discuss the estimation issues. In step 3), the experts do not need to give any rationale
for the estimates. Instead, after each round of estimation, the coordinator calls a meeting to have
experts discussing those points where their estimates varied widely.
Parkinson: Using Parkinson's principle “work expands to fill the available volume” [28], the
cost is determined (not estimated) by the available resources rather than based on an objective
assessment. If the software has to be delivered in 12 months and 5 people are available, the effort
is estimated to be 60 person-months. Although it sometimes gives good estimation, this method
is not recommended as it may provide very unrealistic estimates. Also, this method does not
promote good software engineering practice.
Price-to-win:
The software cost is estimated to be the best price to win the project. The
estimation is based on the customer's budget instead of the software functionality. For example,
if a reasonable estimation for a project costs 100 person-months but the customer can only afford
person-months, it is common that the estimator is asked to modify the estimation to fit 60
personmonths’ effort in order to win the project. This is again not a good practice since it is very
likely to cause a bad delay of delivery or force the development team to work overtime.
Bottom-up:
In this approach, each component of the software system is separately estimated and
the results aggregated to produce an estimate for the overall system. The requirement for this
approach is that an initial design must be in place that indicates how the system is decomposed
26
into different components.
Top-down:
This approach is the opposite of the bottom-up method. An overall cost estimate for
the system is derived from global properties, using either algorithmic or non-algorithmic
methods. The total cost can then be split up among the various components. This approach is
more suitable for cost estimation at the early stage.
Algorithmic methods:-
The algorithmic methods are based on mathematical models that produce cost estimate as a
function of a number of variables, which are considered to be the major cost factors. Any
algorithmic model has the form:
Effort = f(x1, x2, …, xn)
where {x1, x2, …, xn} denote the cost factors. The existing algorithmic methods differ in two
aspects: the selection of cost factors, and the form of the function f. We will first discuss the cost
factors used in these models, then characterize the models according to the form of the functions
and whether the models are analytical or empirical.
Cost factors:-
Besides the software size, there are many other cost factors. The most comprehensive set of cost
factors are proposed and used by Boehm et al in the COCOMO II model [6]. These cost factors
can be divided into four types:
Product factors: required reliability; product complexity; database size used; required
reusability; documentation match to life-cycle needs;
Computer factors: execution time constraint; main storage constraint; computer turnaround
constraints; platform volatility;
Project factors: multisite development; use of software tool; required development schedule.
The above factors are not necessarily independent, and most of them are hard to quantify. In
many models, some of the factors appear in combined form and some are simply ignored. Also,
some factors take discrete values, resulting in an estimation function with a piece-wise form.
6.1 CONCLUSION;-
The aim of this project was to build an Telephone directory
through which allowed to add,search, delete contacts of individual
27
andaccess toexternal memorydevice. At the completion of this
project we are able to add, search and delete contacts hence the
project is completed successfully. A approximate model of
Telephone Directory was assembled using keypad, lcd,
microcontroller and EEPROM.
28