0% found this document useful (0 votes)
2K views

Project of Telephone Directory

Project of Telephone Directory

Uploaded by

Shree Cyberia
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2K views

Project of Telephone Directory

Project of Telephone Directory

Uploaded by

Shree Cyberia
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 15

ST.

XAVIER’S COLLEGE
RANCHI
Project Report On
“Telephone Directory System”
1

Submitted By: Guided To:
RAUSHAN KUMAR
INTERMEDIATE OF SCIENCE
CERTIFICATE

This is to certify that this report embodies the


 

original w o r k d o n e b y RAUSHAN
KUMAR during this project submission as a
partial fulfillment of the requirement for
the  System Design 
Project of Masters of Computer Application I.SC
II, of the ST. XAVIER’S COLLEGE ,
RANCHI
ACKNOWLEDGEMENT
 

The satisfaction  that  accompanies  that the succe


ssful completion of any task would be incomplete
without the mention of people whose ceaseless
cooperation made it
possible, whose constant guidance and encourageme
nt crown all efforts with success. We are grateful to
our project guide

Mr. CHANCHAL SIR

for the guidance, inspiration and constructive suggestions


that helpful us in the preparation of this project.
 
Table of Contents
Chapter 1:-
1.1 Introduction 
51.2 Objective 
51.3. Application 
61.4. Feature 
61.5. DFD 
71.5. Overview 8
Chapter 2:-
2.1. System Description 
92.2. Block Diagram 11
Chapter 3:-
 
3.1. Technologies Used 13
3.2 Basic Components 16 
3.3 Liquid Crystal Display18

Chapter 4:-
 4.1. Feasibility Study 19
Chapter 5:-
5.1. Data Tables 21
Chapter 6:-
6.1.
Cost estimation
236.2. Conclusion 26
CHAPTER 1
Introduction
A telephone directory (also called a telephone book and

phonebook) is a listing of telephone subscribers in geographical

areaor subscribers  t o   s e r v i c e s   p r o v i d e d   b y   t h e   o r g a n i z a

tion thatpublishes the directory. It consists of the

n a m e a s w e l l a s t h e telephone number of people added

a s c o n t a c t i n t h e d i r e c t o r y . Name and telephone number are

displayed in alphabetical order.


Content
Subscriber names are generally listed in alphabeti cal 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, oft en for
a fee. Their number is then said to be "unlisted" American English, "ex-
directory"
English or
"private"Australia and New Zealand.   P r a c t i c e s a s t o t h e d i s p l a y
o f   Caller-IDo n   c a l l s   m a d e   b y   u n l i s t e d subscribers vary by
jurisdiction. Sometimes the Caller-IDon 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 automati c blocking by the
telephone company. In the US, under current rules and practices, mobile
phone and Voice over IP listi ngs are not included in telephone
directories. Eff orts to
createc e l l u l a r   d i r e c t o r i e s   h a v e   m e t   s ti ff   o p p o s i t o n   f r o m   s e v e r
a l   f r o n t s ,   i n c l u d i n g   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 i
n t e n d e d   i n saving name and number of desired persons.
The main objective of telephone directory is to add, search, edit
and delete various contacts.
Program On Telephone Directory System

//Telephone Directory
#include <iostream.h>
#include <fstream.h>
#include <string.h>
#include <iomanip.h>
#include <conio.h>

class phoneBook{
char name[20],phno[15];
public:
void getdata();
void showdata();
char *getname(){ return name; }
char *getphno(){ return phno; }
void update(char *nm,char *telno){
strcpy(name,nm);
strcpy(phno,telno);
}
};

void phoneBook :: getdata(){


cout<<"\nEnter Name : ";
cin>>name;
cout<<"Enter Phone No. : ";
cin>>phno;
}

void phoneBook :: showdata(){


cout<<"\n";
cout<<setw(20)<<name;
cout<<setw(15)<<phno;
}

void main(){
phoneBook rec;
fstream file;
file.open("d:\\phone.dat", ios::ate | ios::in | ios::out | ios::binary);
char ch,nm[20],telno[6];
int choice,found=0;
while(1){
clrscr();
cout<<"\n*****Phone Book*****\n";
cout<<"1) Add New Record\n";
cout<<"2) Display All Records\n";
cout<<"3) Search Telephone No.\n";
cout<<"4) Search Person Name\n";
cout<<"5) Update Telephone No.\n";
cout<<"6) Exit\n";
cout<<"Choose your choice : ";
cin>>choice;
switch(choice){
case 1 : //New Record
rec.getdata();
cin.get(ch);
file.write(( char *) &rec, sizeof(rec));
break;

case 2 : //Display All Records


file.seekg(0,ios::beg);
cout<<"\n\nRecords in Phone Book\n";
while(file){
file.read((char *) &rec, sizeof(rec));
if(!file.eof())
rec.showdata();
}
file.clear();
getch();
break;

case 3 : //Search Tel. no. when person name is known.


cout<<"\n\nEnter Name : ";
cin>>nm;
file.seekg(0,ios::beg);
found=0;
while(file.read((char *) &rec, sizeof(rec)))
{
if(strcmp(nm,rec.getname())==0)
{
found=1;
rec.showdata();
}
}
file.clear();
if(found==0)
cout<<"\n\n---Record Not found---\n";
getch();
break;

case 4 : //Search name on basis of tel. no


cout<<"\n\nEnter Telephone No : ";
cin>>telno;
file.seekg(0,ios::beg);
found=0;
while(file.read((char *) &rec, sizeof(rec)))
{
if(strcmp(telno,rec.getphno())==0)
{
found=1;
rec.showdata();
}
}
file.clear();
if(found==0)
cout<<"\n\n---Record Not found---\n";
getch();
break;

case 5 : //Update Telephone No.


cout<<"\n\nEnter Name : ";
cin>>nm;
file.seekg(0,ios::beg);
found=0;
int cnt=0;
while(file.read((char *) &rec, sizeof(rec)))
{
cnt++;
if(strcmp(nm,rec.getname())==0)
{
found=1;
break;
}
}
file.clear();
if(found==0)
cout<<"\n\n---Record Not found---\n";
else
{
int location = (cnt-1) * sizeof(rec);
cin.get(ch);
if(file.eof())
file.clear();

cout<<"Enter New Telephone No : ";


cin>>telno;
file.seekp(location);
rec.update(nm,telno);
file.write((char *) &rec, sizeof(rec));
file.flush();
}
break;
case 6 : gotoout;
}
}
out:
file.close();
}[/Code]

 
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 detail reassessment 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 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 fi ll 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  p e r s o n - m o n t h s , i t
i s c o m m o n t h a t t h e e s ti m a t o r i s a s k e d t o m o d i f y t h e
e s ti m a ti o n t o fi t 6 0  person months’ 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(
 x
1
,
 x
2
, …,
 x
n
)where {
 x
1
,
 x
2
, …,
 x
n
}
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 turn around
constraints; platform volatility;
Personnel factors
: analyst capability; application experience; programming capability; platform
experience; language and tool experience; personnel continuity;
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.
CONCLUSION;-
The aim of this project was to build an Telephone di
r e c t o r y through which allowed to add, search, delete contacts of
individual
27
 
andaccess toexternal memorydevice. At the completion of 
t h i s project we are able to add, search and delete contacts
hence
thep r o j e c t   i s   c o m p l e t e d   s u c c e s s f u l l y .   A   a p p r o x i m
ate model of   T e l e p h o n e   D i r e c t o r y   w a s   a s
e m b l e d   u s i n g   k e y p a d ,   l c d , microcontroller and
EEPROM.

You might also like