Download - Project Report on Railway
-
7/28/2019 Project Report on Railway
1/45
1
TERM PAPERthis is my project
OF
OBJECT ORIENTED PROGRAMMING
COURSE CODE: CSE 202
RAILWAY RESERVATION SYSTEM
Page 1
-
7/28/2019 Project Report on Railway
2/45
2
CONTENTS PAGE NO:
1. INTRODUCTION 42. PROPOSED SYSTEM 53. SYSTEM DEVELOPMENT LIFE CYCLE 64. SOURCE CODE 185. TESTING 37
WHITE BOX TESTING BLACK BOX TESTING
6. CODE COMPLETENESS EVALUATION 397. DATA FLOW DIAGRAM 408. ADVANTAGES OF THE SYSTEM 429. HARDWARE/SOFTWARE REQUIREMENTS 4310.BIBLIOGRAPHY 45
Page 2
-
7/28/2019 Project Report on Railway
3/45
3
INTRODUCTION
This project introduces railway reservation system. It explains howreservation is beingdonein Indian Railways . Thestep by step procedureis
explained . This project is developed in c ++language. Allmost all theheader files havebeen used in this project. Proper comments havebeen givenat desired locations to maketheproject user friendly. Various functions andstructures areused to make a completeuseof this language.
Thos project is well versed with theprogramming. Railway reservation can easily accompanied with thehelp ofthis.
Page 3
-
7/28/2019 Project Report on Railway
4/45
4
PROPOSED SYSTEM
Today onecannot afford to rely on thefalliblehuman beings of bereallywants to stand against todays merciless competition wherenot to wisesayingto err is human no longer valid, its outdated to rationalizeyourmistake. So, to keep pacewith time, to bringabout thebest result withoutmalfunctioningand greater efficiency so to replacetheunending heaps offlies with a much sophisticated hard disk of thecomputer. Onehas to usethedata management software. Softwarehas been an ascent in atomizationvarious organizations. Many softwareproducts workingarenow in markets,which havehelped in makingtheorganizations work easier and efficiently.Data management initially had to maintain a lot of ledgers and a lot ofpaper work has to bedonebut now softwareproduct on this organizationhas madetheir work faster and easier. Now only this softwarehas to be
loaded on thecomputer and work can bedone. This prevents a lot of timeand money. The work becomes fully automated and any informationregardingtheorganization can beobtained by clickingthebutton. Moreover,now its an ageof computers of and automatingsuch an organization givesthebetter look.
Page 4
-
7/28/2019 Project Report on Railway
5/45
5
SYSTEM DEVELOPMENT LIFE CYCLE
Thesystems development lifecycleis a project management techniquethatdivides complex projects into smaller, moreeasily managed segments orphases. Segmenting projects allows managers to verify the successfulcompletion of project phases beforeallocating resources to subsequent phases.
Software development projects typically includeinitiation, planning, design, development, testing, implementation, andmaintenance phases. However, the phases may be divided differentlydepending on the organization involved. For example, initial projectactivities might be designated as request, requirements-definition, andplanningphases, or initiation, concept-development, and planningphases.End users of thesystemunder development should beinvolved in reviewingtheoutput of each phaseto ensurethesystemis being built to deliver the
needed functionality.
Page 5
-
7/28/2019 Project Report on Railway
6/45
www.earnrupees4you.com Page 6
6
PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE
Initiation PhaseTheInitiation Phasebegins when a business sponsor identifies a need or anopportunity. Thepurposeof theInitiation Phaseis to:
Identify and validate an opportunity to improve businessaccomplishments of theorganization or a deficiency related to abusiness need.
Identify significant assumptions and constraints on solutions to thatneed.
-
7/28/2019 Project Report on Railway
7/45
www.earnrupees4you.com Page 7
7
Recommend theexploration of alternativeconcepts and methods tosatisfy theneed includingquestioningtheneed for technology, i.e.,
will a changein thebusiness process offer a solution? Assureexecutivebusiness and executivetechnical sponsorship.
The Sponsor designates a Project Manager and the business need isdocumented in a Concept Proposal. The Concept Proposal includesinformation about the business process and the relationship to theAgency/Organization Infrastructureand theStrategic Plan. A successfulConcept Proposal results in a Project Management Charter which outlines
theauthority of theproject manager to begin theproject.
Careful oversight is required to ensureprojects supportstrategic business objectives and resources areeffectively implemented intoan organization's enterprisearchitecture. Theinitiation phasebegins whenan opportunity to add, improve, or correct a systemis identified and formallyrequested through thepresentation of a business case. Thebusiness caseshould, at a minimum, describea proposals purpose, identify expectedbenefits, and explain how the proposed systemsupports one of theorganizations business strategies. Thebusiness caseshould also identifyalternativesolutions and detail as many informational, functional, and
network requirements as possible.
-
7/28/2019 Project Report on Railway
8/45
www.earnrupees4you.com Page 8
8
SystemConcept Development Phase
TheSystemConcept Development Phasebegins after a business need oropportunity is validated by theAgency/Organization ProgramLeadershipand theAgency/Organization CIO. Thepurposeof theSystemConceptDevelopment Phaseis to:
Determinethefeasibility and appropriateness of thealternatives. Identify systeminterfaces. Identify basic functional and data requirements to satisfy thebusiness
need.
Establish systemboundaries, identify goals, objectives, critical successfactors, and performancemeasures.
Evaluatecosts and benefits of alternativeapproaches to satisfy thebasic functional requirements
Assess project risks Identify and initiaterisk mitigation actions, and Develop high-level technical architecture, process models, data models,
and a concept of operations.
This phaseexplores potential technical solutions within thecontext of thebusiness need. It may includeseveral trade-off decisions such as thedecisionto useCOTS softwareproducts as opposed to developingcustomsoftwareor
reusing softwarecomponents, or thedecision to usean incremental deliveryversus a complete, one-time deployment. Construction of executableprototypes is encouraged to evaluatetechnology to support thebusinessprocess.
TheSystemBoundary Document serves as an important referencedocument to support theInformation Technology Project Request (ITPR)
-
7/28/2019 Project Report on Railway
9/45
www.earnrupees4you.com Page 9
9
process. TheITPR must beapproved by theStateCIO beforetheproject canmoveforward.
PICTORIAL REPRESENTATION OFSDLC:-
-
7/28/2019 Project Report on Railway
10/45
www.earnrupees4you.com Page 10
10
-
7/28/2019 Project Report on Railway
11/45
www.earnrupees4you.com Page 11
11
Planning PhaseTheplanningphaseis themost critical step in completingdevelopment,acquisition, and maintenanceprojects. Careful planning, particularly in theearly stages of a project, is necessary to coordinateactivities and manageproject risks effectively. Thedepth and formality of project plans should becommensurate with the characteristics and risks of a given project.
Project plans refine the information gatheredduringtheinitiation phaseby further identifying thespecific activities andresources required to completea project. A critical part of a project managersjob is to coordinate discussions between user, audit, security, design,development, and network personnel to identify and document as manyfunctional, security, and network requirements as possible.
Duringthis phase, a plan is developed that documents theapproach to beused and includes a discussion of methods, tools, tasks,resources, project schedules, and user input. Personnel assignments, costs,project schedule, and target dates areestablished. A Project ManagementPlan is created with components related to acquisition planning,configuration management planning, quality assuranceplanning, concept ofoperations, system security, verification and validation, and systemsengineeringmanagement planning.
-
7/28/2019 Project Report on Railway
12/45
www.earnrupees4you.com Page 12
12
Requirements Analysis PhaseThis phaseformally defines thedetailed functional user requirements usinghigh-level requirements identified in theInitiation, SystemConcept, andPlanningphases. It also delineates therequirements in terms of data, systemperformance, security, and maintainability requirements for thesystem. The
requirements aredefined in this phaseto a level of detail sufficient forsystems design to proceed. They need to bemeasurable, testable, and relateto thebusiness need or opportunity identified in theInitiation Phase. Therequirements that will beused to determineacceptanceof thesystemarecaptured in theTest and Evaluation Master Plan.
Thepurposes of this phaseareto:
Further defineand refinethefunctional and data requirements anddocument themin theRequirements Document,
Complete business process reengineering of the functions to besupported (i.e., verify what information drives thebusiness process,what information is generated, who generates it, wheredoes theinformation go, and who processes it),
Develop detailed data and process models (systeminputs, outputs, andtheprocess.
Develop thetest and evaluation requirements that will beused todetermineacceptablesystemperformance.
-
7/28/2019 Project Report on Railway
13/45
www.earnrupees4you.com Page 13
13
Design Phase
The design phase involves convertingthe informational, functional, andnetwork requirements identified during the initiation and planningphases into unified design specifications that developers useto scriptprograms during thedevelopment phase. Programdesigns are c onstructed
in various ways. Using a top-down approach, designers first identifyand link major program components and interfaces, then expand designlayouts as they identify and link smaller subsystems and connections.Usinga bottom-up approach, designers first identify and link minorprogram components and interfaces, then expand design layouts as theyidentify and link larger systems and connections.
Contemporary design techniques often useprototypingtoolsthat build mock-up designs of items such as application screens, databaselayouts, and systemarchitectures. End users, designers, developers, database
managers, and network administrators should review and refine theprototyped designs in an iterativeprocess until they agreeon an acceptabledesign. Audit, security, and quality assurancepersonnel should beinvolvedin thereview and approval process.
Duringthis phase, thesystemis designed to satisfy thefunctional requirements identified in theprevious phase. Sinceproblems inthedesign phasecould bevery expensiveto solvein thelater stageof the
softwaredevelopment, a variety of elements areconsidered in thedesign tomitigaterisk. Theseinclude:
Identifyingpotential risks and definingmitigatingdesign features. Performinga security risk assessment. Developinga conversion plan to migratecurrent data to thenew
system.
Determiningtheoperatingenvironment.
-
7/28/2019 Project Report on Railway
14/45
www.earnrupees4you.com Page 14
14
Definingmajor subsystems and their inputs and outputs. Allocatingprocesses to resources. Preparingdetailed logic specifications for each softwaremodule.
The result is a draft System Design Document which captures thepreliminary design for thesystem. Everythingrequiring user input orapproval is documented and reviewed by theuser.Oncethesedocuments havebeen approved by theAgency CIO and BusinessSponsor, thefinal SystemDesign Document is created to serveas theCritical/Detailed Design for thesystem. This document receives a rigorous
review by Agency technical and functional representatives to ensurethat itsatisfies thebusiness requirements.
Concurrent with thedevelopment of thesystemdesign, theAgency ProjectManager begins development of theImplementation Plan, Operations andMaintenanceManual, and theTrainingPlan.
Development Phase
The development phase involves converting design specifications into
executableprograms. Effectivedevelopment standards includerequirementsthat programmers and other project participants discuss design specificationsbeforeprogrammingbegins. Theprocedures help ensureprogrammers clearlyunderstand program designs and functional requirements.
Programmers usevarious techniques to develop computerprograms. Thelargetransaction-oriented programs associated with financialinstitutions havetraditionally been developed using procedural programming
-
7/28/2019 Project Report on Railway
15/45
www.earnrupees4you.com Page 15
15
techniques. Procedural programming involves theline-by-linescriptingoflogical instructions that arecombined to forma program.
Effectivecompletion of theprevious stages is a key factorin thesuccess of theDevelopment phase. TheDevelopment phaseconsistsof:
Translating the detailed requirements and design into systemcomponents.
Testingindividual elements (units) for usability.
Preparingfor integration and testingof theIT system.
Integration and Test PhaseSubsystemintegration, system, security, and user acceptancetesting isconducted duringtheintegration and test phase. Theuser, with thoseresponsiblefor quality assurance, validates that thefunctional requirements,as defined in thefunctional requirements document, aresatisfied by thedeveloped or modified system. OIT Security staff assess thesystemsecurityand issue a security certification and accreditation prior to
installation/implementation. Multiple levels of testing are performed,including:
Testingat thedevelopment facility by thecontractor and possiblysupported by end users
Testingas a deployed systemwith end users workingtogether withcontract personnel
-
7/28/2019 Project Report on Railway
16/45
www.earnrupees4you.com Page 16
16
Operational testingby theend user aloneperformingall functions.Requirements aretraced throughout testing, a final IndependentVerification & Validation evaluation is performed and all documentation isreviewed and accepted prior to acceptanceof thesystem.
Implementation PhaseThis phaseis initiated after thesystemhas been tested and accepted by theuser. In this phase, thesystemis installed to support theintended businessfunctions. Systemperformance is compared to performanceobjectivesestablished during theplanning phase. Implementation includes user
notification, user training, installation of hardware, installation of softwareonto production computers, and integration of thesysteminto daily workprocesses.
This phase continues until the systemis operating in production inaccordancewith thedefined user requirements.
Operations and MaintenancePhase
Thesystemoperation is ongoing. Thesystemis monitored for continuedperformance in accordance with user requirements and needed system
-
7/28/2019 Project Report on Railway
17/45
www.earnrupees4you.com Page 17
17
modifications areincorporated. Operations continueas longas thesystemcan beeffectively adapted to respond to theorganizations needs. When
modifications or changes areidentified, thesystemmay reenter theplanningphase. Thepurposeof this phaseis to:
Operate, maintain, and enhancethesystem. Certify that thesystemcan process sensitiveinformation. Conduct periodic assessments of thesystemto ensurethefunctionalrequirements continueto besatisfied. Determinewhen thesystemneeds to bemodernized, replaced, or
retired.
-
7/28/2019 Project Report on Railway
18/45
www.earnrupees4you.com Page 18
18
SOURCE CODE
#include#include#include#include#include#include
void res_menu();void help();void colyb(){textcolor(YELLOW);textbackground(BLUE);}void coldes(int a,int b){textcolor(a);
textbackground(b);}void s(int i,int j)
{for(int a=i;a>0;a-=j)sound (a);}
void saund(int j){
j=0;
for(int i=20;i
-
7/28/2019 Project Report on Railway
19/45
www.earnrupees4you.com Page 19
19
void address_inp()
{cout
-
7/28/2019 Project Report on Railway
20/45
www.earnrupees4you.com Page 20
20
Enter address ";add.address_inp();
cout>age;cout>sex;
}
void p_det_out(){ colyb();cout
-
7/28/2019 Project Report on Railway
21/45
www.earnrupees4you.com Page 21
21
int dd,mm,yy;public :
void dat_inp(){
h:cout>dd;coutmm;if((dd>31) || (mm>12)){
cout
-
7/28/2019 Project Report on Railway
22/45
www.earnrupees4you.com Page 22
22
public :p_det p;
void dest_out(){cout
-
7/28/2019 Project Report on Railway
23/45
www.earnrupees4you.com Page 23
23
}else if(strcmp(fcode,"1007")==0)
{
strcpy(from,"DELHI");strcpy(to,"BANGALORE");strcpy(via,"");
fare=800;}
else if(strcmp(fcode,"1017")==0){
strcpy(from,"LUCKNOW");strcpy(to,"BANGALORE");strcpy(via,"DELHI");
fare=850;}
else if(strcmp(fcode,"7001")==0 ){
strcpy(from,"ALLAHBAD");strcpy(to,"DELHI");strcpy(via,"");fare=80;}
else{ coldes(1+128,0);clrscr();cout
-
7/28/2019 Project Report on Railway
24/45
www.earnrupees4you.com Page 24
24
clrscr();}
void res_out(){cout
-
7/28/2019 Project Report on Railway
25/45
www.earnrupees4you.com Page 25
25
cout
-
7/28/2019 Project Report on Railway
26/45
www.earnrupees4you.com Page 26
26
cout
-
7/28/2019 Project Report on Railway
27/45
www.earnrupees4you.com Page 27
27
delay(1000);saund(50);
textcolor(BLINK+YELLOW);cprintf(" Press any to continue...");getch();
}
void main()
{textcolor(12);textbackground(8);int mch;res r;int flag=0,rec=0;char ch;
do { clrscr();saund(50);//if(oo>0)restart();oo++;char name[36],code[5],name1[36],code1[5];char name2[36],code2[5];int flag=0;fstream fin,fin1;textcolor(YELLOW);
menu();
saund(30);gotoxy(4,15);
puts(" Enter your choice :");
gotoxy(30,15);cin>>mch;switch(mch)
-
7/28/2019 Project Report on Railway
28/45
www.earnrupees4you.com Page 28
28
{
//// C A S E 1 : W R I T I N G//###################################3#########################################
case 1: r.res_inp();
fin.open("oldmas.dat",ios::binary |ios::app);fin.write( (char *) &r,sizeof(r));fin.close();fin.open("oldmas.dat",ios::binary |ios::in);fin1.open("newmas.dat",ios::binary |ios::out);fin.read( (char*)&r,sizeof(res) );while(!fin.eof() )
{
fin1.write( (char*)&r,sizeof(res) );fin.read( (char*)&r,sizeof(res) );}
fin.close();fin1.close();
break;
//
// C A S E : 2 " S E A R C H I N G"//#############################################################################case 2:
fin.open("newmas.dat",ios::in|ios::binary);
-
7/28/2019 Project Report on Railway
29/45
www.earnrupees4you.com Page 29
29
cout
-
7/28/2019 Project Report on Railway
30/45
-
7/28/2019 Project Report on Railway
31/45
www.earnrupees4you.com Page 31
31
Master";getch();
}
break;//// C A S E : 3 " C A N C L A T I O N "//####################################################
#############################case 3:
cout
-
7/28/2019 Project Report on Railway
32/45
www.earnrupees4you.com Page 32
32
name 1 & code1 :";puts(name1);puts(code1);getch();
if(strcmpi(name1,name)==0 &&strcmp(code1,code)==0)
{cout
-
7/28/2019 Project Report on Railway
33/45
www.earnrupees4you.com Page 33
33
fin.close();fin1.close();
label :break;
//
// C A S E 4 : H E L P//#############################################################################
case 4:help();break;
//
// C A S E 5 : E X I T//##############################################################################
case 5:// for(int a=1;a
-
7/28/2019 Project Report on Railway
34/45
www.earnrupees4you.com Page 34
34
please wait");
saund(70);//
delay(10);nosound();saund(20);nosound();delay(150);
}exit(1);
break;default :
coutch; break;}// END OF SWITCH
}while( (mch>0 && mch
-
7/28/2019 Project Report on Railway
35/45
www.earnrupees4you.com Page 35
35
//########################################################################
######
void help(){ coldes(13,8);
clrscr();cout
-
7/28/2019 Project Report on Railway
36/45
www.earnrupees4you.com Page 36
36
";delay(2000);menu();for(int i=0;i
-
7/28/2019 Project Report on Railway
37/45
www.earnrupees4you.com Page 37
37
Testing
Software Testing is an empirical investigation conducted to providestakeholders with information about thequality of theproduct or serviceunder test[1] , with respect to thecontext in which it is intended to operate.Software Testing also provides an objective, independent view of thesoftwareto allow thebusiness to appreciateand understand therisks atimplementation of thesoftware. Test techniques include, but arenot limitedto, theprocess of executinga programor application with theintent offindingsoftwarebugs. It can also bestated as theprocess of validatingand
verifyingthat a softwareprogram/application/product meets thebusinessand technical requirements that guided its design and development, so that itworks as expected and can beimplemented with thesamecharacteristics.
Software Testing, depending on the testing method employed, can beimplemented at any timein thedevelopment process, however themost testeffort is employed after therequirements havebeen defined and codingprocess has been completed.
Testing methodsSoftwaretestingmethods aretraditionally divided into black box testingand whitebox testing. Thesetwo approaches areused to describethepointof view that a test engineer takes when designingtest cases.
Black box testing
Black box testing treats the software as a "black box," without anyknowledgeof internal implementation. Black box testingmethods include:equivalencepartitioning, boundary valueanalysis, all-pairs testing, fuzztesting, model-based testing, traceability matrix, exploratory testingandspecification-based testing.
-
7/28/2019 Project Report on Railway
38/45
www.earnrupees4you.com Page 38
38
Specification-based testing
Specification-based testing aims to test the functionality of softwareaccordingto theapplicablerequirements.[16]Thus, thetester inputs data into,and only sees theoutput from, thetest object. This level of testingusuallyrequires thorough test cases to beprovided to thetester, who then can simplyverify that for a given input, theoutput value(or behavior), either "is"or "isnot"thesameas theexpected valuespecified in thetest case.
Specification-based testing is necessary, but it isinsufficient to guard against certain risks
Advantages and disadvantages
Theblack box tester has no "bonds"with thecode, and a tester's perception isvery simple: a codemust havebugs. Usingtheprinciple, "Ask and you shallreceive," black box testers find bugs whereprogrammers don't. But, on theother hand, black box testinghas been said to be"likea walk in a darklabyrinth without a flashlight," becausethetester doesn't know how the
software being tested was actually constructed. That's why there aresituations when (1) a black box tester writes many test cases to checksomething that can betested by only onetest case, and/or (2) someparts oftheback end arenot tested at all.
Therefore, black box testinghas theadvantageof "an unaffiliated opinion,"on theonehand, and thedisadvantageof "blind exploring,"on theother.
Whitebox testing
Whitebox testing, by contrast to black box testing, is when thetester hasaccess to theinternal data structures and algorithms (and thecodethatimplement these)
-
7/28/2019 Project Report on Railway
39/45
www.earnrupees4you.com Page 39
39
Types of whitebox testing :-Thefollowingtypes of whitebox testing exist:
api testing- Testingof theapplication usingPublic and PrivateAPIs.
codecoverage- creatingtests to satisfy somecriteria of codecoverage. For example, thetest designer can createtests to causeall statements in theprogramto beexecuted at least once.
fault injection methods. mutation testing methods. static testing- Whitebox testingincludes all static testing.
Codecompleteness evaluation
White box testing methods can also be used to evaluate thecompleteness of a test suitethat was created with black box testingmethods. This allows thesoftwareteamto examineparts of a system
that arerarely tested and ensures that themost important functionpoints havebeen tested.[19]
Two common forms of codecoverageare:
function coverage, which reports on functions executed and statement coverage, which reports on thenumber of lines
executed to completethetest.
They both return a coveragemetric, measured as a percentage
-
7/28/2019 Project Report on Railway
40/45
www.earnrupees4you.com Page 40
40
DATA FLOW DIAGRAM:-
TRAIN
DATABASE
AMOUNT
Check for
available trains
2. Create record
New Customer
2. MaintainCustomer
Information
-
7/28/2019 Project Report on Railway
41/45
www.earnrupees4you.com Page 41
41
DFD FOR PAYMENT:-
ACCOUNT
ACCOUNT
CUSTOMER
PAYMENT
-
7/28/2019 Project Report on Railway
42/45
www.earnrupees4you.com Page 42
42
ADVANTAGES OF RAILWAY RESERVATION
SYSTEMNow one can easily plan the journey comfortably as theprocess is efficient and fast with being easy to access.Reservations can be made through the Indian railways site orat the ample reservation centers all over the country. Alsonow there are authorized agencies which provide reservationfacility on behalf of India railways and without waiting inlong line one can easily book a ticket. The booking is donethrough an E-Ticket issue which have a PNR number ofwhich one has to take a print and just have to show at thestation.
It not only provide reservation but cancellation canalso be done through this systemat ease and one can use acredit card to complete the process.
This being a big step in terms of improvement inthe railway systemit is widely accepted across the country.
-
7/28/2019 Project Report on Railway
43/45
www.earnrupees4you.com Page 43
43
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 drivecombo
-
7/28/2019 Project Report on Railway
44/45
www.earnrupees4you.com Page 44
44
VII. FLOPPY DRIVE 1.44 MBVIII. MONITOR 14.1 or 15 -17 inch
IX. Key board and mouse
X. Printer
SOFTWARE REQUIREMENTS:
I. officeXP
-
7/28/2019 Project Report on Railway
45/45
45
BIBLIOGRAPHY
Thesearethefollowing links which assist meat each and every step incomplitingthis project , without themi was not beableto finish thisimportant project:-
1. www.scribd.com2. www.wikipedia.com3. www.answers.com4. www.askme.com5. www.esnips.com
Instead of theseuseful websites , followingbooks also help me:
1. OBJECT ORIENTED PROGRAMMING WITH C++BY E.BALAGURUSWAMI
2. OBJECT ORIENTED PROGRAMMINGBT ROBERT LAFORE