0% found this document useful (0 votes)
74 views19 pages

Submitted in Partial Fulfillment of The Requirements For The Award of The Diploma Engineering of Department of Technical Education in

This document is a project report submitted in partial fulfillment of requirements for a diploma in engineering. It describes a railway reservation system project developed using C++. The project allows an admin to create users, manage train information like schedules and seat availability, and allows users to book and cancel tickets for passengers. It uses object-oriented programming concepts and file handling for the database. The summary is presented in 3 sentences.

Uploaded by

pradeepgowda1111
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
74 views19 pages

Submitted in Partial Fulfillment of The Requirements For The Award of The Diploma Engineering of Department of Technical Education in

This document is a project report submitted in partial fulfillment of requirements for a diploma in engineering. It describes a railway reservation system project developed using C++. The project allows an admin to create users, manage train information like schedules and seat availability, and allows users to book and cancel tickets for passengers. It uses object-oriented programming concepts and file handling for the database. The summary is presented in 3 sentences.

Uploaded by

pradeepgowda1111
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 19

Submitted in partial fulfillment of the requirements for the award of the

Diploma Engineering of Department of Technical Education in

PROJECT REPORT
On
“Railway Reservation System”

Submitted

Paramash.H.N Pradeepa.G.Y

(203CS08022) (203CS08024)

Under The Guidance Of

Mr. Prakash B M

Lecturer and HOD, Dept. of CSE

Department of Computer Science & Engineering

ACHARYA PATASHALA PLOYTECHNIC


Somanahalli , Bengaluru 560082
2010-2011

DEPARTMENT OF TECHNICAL EDUCATION BENGALURU


ACHARYA PATASHALA PLOYTECHNIC
26th KM Kan akapura main road, Somanahalli, Bengaluru 560082

Department of Computer Science and Engineering

CERTIFICATE
Certified that the Project Report entitled “Railway Reservation System” is carried out by
Paramesh.H.N bearing Reg no 203cs08022 Pradeep.G.Y bearing Reg no 203cs08024 and
a bonafied student of ACHARYA PATASHALA POLYTECHNIC, Somanahalli, in partial
fulfillment for the award of Diploma Engineering in Computer Science & Engineering of the
Department of Technical University, Karnataka, during the year 2010-2011. It is certified
that all corrections/suggestions indicated for Internal Assessment have been incorporated in the
report. This project report has been approved as it satisfies the academic requirements in respect
of project work prescribed for Diploma Engineering.

Signature of Guide Signature of HOD Signature of Principal


Ms. Paveena R Mr. Prakash B M Mr Sathya Narayana Babu
Lecturer, Dept. of CSE Head Dept. of CSE, APSP Principal of APSP

Name of Examiners: Signature with Date

1.

2.
SYNOPSIS

Title : Railway Reservation System

Platform: windows (xp,vista,7).

Software requires : C++ compiler (turbo c).

Hardware requires: 32 bit processor, 1 GB RAM, 20 MB HD.

About :

The Railway Reservation System is a program for ticket reservation, which process the
advance booking & cancelations of seats. Here admin can create number of user, provide
authority to user to reserve tickets for passengers & edit or create any new train information like
number of seats present in train, train name, train no, source, destination, etc. In this system the
ticket rates may differ to people like senior citizens, children, govt workers, etc

Team members :
Paramesh H.N
Pradeep G.Y
INTERDUCTION
Interduction:-

This project introduces railway reservation system. It explains how reservation is being done in
Indian Railways. The step by step procedure is explained. This project is developed in c ++
language. Allmost all the header files have been used in this project. Proper comments have been
given at desired locations to make the project user friendly. Various functions and structures are
used to make a complete use of this language. Thos project is well versed with the programming.
Railway reservation can easily accompanied with the help of this.

The Railway Reservation System is a program for ticket reservation, which process the advance
booking & cancelations of seats. Here admin can create number of user, provide authority to user
to reserve tickets for passengers & edit or create any new train information like number of seats
present in train, train name, train no, source, destination, etc. In this system the ticket rates may
differ to people like senior citizens, children, govt workers, etc

Today one cannot afford to rely on the fallible human beings of be really wants to stand against
today’s merciless competition where not to wise saying “to err is human” no longer valid, it’s
outdated to rationalize your mistake. So, to keep pace with time, to bring about the best result
without malfunctioning and greater efficiency so to replace the unending heaps of flies with a
much sophisticated hard disk of the computer. One has to use the data management software.
Software has been an ascent in atomization various organizations. Many software products
working are now in markets, which have helped in making the organizations work easier and
efficiently. Data management initially had to maintain a lot of ledgers and a lot of paper work
has to be done but now software product on this organization has made their work faster and
easier. Now only this software has to be loaded on the computer and work can be done. This
prevents a lot of time and money. The work becomes fully automated and any information
regarding the organization can be obtained by clicking the button. Moreover, now it’s an age of
computers of and automating such an organization gives the better look.
INTRODUCTION TO C++:-
Bjarne Stroustrup began work on "C with Classes" in 1979. The idea of creating a new
language originated from Stroustrup's experience in programming for his Ph.D. thesis. Stroustrup
found that Simula had features that were very helpful for large software development, but the
language was too slow for practical use, while BCPL was fast but too low-level to be suitable for
large software development. When Stroustrup started working in AT&T Bell Labs, he had the
problem of analyzing the UNIX kernel with respect to distributed computing. Remembering his
Ph.D. experience, Stroustrup set out to enhance the C language with Simula-like features. C was
chosen because it was general-purpose, fast, portable and widely used. Besides C and Simula,
some other languages that inspired him were ALGOL 68, Ada, CLU and ML. At first, the class,
derived class, strong type checking, inlining, and default argument features were added to C via
Stroustrup's C++ to C compiler, Cfront. The first commercial implementation of C++ was
released on October 14th, 1985.

In1983, the name of the language was changed from C with Classes to C++ (++ being the
increment operator in C). New features were added including virtual functions, function name
and operator overloading, references, constants, user-controlled free-store memory control,
improved type checking, and BCPL style single-line comments with two forward slashes (//). In
1985, the first edition of The C++ Programming Language was released, providing an important
reference to the language, since there was not yet an official standard. Release 2.0 of C++ came
in 1989 and the updated second edition of The C++ Programming Language was released in
1991. New features included multiple inheritance, abstract classes, static member functions,
const member functions, and protected members. In 1990, The Annotated C++ Reference
Manual was published. This work became the basis for the future standard. Late addition of
features included templates, exceptions, namespaces, new casts, and a Boolean type.

As the C++ language evolved, the standard library evolved with it. The first addition to the
C++ standard library was the stream I/O library which provided facilities to replace the
traditional C functions such as printf and scanf. Later, among the most significant additions to
the standard library, was the Standard Template Library. C++ continues to be used and is one of
the preferred programming languages to develop professional applications.

To develop a C++project to manage a railway ticket reservation service using object


oriented programming and data file handling. The C++programming language was developed at
AT&T Bell laboratories in the early igSo’s by Biarne Stroustrup. He found out “C” lacking for
simulating and decided to extend the language by adding features from his favourite language.
SimtaSj was one of the earliest object-oriented languages. Biarne Stroustrup called it “C with
classes” originally. The name C++ was coined by Rick Mascitti where”++”is the C increment
operator. Ever since its birth, C++ evolved to cope with problems encountered by users, and
through discussions at AT&T.
The major reasons for its success is the support for object oriented programming, which is
most near to real world situations.“Object-oriented technology is regarded as the ultimate
paradigm for the modeling of the information in the data of logic. The C++ is now shown to
fulfill this goal”. This is a project based on train reservation. The program helps us to enter,
display or alter the details of different trains. Moreover & most importantly the program helps us
to reserve or cancel a train ticket. The program also helps us to know the present status of a
reserved ticket, i.e. whether the ticket is confirmed or not .It includes various function programs
to do the above mentioned tasks. Data file handling has been effectively used in the program.
This program uses the concept of object-oriented programming and data file handling. The
database is a collection of interrelated data to serve multiple applications. That is database
programs create files of information. So we see that files are worked with most, inside the
program.

BASIC CONCEPTS OF OBJECT ORIENTED PROGRAMMING:-


‘Object-oriented’ remains a term which is interpreted differently by different people. It is
therefore necessary to understand some of the concepts used extensively in object-oriented
programming. Let us discus following concepts.

OBJECTS:-
Objects are the basic run-time entities in an object-oriented system. They may represent a
person, a place, a bank account, a table of data or any item that the program must handle. They
may also represent user defined data such as vectors, time and lists. Programming problem is
analyzed in terms of objects and the nature of communications between them. Program objects
should be chosen such that they match closely with real world object. When a program is
executed the objects interface by sending messages to one another,

CLASSES:-
A class definition is similar to a ‘c’ structure definition the entire set of data and code of an
object can be made a user defined data type with the help of class. Infect objects are variables of
type class. Each object is associated with the data of type class each object is associated with the
data of type class with which they are created. A class is thus a collection of objects of similar
type. Thus a class is a user defined type in c++ and object is an instance of a class. Each object
holds its own copies of the data abstraction to a user defined type. It combines data
representation and methods for manipulating that data into one class’s package.
The general syntax for declaring the class is:-
Class<class name>
{
private: declaring data
Declaring functions;//methods
public: declaring data;
Declaring functions;//methods
Protected: declaring data;
Declaring functions;//methods
};

DATA ABSTRACTION AND ENCAPSULATION:-

The first step of solving a programming approach is to describe the data in terms of its
interface with the program, specifying how the data is used. Thus data abstraction in the crucial
step of representing into in terms of its interface with the user. Abstraction refers to the act of
representing with the user. Abstraction refers to the act of representing essential features without
including the background details or explanation in other words. Classes use the concept of
abstraction and are defined as a list of abstract attributes. They encapsulate all the essential
properties of the object are to be created.

INHERITANCE:-

Class Inheritance is the process by which objects of one class acquire the properties of objects
of another class. Inheritance supports the concepts of hierarchical classifications for Ex: The
bird done is part of a class flying bird which is again a part of the class bird. The concept behind
this kind of classification is that each derived class shares common characteristics with the class
from which it is derived. in oop’s the concept of inheritance provides the idea of reversibility this
means that we can add additional features to an existing class without modifying it.

POLYMORPHISM:-

Polymorphism is another important oop concept. Polymorphism means the ability to take
more than one form. For Ex: an operation may exhibit different behavior in different instances.
The behavior depends upon the types of data used in the operation. A function polymorphism,
also called function overloading lets you use multiple function sharing the same name. Function
overloading permits you to attach more than one function name can be used to handle, different
number and different types of arguments. This is something similar to a particular word having
several different meaning on the context.
DYNAMIC BINDING:-
Binding refers to the linking of a procedure call to the code to be executed in response to the
call. Dynamic binding means that the code associated with a given procedure call is not known
until the time of the call at run-time. It is associated with polymorphism and inheritance the
function call associated with the polymorphism reference depends on the dynamic type of that
reference.

MESSAGE PASSING:-
An object-oriented program consists of a set of objects that communicate with each other.
The process of programming in an object-oriented language therefore involves the following
basic steps:

1) Creating classes that define objects their behavior.


2) Creating objects from class definitions.
3) Establishing communication among objects.
Message passing involves specifying the name of the object, the name of the function (message)
and the information to be sent.

Eg: employee salary (name)

Object message information

Application of oop’s:-

1. Real time systems.


2. Simulation and modeling.
3. Object oriented data types.
4. Hypertext, hyper model and expertext.
5. Artificial interface and expert system.
6. Neural methods and parallel programming.
7. Decision support and office automation system.
8. Computer added machine, Computer interface machine.
9. Computer design machine.
Major features that are required for object-based programming are:-

1. Data encapsulation
2. Data hiding and access mechanisms
3. Automatic initialization and clear-up-of –object
4. Operator overloading

Object –oriented programming incorporates all of object based programming features along
with two additional features, namely, inheritance and dynamic binding. If is characterized by the
following statement.

Object-based features +inheritance +dynamic binding

Features or characteristics of OOP’s:-


1. It gives more important to data rather than procedures.
2. Function that operate on the data of an object into type to gather in the data Structure.
3. Program are divided into objects
4. Data is hidden and cannot be accused by external Functions.
5. Objects may communicate with each other through functions.
6. New data and functions can be easily added whenever necessary.
7. Follows bottom up approach in program design.

OBJECT-ORIENTED LANGUAGES:-
Object-Oriented programming is not the right of any particular like standard programming;
oop concepts can be implemented using languages such as C and Pascal.
Depending upon the features they support, they can be classified into the following two
categories:

!) Object-based programming language


!!) Object-oriented programming languages
Benefits or advantages of OOP’s:-

1. We can elements redundant code and extend the use of existing classes.
2. We can build program from the standard workers modules that communication with one
another rather than having to start writing the code from scratch the leads the saving of
developing time and higher productivity.
3. The principle of data hiding helps the programmer to build secure process that cannot be
involved by code in other parts of the process.
4. It is possible to have multiple instance of an object to coexist without any interface.
5. It is possible to map objects in the problem domain to those in the program.
6. It is easy to partition the work in a project based on objects.
7. The data centered design approach enables us to capture more data of a model in
implementation form.
8. object-oriented systems can be easily upgraded from small to large system.
9. Message passing techniques for communication between objects makes. the Interface
description with external system much simpler.
10. Software components can be easily managed.

Phases of Software development:-


 Requirements Analysis Phase
 Planning Phase
 Design Phase
 Test Phase
 Maintenance Phase

Requirements Analysis Phase:-

This phase formally defines the detailed functional user requirements using high-level
requirements identified in the Initiation, System Concept, and Planning phases. It also delineates
the requirements in terms of data, system performance, security, and maintainability
requirements for the system. The requirements are defined in this phase to a level of detail
sufficient for systems design to proceed.

They need to be measurable, testable, and relate to the business need or opportunity identified in
the Initiation Phase. The requirements that will be used to determine acceptance of the system
are captured in the Test and Evaluation Master Plan.
The purposes of this phase are to:

 Further define and refine the functional and data requirements and document
them in the Requirements Document,
 Complete business process reengineering of the functions to be supported
 Develop detailed data and process models
 Develop the test and evaluation requirements that will be used to determine
acceptable system performance.

Planning Phase:-
The planning phase is the most critical step in completing development, acquisition, and
maintenance projects. Careful planning, particularly in the early stages of a project, is necessary
to coordinate activities and manage project risks effectively. The depth and formality of project
plans should be commensurate with the characteristics and risks of a given project.

Project plans refine the information gathered during the initiation phase by further identifying
the specific activities and resources required to complete a project. A critical part of a project
manager’s job is to coordinate discussions between user, audit, security, design, development,
and network personnel to identify and document as many functional, security, and network
requirements as possible.

During this phase, a plan is developed that documents the approach to be used and includes a
discussion of methods, tools, tasks, resources, project schedules, and user input. Personnel
assignments, costs, project schedule, and target dates are established.

A Project Management Plan is created with components related to acquisition planning,


configuration management planning, quality assurance planning, concept of operations, system
security, verification and validation, and systems engineering management planning.

Design Phase:-
The design phase involves converting the informational, functional, and network
requirements identified during the initiation and planning phases into unified design
specifications that developers use to script programs during the development phase. Program
designs are c onstructed in various ways. Using a top-down approach, designers first identify and
link majorprogram components and interfaces, then expand design layouts as they identify and
link smaller subsystems and connections. Using a bottom-up approach, designers first identify
and link minor program components and interfaces, then expand design layouts as they identify
and link larger systems and connections.

Contemporary design techniques often use prototyping tools that build mock-up designs of
items such as application screens, database layouts, and system architectures. End users,
designers, developers, database managers, and network administrators should review and refine
the prototyped designs in an iterative process until they agree on an acceptable design. Audit,
security, and quality assurance personnel should be involved in the review and approval process.

During this phase, the system is designed to satisfy the functional requirements identified in
the previous phase. Since problems in the design phase could be very expensive to solve in the
later stage of the software development, a variety of elements are considered in the design to
mitigate risk. These include:

• Identifying potential risks and defining mitigating design features.


• Performing a security risk assessment.
• Developing a conversion plan to migrate current data to the new system.
• Determining the operating environment.
• Defining major subsystems and their inputs and outputs.
• Allocating processes to resources.
• Preparing detailed logic specifications for each software module.

Test Phase:-
Subsystem integration, system, security, and user acceptance testing is conducted during the
integration and test phase. The user, with those responsible for quality assurance, validates that
the functional requirements, as defined in the functional requirements document, are satisfied by
the developed or modified system. OIT Security staff assess the system security and issue a
security certification and accreditation prior to installation/implementation.

Multiple levels of testing are performed, including:

• Testing at the development facility by the contractor and possibly supported by end users
• Testing as a deployed system with end users working together with contract
personnel
• Operational testing by the end user alone performing all functions. Requirements are
traced throughout testing, a final Independent Verification & Validation evaluation is performed
and all documentation is reviewed
and accepted prior to acceptance of the system.

Maintenance Phase:-
The system operation is ongoing. The system is monitored for continued performance in
accordance with user requirements and needed system modifications are incorporated.
Operations continue as long as the system can be effectively adapted to respond to the
organization’s needs. When modifications or changes are identified, the system may reenter the
planning phase.

The purpose of this phase is to:


• Operate, maintain, and enhance the system.
• Certify that the system can process sensitive information.
• Conduct periodic assessments of the system to ensure the functionalrequirements
continue to be satisfied.
• Determine when the system needs to be modernized, replaced, or retired.

Implementation Phase:-

This phase is initiated after the system has been tested and accepted by the user. In this phase, the
system is installed to support the intended business functions. System performance is compared
to performance objectives established during the planning phase. Implementation includes user
notification, user training, installation of hardware, installation of software onto production
computers, and integration of the system into daily work processes. This phase continues until
the system is operating in production in accordance with the defined user requirements and
accepted prior to acceptance of the system.
SOURCE CODE
OUTPUT
CONCLUSION:-
This project introduces railway reservation system. It explains how reservation is being
done in Indian Railways. The step by step procedure is explained. This project is developed in c
++ language. Allmost all the header files have been used in this project. Proper comments have
been given at desired locations to make the project user friendly. Various functions and
structures are used to make a complete use of this language. Thos project is well versed with the
programming. Railway reservation can easily accompanied with the help of this.

The Railway Reservation System is a program for ticket reservation, which process the
advance booking & cancelations of seats. Here admin can create number of user, provide
authority to user to reserve tickets for passengers & edit or create any new train information like
number of seats present in train, train name, train no, source, destination, etc. In this system the
ticket rates may differ to people like senior citizens, children, govt workers, etc

ADVANTAGES OF RAILWAY RESERVATION SYSTEM:-


Now one can easily plan the journey comfortably as the process is efficient and fast with
being easy to access. Reservations can be made through the Indian railways site or at the ample
reservation centers all over the country. Also now there are authorized agencies which provide
reservation facility on behalf of India railways and without waiting in long line one can easily
book a ticket. The booking is done through an E- Ticket issue which have a PNR number of
which one has to take a print and just have to show at the station. It not only provide reservation
but cancellation can also be done through this system at ease and one can use a credit card to
complete the process. This being a big step in terms of improvement in the railway system it is
widely accepted across the country.
HARDWARE REQUIREMENTS:-
I. OPERATING SYSTEM : Any

II. PROCESSOR: 1.PENTIUM(ANY) OR AMD ATHALON(3800+- 4200+ DUAL


CORE)

III. MOTHERBOARD: 1.845 OR 915,995 FOR PENTIUM 0R MSI K9MM-V VIA


K8M800+8237R PLUS CHIPSET FOR AMD ATHALON

IV. RAM:512MB+

V. Hard disk:
Sata 40 gb or above

VI. CD/DVD r/w multi drive combo

VII. FLOPPY DRIVE


1.44 MB

VII. MONITOR 14.1 or 15 -17 inch

IX. Key board and mouse

X. Printer

SOFTWARE REQUIREMENTS:-

I. office XP

BIBLIOGRAPHY:-
These are the following links which assist me at each and every step in compliting this project ,
without them i was not be able to finish this important project:-

1.www.scribd.com
2.www.wikipedia.com
3.www.answers.com
4.www.askme.com
5.www.esnips.com

Instead of these useful websites, following books also help me:


1. OBJECT ORIENTED PROGRAMMING WITH C++
BY E.BALAGURUSWAMI
2. OBJECT ORIENTED PROGRAMMING
BT ROBERT LAFORE

You might also like