onlineticketreservation
TRANSCRIPT
Online Ticket Reservation System Reg.No:30306104081
ONLINE TICKET RESERVATION SYSTEM
AIM:To develop software for Online Ticket Reservation system with various
functional and non functional part of design namely,
Problem analysis and requirement analysis
Use case documentation
UML diagram
Test plan
PROBLEM DEFINITION:
The Online Ticket Reservation System has an online catalog using which the
passenger can login, search for Trains, search for Train tickets, and reserve Train tickets
online. Reservation manager is used to update the new Train in the database .The Airline
reservation system is a new system that replaces the current manual process for searching
the Train details. The reservation manager to manage all the Train details as well as
professional details. As a manager, we can manage passenger benefits & passenger
personnel information under confidentiality and accessibility.
OBJECTIVE OF THE APPLICATION
The ultimate goal of this project is to develop database software that enables
enterprise user to reserve the Train tickets, find and retrieve passenger information.
SIGNIFICANCE OF THE APPLICATION
The significance of the project includes the following key features
The passenger can search all the Train details
Online Ticket Reservation System Reg.No:30306104081
The passenger can book the Train tickets
The manager maintaining all passenger details in the database
The manager maintaining all the Train details in the database
Add and cancel reservation
Access to database can be setup on username / password basis with multiple users and privileges
FUNCTIONAL REQUIREMENTS
Add reservation The reservation manager adds the details of passenger to be added in the database.
Cancel reservationThe reservation manager searches the passenger to be deleted and removes the information about the book from the database.
Select reservation The user select for the particular reservation to view the list of details.
select source and destination The user selects the particular source and destination to view its details
find Train The user selects the Train name to view details
view information The user can view the details based on selection.
Online Ticket Reservation System Reg.No:30306104081
USE CASE TEMPLATE
Use Case ID: 1
Use Case Name: Check availability of Trains
Created By: Sajeetharan S Last Updated By:
Date Created: September 24,2009 Date Last Updated:
Actors: Passenger
Description: The passenger can search for their Train and via online catalog, whether Train is available or not available
Trigger Customer wants to book the ticket.
Preconditions: In this case there is no precondition.
Post conditions:
The reservation system menu will be displayed.
The details about the Trains will be displayed.
.
Normal Flow
The Passenger wants to view menu for Trains The System displays the list of available Trains Then Passenger selects one Train from list
Alternative Flows:
None
Exceptions:
1.0 Invalid search If the Train name is invalid name, system displays error message.
Online Ticket Reservation System Reg.No:30306104081
Includes: None
Priority: High
Frequency of Use: Passenger
Business Rules:
None
Special Requirements: Passenger shall be able to view the Train details, which he had reserved.
Assumptions: None
Notes and Issues:
None
Use Case ID: 2
Use Case Name:
Check availability of Train tickets
Created By: Sajeetharan S Last Updated By:
Date Created: September 24,2009
Date Last Updated:
Actors: Passenger
Description: The passenger can search for their Tickets and via online catalog, whether ticket is available or not available
Trigger To book the ticket.
Online Ticket Reservation System Reg.No:30306104081
Preconditions: Check whether The Train is available or not available
Post conditions:
The reservation system menu will be displayed.
The details about the tickets will be displayed.
Normal Flow
Passenger asks to view menu for Train tickets. The system displays menu of available tickets. Then the passenger selects Train ticket from list.
Alternative Flows:
None
Exceptions:
2.0 Invalid search If the Train name is invalid name, system displays error message.
Includes: None
Priority: High
Frequency of Use:
Approximately 400 users, average of one usage per day
Business Rules:
None
Special Requirements:
Passenger shall be able to view the tickets details, which he had reserved.
Assumptions: None
Notes and Issues:
None
Use Case ID: 3
Use Case Name: Check availability of seats in a Trains
Online Ticket Reservation System Reg.No:30306104081
Created By: Sajeetharan S Last Updated By:
Date Created: September 24,2009
Date Last Updated:
Actors: Passenger
Description: The passenger can search for their Tickets and seats via online catalog, whether ticket is available ,he book the seats no.
Trigger To book the seats in Trains
Preconditions: Check whether The Train ticket is available or not available
Post conditions:
The reservation system menu will be displayed.
The details about the seats will be displayed.
Normal Flow
Passenger asks to view menu for seats in a Train. The system displays menu of available seat nos. Then the passenger books the seats from Train.
Alternative Flows:
None
Exceptions:
3.0 Invalid search If the Train name is invalid name, system displays error message.
Includes: None
Priority: High
Frequency of Use:
Approximately 400 users, average of one usage per day
Business Rules:
None
Online Ticket Reservation System Reg.No:30306104081
Special Requirements:
None
Assumptions: None
Notes and Issues:
None
Use Case ID: 4
Use Case Name: Book tickets
Created By: Sajeetharan S Last Updated By:
Date Created: September 24,2009 Date Last Updated:
Actors: Passenger, manager
Description: The passenger can book Train Tickets using online catalog.
Trigger To book the ticket.
Preconditions: The passenger can check the availability of tickets.
Post conditions:
The passenger can confirms Train tickets. The system display pay details System displays available Train name, source and destination details, date.
Normal Flow
When the passenger wants to view the menu for a specified date. System displays available Train name, source and destination details, date. System displays list of available tickets, and its price. The passenger select the particular date on which he wants to travel. System displays list of available tickets on the basis of classes. Passenger selects Train tickets from list and confirm tickets.
Online Ticket Reservation System Reg.No:30306104081
Alternative Flows:
None
Exceptions: Invalid search: If the Train name is invalid name, system displays error message.
Includes: None
Priority: High
Frequency of Use:
Approximately 100 passenger, average of one usage per day
Business Rules:
None
Special Requirements: Passenger shall be able to view the tickets details, which he had reserved.
Assumptions: None
Notes and Issues:
None
Use Case ID: 5
Use Case Name: Login
Created By: Sajeetharan S Last Updated By:
Date Created: September 24,2009
Date Last Updated:
Actors: Reservation Manager
Description: An authorized manager can login to the system and can view the online airline reservation. Only manager can login to the system.
Online Ticket Reservation System Reg.No:30306104081
Trigger Reservation manager wants to login.
Preconditions: No preconditions
Post conditions:
The manager is logged in to the system.
The manager is able to view the contents in the airline reservation.
Normal Flow
The menu is displayed to login for Reservation manager. Reservation manager enters the details. The user name and password is checked with database Authenticate the manager
Alternative Flows:
None
Exceptions:
4.0 Invalid search Incomplete informationThe information entered by Reservation manager may be incomplete.
Includes: None
Priority: High
Frequenc of Use: Approximately 100 passenger, average of one usage per day
Business Rules:
None
Special Requirements: The Reservation manager is asked to re-enter the user name and password if invalid.
Assumptions: none
Notes and Issues:
None
Use Case ID: 6
Online Ticket Reservation System Reg.No:30306104081
Use Case Name: Check passenger information.
Created By: Sajeetharan S Last Updated By:
Date Created: September 24,2009 Date Last Updated:
Actors: Passenger, manager
Description: The manager verifies whether the provided details in form does matches with that of the original data, if they are synchronizing then he proceed by allotting the ticket.
Trigger Submission of details
Preconditions: The manager check whether the given information and the original data.
Post conditions: If they are similar then the ticket would be allotted
Normal Flow
On the request of the passenger the manager compares the information provided by the passenger to that of the original data
In case of similarity the manager allots the ticket
Alternative Flows:
None
Exceptions:
5.0 Invalid search
In case of dissimilarity, the ticket would be cancelled.
Includes: None
Priority: High
Frequency of use Approximately 5 passenger, average of one usage per day
Business Rules:
None
Online Ticket Reservation System Reg.No:30306104081
Special Requirements: The continuous parallel assessment
Assumptions: none
Notes and Issues:
None
Use Case ID: 7
Use Case Name: Add reservation
Created By: Sajeetharan S Last Updated By:
Date Created: September 24,2009 Date Last Updated:
Actors: Passenger, manager
Description: If the tickets are available on the specified date, the manager records passenger information and confirms the tickets.
Trigger Updating the data.
Preconditions: The manager checks the details provided by the passenger.
Post conditions: Then confirms the tickets.
Normal Flow
The manager checks for the ticket availability
The manager also checks for the passenger details
If the details are correct the manager accepts the reservation
Online Ticket Reservation System Reg.No:30306104081
Alternative Flows:
None
Exceptions:
6.0 Invalid search. Wrong information’s provided by the passenger
Includes: None
Priority: High
Frequency of Use: Approximately 100 passenger, average of one usage per day
Business Rules:
None
Special Requirements: Daily updation of the database information is mandatory
Assumptions: None
Notes and Issues:
None
Use Case ID: 8
Use Case Name: Cancel reservation
Created By: Sajeetharan S Last Updated By:
Date Created: September 24,2009 Date Last Updated:
Actors: Passenger
Online Ticket Reservation System Reg.No:30306104081
Description: Manager verifies the cancellation information provided by the passenger and cancels the Train ticket.
Trigger To cancel the ticket.
Preconditions: In case Passenger doesn’t want ticket on that day
Post conditions:
Updating of the database informations.
Normal Flow
1. Manager compares original reservation data with the cancel reservation data2. Manager cancels the ticket
Alternative Flows:
None
Exceptions:
7.0 Invalid search
None.
Includes: None
Priority: High
Frequency of Use: Approximately 5 passenger, average of one usage per day
Business Rules:
None
Special Requirements: Manager has to view the cancellation details on time.
Assumptions: none
Notes and Issues:
None
Online Ticket Reservation System Reg.No:30306104081
1.USECASE DIAGRAM
TRANSACTION
AUTHENTICATE
USER
VIEW RESERVATION STATUS
VIEW TRAIN SCHEDULES
VIEW TRAIN FARE
UPDATE DATABASE
BANK ADMIN
ISSUE TICKET
RESERVE SEAT
CANCELLATION
RESERVATION CLERK
ENQUIRY
<<extends>><<extends>>
<<extends>>
Online Ticket Reservation System Reg.No:30306104081
2.SEQUENCE DIAGRAM:
(i).LOGIN:
:PASSENGER :LOGIN :RESERVATION CLERK
1:enter name and password
2:sending name and pwd
3:verify
4:shows home page
Online Ticket Reservation System Reg.No:30306104081
(ii).VIEWING DETAILS:
:passenger :login :reservation clerk
1:enter name and pwd
2:sending name & pwd
3:verify
4:show home page
5:ask for reservation status
6:show reservation status
7:ask for train schedule
8:show train schedule
9:process completed
Online Ticket Reservation System Reg.No:30306104081
(iii).TICKET RESERVATION:
:passenger :login :reservation clerk
:bank admin
:1.enter name and pwd
2:sending nmae and pwd
3:verfy
4:shows home page
5:book tickets(reserve)
6:verify for tic...
7:ask for account no.
8:enter acc. no.
9:send acc. no9
10:verify
11.successfully verified
12.successfully reserved
13.issue ticket
Online Ticket Reservation System Reg.No:30306104081
(iv).TICKET CANCELLATION:
:passenger :login :reservation clerk
10:verify
1:enter name & pwd
2:sending name & pwd
3:verify
4:shows home page
5:cancellation
6:ask for details and acc.no
7:enter details and acc.no
8:verify
9:send acc.no
11.successfully verif...
12.successfully cancelled
Online Ticket Reservation System Reg.No:30306104081
3.COLLABORATION DIAGRAMS:
(i).LOGIN:
:PASSENGER
:LOGIN
:RESERVATION CLERK
3: 3:verify
1: 1:enter name and password
4: 4:shows home page
2: 2:sending name and pwd
(ii).TICKET RESERVATION:
:passenger
:login
:reservation clerk
:bank admin
3: 3:verfy6: 6:verify for ticket
10: 10:verify
1: :1.enter name and pwd
2: 2:sending nmae and pwd
4: 4:shows home page7: 7:ask for account no.
12: 12.successfully reserved13: 13.issue ticket
5: 5:book tickets(reserve)8: 8:enter acc. no.
9: 9:send acc. no9
11: 11.successfully verified
Online Ticket Reservation System Reg.No:30306104081
(iii).TICKET CANCELLATION:
:passenger
:login
:reservation clerk
10:verify
3: 3:verify8: 8:verify 10:
1: 1:enter name & pwd
2: 2:sending name & pwd
4: 4:shows home page6: 6:ask for details and acc.no12: 12.successfully cancelled
5: 5:cancellation7: 7:enter details and acc.no
9: 9:send acc.no
11: 11.successfully verified
(iv).VIEWING DETAILS
:passenger
:login
:reservation clerk
3: 3:verify
1: 1:enter name and pwd
2: 2:sending name & pwd4: 4:show home page6: 6:show reservation status
8: 8:show train schedule9: 9:process completed
5: 5:ask for reservation status7: 7:ask for train schedule
Online Ticket Reservation System Reg.No:30306104081
4.STATE CHART DIAGRAM:
Select the process
Ticket Cancellation
Ticket Reservation Availability
checking
decide the process
Enter the train
Enter the data...
Enter persons detials for special offers
Enter the bank account number
Print the xerox of ticket
Crdit the amount
Not yet confirmed
Date and train no
special offers
for payment
For Reservation
verification
no
Login
Enter name and password
Debit the amount
if cancel
take xerox
no
Online Ticket Reservation System Reg.No:30306104081
5.ACTIVITY DIAGRAMS:
(i).LOGIN:
Online Ticket Reservation System Reg.No:30306104081
(ii).TICKET RESERVATION:
Online Ticket Reservation System Reg.No:30306104081
(iii).TICKET CANCELLATION:
Online Ticket Reservation System Reg.No:30306104081
6.CLASS DIAGRAM:
BANK
account no : intbalance : intcustomer name : char
verify()update()
DETAILS
train name : chartrain no : intschedule : num
view()
CANCEL RESERVATION
delete name : chardelete information : char
cancel()
ADD RESERVATION
add name : charrecord info : char
add reservation()
CHECK PASSWORD INFO
name : charpassenger id : char
check passenger info()
RESERVATION CLERK
issue ticket()update details()
validate()add reservation()
cancel reservation()
AUTHENTICATE
name : charpassword : char
login()
;
user name : charuser password : char
user age : intaddress : char
check availability]()book ticket()
cancel ticket()
Online Ticket Reservation System Reg.No:30306104081
7.COMPONENT DIAGRAM:
Login.h Login.java
Authenticate.h Authenticate.java
Add Reservation.h Cancel Reservation.java Cancel Reservation.h Cancel Reservation.java
server.exe
server.h server.java
Online Ticket Reservation System Reg.No:30306104081
8.DEPLOYMENT DIAGRAM:
printer
user
user
printer
user
printer
railway database bank admin
server
bank database system
railway administrator
Online Ticket Reservation System Reg.No:30306104081
APPENDIX:
CODE:
1.AUTHENTICATE.H
#ifndef AUTHENTICATE_h#define AUTHENTICATE_h 1class AUTHENTICATE { public: AUTHENTICATE(); AUTHENTICATE(const AUTHENTICATE &right); ~AUTHENTICATE(); AUTHENTICATE & operator=(const AUTHENTICATE &right); int operator==(const AUTHENTICATE &right) const; int operator!=(const AUTHENTICATE &right) const; void login (); protected: const char get_password () const; void set_password (char value); private: const char get_name () const; void set_name (char value); private: char name; } char password; };
inline const char AUTHENTICATE::get_name () const{ return name;}
inline void AUTHENTICATE::set_name (char value){ name = value;}
inline const char AUTHENTICATE::get_password () const{ return password;}
Online Ticket Reservation System Reg.No:30306104081
inline void AUTHENTICATE::set_password (char value){ password = value;
}#endif
2.RESERVATION CLERK.H
#ifndef RESERVATION_CLERK_h#define RESERVATION_CLERK_h 1#include "BANK.h"#include ".h"class RESERVATION_CLERK : public BANK //## Inherits: <unnamed>%4AC3284302EE{ public: RESERVATION_CLERK(); RESERVATION_CLERK(const RESERVATION_CLERK &right); ~RESERVATION_CLERK(); RESERVATION_CLERK & operator=(const RESERVATION_CLERK &right); int operator==(const RESERVATION_CLERK &right) const; int operator!=(const RESERVATION_CLERK &right) const; void issue_ticket (); void update_details (); void validate (); void add_reservation (); void cancel_reservation (); const BANK * get_the_BANK () const; void set_the_BANK (BANK * value); const X * get_the_X () const; void set_the_X (X * value); private: BANK *the_BANK; };inline const BANK * RESERVATION_CLERK::get_the_BANK () const{ return the_BANK;}inline void RESERVATION_CLERK::set_the_BANK (BANK * value){ the_BANK = value; }inline const X * RESERVATION_CLERK::get_the_X () const{
Online Ticket Reservation System Reg.No:30306104081
return the_X; }inline void RESERVATION_CLERK::set_the_X (X * value){ the_X = value; }#endif
3.BANK.H
#define BANK_h 1class BANK { public: BANK(); BANK(const BANK &right); ~BANK(); BANK & operator=(const BANK &right); int operator==(const BANK &right) const; int operator!=(const BANK &right) const; void verify (); void update (); protected: const int get_account_no () const; void set_account_no (int value); private: const int get_balance () const; void set_balance (int value); const char get_customer_name () const; void set_customer_name (char value); int account_no; int balance; char customer_name; };inline const int BANK::get_account_no () const{ return account_no;}inline void BANK::set_account_no (int value){ account_no = value;}inline const int BANK::get_balance () const{ return balance;}
Online Ticket Reservation System Reg.No:30306104081
inline void BANK::set_balance (int value){ balance = value; }inline const char BANK::get_customer_name () const{ return customer_name;}inline void BANK::set_customer_name (char value){ customer_name = value;}#endif
4.CHECK PASSWORD INFO.H#include "RESERVATION CLERK.h"class CHECK_PASSWORD_INFO : public RESERVATION_CLERK { public: CHECK_PASSWORD_INFO(); CHECK_PASSWORD_INFO(const CHECK_PASSWORD_INFO &right); ~CHECK_PASSWORD_INFO(); CHECK_PASSWORD_INFO & operator=(const CHECK_PASSWORD_INFO &right); int operator==(const CHECK_PASSWORD_INFO &right) const; int operator!=(const CHECK_PASSWORD_INFO &right) const; void check_passenger_info (); const RESERVATION_CLERK * get_the_RESERVATION_CLERK () const; void set_the_RESERVATION_CLERK (RESERVATION_CLERK * value); private: const char get_name () const; void set_name (char value); const char get_passenger_id () const; void set_passenger_id (char value); private: char name; char passenger_id; RESERVATION_CLERK *the_RESERVATION_CLERK; };
inline const char CHECK_PASSWORD_INFO::get_name () const{ return name;}
inline void CHECK_PASSWORD_INFO::set_name (char value)
Online Ticket Reservation System Reg.No:30306104081
{ name = value;}inline const char CHECK_PASSWORD_INFO::get_passenger_id () const{ return passenger_id; }inline void CHECK_PASSWORD_INFO::set_passenger_id (char value){ passenger_id = value; }inline const RESERVATION_CLERK * CHECK_PASSWORD_INFO::get_the_RESERVATION_CLERK () const{ return the_RESERVATION_CLERK;}inline void CHECK_PASSWORD_INFO::set_the_RESERVATION_CLERK (RESERVATION_CLERK * value){ the_RESERVATION_CLERK = value;}#endif
5.ADD RESERVATION.H#ifndef ADD_RESERVATION_h#define ADD_RESERVATION_h 1#include "RESERVATION CLERK.h"class ADD_RESERVATION : public RESERVATION_CLERK{ public: ADD_RESERVATION(); ADD_RESERVATION(const ADD_RESERVATION &right); Destructor (generated) ~ADD_RESERVATION(); ADD_RESERVATION & operator=(const ADD_RESERVATION &right); int operator==(const ADD_RESERVATION &right) const; int operator!=(const ADD_RESERVATION &right) const; void add_reservation (); const RESERVATION_CLERK * get_the_RESERVATION_CLERK () const; void set_the_RESERVATION_CLERK (RESERVATION_CLERK * value); private: const char get_add_name () const; void set_add_name (char value); const char get_record_info () const; void set_record_info (char value); private: //## implementation
Online Ticket Reservation System Reg.No:30306104081
char add_name; char record_info; RESERVATION_CLERK *the_RESERVATION_CLERK; };inline const char ADD_RESERVATION::get_add_name () const{ return add_name;}inline void ADD_RESERVATION::set_add_name (char value){ add_name = value;}inline const char ADD_RESERVATION::get_record_info () const{ return record_info;}inline void ADD_RESERVATION::set_record_info (char value){ record_info = value; }inline const RESERVATION_CLERK * ADD_RESERVATION::get_the_RESERVATION_CLERK () const{ return the_RESERVATION_CLERK;}inline void ADD_RESERVATION::set_the_RESERVATION_CLERK (RESERVATION_CLERK * value){ the_RESERVATION_CLERK = value;}#endif6.CANCEL RESERVATION.H#ifndef CANCEL_RESERVATION_h#define CANCEL_RESERVATION_h 1#include "RESERVATION CLERK.h"class CANCEL_RESERVATION : public RESERVATION_CLERK { public: CANCEL_RESERVATION(); CANCEL_RESERVATION(const CANCEL_RESERVATION &right); ~CANCEL_RESERVATION(); CANCEL_RESERVATION & operator=(const CANCEL_RESERVATION &right); int operator==(const CANCEL_RESERVATION &right) const; int operator!=(const CANCEL_RESERVATION &right) const; void cancel (); const RESERVATION_CLERK * get_the_RESERVATION_CLERK () const;
Online Ticket Reservation System Reg.No:30306104081
void set_the_RESERVATION_CLERK (RESERVATION_CLERK * value); private: const char get_delete_name () const; void set_delete_name (char value); const char get_delete_information () const; void set_delete_information (char value); private: char delete_name; char delete_information;};inline const char CANCEL_RESERVATION::get_delete_name () const{ return delete_name;}inline void CANCEL_RESERVATION::set_delete_name (char value){ delete_name = value;}inline const char CANCEL_RESERVATION::get_delete_information () const{ return delete_information;}inline void CANCEL_RESERVATION::set_delete_information (char value){ delete_information = value; }inline const RESERVATION_CLERK * CANCEL_RESERVATION::get_the_RESERVATION_CLERK () const{ return the_RESERVATION_CLERK; }inline void CANCEL_RESERVATION::set_the_RESERVATION_CLERK (RESERVATION_CLERK * value){ the_RESERVATION_CLERK = value; }#endif
7.DETAILS.H
#ifndef DETAILS_h#define DETAILS_h 1#include "RESERVATION CLERK.h"class DETAILS : public RESERVATION_CLERK {public:
Online Ticket Reservation System Reg.No:30306104081
DETAILS(); DETAILS(const DETAILS &right); ~DETAILS(); DETAILS & operator=(const DETAILS &right); int operator==(const DETAILS &right) const; int operator!=(const DETAILS &right) const; void view ();private: const char get_train_name () const; void set_train_name (char value); const int get_train_no () const; void set_train_no (int value); const num get_schedule () const; void set_schedule (num value); private: char train_name; int train_no; num schedule; };inline const char DETAILS::get_train_name () const{ return train_name;}inline void DETAILS::set_train_name (char value){ train_name = value;}inline const int DETAILS::get_train_no () const{ return train_no;}inline void DETAILS::set_train_no (int value){ train_no = value;}inline const num DETAILS::get_schedule () const{ return schedule;}inline void DETAILS::set_schedule (num value){ schedule = value;}#endif
Online Ticket Reservation System Reg.No:30306104081
TEST PLAN:
Overview
Test plan objectives To ensure that the Online Ticket reservation system will:- Function consistently and reliably in accordance with current
business operations.- Meet or exceed user requirements and technical
specifications.- Not adversely impact other systems or the existing
technology environment.
Testing Assumptions - Reservation system which is used to manage the reservation details are already implemented and tested and there is no direct interaction between Online Reservation System and Conventional Reservation system.
- It is assumed that User can book the Train tickets using online reservation system which is already tested.
- These Trains tickets information are only used by online reservation system.
Risks & Contingencies
The following risks apply to the testing process and may impact either the proposed date of readiness for the deployment of online reservation system, or the comprehensive level of testing that can be performed in each of the Functional Units:- The actual deployment of online reservation system may
take longer to perform than anticipated, as the conventional reservation system is also using the same database.
Online Ticket Reservation System Reg.No:30306104081
RESULT:
Thus the Problem analysis & Requirement Analysis and various Use case scenarios ,UML diagrams, Test plans has been studied successfully