raju.doc

127
ONLINE TAXICAB SERVICE Index 1. Introduction 1.1 Introduction to Company 1.2 Introduction to Project 1.3 Introduction to Modules 2. Analysis 2.1 Identification of Need 2.2 Feasibility Study 2.3 Problem Specification 2.4 Requirement Specification 2.4.1 Client requirements 2.4.2 Hardware requirements 2.4.3 software requirements 3. Selected Software 4. Design 4.1 Software Paradigm 4.2 Normalization 4.3 Data Dictionary

Upload: navee-naveen

Post on 08-Nov-2015

219 views

Category:

Documents


0 download

TRANSCRIPT

Online Taxicab Service

Index

1. Introduction

1.1 Introduction to Company

1.2 Introduction to Project

1.3 Introduction to Modules

2. Analysis

2.1 Identification of Need

2.2 Feasibility Study

2.3 Problem Specification

2.4 Requirement Specification

2.4.1 Client requirements

2.4.2 Hardware requirements

2.4.3 software requirements

3. Selected Software

4. Design

4.1 Software Paradigm

4.2 Normalization

4.3 Data Dictionary

4.4 Relationship Diagram

4.5 E-R Diagrams

4.6 Data Flow Diagrams.

5. Output Screens (Forms)

6. System Testing and Implementation

6.1 Test Data

6.2 Validations

7. Conclusion

8. Scope for Expansion

BibliographyORGANIZATIONAL PROFILE www.logicsystems.org.in (08886201526)

ABOUT US

LOGIC SYSTEMS is a cohesive group of software engineering Company engaged in providing quality complete end-to-end IT/software solutions, systems development, software integration and interactive web based solutions. LOGIC SYSTEMS specializes pre-built solutions that clients rapidly customize thus delivering business intelligence right at the customers doorsteps. The Company applies robust and optimal methodologies; state of art technologies with software engineering skills to domain knowledge in creating information technology based solutions of clients in the respective domains.

LOGIC SYSTEMS, specializing cost effective, yet time bound and high technology solutions, has several offshore IT-Service facilities located in India. These state-of-the-art offshore facilities are home to many software engineers drawn from the finest institutions. The traditional approach of building an internal IT team is time consuming and expensive For almost all clients embarking on IT projects for in house operations, such short-term assignments work well for non-recurring needs, meets project goals and allows regular staff to continue in the core business areas.

LOGIC SYSTEMS assembles teams of employees and consultants with the specific expertise required for a project, enabling them in building best breed of approaches, methods, models and tools. It can also help to augment in-house staff and infuse new technology and services into operations. With business strategists, consumer marketing gurus, architects, designers, and senior professional developers LOGIC SYSTEMS can surely provide an expert team to build the optimum solutions.

MISSION

Our mission is to offer cost-effective, superior quality and commercially viable services and solutions to our clients and partners by evolving into a significant global IT-solution provider. We shall adhere to strong internal value systems with integrity, fairness and the pursuit of excellence in all our activities. These principles will be visible in our interactions with our clients, partners, associates and employees.

QUALITY FOCUS

We are engineers, designers and business people. We work hard, work smart and enjoy helping our customers succeed in this hi-tech marketplace. We believe in the principle: "Do it right, the First Time". Our new employees, too, learn this principle quickly, because we want to give our customers what they want, rather than what we think they should have. The quality effort is backed up by results. We aspire to be a global leader in IT services and part of this mindset is to be a complete IT-solutions and services provider. At LOGIC SYSTEMS, target is to set new benchmarks in productivity, customer satisfaction, employee satisfaction, and provide 'zero-defect' solutions. It is this urge to excel that drives us to search for new and better solutions that will support in every aspect of business strategy.

Why Us

Our Corporate Philosophy is

Give a solution which is an amalgamation of expertise and the clients needs We began with a vision of meeting the massive requirements for IT talent and services in a world moving into an information-based economy. We are a team of software professionals with experience in providing robust and optimally designed IT-Solutions. We have successfully executed projects in various industry segments and have a wealth of experience and expertise in project and resource management. By partnering with LOGIC SYSTEMS, you are dealing with an Indian Company with the Quality and Cost benefit advantages of an international corporation. Our objective is to anticipate and respond to the changing needs of our customers and fulfill their expectations better than our competitors.

We build lasting, high quality customer relationships in diverse domains - from e-commerce to corporate companies. We enhance the growth and profits of our clients by delivering effective and economical IT-Solutions on schedule.

BACKGROUNDIt is without doubt, that growth of any nation is affected by information technology more than any other and also Indians have proved to be the best analytical minds world over. To maintain this status an urgent need is to keep pace with the state of art technologies and generate world-class professionals. The industry has been seized with the problem of shortage of computer professionals in various fields, while several individuals with high computer skill-set and analytical outlook are unable to be profitably employed. This is partly due to the non-standardized methodologies, models being learnt and used by these individuals. For the well informed and well trained, the availability of new technologies represents a real push for enhancing the quality in all departments improving the productivity and hence profitability. Considering the need of the hour LOGIC SYSTEMS has formulated a unique program for assisting thousands of such aspiring software professionals to prove their mettle and be a part of winning team.

Introduction to online taxicab service

Our vision is to make taxicab reservation process anywhere in Andhra Pradesh as hassle-free as possible; and our mission is to help our statewide clientele get a taxicab anywhere in Andhra Pradesh from anywhere around the state. We are virtually open 24/7/365.

The OTS Reservation System allows you to choose any taxicab company listed on our system to provide you with the required transportation service. If we determine that the taxicab company of your choice is not readily available to meet your needs, the system will be manipulated overriding your choice to engage a taxicab company that is able and willing to afford you with the required quality service at the time and place you need it. OTS works with well over all taxicab companies statewide to cover multiple areas spanning through all districts of the state and we persistently strive to expand our service coverage area. This Project was done in offline and can also be placed in online to serve the customers.

Requirement Analysis:

Requirement Analysis is the first technical step in software engineering process. It is at this point that a general statement of software scope is refined into concrete specification that becomes the foundation for all software engineering activities that follow.

Analysis must focus on information, functional and behavioral domains of the problem. To better understand what is required, models are created and the problem is partitioned.

Design

System design is the transformation of the analysis model into a system design model. During system design, developers define the design goals of the project and decompose the system into smaller subsystems that can be realized by individual teams.

Implementation

After all the design activities were implemented correctly and completely, we will be having the use-cases, class interfaces and designing goals with us. The next step is to implement them to resolve them into a system by developing the code. The code generation should be done in a systematic manner. The process will be explained in this phase.

Coding

In this phase we put the some of the sample code for this project

Testing

This phase is the important phase. In this we test the system for different types of input. So that finally the system is error free.

Screens

In this phase we put the screens which are come from the system at run time.

Conclusion

This phase explains the future modifications, extensibility of the system etc.

Bibliography

In this phase we write the book name, author, publisher and year of publishing which we were referred for clarifying the out doubts.

An overview of existing system:

The system which is existing and adopted till now is, the customer going to the travel agency and booking the cab according to the requirement. For that they need to know all the travel agencies near to their place, which is a time taking process i.e, suppose a user need to book the cab he need to know the travel agency details and also the prices they render on him. It is all time consuming process. The travel agencies should specify all the details the user needs.

An overview of proposed system : As the scope of the network is increased a lot, we can make our taxi management online so that users can book the taxi from their nearer internet centers.

We make the travel agency as online by providing the details like customer form.

Customer form deals with the concepts like details abut the taxi management, reservation of the cab, how to contact us.

For the reservation , we provide a reservation form for the client where he fills his details. After filling, he sends the message to reserve and we provide the bill to the customer. This is done only when the car is free, if not it prompts the customer to select another car.

The customers can also send the comments or suggestions to our travel agency and we will respond to him. The received mails will be in our inbox and the sent over replies will be in the outbox options. We will provide all the details like cars, employees etc in the net. We can add new cars, new employees and new bookings etc.

Introduction to software selected:

About java:

Simple, object oriented and easier:

Primary characteristics of Java include a simple language that can be programmed without extensive training while being attuned to current software practices. Java is designed to be object-oriented from ground up. Object technology has period of 30 yrs. Java is as much easier to develop the applications in it.

Robustness:

Java is robust, that the code is well behaved and needed when the solid application that will not bring down a system when a user stumbles across a home page with small animation. Java is designed for creating highly reliable software. It provides extensive compile time checking, followed by second level of runtime checking. Language features guide's programmers towards reliable programming habits. The memory management model no pointers or pointer arithmetic eliminates entire classes of programming errors that bedevil C and C++ programmers.

Secure:

Java is a secure, has to protect the client against the unintentional attacks and protects against intentional ones as well. Java is designed to operate in distributed environment, which means that security is of paramount importance. With security features designed into language and run-time systems, Java lets us construct application that cannot be included from outside. In networked environment, application written in Java is secure from intrusion by unauthorized code attempting to get behind the scenes and create viruses or invalid file systems.

Architectural-neutral:

Java is designed to support applications that will be developed into heterogeneous networked environment. In such environments, application must execute a top variety of O.S. and interoperate with multiple programming language interfaces. To accommodate the diversity of operating environments, Java compiler generates byte codes; an architectural neutral intermediate format designed to transport code efficiency to multiple hardware and software platforms. The interpreted nature of Java solves both the binary distribution and version problems. The same Java language programs will run on any platform. Thus, a platform independent means that program can run on any computer system. Java programs can run on any computer system for which a Java virtual machine has been installed.

Portable:

Java is portable, that it can run on any machine that has Java interpreter ported to it. Architecture neutrality is just one part of a truly portable system.

Java takes portability a stage then by being strict in its definition of the basic language Java puts a stake in the ground and the behavior of its basic DataTips and the behavior of its arithmetic operators. The programs are the same on every platform; there are no data types incompatibilities across hardware and software architectures. The architecture neutral and portable language environment of Java is known as the Java virtual machine. It is the specification of an abstract machine for which Java language compilers can generate code. Specific hardware and software platforms then provide the concrete realization of the virtual machine.

Multithreaded:

Multithreading is the ability of one program to be more than one thing at once, example printing while getting a fax. Java language provides the threads class, and the run time system provides monitor and condition lock primitives. Thread implementations on the major platforms differ widely and makes no efforts to be platform independent in this regard. Only the code calling multithreading remains across machines. Java offloads the implementation of multithreading to the underlying O.S.

High Performance:

Performance is always a consideration. Java achieves interior performance by adapting a scheme by which the interpreter can run at full speed without needing to check the run time environment. The automatic garbage collector runs a low priority background thread, insuring a high probability that memory is available when required, leading to better performance. Applications requiring a large amount of computing power can be designed such that compute intensive section can be rewritten in native machine code as required and interface with Java environment. In general the users perceive interactive applications respond quickly ever through they are interpreted.

The environment takes over many of the error prone tasks from the programmer such as pointers and memory management. The following packages contain the core classes and interfaces that make up the language API. Java language package features include strings, objects and math functions. Some of the classes within the java.lang package provide keys to programming in Java., others are simply wrapper classes, which provide a means of very basic data types like char, int, float, etc., as objects.

Java awt:

A very important that contains all classes for the GUI components for constructing the layouts. This allows the users to make selections, type inputs, read outputs and otherwise use the mouse in relation to the content. An AWT (Abstract Windowing Tool kit) provides an abstract layer enabling one to port. Java applications easily from one window system to another. This library contains for basic interface components such as events, fonts, buttons, and scroll bars etc.

javax.swing:

Swing is the next generation GUI tool kit that sun Microsystems is developing to enable enterprise development in Java by enterprise development we mean that programmers can use swing to create large-scale Java applications with a wide array of powerful components.

Swing is not an acronym. The name represents the collaborative choice of its designers when the project was kicked off in late 1996. Swing is actually part of a large family of Java products known as JFC (Java Foundation Classes). When released the swing 1.0 libraries contain nearly 250 classes and 80 interfaces. Swing builds on the event model introduced in 1.1 series of jdks. Swing is actually built on top of core 1.1 and 1.2 awt libraries. Records swing does not contain any platforms specific code. In fact if you have jdk1.2 on your platform then the swing classes will already be available and there is nothing to download.

Swing contains twice the number of graphical components as its immediate predecessor awt1.1. Swing depends extensively on event handling mechanism of awt1.1.

Swing features:

Swing provides many features for those planning to write large-scale applications in Java. They are

Pluggable look and feels:

One of the most exciting aspects of the swing classes is the to dictate to look and feel of the each of the components. Swing is capable of emulating several look and feels and currently includes support for windows and UNIX motives. Swing comes with a default look and feel called metal, which was developed while the swing class where in the beta release phase. This look and feel combines some of the best graphical elements in todays look and feel and even adds a few surprises of its own.

Light Weight Components:

Most swing components are light weight in the purest sense this means that components are not dependent on native peers to render themselves, Java programmers can have the ability to create light weight components, and each component renders itself using drawing primitives of the graphic objectives. (E.g. drawLine (), fillRect ()etc., ) almost all of the swing components are light weight; only a few top level containers are not

A variety of new components, such as table's trees, sliders, progress bars, internal frames and text components.

Swing components contain support for replacing there with an arbitrary number of concentric borders.

Swing components can have tool tips placed over them. A tool kit is a textual popup that shortly appears when the mouse cursor resets inside the components painting region. Tool tips can be used to give more information about the component in question.

You can arbitrarily bind the keyboard events to components, defining how they will react to keystrokes under the given conditions.

There is additional debugging support for the rendering of your own lightweight swing component.

Swings:

The swing components examined include buttons, labels, toggle buttons, combo boxes, list boxes, scrollbars, slides, text, scroll panes, tables, and toolbars. Common functionality shared across these components and others like borders, tool, tips and icons is also possible.

Scroll Panes:

The JScrollPane component is an interesting component. It acts as a container for one component. Providing scrolling support for that component, if it is larger than the space available within the JScrollPane.

TextFields:

JTextField implements that old favorite a single line text input box.

TextAreas:

The JTextArea component, as its name suggests, is used when larger amounts of text need to be input or more often, just displayed.

Tool Bar:

The JToolBar component offers a potentially dragabble container to place a component in.

Menu Bars:

The main purpose of the JMenuBar class is to group together a collection of JMenu instances.

Menus:

The main purpose of the JMenu class is to group together a collection of JMenuItems and other sub menus.

CheckBoxMenuItems:

The JCheckBoxMenuItem class incorporates an on/off state. Which is depicted graphically in a menu using a check mark or other graph to that effect.

Pop-Up-Menus:

The JPopUpMenu class is a subclass of JComponent. We construct and populate a pop-up just as regular Menu. The difference is that pop-up cant be attached to menu bar. Instead, it is displayed on some other component.

Dialogs:

Swing provides a common way of displaying message pop-up or any other dialogs and prompting for user input from model dialog boxes.

Trees:

Swings provide a hierarchical display component with JTree. The data model for a tree is TreeModel and is made up of many Tree Node objects.

Layouts:

The arrangement of the components on the panel is specified by setting the layout managers such as border layouts, Flow, Grid, Grid Bag etc.,

Tool Tips:

Swings provide another facility to display the text when the user rests the mouse over a particular component.

UNIFIED MODELING LANGUAGE

Why We Model ?

A successful software organization is one that consistently deploys quality software that meets the needs of its user. An organization that can develop such software in a timely and predictable fashion with an efficient and effective use of resources is one that has a sustainable business.

Modeling is a central part of all the activities that lead up to the deployment of good software. We build models to communicate the desired structure and behavior of our system to visualize and control the systems architecture.

A model is a simplification of reality. We build model so that we can better understand the system we are developing ,we cant comprehend complex system in its entirety.

The choice of what models to create has a profound influence on how a problem is attacked and how a solution is shaped. Every model may be expressed at different levels of precision. The best models are connected to reality. No single model is sufficient. Every nontrivial system is best approached through a small set of nearly independent models.

INTRODUCTION TO UML

The Unified Modeling Language ( UML ) is a standard and appropriate language for writing software blueprints and for modeling systems ranging from enterprise information systems to distributed web based applications and even to hard real time embedded systems.

OVERVIEW :-

The UML is a language for

Visualizing

Specifying

Constructing

Documenting

the artifacts of a software-intensive system.

A modeling language is a language whose vocabulary and rules focus on the conceptual and physical representation of a system that yields an understanding of the different views of the evolution of software development lifecycle.

In visualizing we communicate the conceptual model to others to eradicate errors and developer who cut the code never write the models, so we visualize. Specifying means building model that are precise, unambiguous and complete. Things that are best expressed graphically are done so graphically in UML, whereas things that are best expressed textually are done so in programming language, mapping permits forward engineering in constructing.

Documenting includes:

Requirements

Architecture

Design

Source code

Project plans

Tests

Prototypes

Releases

The UML addresses the documentation of a systems architecture and all of its details like expressing requirements and modeling the activities of project planning and release management.

UML can be effectively used for domains such as :

Enterprise information systems

Banking and financial services

Telecommunications

Transportations

Distributed Web-based services

CONCEPTUAL MODEL

The conceptual model of UML requires learning three major elements: the UML`s basic building blocks, the rules that dictate how those building blocks may be put together, and some common mechanism that apply through out the UML.

BUILDING BLOCKS OF THE UML:

The vocabulary of the UML encompasses three kinds of building blocks:

1. Things

2. Relationships

3. Diagrams

Things are the abstractions that are first class citizens in a model; relationships tie this things together; diagrams group interesting collections of things.

Things in the UML There are four kinds of things in the UML:

1. Structural things

2. Behavioral things

3. Grouping things

4. Annotational things

These things are the basic object oriented building blocks of the UML.

Structural things Structural things are the nouns, and the mostly static parts of a model. There are seven kinds of structural things.Class :- Class is a description of a set of objects that share the same attributes, operations, relationships and semantics. A class implements one or more interfaces. It is graphically rendered as a Rectangle.

Interface :- It is a collection of operations that specify a service of a class or component. It describes the externally visible behavior of the element. It describes a set of interface specification that is their signatures only. Graphically it is rendered as a circle with its name.

ISpelling

Collaboration :- It defines an interaction and is a society of roles and other elements that work together to provide some cooperative behavior thats bigger than the sum of all the elements. Therefore, collaboration has structural, as well as behavioral, dimensions. It is graphically redered as ellipse with dotted lines.

chain of

responsibility

Use case: - It is a description of set of sequence of action that a system performs that yields an observable result of value to a particular actor . It is used to structure behavioral things in a model and realized by a collaboration. Graphically it is rendered as a ellipse with a solid lines including only its name.

Place Order

Active class: -It is a class whos objects own one or more process or threads and therefore can initiate control activity. Its objects represents elements whose behavior is concurrent with other elements. It is renedered as class with heavy lines.

Component: - It is a physical and replaceable part of a system that confirms to and provides the realization a set of interfaces ex: complex or java beans or source code files. It typically represents the physical packaging of otherwise logical elements such as classes and interfaces. Graphically it is rendered as rectangle with two tabs including its name.

Node: - A node is physical element that exists at run times and represents a computational resource, generally having some memory and processing capability. A set of components reside on a node and migrate from node to node. Graphically it is rendered as a cube including its name.

Behavioral things are the dynamic parts of UML model. These are the verbs of model, representing behavior over time and space. There are two kinds of behavioral things:

Interaction :- It is a behavior that comprises a set of messages exchanged among a set of objects within a particular context to accomplish a specific purpose. It is rendered as a direct line including its name.

display

State machine:- Its a behavior that specifies the sequence of states an object or an interaction goes through during its life time in response to events together with its responses to those events. It is rendered as rounded rectangle.

waiting

Grouping things are the organizational parts of UML.

Package: - is a general purpose mechanism for organizing elements into groups. Structural things and Behavioral things and other Grouping things may be placed into package. Graphically rendered as a tabbed folder.

Annotational things are the explanatory parts of UML models. These are the comments we apply to describe, illuminate, and remark about any element in a model.

Node :- Is simply a symbol for rendering constraints and comments attached to an element or a collection of elements. Graphically a note is rendered as a rectangle with a dog eared corner, together with a graphical or textual comment.

Relationships in the UML There are four kinds of basic relationships in the UML:

1. Dependency

2. Association

3. Generalization

4. Realization

Dependency is a semantic relationship between two things in which a change to one thing ( the independent thing ) may affect the semantics of the other things (dependent thing ) . Graphically a dependency is rendered as a dashed line, possibly directed, and occasionally including a label.

----------------------->

Association is a structural relation ship that describes a set of links, a link being a connection among objects. Aggregation is a special kind of association representing a structural relationship between a whole and its parts. Graphically an association is rendered as a solid line, possibly directed, occasionally including a label and often containing other adornments, such as multiplicity and role names.

0..1 *

employer employee

Generalization is a relationship between a general thing and a more specific kind of that thing. This is an is-a-kind-of relationship. It means that objects of the child may be used anywhere the parent may appear, but not the reverse. Graphically rendered as a solid line with a hollow arrowhead pointing to the parent.

Realization is a semantic relationship between classifier, wherein one classifier specifies a contract that another classifier guarantees to carryout between interfaces and classes or components that realize them and between usecases and collaborations that realize them. Graphically rendered as a cross between generalization and a dependency relationship.

-------------------------------

DIAGRAMS IN UMLA diagram is the graphical presentation of a set of elements, most often rendered as a connected graph of vertices(things) and arcs(relationships). We draw diagrams to visualize most trivial systems from different perspectives , so a diagram is a projection into a system.

UML includes nine such diagrams:

1. Class Diagram

2. Object Diagram

3. Use case Diagram

4. Sequence Diagram

5. Collaboration Diagram

6. Statechart diagram

7. Activity Diagram

8. Component Diagram

9. Deployment Diagram

A class diagram shows a set of classes, interfaces, and collaborations and their relationships. These diagrams address the static design view of a system.

An object diagram shows a set of objects and their relationships.They represent the static design or static process view of a system.

A use case diagram shows a set of use cases and actors and their relationships . These include especially diagrams important in organizing and modeling the behaviour of a system.

Both sequence and collaboration diagrams are kinds of interaction diagrams. An interaction diagram shows an interaction, consisting of a set of objects and their relationships, including the messages that may be dispatched among them, it addresses the dynamic view of a system. A sequence diagram is a interaction diagram that emphasizes the time ordering of messages. A collaboration diagram is an interaction diagram that emphasizes the structural organization of the objects that send and receive messages.

A statechart diagram shows a state machine consisting of states, transitions events and activities. It addresses the dynamic view of a system.

An activity diagram is a special kind of statechart diagram that shows the flow from activity to activity within a system, they addresses dynamic view of a system that are especially important in mode ling the function of a system and emphasize the flow of control among objects.

A component diagram shows the organization and dependencies among a set of components, they address the static implementation view of a system.

A deployment diagram shows the configuration of the runtime processing nodes and the components that live on them, they address the static deployment view of an architecture.

4. DESIGN

System design goes through two phases of development:

Logical and physical design.

The design covers the following:

1.Review the current physical system: - its data flows, file content, volumes, frequencies etc.

2.Prepares output specifications: - that is, determines the format content and frequency of reports, including terminal specifications and locations.

3. Prepares input specifications- format, content and most of the input functions.

This includes determining the flow of the document from the input data source to the actual input location.

1.Prepares edit, security and control specifications. This includes specifying the rules for edit correction, backup procedures and the controls that ensure processing and file integrity.

2. Specifies the implementation plan.

3. Prepares a logical design walkthrough of the information flow, output, input, controls and implementation plan.

4. Review benefits, costs, target dates and system constraints.

Data Dictionary:

In our data flow diagrams, we give names to data flows, processes and data stores. Although the names are descriptive of the data, they do not give details. So following the DFD, our interest is to build some structured place to keep details of the contents of data flows, processes and data store. A data dictionary is a structured repository of data about data. It is a set of rigorous definitions of all DFD data events and data Structures. A data dictionary has many advantages. The most obvious is documentation; it is a valuable reference to any organization. Another advantage is improving analyst/user communication by establishing consistent definitions of various elements, terms and procedures. During implementation, it serves as a common base against which programmers who are working on the system compare their data descriptions. Also control information maintained for each data element is cross-references in the data dictionary. A data dictionary is an important step in building, a database. Most data base management systems have a data dictionary as a standard feature.

The data dictionary indicates the

Users name

Description

Contents

Constraint

The names given to all these tables as fields are according to the naming and coding standards followed by the organization.

The tables in the data dictionary are

Cust_inf table

CARMODEL Table BRANCH_MODEL_CARNO TABLE Distance

Engaged Car

Emp

Comments

Outbox

Data Flow Diagram (DFD)

The first step is to draw a data flow diagram (DFD). The DFD first developed by Larry Constantine as a way of expressing system requirements in a graphical form; this led to a modular form. A DFD, also known as a bubble chart has the purpose of clarifying system requirements and identifying major transformations that will become programmes in system design. So it is starting point of the design phase that functionally decomposes the requirements specifications down to the lowest level of detail. A DFD consists of a series of bubbles joined by lines. The bubbles represent data transformations and the lines represent data flows in the system.

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- data in motion. It is a pipeline through which information flows.

3.A circle or a bubble (some use an oval bubble) represents a process that transforms incoming data flows into outgoing data flows

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

A DFD uses four basic elements:

1.Processes

2. Files or data stores

3. External entities

4. Data flows

Process:

Process shows what the system does. Each process has one or more inputs and produces one or more outputs. Circles in DFD represent processes. Each process has a unique name and number. This name and number appear inside the circle that represents the process in a DFD.

Files or data stores:

A file or data store is a repository of data. They contain data that is retained in the system. Process can either enter data into a data store or retrieve data from the data store. A thin line in the DFD represents each data store and each data store has a unique name.

External entities:

External entities are outside the system, but they supply input data into the system or use the system output. External entities are represented by a square or a rectangle. External entities that supply data into a system are sometimes called source.External entities that use the system data are sometimes called sinks.

Data flows:

Data flows model passage of data in the system and are represented by lines joining system components. An arrow indicates the direction of the flow and the line is labeled by the name of the data flow, flows of the data in the system can take place

Between a data store to a process

From a process to a data store

From a process to a process; and

From a process to a sink

We have no control flows between external entities, so we do not model them. Similarly, stores are passive and cannot have data flows between themselves.

DATA FLOW DIAGRAMS

A Collection of components that work together to realize some objective is called a System. An information system is nothing but a system that provides information to people in an organization. A new system may be built afresh or by changing the existing system. Systems analysis is an important activity that takes place when new information systems are being built or existing ones are changed. A set of steps that define how things are done is called as a Process. A process followed to determine what the system does and what is required of it is systems analysis. This is central to the whole of system development. It includes gathering the necessary data and developing plans for new systems.

The data flow diagram (DFD) is one of the most important modeling tools used by the systems analysts. DFDs use a number of symbols to represent systems. There are four kinds of symbols and are used to represent four kinds of system components namely processes, data stores, data flows and external entities. DFDs are used to illustrate how data flows in a system.

Data Flow

Database name Id

Process show what systems do. This describes how input data is converted to output data. Each process has a unique name and number. Each process has one or more inputs and produces one or more outputs.

A file or data store is a repository of data. It contains data that is retained in the system. Processes can enter data into a data store of retrieve data from the data store. Each data store has a unique name.

External Entitles are outside the system but they either supply input data into system or use the system output. They are entities over which the designer has no control. External entities that supply data into system are sometimes called sources. External entities that use systems data are sometimes called sinks.

Data flows model the passage of data in the system. The direction of the flow is indicated by an arrow. Flows of data can be taken place

a) Between two processes

b) From a data store to a process

c) From a process to a data store

d) From a source to a process and

e) From a process to a sink

For describing the systems by DFDs a common ways is to model the whole system by one process. The DFD that does this is known as the context diagram. It shows all the external entities that interact with the system and the data flows between these external entities and the system. This does not describe the system in detail. The DFD that shows the major system processes is called the top-level DFD. This shows the various processes that make up the system. The DFD that describes the flow of logical data components between logical processes in a system is called logical DFD. The DFD that describes the flow of physical data components between physical operations in a system is called physical DFD.

DFDs have a number of features, which can be used to ensure that they are self explanatory, complete and unambiguous. The features are:

a) The absence of flowchart structures

b) Conservation of data and

c) Good naming conventions

A good DFD should

a) Have no data flows that split up into a number of other data flows.

b) Have no crossing line.

c) Not include flowchart loops of control elements.

d) Not include data flows that act as signals to activate processes.

Context Level Diagram:

LEVEL 0:

Data Base:

A database is a collection of data with some inherent meaning, designed, built and populated with data for a specific purpose.

A database management system provides flexibility in the storage and retrieval of data. The DBMS is a bridge between the application program, which determines what data are needed and how they are processed, and the operating system of the computer, which is responsible for placing data on the magnetic storage devices. A schema defines the database and a subschema defines the portion of the database that a specific program will use.

Characteristics:

a) Represents complex relationships between data.

b) Keeps control on data redundancy.

c) Keeps a centralized data dictionary for the storage of information retaining todata and its manipulation.

d) Enforces data access authorization.

e) Has automatic intelligent backup and recovery Procedure for data.

Database Administrator:

A database administrator is a block of code loaded into memory, which organizes all information (database) between the users.

The DBA takes care of the following things:

a) Updating database

b) Retrieving the data

c) Accepting the queries

d) Enforces security

e) Enforces data integrity specifications

f) Managing data sharing

g) Optimizing queries

h) Managing system catalogs

Representing of Null Values:

The database management system has a consistent method for representing null values. For example, null values for numeric data must be distinct from the zero or any other numeric value for character data it must be different from string of blanks or any other character value.

Catalog Facility:

A logical description of a relational database represented in the same manner as pre ordinary data. This is done so that facilities of the relational management system itself can be used to maintain database description.

Data language:

A relational database management may support many types of languages for describing data and accessing the database. However there must be at least one language that was ordinary character strings to support the definition of data, the definition of views, the manipulation of data, constraints of data integrity information concerning authorization and the boundaries for recovery of units.

View Updatability:

Any view that can be defined using combination of base tables that are theoretically updateable is capable being updated by the relational database management system.

Insert, Update, Delete:

Any operand that describes the results of a single retrieval operation is capable of being changes to be made to application program.

Logical Data Independency:

Changes made to table the so not modify and data stored in the table do not require changes to be made to application program.

Normalization:

It is the process of splitting the database into some more desirable form by reducing the redundancy.

Advantages of normalization:a) To reduce the redundancy

b) To increase the access specification and storage structure.

First Normal Form:

A relation or a table is said to be in first normal form if and only if all the underlying domains contain at least atomic values.

Second Normal Form:

A relation or a table is said to be in second normal form if and only if it is in first normal form and every non-key attribute is fully dependent on the primary key of the relation.

Third normal Form:

A relation or a table is said to be in third Normal form if it is in second normal form and every non key attribute is transitively dependent on the primary key of the relation.

Boyce-codd Normal Form:

A table is in BCNF iff the only determinants are candidate keys. A table is in BCNF iff every non trivial left irreducible FD has a candidate key as its determinant.

DATABASE DESIGN:

A data dictionary is a file that contains metadata i.e. data about data. This file is consulted before actual data are read or modified in the database system. It is also known as system catalog. Among the types of information that the system must store are:

a) Name of the relations

b) Names of the attributes of each relation

c) Domains and lengths of attributes

d) Names of view defined on the database, and definitions of those views

Integrity constraintsTABLES USED IN THIS PROJECT

Table name: Cust_Inf table

Description: To Store the information about customers who uses the system

Primary key: customer id

Cust_Inf Table:

Name Null? Type

----------------------------------------------------- -------- --------------

CUST_ID NOT NULL NUMBER(6)

NAME VARCHAR2(20)

PHNO VARCHAR2(15)

EMAIL VARCHAR2(20)

ADDRESS VARCHAR2(30)

Table name: CarModel table

Description: To Store the model of car, fare per km and rent per day of that car.

Primary key: car model

CARMODEL Table:

Name Null? Type

----------------------------------------------------- -------- ------------

MODEL NOT NULL VARCHAR2(20)

FARE_KM NUMBER(4)

RENT NUMBER(4)

table name: Branch_Model_Carno table

Description: To Store the information about cars in a particular branch

Primary key: car number

BRANCH_MODEL_CARNO TABLE:

Name Null? Type

----------------------------------------------------- -------- -------------

BRANCH VARCHAR2(20)

MODEL VARCHAR2(20)

CARNO NOT NULL VARCHAR2(13)

Table name: Distance table

Description: To Store the distance information between source and destination cities.

Primary key: No primary key is used.

DISTANCE Table:Name Null? Type

----------------------------------------------------- -------- ------------

SOURCE VARCHAR2(15)

DEST VARCHAR2(15)

DIST NUMBER(4)

Table name: Engaged_car table

Description: To Store the details about cars in operation i.e., engaged cars.

Primary key: customer id

Engaged_Car Table:

Name Null? Type

----------------------------------------------------- -------- --------------

CID NOT NULL NUMBER(6)

CMODEL VARCHAR2(20)

CARNO VARCHAR2(13)

SDATE DATE

RDATE DATE

BDATE DATE

PTYPE VARCHAR2(15)

SCITY VARCHAR2(20)

DCITY VARCHAR2(20)

AMT NUMBER(10,2)

STATUS NUMBER(2)

Table name: Emp table

Description: To Store the employees` information working in the system.

Primary key: Employee id

EMP TABLE:

Name Null? Type

----------------------------------------------------- -------- -------------

ID NOT NULL NUMBER(5)

NAME VARCHAR2(30)

DOB DATE

MAR_STATUS VARCHAR2(10)

QUAL VARCHAR2(15)

EXP NUMBER(3)

SALARY NUMBER(8,2)

LIC VARCHAR2(15)

JDATE DATE

ADDR VARCHAR2(50)

CITY VARCHAR2(20)

Table name: Comments table

Description: To Store the comments send by the customers to administrator

Primary key: No primary key is used.

COMMENTS TABLE:

Name Null? Type

----------------------------------------------------- -------- -------------

NAME VARCHAR2(20)

ADDRESS VARCHAR2(30)

CITY VARCHAR2(20)

PHONE VARCHAR2(15)

EMAIL VARCHAR2(50)

COMENTS VARCHAR2(300)

CDATE DATE

STATUS NUMBER(1)

Table name: OutBox table

Description: To Store the messages sent by the administrator to customers.

Primary key: No primary key is used.

OUTBOX TABLE:

Name Null? Type

----------------------------------------------------- -------- --------------

EMAIL VARCHAR2(30)

MSG VARCHAR2(300)

CDATE DATE

STATUS NUMBER(2)

REQUIREMENT ANALYSIS OF ONLINE TAXICAB SERVICE

2.3 Functional model / Use case model :

2.3.1 Use Case Diagrams:

A use case diagram is quite simple in nature and depicts two types of elements: one representing the business roles and the other representing the business processes. Let us take a closer look at use at what elements constitute a use case diagram.

Actor: An actor portrays any entity (or entities) that perform certain roles in a given system. The different roles the actor represents are the actual business roles of users in a given system. An actor in a use case diagram interacts with a use case. An actor is shown as a stick figure in a use case diagram depicted outside the system boundary, as shown in below figure

Figure: an actor in a use case diagram

To identify an actor, search in the problem statement for business terms that portray roles in the system.

Use case: A use case in a use case diagram is a visual representation of distinct business functionality in a system. The key term here is distinct business functionality. To choose a business process as a likely candidate for modeling as the first step in identifying use cases, you should list the discrete business functions in your problem statement. Each of these business functions can be classified as a potential use case. Remember that identifying use cases is a discovery rather than a creation. As business functionality becomes clearer, the underlying use cases become more easily evident.

A use case is shown as an ellipse in a use case diagram (see the following figure)

Discovering implicit use cases is possible only with a thorough understanding of all the business processes of the system through discussions with potential users of the system and relevant domain knowledge.

The following relationships are shown in a use-case diagram:

1. Communication: The communication relationship of an actor in a use case is shown by connecting the actor symbol to the use-case symbol with a solid path. The actor is said to communicate with the use case.

2. Uses: A uses relationship between use cases is shown by a generalization arrow from the use case.

3. Extends: The extends relationships is used when you have one use case that is similar to another use case but does a bit more. In essence, it is like a subclass.

Identifying actors:

a) Customer: customer is the person who selects and books the taxi.

b) Administrator: administrator is the person who manages and maintains all the details.

Identifying Use cases:

Refining use cases:

Identifying relations among use cases :

Usecase Diagram of Customer:

UseCase NameCustomer Usecase

Participating

ActorsCustomer

Entry ConditionThe customer has a wish to reserve

Cab.

Flow of Events1. The customer fills his details in

the registration form provided.

2. The customer clicks Reserve

button.

3. If the customer fills all the fields

correctly, then the system prompts

to Bill form. There he pays the bill

and books his car.

4. Other wise, the system displays some

warning or error messages.

Exit ConditionWhen the customer pays bill successfully,

car is booked for him.

Use case diagram for Administrator

UseCase NameAdministrator Usecase

Participating

ActorsAdministrator

Entry ConditionThe administrator enters the system with valid

Login name and password..

Flow of Events1. New bookings are accepted by the

administrator.

2. New cars are updated by the adminstrator

3. Employee details are maintained and new employee

details are stored.

4. The administrators inbox contains messages sent by

Customers.

5. The administrator can compose and send mails to the

Customers. These are stored in outbox

Exit ConditionWhen all the details are updated, the administrator logs out

From the system.

Identifying entity objects

Entity objects represent the persistent information trapped by the system.

Employee details: The employees in organization

Taxi details : The taxies in the organizations

Customer details : The customers who reserved taxies in our organization

Identifying the boundary objects

Boundary objects represent the interaction between the actor and the system.

Reservation of Taxi : The customer booking the taxi

Bill Computation : Administrator computes the bill

Login of Administrator: Administrator logs on to the system by giving login

name and password to the system.

Identifying Control Objects

Control objects represent the tasks that are performed by the user and supported by the system.

Reservation of Taxi: customer reserves the taxi by specifying the taxi details for the required dates.

Bill Computation : Administrator computes the bill by the dates specified by the customer.

Identifying Associations

a)

b)

c)

d)

e)

2.4 Interaction DiagramsA sequence diagram is an interaction diagram that emphasizes the time ordering of messages. Graphically, a sequence diagram is a table that shows objects arranged along the X axis and messages, ordered in increasing time, along the Y axis.

It shows a set of objects and the messages sent and received by those objects.

The objects are typically named or anonymous instances of classes, but may also represent instances of their things, such as collaborations, components and nodes.

These diagrams are used to illustrate the dynamic view of a system.

2.4.1 Sequence Diagrams:

For customer module:

For Administrator module:

2.4.2 Collaboration Diagrams:

A collaboration diagram is an interaction diagram that emphasizes the structural organization of the objects that send and receive messages.

Graphically, a communication diagram is a collection of vertices and arcs.

It shows a set of objects, links among those objects and messages sent and received by those objects.

For Customer module:

For Administrator module:

2.4.3 State chart Diagrams:

For Customer module

For Administrator module

2.4.4 Activity diagrams

An activity diagram shows the flow from activity to activity within a system0.

An activity is an ongoing nonatomic execution within a state machine. The execution of an activity ultimately expands into the execution of individual actions, each of which may change the state of the system or communicate messages. Actions encompass calling another operation, sending a signal, creating or destroying an object, or some pure computation such as evaluating an expression.

Graphically, an activity diagram is a collection of nodes and arcs.

Activity diagram shows a set of activities, the sequential or branching flow from activity to activity and objects that act and are acted upon.

These are especially important in modeling the function of a system.

These diagrams emphasize the flow of control among objects.

It consists of action state or activity state, transitions and objects.

Action State:

These states cant be decomposed.

Activity State:

These states can be further decomposed.

Transitions:

We can specify the flow of control by the transitions from one activity to another activity.

At initial we specify the solid ball.

To stop we specify the solid ball in a circle.

Branching:

Branching can specify some condition.Branch can be represented as diamond.

For customer module

For Administrator module

Component Diagram

Package Diagram

Deployment Diagram

Profile Diagram

TESTING

Testing is a process of analyzing a system or system components to detect the differences between specified and observed behavior. In other words, testing is a fault detection technique that tries to create failures or erroneous states in a planned way. This allows the developer to detect failures in the system before it is released to the customer.

Test Plan:

A Test Plan is a plan prepared by the testers to follow a systematic procedure adapted to fulfill the process of testing. This includes the order of testing scenarios implemented.

As our system is concerned we follow the below procedures:

1. Point out what to be tested and where to be tested:

Treat the presence of connection to the database to obtain the data.

Check for the completeness of code to run the system.

Decide the portions of code to be tested and not to be tested.

Implemented the test scenarios and check the outputs with the specified ones.

2. Test criteria:Here we specify the conditions where the system may fail and add them to test conditions that are to be tested.

3. Test cases:

A test case is a set of input data and expected results that exercises a component with the purpose of causing failures and detecting faults. A test case has five attributes:

NameName of the test case.

LocationFull path name of executable.

InputInput data or commands.

OracleExpected test results against which the output of the test is compared.

LogOutput produced by the test

Some of the sample test cases for our project, Online Taxi Cab Service, are given below:

Test Case1

NameLogin test for Administrator

LocationAdminLogin. jsp

Input1

Oracle1

Log1Valid name& Password

The system will display administrator home page.

Administrator home page is displayed.

Input2

Oracle2

Log2Invalid name& Password

The system will display some error messages.

A message Invalid Username or Invalid Password is displayed

Test Case2

NameChecking Dates in Reserve Cab Form

LocationReserveCab. jsp

Input1

Oracle1

Log1Enterin starting date and return date correctly

The system will moves the cursor to next field,

Cursor is moved to next text field.

Input2

Oracle2

Log2Return date is less than starting date

The system will display some error messages.

A message Return Date must be greater than Starting date is displayed

Test Case3

NameChecking car availability

Location ReserveCab.jsp, CarAvailability.jsp

Input1

Oracle1

Log1 Selecting available car

The system will display success message and it displays bill form.

Bill form is displayed.

Input2

Oracle2

Log2Selecting engaged car

The system will display that car is not available.

Not available message is displayed.

IMPLEMENTATION

Introduction:

Implementation is the stage where the theoretical design is turned into a working system. The most crucial stage in achieving a new successful system and in giving confidence on the new systems for the users that it will work efficiently and effectively.

The system can be implemented only after through testing is done and it is found to work according to the specification. It involves careful planning, investigation of the current system and its constraints on implementation, design of methods to achieve the change over and an evolution of change over methods apart from planning. Two major tasks of preparing the implementation are education and training of the users and testing of the system.

Software Selected:

About Java Script

JAVA script enables you to embed commands in an HTML page. When a compatible web browser, such as Netscape Navigator 2 or higher or Internet explorer 3 or higher, downloads the page, your JAVA script commands are loaded by the web browser as part of the HTML document. These commands can be triggered when the user clicks page items, manipulates gadgets and fields in an HTML form, or moves through the page history list.

JAVA script is an interpreted language - the computer must evaluate the program every time it is run. You embed your JavaScript commands within an HTML page, and any browser that supports JavaScript can interprets the commands and act on them. JavaScript is powerful and simple.

Scripting Language:

JavaScript enables Web authors to write small scripts that execute on the users browsers rather than on the server. An application that collects data from a form and then posts it to the server can validate the data for completeness and correctness, for example, before sending it to the server. This can greatly improve the performance of the browsing session because users dont have to send data to the server until it has been verified as correct.

Another important Web browser scripting languages such as JavaScript comes as a result of the increased functionality being introduced for Web browsers in the form of Java applets, plug-ins, Dynamic HTML elements, Active X Controls, and VRML objects and worlds. Web authors can use each of these things to add extra functions and interactivity to a Web page. Scripting language acts as the glue that binds everything together.

A Web page might use an HTML form to get some user input and then set a parameter for a Java applet based on that input. It is usually a script that carries out.

Use of JavaScript:

JavaScript provides a fairly complete set of built-in functions and commands, enabling you to perform math calculations, manipulate strings, play sounds, open new windows and new URLs, and access and verify user input to your Web forms.

Code to perform these actions can be embedded in a page and executed when the page is loaded. We can also write functions containing code that is triggered by events you specify. You can write a JavaScript method that is called when the user clicks submit button of a form, for example, or one that is activate when the user clicks a hyperlink on the active page.

JavaScript can also set the attributes, or properties, of Web page elements, Active-x controls, Java applets and other objects present in the browser.

This way, you can change the behavior of plug-ins or other objects without having to rewrite them. Your JavaScript code could automatically set the text of an Active-X Label Control, for example, based on what time the page is viewed.

JavaScript commands are embedded in your HTML documents. Embedding JavaScript in your pages requires only one new HTML element: and . The element takes the attribute LANGUAGE, which specifies the scripting language to use when evaluating the script, and SRC, which can be used to load a script from an external source.

The following are some simple rules to help you understand how the language is structured:

JavaScript is case sensitive.

JavaScript is flexible about statements. A single statement can cover multiple lines, and you can put multiple short statements on a single line - just make sure to add a semicolon (;) at the end of each statement.

Braces (the {and} characters) group statements into blocks; A block may be the body of a function or a section of code that gets executed in a loop or as part of the conditional test.

JavaScript is designed to resemble Java, which, in turn, looks a lot like C and C++. The difference is that Java was built as a General-purpose object language; JavaScript, on the other hand, is intended to provide a quicker and simpler language for enhancing Web pages and servers.

About HTML (HYPER TEXT MARKUP LANGUAGE)

HTML is a language used to create hypertext documents that have hyperlinks embedded in them .You can build web pages. It is only a formatting language and not a programming language. Hyperlinks are underlined or emphasized words or locations in a screen that lead to other documents. WWW is a global, interactive, graphical, hypertext information system.

The behind hypertext is that instead of reading text in rigid liner structure you can easily jump from point to another point .You can navigate through the information based on your interest and preferences.

Hyper Media

HTML pages audio and video files linked to them are Hyper Media.

HTML is platform independent

If you can access Internet, you can access WWW, irrespective of your Operating System and the Operating System of Web Server you are accessing .All you require is to view and download the HTML files, which are on the WWW, are browser and Internet connections.

HTML is a language for describing structured documents. HTML describes the structure of documents -lists, heading, and paragraph, etc. Elements of web document are through the usage of HTML tags. It is tags that describe documents. Anything that is not a tab is part of a document itself.

HTML does not describe page layout

Word for windows or Lotus AmiPro for example, have different styles for Headings, fonts, size and identification. HTML does not have all these.

Based on the platform, exact placement or appearance of any element will change. There may be or may not be fonts installed. So your formatted text will appear differently on differently on different machines/platforms.

By separating the structure of the document and its appearance, a program that reads and understands HTML can make formatting decision based on capabilities of the individual platform. In addition to providing the networking functions to retrieve documents, web browsers are also HTML formatters. They parse and format documents and display them on the screen. Different browsers show data differently.

Advantages:

An HTML document is a small and hence easy to send over the net. It is small because it does not include format information.

HTML documents are cross platform compatible and device independent. You only need HTML readable browser to view them. Font names, locations etc are required.

About DBMS (DATABASE MANAGEMENT SYSTEMS)

A DBMS consists of a collection of interrelated date and a set of programs to access that data and to modify the data. The collection of data is usually referred as the database. The database contains information about any particular enterprise. The primary goal of a DBMS is to provide an environment that is both convenient and efficient to use in retrieving and storing information into the database.

Database systems are designed to manager large bodies of information. The management of data involves both the definition of the structure for the storage of information and the provision of mechanisms for the manipulation of information. In addition the database system must provide for the safety of information stored in the database despite system crashes or attempts by users, the system must avoid possible anomalous results.

Characteristics of Database Management SystemsIt represents complex relationships between data.

Keeps a tight control on data redundancy.

Enforces user-defined rules to ensure that integrity of table data.

Enforces threat data can be shared by different applications.

Enforces data access authorization.

Have automatic, intelligent backup and recovery procedures for data.

Have different interfaces via which users can manipulate data.

The data is stored in the form of tables. The tables consist of one or more records or rows. Each row has one or more fields or columns. The unit of data is accessed by a row and column intersection. A column that has a unique set of values through out the table can be used to access the data. Such a column is called the key or the primary Key. If no such single column exists, using a set of columns such that when combined they are unique throughout the table can access the data. These set of columns are called Composite Key.

In short modern (Relational) RDBMS act as a transparent interface between the physical storage and the logical presentation of data. It provides a set of flexible and sophisticated tools for handling information. The tools can be used to

Define a database.

Query a database.

Add, delete and modify the database.

Modify the structure of the database.

Secure the data public access.

Communication within networks or time sharing environments.

Export and import the data.

Introduction to oracle

Oracle is comprehensive operating environment that packs h power of mainframe relation database management system into users microcomputer. It provides a set of functional program that user can use as tools to build structures and perform tasks. Because applications are developed on oracle are completely portable to the other versions of the programmer can create a complex application in a single user, environment and then move it to a multi-user platform. Users do not have to be an expert to appreciate oracle but the better user understands the program, the more productively and creatively he can use the tools it provides.

Relational Database Management System

Oracle the right tool

Oracle gives you security and control

Database management tools

Structure of Oracle Database

Oracle database can be describe at two different levels

Physical Structure

Logical Structure

Physical Structure:

a) One or more data files

b) Two or more log files

c) One control file

Logical Structure

a) Table spaces

b) Segments

c) Extents

d) Data Blocks

The data files contain all user data in terms of tables, index and views. The log files contain the information to open and be recovered, of undone after a transaction (Rollback).

The control files contain physical data, media information to open and manage data files. If the control file is damaged the server will not be able to open or use the database even if the database is undamaged.

Apache Tomcat

Apache Tomcat is a web container developed at the Apache Software Foundation (ASF). Tomcat implements the servlet and the Java Server Pages (JSP) specifications from Sun Microsystems, providing an environment for Java code to run in cooperation with a web server. It adds tools for configuration and management but can also be configured by editing configuration files that are normally XML-formatted. Tomcat includes its own internal HTTP server.

EnvironmentTomcat is a web server that supports servlets and JSPs. The accompanying Tomcat Jasper compiler compiles JSPs into servlets.

The Tomcat servlet engine is often used in combination with an Apache HTTP Server or other web servers. Tomcat can also function as an independent web server. Earlier in its development, the perception existed that standalone Tomcat was only suitable for development environments and other environments with minimal requirements for speed and transaction handling. However, that perception no longer exists; Tomcat is increasingly used as a standalone web server in high-traffic, high-availability environments.

Tomcat is cross-platform, running on any operating system that has a Java Runtime Environment.

HistoryTomcat started off as a servlet reference implementation by James Duncan Davidson, a software architect at Sun Microsystems. He later helped make the project open source and played a key role in its donation by Sun to the Apache Software Foundation. The Apache Ant software build automation tool was developed as a side-effect of the creation of Tomcat as an open source project.

Davidson had initially hoped that the project would become open sourced and, since most open source projects had O'Reilly books associated with them featuring an animal on the cover, he wanted to name the project after an animal. He came up with Tomcat since he reasoned the animal represented something that could take care of and fend for itself. His wish to see an animal cover eventually came true when O'Reilly published their Tomcat book with a tomcat on the cover.

CONCLUSION

Conclusion of the system describes the satisfaction of the users, as well as the description of the pattern in which the system works and the comments of he client.

The conclusions made by the user as follows:

All the operations present in the system are working as per the requirements

The system is working at a considerable speed and throughput.

The objectives of the project are achieved and satisfactory.

The Look & Feel of the system is efficient.

The references and links present in the system are much helpful for the users of the system.

Scope for Expansion

This project is having a broad future scope as it can be extended to provide services to the customers (seekers or employers) online. This system can be implemented for online transactions without the intervention of the authority.

If it is done so, the employer can post a job and a jobseeker can search for a job from anywhere in the world. He can apply for the required job without wastage of time. In other words the future scope is to provide the service over the Internet.

BIBLIOGRAPHY

JAVA-2 Complete-Reference

Author : Patrice Norton & Herbert Child

Publisher : Tata McGraw Hill

Year : 1998 Software Engineering Concepts

Author : Fairley

Publisher : (TATA MC-GRAW Hill publication, Third Edition)

Year : 1985

HTML Black Book

Author : Steven HolznerPublisher : BPB Publications

Year : 2000

Advanced Java Server Pages

Author: David M. Geary

Publisher: Sun Microsystems

Year: 2001

Process Name

Entity

Checking reservation details,

Reserve a cab, Send comments.

Adding new car details, new employee details, new bookings

Online Taxi Cab Service

Admin

Customer

Actor

Use case

customer

Reserve a cab

Bill

Calculation

customer

Contact

Company

Login

Administrator

Administrator

New

Booking

New Car

New

Employee

Administrator

Compose

Outbox

Inbox

customer

Contact

Company

Reservation

Bill

Computation

Administrator

customer

Contact

Company

Reservation

Bill

Computation

Administrator

customer

Home

Reserve a Cab

Feedback

Bill computation

Administrator

Login

New Car Entry

New Bookings

Feedback Reply

Employee Details

New Employee

Entry

Customer

Database

User

Information

Receives

User

Customer

Database

Information

Books

Receives

Information

Sends

User

Customer

Mails

Administrator

Information

Logs on

Administrator

Database

User

Information

User

Administrator

Database

Adds details

Customer

Home

Reserve a

cab

Bill

Database

Retrieve Details

Reserve a Cab( )

Issue Bill( )

Store Details

Database

Administrator

Customer

1. Login( )

2. Add Details ( )

3. Retrieve Details( )

4. Store Details( )

5. Receive Mails( )

6. Reply to Mails( )

Customer

Home

Database

Bill

Reserve a Cab

1.Retrieve Details( )

2.Reserve Cab( )

3. Issue Bill( )

4.Store Details( )

2. Add details( )

Administrator

Customer

Database

1. Login ( )

4. Store Details

3. Retrieve

Details( )

6. Reply Mails( )

5. Receive

Mails( )

Retrieve Details

Store details( )

Issue bills

Selection of another cab

Reserve cabs

Cab free

yes

No

To customer

From customer

From customer

database

Login

Add Details

Retrieve Details

Store Details

Receive mails

Reply mails

Administrator

Retrieve Details

Reserve a cab

Store details

Issue bill

Selection of another

cab

Cab free

yes

No

Login

Add Details

Recieve Details

Retrieve Details

Store Details

Reply Mails

Issue Bill

return copy of self

business rules

server

order. java

EventMgr

flush()

suspend()

EMBED PBrush

Window

origin

size

open()

close()

move()