100% found this document useful (1 vote)
544 views77 pages

City Guide Complete

CITY GUIDE

Uploaded by

maliha riaz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
544 views77 pages

City Guide Complete

CITY GUIDE

Uploaded by

maliha riaz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 77

1.

1 MOTIVATION
The project aims to show how the City Guide benefits people. The person
overlooks all the time to know accurate information about the city what he/she wants.
Presently if the person wants to know information about the city he/she needs to make a
call to service providers and interact with them to get the information and it is manual
process. By implementing this project user can know the accurate required information in
the form of text message or voice. By using this method user can get the information
quickly.

1.2 PROBLEM DEFINITION


“An interactive service of voice based City Guide” gives information to the users
and maintains the addresses of Hospitals, Banks, Theatres, Restaurants, Shopping malls,
ATM’s, Libraries etc., The address and all other information that are to be kept in a
database and also to be retrieved easily when the users require the information.

Actually the process going on here but they need huge amount to maintain
employees, systems, and servers etc., to provide information to the users. This is
completely manual process.

In the current system it is done manually. These operations are time consuming
process. It includes employees, money. The Voice based City Guide is to eliminate the
huge cost by converting it into web based computer process. The web based application
is completely client-server oriented for processing.

1.3 OBJECTIVE OF PROJECT


The main objective of this project is to design a voice based application that
facilitates to navigate people in finding a particular location or their destination on their
visit to a new place or a city. The application is deployed on the server user can access
anytime and anywhere.

1
1.4 LIMITATIONS OF THE PROPOSED SYSTEM

The size of the database increases day-by-day, increasing the load on the database
back up and data maintenance activity.

1.5 ORGANIZATION OF DOCUMENTATION


The proposed dissertation consists of ten chapters including Introduction and
Conclusion.

 Chapter 1: The present chapter discusses about the motivation, problem


definition, objective and limitations of the proposed system.
 Chapter 2: This chapter outlines the literature survey. The disadvantages of the
existing systems and an overview of proposed system are discussed.
 Chapter 3: This chapter outlines the software and hardware requirements
 Chapter 4: This chapter describes analysis, design and software requirement
specification.
 Chapter 5: This chapter describes the implementation of modules with software’s
used.
 Chapter 6: In this chapter various testing strategies and techniques are explained
along with testing and validation of proposed system.
 Chapter 7: This chapter describes Screen shots/ Results of the project.
 Chapter 8: Concludes the thesis and gives the directions for future scope.
 Chapter 9: This chapter describes References/Bibliography.
 Chapter 10: This chapter outlines the appendices (if any-standards, sample code).

2.1 INTRODUCTION:

The developer community has an opportunity to take advantage of the huge voice
applications market. Standards-based technologies are vital to developers in order to

2
ensure portability across vendors and to leverage existing Internet infrastructure.
VoiceXML is well on its way to becoming the standard that fulfills these needs. The
VoiceXML Forum is the industry organization that represents the VoiceXML user
community. The World Wide Consortium (W3C) accepted the VoiceXML 1.0
Specification as the "candidate recommendation." The 2.0 Specification is in the
preliminary draft stage.

2.2 EXISTING SYSTEM

In the current scenario the people who want to know the relevant information
about the city or a place, either takes the help of neighbors or they need to search the
internet and get the information about a city or place.

2.3 DISADVANTAGES OF EXISTING SYSTEM

 In IVR system user has to remember many numbers for several menus.
 It is a time consuming process.
 Internet is not flexible to everyone in order to know relevant information.
 Situation where we don’t have any familiar people will be problematic.

2.4 PROPOSED SYSTEM

The proposed voice based system make the work easy for users. This system
provides feasible solution for users and provides required information about the city
such as theatres, restaurants, shopping malls, hospitals, parks, etc..., through this voice
based system. As per the user’s requirement, requested information will be provided
through voice response over a call or a text message.

In order to avoid these problems in the existing system, the new system should
provide a facility to a user can easily interact with this voice based service. User can
know the information about the city, there’s no need to approach internet every time, we
are going integrate all the information of city, places information in to one application
such that user can know all information from our application.

3
2.5 CONCLUSION
Voice XML is an existing new standard with support from the largest companies
in the computing and telecommunications industries voice XML has been proposed as a
standard language to develop internet speech applications. Besides, the distributed
architecture of voice XML documents makes speech application possible to be shared in
the internet.

4
3.1 INTRODUCTION

A Software Requirements Specification (SRS) is a description of a particular software


product, program or set of programs that performs a set of functions in a target environment
(IEEE Std. 830-1993).

The Main purpose for preparing this document is to give a general insight to the
analysis and requirements of the existing system or situation and for determining the
Operating characteristic of the System.

Requirements specifying set of features that the system must have. A functional
requirements is a specification of a function that the system must support, where as a
nonfunctional requirements is a constraint on the operation of the system that is not
related directly to function if the system.

Nonfunctional requirements may include using specific hardware platform


for the system, security requirements, how the system should deal with failure and
faults and how to provide backward capability with an old system that the client is
unwilling to work.

3.2 Non Functional Requirements


Usability
The controls that are used in the content production management system are user
friendly. The controls used by the users and administrators are easy to manage.

Reliability

The system should be accessible by only the respective admin who are working
in that college. An authorized person who will be responsible for the data will maintain
master date and parameters. The data accessing techniques kept are transparent to the
end user. Users of the system are to all the end users. Data definition can be done only
by the administrators all the data storage should be up to date.

Performance
5
In order to get the high performance we need the server that requests at a time to
process and also we need a high speed internet connection.

Supportability

This should be able to support any number of contents can be deployed to the
particular zones. In similar at the same time administrator and users can proceed with
their work.

3.2.1 User Requirement

The needs, tasks and goals of the user are described in the user requirements. The
user requirements give satisfaction to the user and the acceptable level of the user
performance. The voice based application of the proposed system was developed which
was discussed in the literature review but the system has some problems in development,
maintenance and scalability.

The proposed system can be accessed by number of users from anywhere in the
world instead the internet access is must without any bandwidth problem. The other user
requirements in the proposed system are about the storage and retrieving of the data like
sending of feedback from the user to the instructor, login details and user registration
details.

3.2.2 Software Requirements

Client side:
Technology : Voice XML

Server side:
Front End:
Operating System : Windows 7
Tools : JDBC, Eclipse Galileo
Technology : J2SE, J2EE, VXML

Back End:
Database : Oracle 10g

6
Server : Tomcat, VOXEO Prophecy server 11.6

3.2.3 Hardware Requirements

Client side
Technology : Phone

Server Side:
Processor : Intel Pentium IV 2.66GHz
Hard disk : 40GB
Cache : 512KB
RAM : 1GB or more

3.3 SOFTWARES USED

3.3.1 About JAVA:

Now-a-days all are familiar with Internet, the worldwide network of computers,
which connects together thousands of computer all over the world. These network
connections are increasing day by day in a rapid rate, so the network traffic is increasing
at a pulse rate. Computers connected to the net are from many different manufacturers,
running on different operating systems and they differ in architecture, computing power
and capacity.

By considering this point SUN Microsystems Corporation felt the need for a new
programming language suitable for this heterogeneous Environment and java was the
solution. This breaks barriers between different computers, chips and operating systems.
Using java your application become compatible with all operating systems.

Features of JAVA:

7
 Simple
 Secure
 Portable
 Object oriented
 Robust
 Multithreaded

Simple: It is simple for professional programmer to learn & they can use it effectively. If
we already know object oriented programming, then learning java is very easy. It inherits
syntax from c & object oriented features from c++, so if the user knows c\c++ then it will
be an easy way to do effective java programming.

Secure: As we know many people are affected by viral infection when they download an
executable file or program. Rather than, virus programs we have malicious programs that
can gather private information, such as credit card number, bank account balances &
passwords by searching the contents of your computers local file system. Java has a
better answer for these effects i.e., “FIREWALL” between networked application and
your computer.

Portable: As already we have discussed about compatibility of operating system,


computers, chips. In Internet the programs have to be dynamically downloaded to all the
various types of platforms. For this purpose java program will generate a byte code
(which is not a executable code). Byte code is a highly optimized set of instructions
designed to be executed by java run system, which is called as JVM (Java Virtual
Machine).

Object-Oriented: Java is purely object oriented. The object model in java is simple and
easy to extend, while simple types, such as integers, are kept as high-performance non-
objects.

Robust: The ability to create robust programs was given a high priority in the design of
java. To gain reliability, java restricts you in a few key areas, to force you to find your
mistakes early in program development. At the same time, java frees you from having to
worry about many of the most common causes of programming errors. Because java is a

8
strictly typed language, it checks your code at Compile time. Java is robust for two
reasons; they are Memory management & mishandled exceptional task in traditional
programming environments.

What Is JDBC?

JDBC is a Java API for executing SQL statements.(JDBC is often thought of as


“Java Database Connectivity”) .It consists of a set of classes and interfaces written in the
java programming language.

Using JDBC, it is easy to send SQL statements to virtually any relational


database. In the other words, with the JDBC API, it is not necessary to write to one
program to access a Sybase database, another program to access Informix database,
another program to access Oracle database, and so on. One can write a single program
using the JDBC API, and the program will be able to send SQL statements to the
appropriate database. The combinations of JAVA and JDBC let’s a programmer writes it
once and run it anywhere.

Java, being robust, secures, easy to use, easy to understand, and automatically
downloadable on a network, is an excellent language basis for database applications.

JDBC extends what can be done in Java. For example, with Java and the JDBC
API, it is possible to publish a web page, which contains an applet that uses information
obtained from a remote database. With more and more Programmers using the Java
Programming language, the need for easy database access from java is continuing to grow.

MIS managers like the combination of Java and JDBC because it makes
disseminating information easy and economical, Businesses can continue to use their
installed database and access information even if it is stored on different database
management systems. Development time for new application is short. A programmer can
write an application or an update once, put it on the server, and everybody has access to
the latest version. A Low Level API and a Base for Higher-level APIs.

JDBC is a “Low level “ interface that means that it is used to invoke SQL
commands directly, it works very well in this capacity and is easier to use than other

9
database connectivity APIs, but it was designed to be a base upon which to build higher
level interfaces and tools. A high level interface is “user-friendly”, using a more
understandable or more convenient API that is translated behind the scenes into a low
level interface such as JDBC. At the time of writing, two kinds of higher level APIs are
under development of top of JDBC.

1) An embedded SQL for Java. At least one vendor plan to build this DBMS implement
SQL, a language designed specifically for use with databases. JDBC requires that the
SQL statements be passed as Strings to Java methods. The embedded SQL preprocessor
then translates this JAVA/SQL mix into Java with JDBC calls.

2) A direct mapping of relational database tables to Java classes. In this


“object/relational” mapping, each row of the table becomes an instance of that class, and
each column value corresponds to an attribute of that instance. Programmers can then
operate.

ODBC is hard to learn. It mixes simple and advanced features together, and it has
complex options even for simple queries. JDBC, on the other hand, was designed to keep
simple things simple while allowing more advanced capabilities where required.

A Java API like JDBC is needed in order to enable a “Pure Java” solution. When
ODBC is used, the ODBC Driver Manager and drivers must be manually installed on
every client machine. When the JDBC driver is written completely in Java, however,
JDBC code is automatically installable, portable, and secure on all platforms from
network computers to mainframes.

JDBC Driver Types

The JDBC drivers that we are aware of this time generally fit into one of four
categories:

JDBC-ODBC Bridge plus ODBC Driver:

The Java Soft bridge product provides JDBC access via ODBC drivers. As a
result, this kind of driver is most appropriate on a corporate network where client
installations are not a major problem, or for application server code written in Java in
three-tier architecture.

10
Native-API Partly JAVA Driver:

This kind of driver converts JDBC calls into calls on the Client API for Oracle,
Sybase, Informix and DB2.

JDBC-Net Pure JAVA Driver:

This driver translates JDBC calls into a DBMS-independent net protocol, which is
then translated to a DBMS-protocol by a server. The specific protocol used depends on
the vendor.

Native-Protocol Pure JAVA Driver:

This kind of driver converts JDBC calls directly into the network protocol used by
DBMS. Since many of these protocols are proprietary, the database vendors themselves
will be the primary source.

JAVA Database Connection:

Java is an ideal language for persistent data storage. By using class inheritance
and data encapsulation, a Java application developed to work with one type of data
storage can be ported or extended to work with another. An example is an application
currently working with an RDBMS (Relational Database Management System) that is
extended to use RMI (Remote Method Invocation) to store data in a file.

A common misconception with Java is that database access can occur only with
JDBC (Java Database Connectivity) API. Although, the JDBC provides a handy set of
lower level classes to manage database connections and transactions; it is not a
mandatory component. Msql Java uses the Socket classes included in the java.net package
and the data input and output stream classes included in the java.io package. If you wanted to,
you could as easily connect to an Msql database using MsqlJava instead of the msql JDBC driver.

Additional efforts are underway to establish a standard Java class API to interface with
object DBMS’s (Database Management Systems). Companies are also creating their own
optimized data access classes, such as Microsoft’s DAO (Data Access Object) classes.

As an alternative to persistent storage of data in database management systems,


Java can also be used to store data to files using object serialization. The JDK contained

11
core classes grouped together into packages, two of these (java.net and java.io) provide
the classes necessary to connect to a database and send and receive data. However, most
of us do not want to create a socket and a stream data to and from it to implement a
simple transaction.

The JDBC consists of a basic set of interfaces and a Driver Manager class used as
the basis for several drivers. Drivers provide the functionality specific to a database or
database middleware layer.

Certain limitations became immediately apparent when using the JDBC. First; the
JDBC-ODBC Bridge used native method calls and a DLL (Dynamic Link Library) to
connect to a database, prohibiting its use in applets accessible through the Internet.
Because of applet security issues, the JDBC limits network connectivity to the same host
from which the applet was downloaded. For use with an applet, databases must be
installed on the same server as the HTTP server – a potential security risk. A workaround
is to have the driver access a middleware layer, which in turn accesses a database, which
located elsewhere. Several companies have produced this type of drivers.

As a handy way to explain the usefulness of the Database Metadata interface and
to provide a good first step for beginning to work with data access in Java, the Java
application was created to work with the JDBC-ODBC Bridge. This tool takes five
parameters: the ODBC database name as defined with the ODBC Administrator, the
username, the password (sorry the password is not encrypted), the information category,
and the information category option. Among the options the existing tool can provide is
information about the database, its procedures, tables’ columns and transactions.

The JDK1.1 documentation contains a list of the methods and variables for use
with the Database Metadata interface, which are too numerous to list here. Use the JDK
documentation to modify the tool to suit your needs or to have a little fun with some very
simple coding that provides very useful results.

JAVA Server Page (JSP)

12
Java Server Pages™ (JSP) is a new technology for web application development
that has received a great deal of attention since it was first announced.

Why is JSP so exciting?

1. JSP is Java-based, and Java is well-suited for enterprise computing.

In fact, JSP is a key part of the Java 2 Enterprise Edition (J2EE) platform and can take
advantage of the many Java Enterprise libraries, such as JDBC, JNDI, and Enterprise
Java Beans.

2. JSP supports a powerful model for developing web applications that separates
presentation from processing.

JSP ARCHITECTURE

In the process of dynamic content generation, Sun Microsystems has introduced


with a new concept as “Logic separation” from client.

Fig 3.1 JSP Architecture

13
Logic which is required is written at one place and can be accessed by all the
clients which are at different places when they require. So, in order to implement this, we
have two Architectures known as

 Model 1 Architecture

 Model 2 Architecture

Model-1 Architecture

In Model-1 Architecture, presentation logics and business logics are combined.


When these two are combined, each presentation logic requires copy of business logic so
that the model and server should work towards this, such thing is time and resource
consume, so in order to overcome this Model 2 Architecture has been introduced.

Model-1 Architecture is called as Java Bean.

Fig 3.2 Model– 1 Architecture

Model-2 Architecture

Model-2 Architecture is also called as Java Strut. In this Model, presentation and
business logics are separated. We have View, Controller and Model three parts.

Model: Contains business logics which represent application state along with database.

View: A JSP act a view which receives data from the model this view doesn’t contain any
data manipulation logics.

14
Controller: Takes request from client, process the Model and provide information to
different JSP page and passing control to different views.

Fig 3.3 Model-2 Architecture

3.3.2 About XML:

XML is a markup language for documents containing structured information.


Structured information contains both content (words, pictures, etc.) and some indication
of what role that content plays (for example, content in a section heading has a different
meaning from content in a footnote, which means something different than content in a
figure caption or content in a database table, etc.). Almost all documents have some
structure.

A markup language is a mechanism to identify structures in a document. The


XML specification defines a standard way to add markup to documents.

The number of applications currently being developed that are based on, or
make use of, XML documents is truly amazing (particularly when you consider that
XML is not yet a year old)! For our purposes, the word "document" refers not only to
traditional documents, like this one, but also to the myriad of other XML "data
formats". These include vector graphics, e-commerce transactions, mathematical
equations, object meta-data, server APIs, and a thousand other kinds of structured
information.

15
XML specifies neither semantics nor a tag set. In fact XML is really a meta-
language for describing markup languages. In other words, XML provides a facility to
define tags and the structural relationships between them. Since there's no predefined
tag set, there can't be any preconceived semantics. All of the semantics of an XML
document will either be defined by the applications that process them or by style sheets.

In order to appreciate XML, it is important to understand why it was created.


XML was created so that richly structured documents could be used over the web. The
only viable alternatives, HTML and SGML, are not practical for this purpose.

HTML, as we've already discussed, comes bound with a set of semantics and
does not provide arbitrary structure.

SGML provides arbitrary structure, but is too difficult to implement just for a
web browser. Full SGML systems solve large, complex problems that justify their
expense. Viewing structured documents sent over the web rarely carries such
justification.

3.3.3 About ORACLE:

Introduction to Database Management System (DBMS)

A Database is an integrated collection of user related data stored with minimum


redundancy, serves many users/applications quickly and efficiently.

A database system is basically a computerized record keeping system, i.e. it is a


computerized system whose overall purpose is to maintain information and make that
information available on demand.

DBMS is a collection of inter-related data and set of programs that allow several
users to access and manipulate data. Its main purpose is to provide users with an abstract
view of the data, i.e. the system hides certain details of how the data is stored and
maintained.

16
Database Management System is divided into 4 main components

 Database

 Hardware

 Software

 User

Database: It consists of collection of persistent data that is used by the application


system.

Hardware: The processor(s) and associated main memory that are used to support the
execution of database system software..

Software: The layer between the physical database and the users that handles all requests
from the user for access to the database.

User: There are three types of users

 Application Programmers

 End User

 Database Administrator (DBA)

Types of DBMS:

There are four major categories of DBMS data models.

 Hierarchical

 Network

 Inverted

 Relational

Relational Database Management Systems

Database Management System has evolved from hierarchical to network to


relational models. Today, the most widely accepted database model is the relational
model. The relational database management system uses only its relational capabilities to

17
manage the information stored in the database. The relational model has three different
aspects.

 Structures

 Operation

 Integrity rules

Structures:

They are well-defined objects that store the data of a database structure and the
data contained within them can be manipulated by operations.

Operations:

They are clearly defined actions that allow users to manipulate the data and
structures of a database. The operations on a database must adhere to a predefined set of
integrity rules.

Integrity rules:

They are laws that govern which operations are allowed on the data and structures
of a database. Integrity rules protect the data and the structures of a database.

A DBMS can be regarded as relational only if it obeys a set of 12 rules formulated


by Dr. E. F. Codd these rules define the scope and functionality of a relational database.

There is a single overall rule called “Zero Rule” which is a foundation rule that
covers all other rules. It states that “Any truly relational database must be manageable
entirely through its relational capabilities”.

The twelve rules are as follows:

Rule 1: The information rules

Rule 2: The guaranteed access rule

Rule 3: The systematic treatment of null values

Rule 4: The database description rule

Rule 5: The comprehensive sub-language rule

18
Rule 6: The view update rule

Rule 7: The insert, update and delete rule

Rule 8: The physical data independence rule

Rule 9: The logical data independence rule.

Rule 10: The integrity independence rule.

Rule 11: The distribution independence rule.

Rule 12: The no subversion rules.

Advantages of RDBMS:

 Redundancy can be avoided.

 Inconsistency can be eliminated.

 Data can be shared.

 Standards can be enforced.

 Security restrictions can be applied.

 Integrity can be maintained.

 Conflicting requirements can be balanced.

 Data independence can be achieved.

Disadvantages of RDBMS:

 Cost of software/hardware

 Problems associated with centralization

 Complexity of backup and recovery

Features of SQL Server (RDBMS):

SQL SERVER is one of the leading database management systems (DBMS)


because it is the only Database that meets the uncompromising requirements of today’s
most demanding information systems. Form complex decision support systems (DSS) to
the most rigorous online transaction processing (OLTP) application, even application that

19
require simultaneous DSS and OLTP access to the same time critical data, SQL Server
leads the industry in both performance and capability.

Portability:

SQL SERVER is fully portable to more than 80 distinct hardware and operating
systems platforms including UNIX, MSDOS, OS/2, Macintosh and dozens of proprietary
platforms. This portability gives complete freedom to choose the database server platform
that meets the system requirements.

Open Systems:

SQL SERVER offers a leading implementation of industry standard SQL. SQL


SERVER’s open architecture integrates SQL SERVER and non-SQL SERVER DBMS
with industry’s most comprehensive collection of tools, application, and third party
software product SQL Server’s Open architecture provides transparent access to data
from other relational database and even non-relational database.

Distributed Data Sharing:

SQL server’s networking and distributed database capabilities to access data


stored on remote server with the same case as if the information was stored on a single
local computer. A single SQL statement can access data at multiple sites. You can stores
data where system requirements such as performance, security or availability dictate.

4.1 FEASIBILITY STUDY

20
Feasibility study is conducted once the problem is clearly understood. Feasibility
study is a high level capsule version of the entire system analysis and design process. The
objective is to determine quickly at a minimum expense how to solve a problem. The
purpose of feasibility is not to solve the problem but to determine if the problem is worth
solving.

Many Feasibility study are disillusioning for both users analysts, First, the study
often presupposes that feasibility document is being prepared; the analyst is in a position
to evaluate solution. Second, most studies tend to overlook the confusion inherent in the
system development- the constraints and the assumed attribute. If the Feasibility study is
to serve as decision document for a project, it must answer 3 key questions:

Three key Considerations involved in the feasibility analysis:

 Economic
 Technical
 Behavioral

Economic Feasibility:

This application on the client side has been developed using Voice XML which is
open source software. The hardware required is telephone, which is not expensive. Hence
the application is economically feasible.

Technical Feasibility:

As the application has been developed using JSP and the back end as oracle which
utilizes minimum resources of the personal computer, this project is Technical Feasible.
Here we work on my eclipse which is very comfortable even for the naïve users.

Behavioral Feasibility:

This project has been implemented using VOXEO and it satisfies all conditions
and norms of the organization and the users.

4.2 SYSTEM DESIGN

21
System design sits at the technical kernel of the software engineering process
and is applied regardless of the development paradigm and area of application. Design
is the first step in the development phase for any engineered product or system. The
designer’s goal is to produce a model or representation of an entity that will later be
built. Beginning, once system requirement have been specified and analyzed, system
design is the first of the three technical activities -design, code and test that is required
to build and verify software.

The importance can be stated with a single word “Quality”. Design is the place
where quality is fostered in software development. Design provides us with
representations of software that can assess for quality.

Design is the only way that we can accurately translate a customer’s view into a
finished software product or system. Software design serves as a foundation for all the
software engineering steps that follow. Without a strong design we risk building an
unstable system – one that will be difficult to test, one whose quality cannot be assessed
until the last stage.

During design, progressive refinement of data structure, program structure, and


procedural details are developed reviewed and documented. System design can be
viewed from either technical or project management perspective. From the technical
point of view, design is comprised of four activities – architectural design, data structure
design, interface design and procedural design.

Systems design is the process or art of defining the architecture, components,


modules, interfaces, and data for a system to satisfy specified requirements. One could
see it as the application of systems theory to product development. There is some
overlap and synergy with the disciplines of systems analysis, systems architecture and
systems engineering.

22
4.2.1 Data Flow Diagrams

Data flow diagram is a pictorial representation of the system in which flow of


data from one process to another process is described.

Data Flow Diagrams are of two types:

1 1. Physical Data Flow Diagrams: These are implementation-dependent i.e.,


they show the actual devices, departments, people, etc., involved in the system.

2 2. Logical Data Flow Diagrams: These diagrams describe the system


independently of how it is actually implemented, they show what takes places, rather
than how an activity is accomplished.

The DFD is intended to represent information Flow but it is not a flow chart and
is not intended decision-making, flow of control, loops and other procedural aspects of
the system. DFD is a useful Graphical tool and is applied at the earlier stages of
requirements analysis. It may be further refined at preliminary design stage and is used
as mechanism for top-level structural design for software. The DFD drawn first at a
preliminary level is further expanded into greater details:

 The context diagram is decomposed and represented with multiple rectangles.

 Each of these rectangles may be decomposed further and given as more detailed
DFD.

In the DFD, there are four symbols

1. A square defines a source (originator) or destination of system data.

2. An arrow identifies data flow. It is the pipeline through which the information
flows.

3. A circle or a bubble represents a process that transforms incoming data flow into
outgoing data flows.

4. An open rectangle is a data store, data at rest or a temporary repository of data.

23
Process that transform data flow.

Source or Destination of data

Data flow

Data Store

4.2.2 UML Diagrams


UML is an industry-standard language for graphically describing the structure and
operation of object-oriented software systems. It is used to create an abstract model of a
system called a UML model. Aids such as UML help industry overcome the problems
created by the ever-increasing size and cost of software projects. Using graphical notation
to represent complex software greatly eases the task of communicating between team
members on the project. UML aids the task of describing a system by representing it with
a series of diagrams.

What is a UML?
A model is a simplification of reality. We build models of complex systems
because we cannot comprehend such a system in entirety.
Why is UML?
Architects design buildings; Builders use the designs to create buildings. The
more complicated the building, the more critical the communication between architect
and builder. Blueprints are the standard graphical language that both architects and
builders must learn as part of their trade. The UML is applicable to object oriented

24
problem solving. Anyone interested in UML must be familiar with the underlying tenet of
object-oriented problem solving – it all begins with the construction of a model. A model
is an abstraction of the underlying problem. The domain is the actual world from which
the problem comes.
Unified Modeling Language (UML) is a language for visualizing, specifying,
constructing and documenting artifacts of the system.

Different Types of Modeling Techniques used in UML


1. Structural Modeling:
It consists of
 Class Diagrams
 Object Diagrams
2. Behavioral Modeling:
It consists of
 Use case Diagrams,
 Activity Diagrams
 State Chart Diagrams
 Interaction Diagrams
a. Sequence Diagrams
b. Collaboration Diagrams
3. Architectural Modeling:
It consists of
 Component Diagrams
 Deployment Diagrams
A diagram is the graphical presentation of a set of elements, most often rendered
as a connected graph of vertices (things) and arcs (relationships).

25
Use case Diagram:
A use case diagram shows a set of use cases and actors (a special kind of class)
and their relationships. Use case diagrams address the static use case view of a system.
These diagrams are especially important in organizing and modeling the behaviors of a
system.

registration

login

make a call

selects the city


user

selects the service

information management

logout

Fig: 4.1 User Usecase Diagram

26
login

maintaining city

maintain services

admin

maintain information

maintain feedback

logout

Fig 4.2 : Admin Usecase Diagram

Class Diagram:

A class diagram shows a set of classes, interfaces, and collaborations and their
relationships. These diagrams are the most common diagram found in modeling object-
oriented systems. Class diagrams address the static design view of a system. Class
diagrams that include active classes address the static process view of a system.

27
user
user_id
user_name information management
password service selection service id
date of birth cat_id service name hospitals
address cat_name contact details hospital_id
mobile no. address h_name
email id provides services() contact number
provides service info() address
log in()
log out()

country
country_id educational
country_name institutes banks
edu_cat_id bank_id
edu_cat_name bank_name
contact details
address
timings
feedback state
feedback_id state_id
feedback_date state_name institute_info
records feedback() institute_id
institute_name
address
contact details

city
city_id
city_name

Fig 4.3: Class Diagram

Sequence Diagrams:

In sequence Diagram different objects interact by passing “message”. The sequence


Diagram is an interaction diagrams. According to Time the sequence diagrams are organized.
The sequence diagrams are time-ordered. Interaction between different objects is represented by
sequence diagrams.

28
registration city selection service information
: user
selection management
enter details

registers successfully

selects city
selects service
requests information

prompts address/ a text message

Fig 4.4: Sequence Diagram

Collaboration Diagram:

A collaboration diagram model the inter actions between objects or path in terms
of sequenced messages. Communication diagram represents a combination of
information taken from class, sequence, and diagrams both the static structure and
dynamic behavior of a system.

29
registration

1: enter details

2: registers successfully
city selection

3: selects city

4: selects service

: user service
selection

6: prompts address/ a text message


5: requests information

information
management

Fig 4.5: Collaboration Diagram

Activity Diagram:

The Activity Diagram captures the process flows in the system. The workflow
behavior is described by the Activity Diagram. The Activity Diagram is similar to the
state diagram it consists of transactions, actions, initial states, activities and final states.

30
start

login

failure

Yes/no

success

feedback
selects
city

selects selects
service service

requests record
information feedback

prompts address/ text


message

stop

Fig 4.6: Activity Diagram

31
E-R Model

Fig 4.7: ER-Diagram of the Project

4.3 DATA DICTIONARY

The most important aspect of the system is data design. The data must be
organized according to the system requirements. The database approach is used to store
and organize the data in developing the system. The database is an integrated collection
of data stored in different types of tables.

32
Some general objectives in establishing a database are as follows:

 Integrating all data

 Incorporate updations easily

 Provide data security from unauthorized users

Table 4.1: User Registration Table

Table 4.2: Service Selection Table

Table 4.3: Education Category Table

33
Table 4.4: Education Institutions Information Table

Table 4.5: Hospitals Table

Table 4.6: Banks Table

34
Table 4.7: Shopping Malls Table

Table 4.8: Restaurants Table

Table 4.9: Feedback

35
5.1 ARCHITECTURE

Voice XML:
Voice Extensible Markup Language (VXML) is the W3C’s standard XML format
for specifying interactive voice dialogues between a human and a computer. It allows
voice applications to be developed and deployed in an analogous way to HTML for
visual applications. Just as HTML documents are interpreted by a visual web browser,
VoiceXML documents are interpreted by a voice browser. A Common architecture is to
deploy banks of voice browsers attached to the Public Switched Telephone Network
(PSTN) so that users can use a telephone to interact with voice applications.

Usage:
Many commercial VoiceXML applications have been deployed, processing
millions of telephone calls per day. These applications include: Conducting interviews,
order inquiry, package tracking, driving directions, emergency notifications, wake-up,
flight tracking, voice access to e-mail, customer relationship management, prescription
refilling, audio news magazines, voice dialing, real estate information and national
directory assistance applications.
VoiceXML uses are somewhat similar to HTML as they both are Markup
Language, but while HTML uses a PC with a web browser such as IE or Netscape to
display graphical web applications. VoiceXML uses a voice browser running on a
telephony server with audio output such as text-to-speech (TTS) or pre-recorded prompts
to enable web applications.
The real advantage of VoiceXML or HTML is that, we can create web sites with
audio interface that can be accessed by an ordinary telephone. Phones can be accessed
from everywhere and the availability of them is more than computers, hence they are
more portable and accessible than computers.
One example of VoiceXML application can be a voice portal, a telephone service
where caller dial a phone number to retrieve the information such as train information,
weather report and a movie information. As the following figure indicates VoiceXML
requires a voice browser that runs on a voice gateway node. This gateway node is
36
connected to both phone and Internet networks. The way VoiceXML works is the
application would prompt the user and then the user responses.
A VoiceXML document describes a new number of things including, spoken
prompts, output of audio files, speech recognition, touch tone recognition, input
recording, control of dialogue flow and telephony control. Picture below shows the
relationship between a traditional web application and a voice-enable web application.

Fig 5.1: VoiceXML architecture

A typical VoiceXML based system contains the four main components.


 Telephone Network: Can be a PSTN network or VoIP packet network.
 VoiceXML Gateway: VoiceXML gateway consists of a VoiceXML interpreter
integrated with Media resources (Speech Recognition, Text-to-speech, Audio
playback) and Telephony resources (DTMF, Call Control). VoiceXML Gateway
downloads the applications from Application Server and interprets it.
 Application Server: Typically a Web Server that hosts the VoiceXML application
and business logic.
 TCP/IP Network: LAN, WAN or public Internet. VoiceXML connects to
Telephone Network on one side and TCP/IP network and Application Server on
the other side.

37
 Speech Browser: Whenever a user gives input through voice it will be redirected
to the speech browser for further processing of the input.

 Speech Recognition Engine: This is a component which is a part of the speech


browser which converts the spoken input into text upon validation with legal
grammar provided and gives back the valid processed input to the browser.

 HTTP Server: It gets request in the form http request from the speech browser
which requests for a valid resource based on the user’s request. The http server
will process the request and will communicate with the back end (data base) and
give it back the response to the browser.
 Text to Speech (TTS): The speech browser will delegate the request to this
component where it is responsible for synthesizing speech out of text or else plays
back the audio files back to the requested user.

FEATURES
Limitations of IVR system Application Logic is separated from the Voice
Interface. This has two main advantages
 This enables businesses to use their existing investments in web technologies and
infrastructure.
 Businesses can outsource the Voice Interface Design and hosting while having full
control on the application logic.
 VoiceXML being an international standard lets you write the application once and
run anywhere.
 VoiceXML is independent of Speech and Telephony platform. This gives
flexibility to choose the platform of choice.
 VoiceXML is a simple scripting language. Application developers can develop
application with ease without worrying about the complexities of the platform.

38
Getting Start with VoiceXML Application

 Go to Eclipse
 Give the work space path for example E:\SampleProject and click “ok”
 Click on File
 Select New
 Click Dynamic Web Project

Fig 5.2: Select Dynamic Web Project

 A New Dynamic Web Project window will be opened there you need to enter the
project name
 Give Project name as “Demo”
 Click “Next”
 Click “Finish”

39
Fig 5.3 Dynamic Web Project Name

 You will find the application name as Demo in project explorer

Fig 5.4: Showing Saved Name


 Right click on the project aging select new from the given references select JSP and
name as sample.jsp

40
Fig 5.5: Creating a Jsp Page
 Write the app which prompts “Hi world how are you”
 And configure the application with tomcat server and deploy it
The steps to configure

 Install tomcat and give the valid port number


 Right click on the app go to Run As

Fig 5.6: Run On Server

41
 Select run on server

Fig5.7 :Choose An Existing Server

Fig 5.8:Finish

 Select the version of the tomcat which you installed on your system

 Next
42
 Select your application and click on add

 Finish

After completion of the above steps jus start the server and run the application

Test the App


(The different version of the prophecy available such as 8, 9, 10,11)
(This document represents prophecy 11.6version)
 Install Voxeo Prophecy in System Where you want to send the request

Fig 5.9:Prophecy Home Page

 Select prophecy commander there you will get the dash board it consist of
 Charts
 New application
 Voxeo Designer
 Prophecy SIP phone
 Development Guide
 Prophecy Document

43
 Select New application this option make you to configure the url where you can give
the starting point of your application means first page of the application from the first
page it can navigate to other page based on the users input

Fig 5.10: Prophecy Commander

 Give the application name, And select the virtual platform as default, and browser
type should be VXML for voice xml application and give the url of your application
from including the first page of the application so that the application navigation will
start from that page

44
Fig 5.11: Enter Application Name

 If your application was deployed into more than one server you have the facility

of give more than one url (limit is 3 ) so that If the any problem occurs at first url

the control checks for the second url and delegates to third in case second option

fail.
 Select Next
 If the address which you want give is already exists the click on the add Existing

address
 Else select Save and close

45
Fig 5.12: Application Saved

 After completion of this process just go back to dash board and select the Prophecy
SIP phone so that you will get the virtual device where you can connect to the
application
 In the address bar you need to specify the url it looks as follows

Let’s assume that your application was exist on 192.168.1.30 url then you need to specify
the url like
[email protected]

46
Fig 5.13: SIP Phone

 Select dial and so that it will connect to the application and the flow will work based on
your ----business logic

5.2 MODULES AND DESCRIPTION

1. REGISTRATION MODULE
This module is responsible for registering users. They can register by providing
details such as username, password, date of birth, address, email id, etc..,. User can
access this application by using the unique user id and password which is provided after
completing registration successfully. Registration process provides security for the
application from unauthorized access.

Provision: User Details

 Userid
 Username
 Password
 Date of Birth
 Address:

47
 Mobile number
 Email Id
 Country
 State
 City

Functionalities:

 User can register for the application to get services


 User can login to get continue with services
 User can Change his details like address and mobile number and password
and country , state and city details
 User delete his account

Alerts:

Implicit Alerts:

 Invalid user name/password.


 Mobile number out of range.
 Registration Successful.
Explicit Alerts:
 Your login credentials are

Query:

 How many users are registered?


 What are the available cities?

Reports:

 How many users registered over a period of time


 How many users registered over a particular location

2. SERVICE SELECTION MODULE:

In Service selection module the user can select any particular category of service.
Here different categories of services are provided such as educational institutions,
hospitals, banks, theatres, restaurants, Eseva etc…

48
Provision: Service selection

Service category

 C id
 C name

Functionalities:

 User can select his service category


 User can enquire about the available service.

Alerts:

Implicit alerts:

 Invalid service selection

Queries:

 What are the services available?

Reports:

 Comparing the categories available over a particular location

49
3. INFORMATION MANAGEMENT MODULE:

This module maintains the complete information about rendered services that are
associated with particular service category. It is under the control of admin.

Provision: Providing information

1. Educational institutions
Institution Type

 Ecid
 Ecatname

Institution Information

 Institution id
 name of institution
 ecid associated with Institution
 address
 contact details
 city_id is associated with Registration
 category_id is associated with Service selection

2. Shopping Malls

 S id
 S name
 address
 contact details
 city_id is associated with Registration
 category_id is associated with Service selection

3. Restaurants

 R name
 R id
 address
 contact details
 city_id is associated with Registration
 category_id is associated with Service selection

4. Hospitals

50
 Hcid
 Hcname
 address
 contact details
 city_id is associated with Registration
 category_id is associated with Service selection

5. Libraries:

 Library_id
 Library_name
 Address
 Contact details
 city_id is associated with Registration
 category_id is associated with Service selection

6. Parks

 park_id
 park_name
 openingtime
 closing time
 entryfee
 Address
 Contact details
 city_id is associated with Registration
 category_id is associated with Service selection

51
7. Theaters:

 Theater_id
 Theater_name
 Address
 Contact details
 city_id is associated with Registration
 category_id is associated with Service selection

Show timings
 show_id
 time
 Theater_id associated with theaters

8. Banks

 Bid
 Name
 Address
 Contact number
 Timings

9. ATM’s

 ATM id
 Name
 Address
 city_id is associated with Registration
 category_id is associated with Service selection
 bank_id is associated with banks

52
10. Mee Seva

 Mee seva id
 address
 contact number
 timings
 city_id is associated with Registration
 category_id is associated with Service selection

Functionalities:

 Users can get the information about different categories


 User can get the contact details of required service
 Address Details are associated with Registration

Alerts:
Implicit Alerts:
 Information sent successfully.
 Your required details are

Queries:

 What is the hospital address?


 What is the institute type?
 What is address/contact details of a particular category?

Reports:

 Number of hospitals over a particular location


 No of schools over a particular location?

53
4. FEEDBACK:

If the user wants to give feedback first he needs to log into our system. Now the
user selects the category and gives feedback on a particular service in the form of voice
and that is stored on the server.

Provision: Feedback

 Feedback _id
 Feedback date
 Category_id is associated with Service Selection
 User_id is associated with Registration

Functionalities:

 User can give the feedback on a particular service.


 User can give the feedback on the whole service.

Alerts:

Implicit Alerts:

 Invalid category selection

Queries:

 What are the categories available?

Reports:

 How many no of feedbacks gave over a period of time?


 How many no of feedbacks gave over a particular service?

54
6.1 INTRODUCTION

The purpose of testing is to discover errors. Testing is the process of trying to


discover every conceivable fault or weakness in a work product. It provides a way to
check the functionality of components, sub-assemblies, assemblies and/or a finished
product it is the process of exercising software with the intent of ensuring that the
Software system meets its requirements and user expectations and does not fail in an
unacceptable manner. There are various types of test. Each test type addresses a specific
testing requirement.

6.1.1 TESTING TYPES

A software engineering product can be tested in one of two ways:

 Black box testing

 White box testing

Black box testing

Knowing the specified function that a product has been designed to perform, determine
whether each function is fully operational.

White box testing

Knowing the internal workings of a software product determine whether the


internal operation implementing the functions perform according to the specification,
and all the internal components have been adequately exercised.

6.1.2 LEVELS OF SOFTWARE TESTING:

The software engineering process can be viewed as a spiral. Initially system


engineering defines the role of software and leads to software requirement analysis
where the information domain, functions, behavior, performance, constraints and
validation criteria for software are established. Moving inward along the spiral, we
come to design and finally to coding. To develop computer software we spiral in along
streamlines that decrease the level of abstraction on each turn.

55
A strategy for software testing may also be viewed in the context of the spiral.
Unit testing begins at the vertex of the spiral and concentrates on each unit of the
software as implemented in source code testing progress by moving outward along the
spiral to integration testing, where the focus is on the design and the construction of the
software architecture. Talking another turn on outward on the spiral we encounter
validation testing where requirements established as part of software requirements
analysis are validated against the that has been constructed. Finally we arrive at system
testing, where the software and other system elements are tested as a whole.

Unit Testing
.

Component Testing

Module Testing

Sub-System Testing

Integration Testing

System Testing

User Testing Acceptance Testing

Fig 6.1: Levels of Software Testing

Unit testing focuses verification effort on the smallest unit of software design, the
module.

The unit testing we have is white box oriented and some modules the steps are
conducted in parallel.

56
1. White Box Testing:

This type of testing ensures that

 All independent paths have been exercised at least once.

 All logical decisions have been exercised on their true and false sides.

 All loops are executed at their boundaries and within their operational
bounds

 All internal data structures have been exercised to assure their validity.

To follow the concept of white box testing we have tested each form. We have
created independently to verify that data flow is correct, all conditions are exercised to
check their validity, all loops are executed on their boundaries.

2. Basic Path Testing

Established technique of flow graph with cyclomatic complexity was used to derive test
cases for all the functions. The main steps in deriving test cases were:

Use the design of the code and draw correspondent flow graph.

Determine the cyclomatic complexity of resultant flow graph, using formula:

V(G)=E-N+2 OR

V(G)=p+1 OR

V(G)=Number of regions

Where V(G) is cyclomatic complexity,

E is the number of flow graph nodes,

P is the number of predicate nodes.

Determine the basis of set of linearly independent paths.

3. Conditional Testing

57
In this part of the testing each of the conditions were tested to both true and false
aspects. And all the resulting paths were tested. So that each path that may be generate
on particular condition is traced to uncover any possible errors.

4. Data Flow Testing

This type of testing selects the path of the program according to the location of
definition and use of variables. This kind of testing was used only when some local
variable were declared. The definition-use chain method was used in this type of testing.
These were particularly useful in nested statements.

5. Loop Testing

In this type of testing all the loops are tested to all the limits possible. The
following exercise was adopted for all loops:

 All the loops were tested at their limits, just above them and just below them.

 All the loops were skipped at least once.

 For nested loops test the inner most loop first and then work outwards.

 For concatenated loops the values of dependent loops were set with the help of
connected loop.

 Unstructured loops were resolved into nested loops or concatenated loops and
tested as above.

Each unit has been separately tested by the development team itself and all the input
have been validated.

6.2 TESTING STRATEGIES

Testing Strategies that are often adopted by the software development team
include: Unit testing, Integration testing, Functional testing, Validation testing and
System testing.

Unit Testing

Unit testing involves the design of test cases that validate that the internal
program logic is functioning properly, and that program input produces valid outputs.

58
All decision branches and internal code flow should be validated. It is the testing of
individual software units of the application. It is done after the completion of an
individual unit before integration. This is a structural testing, that relies on knowledge
of its construction and is invasive. Unit tests perform basic tests at component level and
test a specific business process, application, and/or system configuration. Unit tests
ensure that each unique path of a business process performs accurately to the
documented specifications and contains clearly defined inputs and expected results.

Integration Testing

Integration tests are designed to test integrated software components to


determine if they actually run as one program. Testing is event driven and is more
concerned with the basic outcome of screens or fields. Integration tests demonstrate that
although the components were individually satisfaction, as shown by successfully unit
testing, the combination of components is correct and consistent. Integration testing is
specifically aimed at exposing the problems that arise from the combination of
components.

Integration testing is of three types: Bottom up Integration Top down Integration


Sandwich Integration

Bottom up integration testing consists of unit testing followed by system testing.


Unit testing has the goal of testing individual modules in the system. Subsystem testing
is concerned with verifying the operation of the interfaces between modules in the sub
systems. Top down integration testing starts with the main routine and one or two
immediately subordinate routines in the system structure. Top down integration requires
the use of program stubs to simulate the effect of lower level routines that are called by
those being tested.

Top down method has the following advantages: System integration is


distributed through the implementation phase. Modules are integrated as they are
developed. Top level interfaces are tested first and most often. The top level routine
provides a natural test harness for lower level routines. Errors are localized to the new
modules and interfaces that are being added.

59
Functional Test

Functional tests provide a systematic demonstration that functions tested are


available `as specified by the business and technical requirements, system
documentation, and user manuals. Functional testing is centered on the following items:

Valid Input: identified classes of valid input must be accepted.

Invalid Input: identified classes of invalid input must be rejected.

Functions: Identified functions must be exercised.

Output: Identified classes of application outputs must be exercised.

Systems/Procedures: interfacing systems or procedures must be invoked.

Organization and preparation of functional tests is focused on requirements, key


functions, or special test cases. In addition, systematic coverage pertaining to identify
Business process flows; data fields, predefined processes, and successive processes
must be considered for testing. Before functional testing is complete, additional tests are
identified and the effective value of current tests is determined.

Validation Testing:

Software testing and validation is achieved through a series of black box tests
that demonstrate conformity with requirements. A test procedure defines specific test
cases that will be used to demonstrate conformity with requirements. Both, the plan and
the procedure are designed to ensure that all functional requirements are achieved,
documentation is correct and other requirements are met. After each validation test case
has been conducted, one of the two possible conditions exists. They are,

 The function or performance characteristics conform to specification and are


accepted.

 A deviation from specification is uncovered and a deficiency list is created.

60
The deviation or error discovered at this stage in project can rarely be corrected
prior to scheduled completion. It is necessary to negotiate with the customer to establish
a method for resolving deficiencies.

System Test:

System testing ensures that the entire integrated software system meets
requirements. It tests a configuration to ensure known and predictable results. An
example of system testing is the configuration oriented system integration test. System
testing is based on process descriptions and flows, emphasizing pre-driven process links
and integration points.

6.3 DESIGN OF TEST CASES AND SCENARIOS

To test a system, you most construct some test input cases, and then describe
how the output will look. Next perform the test and compare the outcome with the
expected output. The good news is that the use cases developed during analysis can be
used to describe the usage test cases. Testing is the process of executing the program
with the intent of finding errors A good test case is the one that has a high probability of
detecting an as-yet undiscovered error A successful test case is the one that detects an
as-yet undiscovered error.

61
Table 6.1: Test Case Report

Status

Test id Input Expected Observed P=Passed


Behavior
Behavior F=Failed

1. Add a new entry for It should add a New user P


user new user details information is
in the database stored in the
database

2. Enter user id for It should give We get please enter P


login please enter password
password

3. Enter password for It should give We get please enter P


login please enter user name
user name

4. Enter correct user It should give We get invalid user P


id, incorrect invalid user name, password
password name ,
password

5. Enter incorrect user It should give We get invalid user P


id, correct password invalid user name, password
name, password

6. Enter user id, User name, User name, F


password for login password password are
should be incorrect
correct

7. Select one from It should The results should P


menu prompt all the be given
information
about the

62
required query

63
Table 6.2: Test Case for User Registration

Test Case Identifier New User Signup

Test Location Browser

Feature to be tested Whether the user enters all mandatory fields or not

Input The user clicks on registration and fills the form.

The user should receive registration successful message with


Expected Output
his userid and password.

If valid details are given then the user details will be stored
Description in the database. Otherwise information will not be stored in
database.

Fig 6.2: Alert Displays Emailed Field Should Not Be Empty

Table 6.3: Test Case for Password

64
Test Case Identifier To Change Password

Test Location Browser Change Password in edit profile

Attribute Whether the Admin/user is entering exactly 10 numbers are not.

Input Number is given exactly 10 in size

Expected output Mobile number is successfully changed.

If they does not give exactly 10 numbers it gives an alert that to


Description
enter exactly 10 numbers.

Fig 6.3: An Alert Is Occurred Enter Numbers Only

Table 6.4: Test Case for Edit Profile

Test Case Identifier To Edit Profile

65
Test Location Browser Edit Profile

Feature to be tested Whether the user enters all mandatory fields or not

Input The user clicks on edit profile and fills the form.

Expected output The Student gets the updated details changed in database.

If valid details are given then details are updated otherwise


Description
not

Fig 6.4: Alert Occurs That User Should Select Country

1. Home Page: This is the home page here user can register and log into the application

66
Fig 7.1: Home Page

Navigation: Open eclipse  run “home page” on server. This page is useful for user
registration and Existing User login. Click on registration button for registering into
the site and  login button for logging into the site.

67
2. Registration Page: Here the user needs to enter his basic details to register

Fig 7.2: Registration Page

Navigation: (to create new user) Enter “user name”  enter “password”  enter “Date
of Birth”  enter “country”  enter “state”  enter “city”  enter “address”  enter
“mobile number”  enter “E-mail id”  Press “Submit” button

68
3. Registration Success: Here the page shows the user details

Fig 7.3: Registration Success

Navigation: The basic details submitted by the user in the previous page are displayed
here.

69
4. Login Page: This page is for edit profile details and password recovery.

Fig 7.4: Login Page

Navigation: Enter log in details and press  “Edit Profile” button to edit his profile
details and  press “forgot password” is to recover his password…..

70
5. Profile Edit: Here the user can edit his profile details

Fig 7.5: Profile Edit

Navigation: If the user wants to chance his details he/she can change the details and
press  “Submit” button to save his details and  “log out” button to log out from the
application.

71
6. Update Success: User updated his details successfully

Fig 7.6: Update Success

Navigation: After clicking on  “submit” button in the previous page his details are
updated and he can log out from the application after clicking on  “log out” button.

72
7. Log Out: This is the log out page of the user

Fig 7.7: Log Out

Navigation: After clicking on the “log out” button in the previous page now the user
logged out from the application and again if the user wants to log into the application by
clicking on  “log in” button he can be logged in and the  “home page” button to get
the home page.

73
8. Password Recovery: This page is to recover his forgotten password

Fig 7.8: Password Recovery

Navigation: If the user forgets password, by entering  “user id” and  “email id” and
click on  “submit” button to recover his password.

74
9. Password Sent Successfully: It displays password sent successfully

Fig 7.9: Password Sent Successfully

Navigation: As the details are submitted in the previous page now the user recieves
password to his mail id.

75
8.1 CONCLUSION
The project has been successfully implemented with all the features mentioned in
the SRS. The Project to a huge extent simplifies the process knowing the City
Information with Voice XML.

The planned project is developed by keeping in the view the problem of people to
know the information on their visit to a new place or city. It is aimed to provide a way
that is comfortable to the users. The deployment of our application will certainly resolve
the problem.

On a sample data set generated, the system was tested and the performance was
found satisfactory.

8.2 FUTURE ENHANCEMENT


In this project we have included only some of the services. It can have more
number of services. This application can be very useful to all users.

76
TEXTBOOK REFERENCES:

 Herbert Scheldt, The complete reference JAVA2, 5th edition, Tata McGraw Hill
Publisher Company limited, 2002.
 Steven Holzner, HTML BLACK BOOK, Dreamtech, 2000.
 George Koch, Kevin loney, ORACLE, The complete reference, 3 rd edition, Tata
McGraw-Hill Publisher Company limited, 1997.
 Ivan Bayross, SQL, PL/SQL the programming Language of Oracle, 2 nd edition, BPB
Publications, 2002.

WEB REFERENCES:

http://jain-sip-presence-proxy.dev.java.net

http://sip-communicator.dev.java.net

http://jcp.org/jsr/detail/032.jsp

http://java.sun.com/products/java-media/jmf2.1.1/apidocs/

http://www.w3.org/TR/2003/CR-voicexml120-20030220/

http://www.w3.org/TR/voicexml20/

http://www.w3.org/TR/2003/CR-voicexml20-20030128/

http://www.voicexml.org/

http://www.voicexmlreview.org/

77

You might also like