RAILWAY RESERVATION SYSTEM RAILWAY RESERVATION SYSTEM
This system is basically concerned with the reservation and cancellation of railway tickets This system is basically concerned with the reservation and cancellation of railway tickets to the passengers. The need of this system arose because as is the known fact that India has to the passengers. The need of this system arose because as is the known fact that India has the largest railway network in the whole of the world and to handle it manually is quite a the largest railway network in the whole of the world and to handle it manually is quite a tough job. By computerizing it, we will be able to overcome many of its limitations and tough job. By computerizing it, we will be able to overcome many of its limitations and will be able to make it more efficient. The handling of data and records for such a vast will be able to make it more efficient. The handling of data and records for such a vast system is a very complex task if done manually but it can be made much easier if the system is a very complex task if done manually but it can be made much easier if the system is computerized.
system is computerized.
To be more specific, our system is limited in such a way that a train starting from a To be more specific, our system is limited in such a way that a train starting from a partic
particular souular source wilrce will have a sl have a single desingle destination.tination.
The basic functions being performed by our system are reservation and cancellation. These The basic functions being performed by our system are reservation and cancellation. These functions will be handled with the help of following sub functions:
functions will be handled with the help of following sub functions: - Ñ It re
Ñ It reserves aserves and cancelnd cancels seats fs seats for the por the passengassenger.er. Ñ It cont
Ñ It contains infoains informatirmation about ton about the trainshe trains.. Ñ It cont
Ñ It contains infoains informatirmation about ton about the passehe passenger.nger. Ñ It cont
Ñ It contains the ains the details odetails of resef reservation fervation fees, any cones, any concessiocessions etc.ns etc. Ñ It ma
Ñ It makes entrkes entries for ies for reserreservation, wavation, waiting, caniting, cancelled tcelled tickets.ickets. Ñ It wi
Ñ It will updatll update for upte for uptime and dime and downtimowntime trainse trains..
Index:-· System Specification · System Specification § Security § Security
§ Limitation of Executing System § Limitation of Executing System · Data Flow Diagrams
· Data Flow Diagrams · Description of Flow Chart · Description of Flow Chart · Entity Relationship Diagrams · Entity Relationship Diagrams · Feasibility Study
· Feasibility Study
· Introduction of Feasibility study · Introduction of Feasibility study · Summary · Summary · Testing · Testing · Debugging · Debugging · Conclusion · Conclusion · Reference · Reference SYSTEM SPECIFICATION SYSTEM SPECIFICATION
The railway network is a very vast system to be handled manually and its computerization The railway network is a very vast system to be handled manually and its computerization will prove to be of great help to both the employees and the passengers.
SECURITY:-From security point of view, authentication will be done by password checking. If correct From security point of view, authentication will be done by password checking. If correct passwo
password has brd has been entereen entered by the ued by the user, the ser, the user wiuser will get fll get further aurther access tccess to the syso the system,tem, otherwise he will have to re-enter the password. The facility to change the password has otherwise he will have to re-enter the password. The facility to change the password has also been provided but for that the user will have to first enter the old password. The also been provided but for that the user will have to first enter the old password. The passwo
password can be rd can be four chafour characterracters long.s long.
LIMITATIONS OF EXISTING SYSTEM: LIMITATIONS OF EXISTING SYSTEM: - Ñ
ÑData redundancy:Data redundancy: It means that same data fields appear in many different files andIt means that same data fields appear in many different files and
often in different formats. In manual system, it poses quite a big problem because the data often in different formats. In manual system, it poses quite a big problem because the data has to be maintained in large volumes but in our system, this problem can be overcome by has to be maintained in large volumes but in our system, this problem can be overcome by providi
providing the conng the condition tdition that if that if the data entehe data entered is dred is duplicatuplicate, it wile, it will not be l not be enteredentered,, otherwise, updating will take place.
otherwise, updating will take place. Ñ
ÑDifficulty in accessing the data:Difficulty in accessing the data: In manual system, searching information is timeIn manual system, searching information is time
consuming but in our system, any information can be accessed by providing the primary consuming but in our system, any information can be accessed by providing the primary key.
key. Ñ
ÑUnsatisfactory security measures:Unsatisfactory security measures: In manual system, no security measures wereIn manual system, no security measures were
provide
provided but in thd but in this systis system, passem, password sword securitecurity has beey has been providen provided. The ped. The person can arson can accessccess the system by providing the correct password otherwise he is denied the access.
the system by providing the correct password otherwise he is denied the access.
DATA FLOW DIAGRAMS DATA FLOW DIAGRAMS
The data flow diagram is a graphical representation that depicts information flow and the The data flow diagram is a graphical representation that depicts information flow and the transforms that are applied as data moves from input to output. The DFD may be used to transforms that are applied as data moves from input to output. The DFD may be used to represent a system or software at any level of abstraction. In fact DFD may be partitioned represent a system or software at any level of abstraction. In fact DFD may be partitioned into levels that represent increasing information flow and functional detail.
into levels that represent increasing information flow and functional detail.
The level 0 DFD or a context model represents the entire software element as a single The level 0 DFD or a context model represents the entire software element as a single bubble w
bubble with input ith input and outand output data iput data indicatendicated by incomd by incoming and oing and outgoing autgoing arrows, rrows, resperespectively.ctively. In level 0 diagram shown below, the passenger fills either the reservation or cancellation In level 0 diagram shown below, the passenger fills either the reservation or cancellation form as input. He gets the ticket as the output and the report is sent to the administration. form as input. He gets the ticket as the output and the report is sent to the administration.
Up/down train info Up/down train info
Fill cancellation form Fill cancellation form Passenger
Fill reservation form
Fill reservation form resva/cancle inforesva/cancle info Ticket info
Ticket info passenger infopassenger info
Waiting info Waiting info
Level - 1 data flow diagram Level - 1 data flow diagram
Admin Admin
Up Storage Up Storage
Down Storage Down Storage
A level 1 DFD is the furthur refinement of level 0 DFD showing greater details and A level 1 DFD is the furthur refinement of level 0 DFD showing greater details and functionalities. In this, the single bubble of level 0 DFD is refined furthur . Each of the functionalities. In this, the single bubble of level 0 DFD is refined furthur . Each of the proces
processes depises depicted at lcted at level 1 is evel 1 is a subfunca subfunction of ttion of the overalhe overall systel system depictm depicted in the ced in the contextontext model.
model.
As shown in the DFD above, the passenger either enquires about the trains or goes directly As shown in the DFD above, the passenger either enquires about the trains or goes directly for the reservation or the cancellation processes as a result of which he gets the ticket for the reservation or the cancellation processes as a result of which he gets the ticket generated. The reports are then sent to the administration.
generated. The reports are then sent to the administration.
Level 2 DFD Level 2 DFD
Cancel table Cancel table Reservation table Reservation table Waiting table Waiting table
The level 2 DFD is the further refinement of the level 1 DFD. As shown in the DFD above The level 2 DFD is the further refinement of the level 1 DFD. As shown in the DFD above the passenger has many options like he can directly go to the reservation counter or can the passenger has many options like he can directly go to the reservation counter or can first inquire and then go to the reservation counter or he can just inquire and return back. If first inquire and then go to the reservation counter or he can just inquire and return back. If the passenger wants reservation then the seats are checked for availability and if the seats the passenger wants reservation then the seats are checked for availability and if the seats
are available the confirmation ticket is generated otherwise he is asked for waiting and are available the confirmation ticket is generated otherwise he is asked for waiting and waiting ticket is generated if he wants. If the user wants tickets to be cancelled he is given waiting ticket is generated if he wants. If the user wants tickets to be cancelled he is given the cancellation ticket and the reports of all the transactions are sent to the administrator. the cancellation ticket and the reports of all the transactions are sent to the administrator.
DESCRIPTION OF FLOW CHART DESCRIPTION OF FLOW CHART
The program flowchart shows how the system proceeds from the input form to the output The program flowchart shows how the system proceeds from the input form to the output form of the system. It explains how the system is actually processed step by step .It
form of the system. It explains how the system is actually processed step by step .It represents the flow of control as the system is processed.
represents the flow of control as the system is processed. There are three types of program flow chart:
There are three types of program flow chart:
1. Input flow chart: This flowchart depicts the basic input operations in the system. In 1. Input flow chart: This flowchart depicts the basic input operations in the system. In
railway reservation system, first of all the password is checked then if the password is valid railway reservation system, first of all the password is checked then if the password is valid then we process the input form if the data is valid then the entries are updated in the data then we process the input form if the data is valid then the entries are updated in the data base othe
base otherwise trwise the form he form is refiis refilled.lled.
2. Output flow chart: This flowchart depicts the basic output operations in the system. The 2. Output flow chart: This flowchart depicts the basic output operations in the system. The user is required to enter t
user is required to enter t
he criteria for output. If it is for the reservation then the availability if seats is checked. If he criteria for output. If it is for the reservation then the availability if seats is checked. If the seats are available then the confirmed ticket is generated otherwise the user is asked for the seats are available then the confirmed ticket is generated otherwise the user is asked for waiting and if he wants then waiting ticket is generated. If the user wants the seat to be waiting and if he wants then waiting ticket is generated. If the user wants the seat to be cancelled it is done and the cancelled ticket is generated for the user. The information about cancelled it is done and the cancelled ticket is generated for the user. The information about all the above transactions is then transferred to the related databases.
all the above transactions is then transferred to the related databases.
3. Report flow chart: This flowchart depicts the basic operations for the generation of 3. Report flow chart: This flowchart depicts the basic operations for the generation of reports. If the entries from the processed database are valid the concerned reports are reports. If the entries from the processed database are valid the concerned reports are generated otherwise the process will have to be repeated.
generated otherwise the process will have to be repeated.
No No
Reservation database is updated Reservation database is updated
INPUT FLOW CHART INPUT FLOW CHART
ENTITY RELATIONSHIP DIAGRAM ENTITY RELATIONSHIP DIAGRAM
Entity relationship diagram expresses the overall logical structure of a database graphically. Entity relationship diagram expresses the overall logical structure of a database graphically. It shows the relationship between different entities. The entities can have composite,
It shows the relationship between different entities. The entities can have composite, multivolume or derived attributes. The entities and their attributes are:
multivolume or derived attributes. The entities and their attributes are: -1 Passenger 1 Passenger #. Name #. Name *. First name *. First name *. Middle name *. Middle name Yes Yes
*. Last name *. Last name #. Gender #. Gender #. Address #. Address *. House no. *. House no. *. Street *. Street *. City *. City #. Age #. Age #. Phone no. #. Phone no. 2 Form 2 Form #. Form no. #. Form no. 3 Ticket 3 Ticket #. Ticket no. #. Ticket no. *. Waiting *. Waiting *. Confirmed *. Confirmed *. Cancelled *. Cancelled 4 Reservation counter 4 Reservation counter 5 Administrator 5 Administrator 6 Train 6 Train #. Train no #. Train no #. Train name #. Train name #. Source #. Source #. Destination #. Destination 7 Seat 7 Seat #. Seat no. #. Seat no. #. Compartment no. #. Compartment no.
The relationships between different entities are: The relationships between different entities are:
-1. Fill: The passenger fills the form. 1. Fill: The passenger fills the form.
2. Submit: The form is submitted to the reservation counter. 2. Submit: The form is submitted to the reservation counter. 3. Check: The reservation counter checks the seats.
3. Check: The reservation counter checks the seats. 4. Generate: Reservation counter generates the ticket. 4. Generate: Reservation counter generates the ticket. 5. Issue: Reservation counter issues ticket to the passenger. 5. Issue: Reservation counter issues ticket to the passenger.
6. Send info: The reservation counter sends information to the administrator. 6. Send info: The reservation counter sends information to the administrator. 7. Allotted: The seat is allotted in the train.
7. Allotted: The seat is allotted in the train.
Sym
Symbobolsls MeMeananingingss
Data flow Data flow Process Process Data store Data store Entity Entity
ENTITY RELATIONSHIP DIAGRAM ENTITY RELATIONSHIP DIAGRAM
OUTPUT FLOWCHART OUTPUT FLOWCHART
REPORT FLOWCHART REPORT FLOWCHART
FEASIBILITY STUDY FEASIBILITY STUDY
An initial investigation in a proposal that determines whether an alternative system is An initial investigation in a proposal that determines whether an alternative system is feasible. A proposal summarizing the thinking of the analyst is presented to the user for feasible. A proposal summarizing the thinking of the analyst is presented to the user for review. When approved, the proposal initiates feasibility study that describes and evaluates review. When approved, the proposal initiates feasibility study that describes and evaluates candidate systems and provides for the selection of best system that meets system
candidate systems and provides for the selection of best system that meets system perfor
performance remance requiremequirements.nts.
To do a feasibility study, we need to consider the economic, technical factors in system To do a feasibility study, we need to consider the economic, technical factors in system development. First a project team is formed. The team develops system flowcharts that development. First a project team is formed. The team develops system flowcharts that identify the characteristics of candidate systems, evaluate the performance of each system, identify the characteristics of candidate systems, evaluate the performance of each system, weigh system performance and cost data and select the best candidate system for the job. weigh system performance and cost data and select the best candidate system for the job. The study culminates in a final report to the management.
The study culminates in a final report to the management. By the end of this chapter you should know:
By the end of this chapter you should know: 1. The steps in defining system performance. 1. The steps in defining system performance.
2. What key considerations are involved in feasibility analysis? 2. What key considerations are involved in feasibility analysis? 3. How to conduct a feasibility study?
3. How to conduct a feasibility study?
INTRODUCTION INTRODUCTION
1. Describe and identify characteristics of candidate systems. 1. Describe and identify characteristics of candidate systems.
2. Determine and evaluate performance and cost effectiveness of each candidate system. 2. Determine and evaluate performance and cost effectiveness of each candidate system.
4. Weigh system performance and cost data. 4. Weigh system performance and cost data. 5. Select the best candidate system.
5. Select the best candidate system.
SUMMARY SUMMARY
1. A feasibility study is conducted to select the best system that meets performance 1. A feasibility study is conducted to select the best system that meets performance
requirements. This entails an identification description, an evaluation of candidate systems, requirements. This entails an identification description, an evaluation of candidate systems, and the selection of the best system for the job.
and the selection of the best system for the job.
2. A statement of constraints, the identification of specific system objectives and a 2. A statement of constraints, the identification of specific system objectives and a
description of outputs define a system's required performance. The analyst is then ready to description of outputs define a system's required performance. The analyst is then ready to evaluate the feasibility of candidate systems to produce these outputs.
evaluate the feasibility of candidate systems to produce these outputs.
3. Three key considerations are involved in feasibility analysis: economic, technical and 3. Three key considerations are involved in feasibility analysis: economic, technical and behaviora
behavioral.l.
4. There are eight steps in feasibility study: 4. There are eight steps in feasibility study:
a. STATEMENT OF CONSTRAINTS a. STATEMENT OF CONSTRAINTS
Constraints are factors that limit the solution of a problem. Some constraints are identified Constraints are factors that limit the solution of a problem. Some constraints are identified during the initial investigation
during the initial investigation
b. IDENTIFICATION F SPECIFIC SYSTEM OBJECTIVES b. IDENTIFICATION F SPECIFIC SYSTEM OBJECTIVES
Once the constraints are spelled out, the analyst proceeds to identify the system's specific Once the constraints are spelled out, the analyst proceeds to identify the system's specific perfor
performance objmance objectiveectives. They ars. They are derived e derived from tfrom the general he general objectobjectives speives specified icified in then the projec
project directt directive at the ive at the end of tend of the initial he initial investinvestigation. Tigation. The steps he steps are to stare to state the sate the system'system's benefits
benefits and then tand then translatranslate them inte them into measuro measurable objeable objectives.ctives.
c. DESCRIPTION OF OUTPUTS c. DESCRIPTION OF OUTPUTS
A final step in system performance definition is describing the output required by the user. A final step in system performance definition is describing the output required by the user. An actual sketch of the format and contents of the reports as well as a specification of the An actual sketch of the format and contents of the reports as well as a specification of the media used, their frequency, size and numbers of copies required are prepared at this point. media used, their frequency, size and numbers of copies required are prepared at this point.
d. FEASIBILITY CONSIDERATIONS d. FEASIBILITY CONSIDERATIONS
Three key considerations are involved in the feasibility analysis: Three key considerations are involved in the feasibility analysis: 1. Economic feasibility 1. Economic feasibility 2. Technical feasibility 2. Technical feasibility 3. Behavioral feasibility 3. Behavioral feasibility
Testing and Debugging Testing and Debugging Testing:
Testing:
Testing is the process of exercising software with the intent of finding errors and ultimately Testing is the process of exercising software with the intent of finding errors and ultimately correcting them. The following testing techniques have been used to make this project free correcting them. The following testing techniques have been used to make this project free of errors.
of errors.
Content Review
Content Review
The whole content of the project has been reviewed thoroughly to uncover typographical The whole content of the project has been reviewed thoroughly to uncover typographical errors, grammatical error and ambiguous sentences.
errors, grammatical error and ambiguous sentences.
Navigation Errors
Navigation Errors
Different users were allowed to navigate through the project to uncover the navigation Different users were allowed to navigate through the project to uncover the navigation errors. The views of the user regarding the navigation flexibility and user friendliness were errors. The views of the user regarding the navigation flexibility and user friendliness were taken into account and implemented in the project.
taken into account and implemented in the project.
Unit Testing
Unit Testing
Focuses on individual software units, groups of related units. Focuses on individual software units, groups of related units. ··Unit - smallest testable piece of software.Unit - smallest testable piece of software.
·· A unit ca A unit can be comn be compiled /apiled /assemblessembled / linkd / linked/loaded/loaded; and pued; and put under a tet under a test harnesst harness.s. ··Unit testing done to show that the unit does not satisfy the application and /or itsUnit testing done to show that the unit does not satisfy the application and /or its implemented software does not match the intended designed structure.
implemented software does not match the intended designed structure.
Integration Testing
Integration Testing
Focuses on combining units to evaluate the interaction among them Focuses on combining units to evaluate the interaction among them
·· Integra Integration is tion is the prothe process ocess of aggregf aggregating cating componomponents to ents to create larcreate larger comger components.ponents. ·· Integra Integration testion testing doting done to shne to show thaow that even thot even though comugh componentponents were inds were individualividuallyly satisf
System T
System Testing
esting
Focuses on a complete integrated system to evaluate compliance with specified Focuses on a complete integrated system to evaluate compliance with specified requirements (test characteristics that are only present when entire system is run) requirements (test characteristics that are only present when entire system is run) ·· A syste A system is a bm is a big comig component.ponent.
··System testing is aimed at revealing bugs that cannot be attributed to a component asSystem testing is aimed at revealing bugs that cannot be attributed to a component as such, to
such, to inconsinconsistencieistencies betwes between compen components oonents or planned r planned interactiinteractions betons between coween componenmponents.ts. ··Concern: issues, behaviors that can only be exposed by testing the entire integrated Concern: issues, behaviors that can only be exposed by testing the entire integrated system
system (e.g., pe(e.g., performancrformance, securie, security, recovety, recovery)ry)
Each form encapsulates (labels, texts, grid etc.). Hence in case of project in V.B. form are Each form encapsulates (labels, texts, grid etc.). Hence in case of project in V.B. form are the basic units. Each form is tested thoroughly in term of calculation, display etc.
the basic units. Each form is tested thoroughly in term of calculation, display etc.
Regression Testing
Regression Testing
Each time a new form is added to the project the whole project is tested thoroughly to Each time a new form is added to the project the whole project is tested thoroughly to rectify any side effects. That might have occurred due to the addition of the new form. rectify any side effects. That might have occurred due to the addition of the new form.
Thus regression testing has been performed. Thus regression testing has been performed.
Debug Debugging:ging:
Debugging is a consequence of successful testing. That is when a test care uncovers an Debugging is a consequence of successful testing. That is when a test care uncovers an error, debugging is the process that results in the removal of errors. There are mainly two error, debugging is the process that results in the removal of errors. There are mainly two types of debugging.
types of debugging.
Backtracking
Backtracking
Backtracking is a fairly common debugging approach that can be used successfully in Backtracking is a fairly common debugging approach that can be used successfully in small programs. Beginning at the site where a symptom has been uncovered, the source small programs. Beginning at the site where a symptom has been uncovered, the source code is traced backward until the site of the cause is found.
code is traced backward until the site of the cause is found.
Brute Forcing
Brute Forcing
This is the most common category of debugging which involves loading the source code This is the most common category of debugging which involves loading the source code with write statements and tracking line by line execution to isolate possible errors.
with write statements and tracking line by line execution to isolate possible errors.
Conclusion Conclusion
Practical Training is a very important part of the curriculum as it strengthens the concepts Practical Training is a very important part of the curriculum as it strengthens the concepts and enhances knowledge about the practical implementation of all the theory concepts, we and enhances knowledge about the practical implementation of all the theory concepts, we have learnt so far in different subjects.
have learnt so far in different subjects.
This summer training helped us learn a lot. In this training we did the project on railway This summer training helped us learn a lot. In this training we did the project on railway reservation system. This project is used to keep a track on reserving the seat to the
reservation system. This project is used to keep a track on reserving the seat to the passeng
passenger. It heer. It helps mlps managing tanaging the systehe system very effm very efficientliciently and convey and conveniently.niently.
Finally, this gives us a lot of mental satisfaction that the project we have worked upon is a Finally, this gives us a lot of mental satisfaction that the project we have worked upon is a real time project, which will be installed at the customer site after some more session of real time project, which will be installed at the customer site after some more session of regress testing.
regress testing.
Although the project work has been done in a complete and detailed manner but due to the Although the project work has been done in a complete and detailed manner but due to the constraint of time, we could not include some more features we wanted to. We left these constraint of time, we could not include some more features we wanted to. We left these features as a part of the future development. As soon as we'll get time we'll try to add them features as a part of the future development. As soon as we'll get time we'll try to add them to my project.
Reference:-v Henry F Korth, Abraham Silberschatz, ''Database system concepts'', McGrsw-Hill v Henry F Korth, Abraham Silberschatz, ''Database system concepts'', McGrsw-Hill Internation editions, Computer Science Series (1991). Second Ed.
Internation editions, Computer Science Series (1991). Second Ed. v Software Engineering ,McGrsw-Hill Internation editions
v Software Engineering ,McGrsw-Hill Internation editions v www.Google.com. v www.Google.com. Read more: Read more: http://wiki.answers.com/Q/Data_flow_diagram_for_online_railway_reservation_system#ix http://wiki.answers.com/Q/Data_flow_diagram_for_online_railway_reservation_system#ix zz1zSaFHURp zz1zSaFHURp