Railway Reservation System Build in Visual Basic
Railway Reservation System Build in Visual Basic
Railway Reservation System Build in Visual Basic
Index
1. INTRODUCTION 3
2. PROBLEM DEFINITION 7
5. SYSTEM REQUIREMENT 15
A. HARDWARE REQUIREMENT 16
B. SOFTWARE REQUIREMENT 16
I. FRONT END 17
A. DFD 24
B. DATA DICTIONARY 25
C. E-R DIAGRAM 26
8. INPUT/OUTPUT SCREEN 49
9. TESTING 54
10. IMPLEMENTATION 57
12. BIBLIOGRAPHY 63
LIST OF ABBREVIATIONS
Examid-examination identity
Ghz- Gegahertz
Loginid-Username identity
Txt.username-text username
Txt.password-text password
Rslt- result
Db- database
INTRODUCTION
INTRODUCTION
Proposed “Railway Reservation System” is developed for to automate the railway
reservation system. It includes modules required to successfully operate railway reversion
process smoothly. It has train master to add modify train information, Train schedule to enter
train journey details include all the station name, arrival time and departure time. It includes
automatic fare calculation as per the distance between two stations.
Reservation module consist of automatic seat no and coach no allocation system. Daily
schedule for updation of not confirm seat and coach no. All master like train master, train
schedule, reservation fees, cancellation fees charges can be modified individually from front
end and changes reflect in all modules immediately.
Therefore proposed “Railway Reservation System” has been designed to automate the
process of railway for ticket reservation and back office activities. System can make the daily
activities efficient and providing the fast response.
Maintain user master- Each user identified by the user name and user type. Only
admin user can create, edit user information.
While creating user system assign default password for the user, user must change
default password for first time login.
All login time stamp stored in the system for security audit.
Access level and roles and privileges are set for different type of users.
Station Master – Every station is uniquely identified by system generated Station ID.
It also includes station code, station name and railway division name.
Train Master – Every train uniquely identified by train no, it includes train name,
train schedule which days of the week train will run. No of coaches available for 3 tier
AC, First Class, Slipper Class etc.
Train Schedule – It includes train journey details from start station to end station, all
in between station, distances between 2 station, arrival and departure time.
Fare Rule – It help to calculate fare by distance, support different type of fare
calculation for different class like AC1, AC3 etc.
Cancellation Fees Rule - It provide the master data for all ticket cancellation fees
calculation.
Reservation and Super Fast Fees – It provide the master data for all ticket
cancellation fees calculation.
Reservation – This module used to make reservation, it asks for input data like train
no, journey date, from station code, end station code. System has powerful validation
rule to check validation like journey date must be greeter than system date, journey
date must be within 90 days. Train should run for the selected day. Check for from
6
station and to station. Seat availability, While saving the record system generate PRN
no, seat no and coach no. Before save the system ask for final confirmation. System
automatically calculates the fare and save the details.
Cancellation – For cancellation of ticket it ask for PRN no, after entering the correct
PRN no system check for validity of the PRN no, whether it already cancelled,
journey date already expired. I it validate system display all the details of the
reservation. System automatically calculates the cancellation fees from the
cancellation rule master. Before save the record system ask for the confirmation.
Daily Cash Transaction – It shows daily transaction, like how much money received
and how much money refund. All data can be exported to MS Excel for review and
save in file system.
Query Module - A powerful query module give on screen information for particular PRN
NO, it shows all the reservation details and cancellation details, include current status for the
seat no, coach no.
Supports the full life cycle of ticket reservation, seat allocation, and ticket
cancellation. Reschedule the cancel seat to unconfirmed passenger.
It is a scalable system.
Easy to use and minimum data entry, all important details is mater driven and provide
in drop down list to make fast operation and avoid mistake.
Automatic fare calculation from stage master, in new updation of fare in stage master
will automatically reflect in all new reservation.
All important details can be updated by front end master module only.
PROBLEM DEFINITION
8
Problem definition
Existing system
In the existing system the exams are done only manually and proposed system we have to
computerize all the exams using this software.
The whole process of assigning test and evaluating their scores after the test ,was done
manually till date. Processing the test paper i.e. checking and distributing respective scores
used to take time when the software was not installed.
9
SYSTEM ANALYSIS
10
AND
FEASIBILITY STUDY
SYSTEM ANALYSIS
the problem, identifying the relevant and decisional variables, analyzing and
synthesizing the various factors and determining an optimal or at least a satisfactory
solution or program of action.
A detailed study of the process must be made by various
techniques like interviews, questionnaires etc. The data collected by these sources
must be scrutinized to arrive to a conclusion. The conclusion is an understanding of
how the system functions. This system is called the existing system. Now the existing
system is subjected to close study and problem areas are identified. The designer now
functions as a problem solver and tries to sort out the difficulties that the enterprise
faces. The solutions are given as proposals. The proposal is then weighed with the
existing system analytically and the best one is selected. The proposal is presented to
the user for an endorsement by the user. The proposal is reviewed on user request and
suitable changes are made. This is loop that ends as soon as the user is satisfied with
proposal.
Preliminary study is the process of gathering and interpreting facts, using the
information for further studies on the system. Preliminary study is problem solving
activity that requires intensive communication between the system users and system
developers. It does various feasibility studies. In these studies a rough figure of the
system activities can be obtained, from which the decision about the strategies to be
followed for effective system study and analysis can be take
FEASIBILITY STUDY
TECHNICAL FEASIBILITY
The system must be evaluated from the technical point of view first. The
assessment of this feasibility must be based on an outline design of the system
requirement in the terms of input, output, programs and procedures. Having
identified an outline system, the investigation must go on to suggest the type
of equipment, required method developing the system, of running the system
once it has been designed.
The project should be developed such that the necessary functions and performance
are achieved within the constraints. The project is developed within latest technology.
Through the technology may become obsolete after some period of time, due to the
fact that never version of same software supports older versions, the system may still
be used. So there are minimal constraints involved with this project. The system has
been developed using Java the project is technically feasible for development.
ECONOMIC FEASIBILITY
The developing system must be justified by cost and benefit. Criteria to ensure that
effort is concentrated on project, which will give best, return at the earliest. One of the
factors, which affect the development of a new system, is the cost it would require.
The following are some of the important financial questions asked during preliminary
investigation:
13
Since the system is developed as part of project work, there is no manual cost
to spend for the proposed system. Also all the resources are already available,
it give an indication of the system is economically possible for development.
BEHAVIORAL FEASIBILITY
The project would be beneficial because it satisfies the objectives when developed
and installed. All behavioral aspects are considered carefully and conclude that the
project is behaviorally feasible.
14
Security of data.
Ensure data accuracy’s.
Proper control of the higher officials.
Minimize manual data entry.
Minimum time needed for the various processing.
15
Greater efficiency.
Better service.
User friendliness and interactive.
Minimum time required.
16
System Requirement
System Requirement
Monitor : VGA/SVGA
Software Requirements
Front end
18
Visual Basic 6.0 is Microsoft’s latest version of the Visual Basic Programming language.
Although writing programs can be a tedious chore at time. Visual Basic reduces the effort
required on your part, and makes programming enjoyable. Visual Basic makes many aspects
of programming as simple as dragging graphics objects on to screen with your mouse.
Visual Basic 6.0 is more than just a programming language; the secret to Visual Basic is in its
name” Visual”. With to days Windows Operating System, a program must be able to interact
with the screen. Keyboard , mouse and printer graphically.
The environment provided by Visual Basic is suitable for any type of application. Using this
environment, the user can visually design the objects that your application uses. Visual Basic
19
is not just a languages, it’s an integrated development environment in which you can develop,
run, test and debug your applications. The impressive array of programming resources
provided by Visual Basic enables to create the objects extemporaneously which can range
from pop-up menu to a message box.
A form is a major part of Visual Basic application, which allows the user to enter the data as
well as view the result. A control is an object that we draw on a form to enable or enhance
user interaction with an application. Hence a Visual Basic application is a combination of
object like forms and controls, procedures that can respond to Events and other general-
purpose procedures.
Backend
20
Access stores data in its own format based on the Access Jet Database Engine. It can also
import or link directly to data stored in other applications and databases.[1]
Software developers and data architects can use Microsoft Access to develop application
software, and "power users" can use it to build simple applications. Like other Office
applications, Access is supported by Visual Basic for Applications, an object-oriented
programming language that can reference a variety of objects including DAO (Data Access
Objects), ActiveX Data Objects, and many other ActiveX components. Visual objects used in
forms and reports expose their methods and properties in the VBA programming
environment, and VBA code modules may declare and call Windows operating-system
functions.
Access now includes support for a broader range of data types, including documents
and images.
Whenever any table is updated, all reports referencing the table are also updated.
21
Lookup Fields, which get their values by "looking up" some value in a table, have
been updated to support multi valued lookups.
Access can synchronize with Windows SharePoint Services 3.0 and Office SharePoint
Server 2007. This feature enables a user to use Access reports while using a server-
based, backed-up, IT managed version of the data.
data and the processes that change or transform data throughout a system. It’s a structured
analysis and design tool that can be used for flowcharting in place of, or in association with,
information oriented and process oriented system flowcharts. When analysts prepare the Data
Flow Diagram, they specify the user needs at a level of detail that virtually determines the
information flow into and out of the system and the required data resources. This network is
constructed by using a set of symbols that do not imply a physical implementation. The Data
Flow Diagram reviews the current physical system, prepares input and output specification,
Four basic symbols are used to construct data flow diagrams. They are
symbols that represent data source, data flows, and data transformations and data storage. The
23
points at which data are transformed are represented by enclosed figures, usually circles,
_ Data Flow
_ Process
_ Storage
24
ents
25
Data dictionary
A data dictionary is a structured repository of data about data. It is a set of rigorous
definitions of all DFD data elements and data structures.
A data dictionary has many advantages .The most obvious is documentation ;it is a valuable
reference in any organization . Another advantage is improving analyst/user communication
by establishing consistent definitions of various elements , terms , and procedures . also
control information maintained for each data element is cross-referenced in the data
dictionary. A data dictionary is an important step in developing a database.
Database users and application developers can benefit from an authoritative data
dictionary document that catalogs the organization, contents, and conventions of one or more
databases. This typically includes the names and descriptions of various tables and fields in
each database, plus additional details, like the type and length of each data element. There is
no universal standard as to the level of detail in such a document, but it is primarily a weak
kind of data.
The three classes to be defined are data elements, data structures, and data flows and
data stores.
Data element is the smallest unit of data that provides for no further decomposition.
Data flows and data stores are data structures in motion and data structures at rest,
respectively.
26
27
SYSTEM DESIGN
28
Input design
OUTPUT DESIGN
A quality output is one, which meets the requirements of the end user and
presents the information clearly. In output design it is determined how the
information is to be displaced for immediate need and also the hard copy
output. It is the most important and direct source information to the user.
Efficient and intelligent output design improves the system’s relationship to
help user decision-making.
Sample Coding
30
rs4a.CursorLocation = adUseClient
rs4a.Open "select * FROM PASSENGER WHERE PNR_NO = '" & PNR & "'", Cn,
adOpenDynamic, adLockOptimistic
TRAINNO = rs4a.Fields(2)
SOURCE = rs4a.Fields(4)
DESTINATION = rs4a.Fields(5)
COACH = rs4a.Fields(7)
JORDATE = rs4a.Fields(9)
Load unres
unres.Show
End If
End Sub
rs4a.CursorLocation = adUseClient
rs4a.Open "select * FROM PASSENGER WHERE PNR_NO = '" & PNR & "'", Cn,
adOpenDynamic, adLockOptimistic
TRAINNO = rs4a.Fields(2)
SOURCE = rs4a.Fields(4)
DESTINATION = rs4a.Fields(5)
COACH = rs4a.Fields(7)
JORDATE = rs4a.Fields(9)
Load printticket
printticket.Show
End If
End Sub
End Sub
End Sub
DT = FROMDATE.Value
If Text1.Text = "" Then
Text1.Text = "0"
Text5.Text = "0"
32
End If
If Text2.Text = "" Then
Text2.Text = "0"
Text6.Text = "0"
End If
If Text3.Text = "" Then
Text3.Text = "0"
Text7.Text = "0"
End If
If Text8.Text = "" Then
Text4.Text = "0"
Text8.Text = "0"
End If
Cn.BeginTrans
SSQL = "insert into INFO_TRAIN(TRAIN_NO, SLEEPER_SEATS, 1AC_SEATS,
2AC_SEATS,
3AC_SEATS,SLEEPER_FARE,1AC_FARE,2AC_FARE,3AC_FARE,FROMDATE,TODAT
E) values ('" & Label3.Caption & "'," & Text1.Text & "," & Text2.Text & "," & Text3.Text &
"," & Text4.Text & "," & Text5.Text & "," & Text6.Text & "," & Text7.Text & "," &
Text8.Text & ",'" & Format$(FROMDATE.Value, "d/M/yyyy") & "','" & Format$
(TODATE.Value, "d/M/yyyy") & "' )"
Cn.Execute SSQL
Cn.CommitTrans
MsgBox "TRAIN " & TRAINNO & " created.", vbInformation
For I = 1 To 90
DT = DT + 1
If Len(Text1.Text) > 0 Then
N = Val(Text1.Text)
For J = 1 To N
COACH = "S" & J
Cn.BeginTrans
SSQL = "INSERT INTO COACH (TRAIN_NO,COACHES,SEATS,DATEOFJOUR)
VALUES ( '" & TRAINNO & "','" & COACH & "', 30 ,'" & Format$(DT, "d/M/yyyy") &
"' )"
Cn.Execute SSQL
Cn.CommitTrans
Next J
End If
Cn.BeginTrans
33
End If
Cn.BeginTrans
SSQL = "INSERT INTO COACH (TRAIN_NO,COACHES,SEATS,DATEOFJOUR)
VALUES ( '" & TRAINNO & "','" & COACH & "', 30 ,'" & Format$(DT, "d/M/yyyy") &
"' )"
Cn.Execute SSQL
Cn.CommitTrans
Next J
End If
Cn.BeginTrans
Next J
End If
Next I
End Sub
Label3.Caption = TRAINNO
FROMDATE.Value = Now
TODATE.Value = DateAdd("m", 3, Now)
End Sub
rs4a.CursorLocation = adUseClient
rs4a.Open "select
TRAIN_NO,TRAIN_NAME,SOUR_CODE,DEST_CODE,SOU_TIME,DEST_TIME from
TRAIN WHERE SOUR_CODE = '" & Combo1.Text & "' AND DEST_CODE= '" &
Combo2.Text & "'", Cn, adOpenDynamic, adLockOptimistic
On Error GoTo ErrorHandler
'ErrorHandler:
'Print
'rs4a.Close
'Set RS = New ADODB.Recordset
'RS.CursorLocation = adUseClient
'RS.Open "SELECT ", Cn, adOpenDynamic, adLockOptimistic, ADDCMD.Text
Set MSF.DataSource = rs4a
ErrorHandler:
Print
rs4a.Close
End Sub
Load reserveform
reserveform.Show
Unload Me
Me.Hide
End Sub
End Sub
Sub MsfInit()
MSF.Clear
MSF.ColWidth(0) = 800
MSF.ColWidth(1) = 1000
MSF.TextMatrix(0, 0) = "Site No."
MSF.TextMatrix(0, 1) = "Dimantion"
End Sub
Sub DisRecords()
If TempRS.State = 1 Then TempRS.Close
TempRS.Open "select SiteId,Sdie from SiteDet order by SiteId,SName", Conn
RNo = 1
MsfInit
Do While Not TempRS.EOF
MSF.TextMatrix(RNo, 0) = TempRS(0)
MSF.TextMatrix(RNo, 1) = TempRS(1)
TempRS.MoveNext
RNo = RNo + 1
Loop
End Sub
Dim N As String
Label5.Caption = ""
'MsgBox ("HELLO" & MSF.TextMatrix(MSF.Row, 1))
rs4a.Close
End Sub
Dim N As String
Label5.Caption = ""
'MsgBox ("HELLO" & MSF.TextMatrix(MSF.Row, 1))
'rs4a.Close
End Sub
37
Dim N As String
Label5.Caption = ""
'MsgBox ("HELLO" & MSF.TextMatrix(MSF.Row, 1))
'rs4a.Close
End Sub
Dim N As String
Label5.Caption = ""
'MsgBox ("HELLO" & MSF.TextMatrix(MSF.Row, 1))
'rs4a.Close
38
End Sub
rs4a.Open "select DISTINCT(SOUR_CODE) from TRAIN WHERE SOURCE LIKE '" &
Text1.Text & "%'", Cn, adOpenStatic, adLockOptimistic
Combo1.Clear
On Error GoTo ErrorHandler
rs4a.MoveFirst
While (Not rs4a.EOF)
Me.Combo1.AddItem (rs4a.Fields(0))
'Me.Combo2.AddItem (rs4a.Fields(6))
rs4a.MoveNext
Wend
ErrorHandler:
Print
rs4a.Close
End Sub
rs4a.MoveFirst
While (Not rs4a.EOF)
'Me.Combo1.AddItem (rs4a.Fields(4))
Me.Combo2.AddItem (rs4a.Fields(0))
rs4a.MoveNext
Wend
ErrorHandler:
Print
rs4a.Close
End Sub
RESERVATION
End Sub
End Sub
rs4a.CursorLocation = adUseClient
On Error GoTo ERR
Cn.CommitTrans
Cn.BeginTrans
SSQL = "UPDATE COACH SET SEATS = SEATS - 1 WHERE COACHES LIKE '" &
COACH & "' AND DATEOFJOUR LIKE '" & Format$(JORDATE, "M/d/yyyy") & "' AND
TRAIN_NO = '" & TRAINNO & "'"
Cn.Execute SSQL
Cn.CommitTrans
Next I
Exit Sub
MsgBox ("TICKET CREATED")
Command2.Visible = False
Command1.Value = True
'ERR:
'MsgBox ("VALUES ARE NOT PROPERLY HANDLE")
End Sub
End Sub
Text15.Text = SOURCE
Text16.Text = DESTINATION
Text17.Text = JORDATE
lass = COACH
If rs4a.State = 1 Then rs4a.Close
rs4a.CursorLocation = adUseClient
rs4a.Open "select TRAIN_NAME from TRAIN WHERE TRAIN_NO = '" & TRAINNO
& "'", Cn, adOpenDynamic, adLockOptimistic
TRAIN_NAME = rs4a.Fields(0)
For I = 0 To 5
Combo1(I).AddItem ("MALE")
Combo1(I).AddItem ("FEMALE")
Combo2(I).AddItem ("LOWER")
Combo2(I).AddItem ("MIDDLE")
Combo2(I).AddItem ("UPPER")
Combo2(I).AddItem ("SIDE LOWER")
Combo2(I).AddItem ("SIDE UPPER")
Next I
End Sub
41
PRINT TICKET
Text1.Text = PNR
Text3.Text = Format$(JORDATE, "M/d/yyyy")
Text4.Text = TRAINNO
Text6.Text = SOURCE
Text7.Text = DESTINATION
Text10 = COACH
If rs4a.State = 1 Then rs4a.Close
rs4a.CursorLocation = adUseClient
rs4a.Open "select TRAIN_NAME from TRAIN WHERE TRAIN_NO = '" & TRAINNO
& "'", Cn, adOpenDynamic, adLockOptimistic
Text5.Text = rs4a.Fields(0)
If rs4a.State = 1 Then rs4a.Close
rs4a.CursorLocation = adUseClient
rs4a.CursorLocation = adUseClient
rs4a.Open "select COUNT(*) from PASSENGER WHERE PNR_NO = '" & PNR & "'",
Cn, adOpenDynamic, adLockOptimistic
NO = rs4a.Fields(0)
42
rs4a.CursorLocation = adUseClient
rs4a.CursorLocation = adUseClient
rs4a.CursorLocation = adUseClient
rs4a.CursorLocation = adUseClient
End If
FARE = FARE * NO
Label2.Caption = Label2.Caption & FARE
End Sub
DATABASE DESIGN
43
The database design is a two level process. In the first step, user requirements
are gathered together and a database is designed which will meet these
requirements as clearly as possible. This step is called Information Level
Design and it is taken independent of any individual DBMS.
In the second step, this Information level design is transferred into a design for
the specific DBMS that will be used to implement the system in question. This
step is called Physical Level Design, concerned with the characteristics of the
specific DBMS that will be used. A database design runs parallel with the
system design. The organization of the data in the database is aimed to achieve
the following two major objectives.
Data Integrity
Data independence
To structure the data so that there is no repetition of data , this helps in saving.
To permit simple retrieval of data in response to query and report request.
To simplify the maintenance of the data through updates, insertions, deletions.
To reduce the need to restructure or reorganize data which new application
requirements arise.
44
A table is a relation. The rows in a table are called tuples. A tuple is an ordered
set of n elements. Columns are referred to as attributes. Relationships have
been set between every table in the database. This ensures both Referential and
Entity Relationship Integrity. A domain D is a set of atomic values. A common
method of specifying a domain is to specify a data type from which the data
values forming the domain are drawn. It is also useful to specify a name for
the domain to help in interpreting its values. Every value in a relation is
atomic, that is not decomposable.
RELATIONSHIPS:
Table relationships are established using Key. The two main keys of prime
importance are Primary Key & Foreign Key. Entity Integrity and Referential
Integrity Relationships can be established with these keys.Entity Integrity
enforces that no Primary Key can have null values.Referential Integrity
enforces that no Primary Key can have null values.
Referential Integrity for each distinct Foreign Key value, there must exist a
matching Primary Key value in the same domain. Other key are Super Key
and Candidate Keys.
45
Relationships have been set between every table in the database. This ensures
both Referential and Entity Relationship Integrity.
NORMALIZATION:
As the name implies, it denoted putting things in the normal form. The
application developer via normalization tries to achieve a sensible organization
of data into proper tables and columns and where names can be easily
correlated to the data by the user. Normalization eliminates repeating groups at
data and thereby avoids data redundancy which proves to be a great burden on
the computer resources. These includes:
The First Normal Form states that the domain of an attribute must include only
atomic values and that the value of any attribute in a tuple must be a single
value from the domain of that attribute. In other words 1NF disallows
“relations within relations” or “relations as attribute values within tuples”. The
only attribute values permitted by 1NF are single atomic or indivisible values.
The first step is to put the data into First Normal Form. This can be donor by
moving data into separate tables where the data is of similar type
in each table. Each table is given a Primary Key or Foreign Key as per
requirement of the project. In this we form new relations for each nonatomic
attribute or nested relation. This eliminated repeating groups of data.
According to Second Normal Form, For relations where primary key contains
multiple attributes, no nonkey attribute should be functionally dependent on a
part of the primary key.
In this we decompose and setup a new relation for each partial key with its
dependent attributes. Make sure to keep a relation with the original primary
key and any attributes that are fully functionally dependent on it. This step
helps in taking out data that is only dependant on apart of the key.
A relation is said to be in second normal form if and only if it satisfies all the
first normal form conditions for the primary key and every non-primary key
attributes of the relation is fully dependent on its primary key alone.
In this we decompose and set up relation that includes the non-key attributes
that functionally determines other non-key attributes. This step is taken to get
rid of anything that does not depend entirely on the Primary Key.
Table Design
TABLE : TRAIN
Train_no text
Train_name text
Source text
Source code text
Destination text
Destination code text
Source time text
Destination time text
TABLE TRAIN_INFO
Train_no text
Sleeper seats number
1ac seats number
2ac seats number
3ac seats number
Sleeper fare number
1ac fare number
2ac fare number
3ac fare number
Fromdate date
Todate date
TABLE COACH
Train no text
Coaches text
Seats number
Date of jour date
TABLE PASSENGER
Pass number auto number
48
TESTING
SYSTEM TESTING
System testing is a critical aspect of Software Quality Assurance and
represents the ultimate review of specification, design and coding. Testing is a process of
executing a program with the intent of finding an error.
A good test is one that has a probability of finding an as yet undiscovered error.
The purpose of testing is to identify and correct bugs in the developed system. Nothing is
complete without testing. Testing is the vital to the success of the system.
In the code testing the logic of the developed system is
tested. For this every module of the program is executed to find an error. To perform
specification test, the examination of the specifications stating what the program should do
and how it should perform under various conditions.
Unit testing focuses first on the modules in the proposed
system to locate errors. This enables to detect errors in the coding and logic that are
contained within that module alone.
Those resulting from the interaction between modules are initially avoided. In unit testing
step each module has to be checked separately. System testing does not test the software as
56
a whole, but rather than integration of each module in the system. The primary concern is
the compatibility of individual modules.
One has to find areas where modules have been designed with
different specifications of data lengths, type and data element name. Testing and validation
are the most important steps after the implementation of the developed system. The system
testing is performed to ensure that there are no errors in the implemented system. The
software must be executed several times in order to find out the errors in the different
modules of the system.
Validation refers to the process of using the new
software for the developed system in a live environment i.e., new software inside the
organization, in order to find out the errors.
The validation phase reveals the failures and the bugs in the
developed system. It will be come to know about the practical difficulties the system faces
when operated in the true environment. By testing the code of the implemented software,
the logic of the program can be examined. A specification test is conducted to check
whether the specifications stating the program are performing under various conditions.
Apart from these tests, there are some special tests conducted which are given below: Peak
Load Tests: This determines whether the new system will handle the volume of activities
when the system is at the peak of its processing demand. The test has revealed that the new
software for the agency is capable of handling the demands at the peak time. Storage
Testing: This determines the capacity of the new system to store transaction data on a disk
or on other files. The proposed software has the required storage space available, because
of the use of a number of hard disks. Performance Time Testing: This test determines the
length of the time used by the system to process transaction data. In this phase the software
developed Testing is exercising the software to uncover errors and ensure the system meets
defined requirements. Testing may be done at 4 levels
• Unit Level
• Module Level
• Regression
UNIT TESTING
A Unit corresponds to a screen /form in the package. Unit testing focuses on
verification of the corresponding class or Screen. This testing includes testing of control
paths, interfaces, local data structures, logical decisions, boundary conditions, and error
handling. Unit testing may use Test Drivers, which are control programs to co-ordinate test
case inputs and outputs, and Test stubs, which replace low-level modules. A stub is a 40
dummy subprogram.
Module Testing is done using the test cases prepared earlier. Module is defined during the
time of design.
INTEGRATION TESTING
Integration testing is used to verify the combining of the software modules. Integration
testing addresses the issues associated with the dual problems of verification and program
construction. System testing is used to verify, whether the developed system meets the
requirements.
REGRESSION TESTING
Each modification in software impacts unmodified areas, which results serious injuries to
that software. So the process of re-testing for rectification of errors due to modification is
known as regression testing. Installation and Delivery Installation and Delivery is the process
of delivering the developed and tested software to the customer.
58
IMPLEMENTATION
SYSTEM IMPLEMENTATION
Implementation includes all those activities that take place to convert from the
old system to the new. The old system consists of manual operations, which is operated in
a very different manner from the proposed new system. A proper implementation is
essential to provide a reliable system to meet the requirements of the organizations. An
improper installation may affect the success of the computerized system
IMPLEMENTATION METHODS:
There are several methods for handling the implementation and the consequent conversion
from the old to the new computerized system.
The most secure method for conversion from the old system to the new system is to run the
old and new system in parallel. In this approach, a person may operate in the manual older
processing system as well as start operating the new computerized system. This method
59
offers high security, because even if there is a flaw in the computerized system, we can
depend upon the manual system. However, the cost for maintaining two systems in parallel
is very high. This outweighs its benefits.
Another commonly method is a direct cut over from the existing manual system to the
computerized system. The change may be with in a week or with in a day. There are no
parallel activities. However, there is no remedy in case of a problem. This strategy requires
careful planning.
A working version of the system can also be implemented in one part of the organization
and the personnel will be piloting the system and changes can be made as and when
required. But this method is less preferable due to the loss of entirety of the system.
IMPLEMENTATION PLAN:
The implementation plan includes a description of all the activities that must occur to
implement the new system and to put it into operation. It identifies the personnel responsible
for the activities and prepares a time chart for implementing the system. The implementation
plan consists of the following steps.
o Identify all data required to build new files during the implementation.
o List all new documents and procedures that go into the new system.
The implementation plan should anticipate possible problems and must be able to deal with
them. The usual problems may be missing documents; mixed data formats between current
and files, errors in data translation, missing data etc
60
LIMITATIONS
AND
FUTURE SCOPE
Limitations
The new system has been designed to meet almost all of the user requirements but it too has
certain limitations some of which can be enhanced in the future enhancements or updates.
The existing system supports only multiple choice questions and these can be used
only for the logic testing of the student whereas paper based tests can provide a overall result
of the users knowledge for that topic. This will do injustice to users who are sometimes aware
61
of answers but not sure completely. It supports only two values True and False. If the selected
answer is true the user gets marks, If not loses.
No Image Support
The existing system has no image support at present and so images and diagrams
cannot be included in the exam which would make it very difficult to ask certain questions in
certain subjects. Providing diagrams externally is at present the only feasible choice
available.
The existing system allows the exam time to be set only once at the time of system
set up which cannot be changed as per desired and all the exams will be conducted for the
preset time only. If the user wants to increase or decrease the time for exams the system will
have to be set up again. This is also one of the proposed enhancements.
Future Scope
Enhancements are the perquisite for development of a system. Every existing system has
proposed enhancements which make it better and easier to use and more secure. The
enhancements that have been proposed for this system are listed here.
62
The existing system has no image support due to which the images cannot be used. It
will be one of the priorities in the proposed enhancements to enable Image Support in the
system.
The new system will have a back option which will enable the users to go back to
previously answered questions and change them if needed. It will enable the user a hassle free
exam so that the user can properly utilize the total time allotted for the test.
The new system will allow the faculty to set the exam time for a particular subject. It
will increase the efficiency of the system greatly as it will enable each subject to be tested for
a different duration as desired and required.
CONCLUSION
This project is about the designing the railway reservation system using M S Access, as back
end and Visual Basic 6.0 as front end. This project presents an investigative view of present
railway reservation system including the history of booking tickets and cancelled tickets.
63
Present system of railway reservation system is having some shortcoming on which we have
tried to work on that to eliminate the disadvantages.
We have made a database for passengers and trains and connected these two tables from
the custom made data entry form built in Visual Basic 6.0. There are options for new entry
which will be stored in M S Access database and retrieved from database in future.
This project was a small attempt to make the railway reservation system using M S Access,
and Visual Basic 6.0.
In the last we conclude that Indian Railway is having a strong IT Infrastructure and a well-
equipped railway reservation system but there is some shortcoming in the system on which
we have tried to work on it and successfully completed our project.
BIBLIOGRAPHY
Books
www.associatedcontent.com
www.members.tripod.com
www.vbcodesource.com
List of Tables
1. Train InfoDetails 21
65
3. Reservation 38
4. Print Ticket 41
List of Figures
1. Data Flow Diagram 24
66
2. ER Diagram 26