1. PROBLEM STATEMENT E ticketing is the on line system used for reserving or booking ticket in airlines , trains etc. &It was done by using credit cards. The transaction was carried out with the customer’s bank account. At first customer logs on to the system. Then the customer has to choose the relevant choice. The customer choice may be air ticket train ticket etc. The customer has to fill the details such as name, address etc. and it is submitted to the system. The system database checks the availability & informs the customers booking the ticket; if the seats are not available the customer checks the availability and resubmits the form. The system database is updated according to the reservation. 2. SOFTWARE REQUIREMENTS 3. USECASE DIAGRAM
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1. PROBLEM STATEMENT
E ticketing is the on line system used for reserving or booking ticket in airlines , trains etc. &It was done by using credit cards. The transaction was carried out with the customer’s bank account.
At first customer logs on to the system. Then the customer has to choose the relevant choice. The customer choice may be air ticket train ticket etc. The customer has to fill the details such as name, address etc. and it is submitted to the system. The system database checks the availability & informs the customers booking the ticket; if the seats are not available the customer checks the availability and resubmits the form. The system database is updated according to the reservation.
2. SOFTWARE REQUIREMENTS
3. USECASE DIAGRAM
bank system
Choose Source,destination
Enter details
Make Payment
Confirm
Check availability
customer
booking staff
Request Booking
4.
ACTIVITY DIAGRAM
Displaying Activity
Request Booking
Check Availabiliity
Displaying payment details
User payment details
Print Ticket
5. CLASS DIAGRAM
Customer Details
Name : stringAddress : stringEmail : stringAge : integer
//## begin module%1.3%.codegen_version preserve=yes// Read the documentation to learn more about C++ code generator// versioning.//## end module%1.3%.codegen_version
//## begin module%4DA6C2D0001F.cm preserve=no// %X% %Q% %Z% %W%//## end module%4DA6C2D0001F.cm
//## begin module%4DA6C2D0001F.cp preserve=no//## end module%4DA6C2D0001F.cp
// Additional Private Declarations //## begin Payment%4DA6C2D0001F.private preserve=yes //## end Payment%4DA6C2D0001F.private
private: //## implementation // Data Members for Class Attributes
//## begin Payment::Date%4DA6C2D80000.attr preserve=no private: date {U} date Date; //## end Payment::Date%4DA6C2D80000.attr
//## begin Payment::Amount%4DA6C2DC0232.attr preserve=no private: integer {U} integer Amount; //## end Payment::Amount%4DA6C2DC0232.attr
// Additional Implementation Declarations //## begin Payment%4DA6C2D0001F.implementation preserve=yes //## end Payment%4DA6C2D0001F.implementation
};//## begin Payment%4DA6C2D0001F.postscript preserve=yes//## end Payment%4DA6C2D0001F.postscript// Class Payment
//## Get and Set Operations for Class Attributes (inline)inline const date Payment::get_Date () const{ //## begin Payment::get_Date%4DA6C2D80000.get preserve=no return Date; //## end Payment::get_Date%4DA6C2D80000.get}inline void Payment::set_Date (date value){ //## begin Payment::set_Date%4DA6C2D80000.set preserve=no Date = value; //## end Payment::set_Date%4DA6C2D80000.set}inline const integer Payment::get_Amount () const{ //## begin Payment::get_Amount%4DA6C2DC0232.get preserve=no return Amount; //## end Payment::get_Amount%4DA6C2DC0232.get}inline void Payment::set_Amount (integer value){ //## begin Payment::set_Amount%4DA6C2DC0232.set preserve=no Amount = value; //## end Payment::set_Amount%4DA6C2DC0232.set}//## begin module%4DA6C2D0001F.epilog preserve=yes//## end module%4DA6C2D0001F.epilog
#endif
(ii)CUSTOMER DETAILS//## begin module%1.3%.codegen_version preserve=yes// Read the documentation to learn more about C++ code generator// versioning.//## end module%1.3%.codegen_version
//## begin module%4DA6C1D800DA.cm preserve=no// %X% %Q% %Z% %W%//## end module%4DA6C1D800DA.cm
//## begin module%4DA6C1D800DA.cp preserve=no//## end module%4DA6C1D800DA.cp
#ifndef Customer_Details_h#define Customer_Details_h 1//## begin module%4DA6C1D800DA.additionalIncludes preserve=no//## end module%4DA6C1D800DA.additionalIncludes//## begin module%4DA6C1D800DA.includes preserve=yes//## end module%4DA6C1D800DA.includes// Booking#include "Booking.h"//## begin module%4DA6C1D800DA.additionalDeclarations preserve=yes//## end module%4DA6C1D800DA.additionalDeclarations//## begin Customer_Details%4DA6C1D800DA.preface preserve=yes//## end Customer_Details%4DA6C1D800DA.preface//## Class: Customer Details%4DA6C1D800DA//## Category: <Top Level>//## Persistence: Transient//## Cardinality/Multiplicity: n//## Uses: <unnamed>%4DA6C3270213;Booking { -> }
class Customer_Details { //## begin Customer_Details%4DA6C1D800DA.initialDeclarations preserve=yes //## end Customer_Details%4DA6C1D800DA.initialDeclarations
// Additional Private Declarations //## begin Customer_Details%4DA6C1D800DA.private preserve=yes //## end Customer_Details%4DA6C1D800DA.private
private: //## implementation // Data Members for Class Attributes
//## begin Customer_Details::Name%4DA6C20100EA.attr preserve=no private: string {U} string Name; //## end Customer_Details::Name%4DA6C20100EA.attr
//## begin Customer_Details::Address%4DA6C20902CE.attr preserve=no private: string {U} string Address; //## end Customer_Details::Address%4DA6C20902CE.attr
//## begin Customer_Details::Email%4DA6C21302EE.attr preserve=no private: string {U} string Email; //## end Customer_Details::Email%4DA6C21302EE.attr
//## begin Customer_Details::Age%4DA6C271006D.attr preserve=no private: integer {U} integer Age; //## end Customer_Details::Age%4DA6C271006D.attr
// Data Members for Associations
//## Association: <unnamed>%4DA6C2E6001F //## begin Customer_Details::<the_Booking>%4DA6C2E701C5.role preserve=no public: Booking { -> RHN} Booking *the_Booking; //## end Customer_Details::<the_Booking>%4DA6C2E701C5.role
// Additional Implementation Declarations //## begin Customer_Details%4DA6C1D800DA.implementation preserve=yes
//## end Customer_Details%4DA6C1D800DA.implementation
};
//## begin Customer_Details%4DA6C1D800DA.postscript preserve=yes//## end Customer_Details%4DA6C1D800DA.postscript
// Class Customer_Details
//## Get and Set Operations for Class Attributes (inline)
inline const string Customer_Details::get_Name () const{ //## begin Customer_Details::get_Name%4DA6C20100EA.get preserve=no return Name; //## end Customer_Details::get_Name%4DA6C20100EA.get}
inline void Customer_Details::set_Name (string value){ //## begin Customer_Details::set_Name%4DA6C20100EA.set preserve=no Name = value; //## end Customer_Details::set_Name%4DA6C20100EA.set}
inline const string Customer_Details::get_Address () const{ //## begin Customer_Details::get_Address%4DA6C20902CE.get preserve=no return Address; //## end Customer_Details::get_Address%4DA6C20902CE.get}
inline void Customer_Details::set_Address (string value){ //## begin Customer_Details::set_Address%4DA6C20902CE.set preserve=no Address = value; //## end Customer_Details::set_Address%4DA6C20902CE.set}
{ //## begin Customer_Details::get_Email%4DA6C21302EE.get preserve=no return Email; //## end Customer_Details::get_Email%4DA6C21302EE.get}
inline void Customer_Details::set_Email (string value){ //## begin Customer_Details::set_Email%4DA6C21302EE.set preserve=no Email = value; //## end Customer_Details::set_Email%4DA6C21302EE.set}
inline const integer Customer_Details::get_Age () const{ //## begin Customer_Details::get_Age%4DA6C271006D.get preserve=no return Age; //## end Customer_Details::get_Age%4DA6C271006D.get}
inline void Customer_Details::set_Age (integer value){ //## begin Customer_Details::set_Age%4DA6C271006D.set preserve=no Age = value; //## end Customer_Details::set_Age%4DA6C271006D.set}
//## Get and Set Operations for Associations (inline)
inline const Booking * Customer_Details::get_the_Booking () const{ //## begin Customer_Details::get_the_Booking%4DA6C2E701C5.get preserve=no return the_Booking; //## end Customer_Details::get_the_Booking%4DA6C2E701C5.get}
//## end Customer_Details::set_the_Booking%4DA6C2E701C5.set}//## begin module%4DA6C1D800DA.epilog preserve=yes//## end module%4DA6C1D800DA.epilog#endif(iii)BOOKING//## begin module%1.3%.codegen_version preserve=yes// Read the documentation to learn more about C++ code generator// versioning.//## end module%1.3%.codegen_version
//## begin module%4DA6C28C005D.cm preserve=no// %X% %Q% %Z% %W%//## end module%4DA6C28C005D.cm
//## begin module%4DA6C28C005D.cp preserve=no//## end module%4DA6C28C005D.cp
//## begin module%4DA6C28C005D.additionalIncludes preserve=no//## end module%4DA6C28C005D.additionalIncludes
//## begin module%4DA6C28C005D.includes preserve=yes//## end module%4DA6C28C005D.includes// Payment#include "Payment.h"//## begin module%4DA6C28C005D.additionalDeclarations preserve=yes//## end module%4DA6C28C005D.additionalDeclarations//## begin Booking%4DA6C28C005D.preface preserve=yes//## end Booking%4DA6C28C005D.preface//## Class: Booking%4DA6C28C005D//## Category: <Top Level>//## Persistence: Transient//## Cardinality/Multiplicity: n//## Uses: <unnamed>%4DA6C3360222;Payment { -> }
class Booking { //## begin Booking%4DA6C28C005D.initialDeclarations preserve=yes //## end Booking%4DA6C28C005D.initialDeclarations public: //## Constructors (generated) Booking();
private: //## implementation // Data Members for Class Attributes
//## begin Booking::Booking no%4DA6C29B00DA.attr preserve=no private: integer {U} integer Booking_no; //## end Booking::Booking no%4DA6C29B00DA.attr //## begin Booking::Date%4DA6C2A101B5.attr preserve=no private: date {U} date Date; //## end Booking::Date%4DA6C2A101B5.attr //## begin Booking::Total%4DA6C2A500CB.attr preserve=no private: integer {U} integer Total; //## end Booking::Total%4DA6C2A500CB.attr //## begin Booking::Status%4DA6C2A9005D.attr preserve=no private: string {U} string Status; //## end Booking::Status%4DA6C2A9005D.attr //## begin Booking::name%4DA6C2AC0251.attr preserve=no private: string {U} string name;
//## end Booking::name%4DA6C2AC0251.attr // Data Members for Associations //## Association: <unnamed>%4DA6C2F20177 //## begin Booking::<the_Payment>%4DA6C2F3034B.role preserve=no public: Payment { -> RHN} Payment *the_Payment; //## end Booking::<the_Payment>%4DA6C2F3034B.role // Additional Implementation Declarations //## begin Booking%4DA6C28C005D.implementation preserve=yes //## end Booking%4DA6C28C005D.implementation};//## begin Booking%4DA6C28C005D.postscript preserve=yes//## end Booking%4DA6C28C005D.postscript// Class Booking //## Get and Set Operations for Class Attributes (inline)inline const integer Booking::get_Booking_no () const{ //## begin Booking::get_Booking_no%4DA6C29B00DA.get preserve=no return Booking_no; //## end Booking::get_Booking_no%4DA6C29B00DA.get}inline void Booking::set_Booking_no (integer value){ //## begin Booking::set_Booking_no%4DA6C29B00DA.set preserve=no Booking_no = value; //## end Booking::set_Booking_no%4DA6C29B00DA.set}inline const date Booking::get_Date () const{ //## begin Booking::get_Date%4DA6C2A101B5.get preserve=no return Date; //## end Booking::get_Date%4DA6C2A101B5.get}inline void Booking::set_Date (date value){ //## begin Booking::set_Date%4DA6C2A101B5.set preserve=no Date = value; //## end Booking::set_Date%4DA6C2A101B5.set}inline const integer Booking::get_Total () const
{ //## begin Booking::get_Total%4DA6C2A500CB.get preserve=no return Total; //## end Booking::get_Total%4DA6C2A500CB.get}inline void Booking::set_Total (integer value){ //## begin Booking::set_Total%4DA6C2A500CB.set preserve=no Total = value; //## end Booking::set_Total%4DA6C2A500CB.set}inline const string Booking::get_Status () const{ //## begin Booking::get_Status%4DA6C2A9005D.get preserve=no return Status; //## end Booking::get_Status%4DA6C2A9005D.get}inline void Booking::set_Status (string value){ //## begin Booking::set_Status%4DA6C2A9005D.set preserve=no Status = value; //## end Booking::set_Status%4DA6C2A9005D.set}inline const string Booking::get_name () const{ //## begin Booking::get_name%4DA6C2AC0251.get preserve=no return name; //## end Booking::get_name%4DA6C2AC0251.get}inline void Booking::set_name (string value){ //## begin Booking::set_name%4DA6C2AC0251.set preserve=no name = value; //## end Booking::set_name%4DA6C2AC0251.set}//## Get and Set Operations for Associations (inline)inline const Payment * Booking::get_the_Payment () const{ //## begin Booking::get_the_Payment%4DA6C2F3034B.get preserve=no return the_Payment;
//## end Booking::get_the_Payment%4DA6C2F3034B.get}inline void Booking::set_the_Payment (Payment * value){ //## begin Booking::set_the_Payment%4DA6C2F3034B.set preserve=no the_Payment = value; //## end Booking::set_the_Payment%4DA6C2F3034B.set}//## begin module%4DA6C28C005D.epilog preserve=yes//## end module%4DA6C28C005D.epilog#EndifBODY CODES
(i)PAYMENT
//## begin module%1.3%.codegen_version preserve=yes// Read the documentation to learn more about C++ code generator// versioning.//## end module%1.3%.codegen_version
//## begin module%4DA6C2D0001F.cm preserve=no// %X% %Q% %Z% %W%//## end module%4DA6C2D0001F.cm
//## begin module%4DA6C2D0001F.cp preserve=no//## end module%4DA6C2D0001F.cp
//## begin module%4DA6C2D0001F.additionalIncludes preserve=no//## end module%4DA6C2D0001F.additionalIncludes
//## begin module%4DA6C2D0001F.includes preserve=yes//## end module%4DA6C2D0001F.includes
// Payment#include "Payment.h"//## begin module%4DA6C2D0001F.additionalDeclarations preserve=yes//## end module%4DA6C2D0001F.additionalDeclarations
// Class Payment
Payment::Payment() //## begin Payment::Payment%4DA6C2D0001F_const.hasinit preserve=no //## end Payment::Payment%4DA6C2D0001F_const.hasinit //## begin Payment::Payment%4DA6C2D0001F_const.initialization preserve=yes //## end Payment::Payment%4DA6C2D0001F_const.initialization{ //## begin Payment::Payment%4DA6C2D0001F_const.body preserve=yes //## end Payment::Payment%4DA6C2D0001F_const.body}
Payment::Payment(const Payment &right) //## begin Payment::Payment%4DA6C2D0001F_copy.hasinit preserve=no //## end Payment::Payment%4DA6C2D0001F_copy.hasinit //## begin Payment::Payment%4DA6C2D0001F_copy.initialization preserve=yes //## end Payment::Payment%4DA6C2D0001F_copy.initialization{ //## begin Payment::Payment%4DA6C2D0001F_copy.body preserve=yes //## end Payment::Payment%4DA6C2D0001F_copy.body}
Payment::~Payment(){ //## begin Payment::~Payment%4DA6C2D0001F_dest.body preserve=yes //## end Payment::~Payment%4DA6C2D0001F_dest.body}
Payment & Payment::operator=(const Payment &right){ //## begin Payment::operator=%4DA6C2D0001F_assign.body preserve=yes //## end Payment::operator=%4DA6C2D0001F_assign.body}int Payment::operator==(const Payment &right) const{ //## begin Payment::operator==%4DA6C2D0001F_eq.body preserve=yes //## end Payment::operator==%4DA6C2D0001F_eq.body}
int Payment::operator!=(const Payment &right) const{ //## begin Payment::operator!=%4DA6C2D0001F_neq.body preserve=yes //## end Payment::operator!=%4DA6C2D0001F_neq.body}// Additional Declarations //## begin Payment%4DA6C2D0001F.declarations preserve=yes //## end Payment%4DA6C2D0001F.declarations
//## begin module%4DA6C2D0001F.epilog preserve=yes//## end module%4DA6C2D0001F.epilog(ii)CUSTOMER DETAILS
//## begin module%1.3%.codegen_version preserve=yes// Read the documentation to learn more about C++ code generator// versioning.//## end module%1.3%.codegen_version
//## begin module%4DA6C1D800DA.cm preserve=no// %X% %Q% %Z% %W% //## end module%4DA6C1D800DA.cm//## begin module%4DA6C1D800DA.cp preserve=no//## end module%4DA6C1D800DA.cp//## Module: Customer Details%4DA6C1D800DA; Pseudo Package body//## Source file: C:\Program Files\Rational\Rose\C++\source\Customer Details.cpp//## begin module%4DA6C1D800DA.additionalIncludes preserve=no//## end module%4DA6C1D800DA.additionalIncludes//## begin module%4DA6C1D800DA.includes preserve=yes//## end module%4DA6C1D800DA.includes// Customer Details#include "Customer Details.h"//## begin module%4DA6C1D800DA.additionalDeclarations preserve=yes//## end module%4DA6C1D800DA.additionalDeclarations// Class Customer_Details
Customer_Details::Customer_Details() //## begin Customer_Details::Customer_Details%4DA6C1D800DA_const.hasinit preserve=no //## end Customer_Details::Customer_Details%4DA6C1D800DA_const.hasinit //## begin Customer_Details::Customer_Details%4DA6C1D800DA_const.initialization preserve=yes
//## end Customer_Details::Customer_Details%4DA6C1D800DA_const.initialization{ //## begin Customer_Details::Customer_Details%4DA6C1D800DA_const.body preserve=yes //## end Customer_Details::Customer_Details%4DA6C1D800DA_const.body}
Customer_Details::Customer_Details(const Customer_Details &right) //## begin Customer_Details::Customer_Details%4DA6C1D800DA_copy.hasinit preserve=no //## end Customer_Details::Customer_Details%4DA6C1D800DA_copy.hasinit //## begin Customer_Details::Customer_Details%4DA6C1D800DA_copy.initialization preserve=yes //## end Customer_Details::Customer_Details%4DA6C1D800DA_copy.initialization{ //## begin Customer_Details::Customer_Details%4DA6C1D800DA_copy.body preserve=yes //## end Customer_Details::Customer_Details%4DA6C1D800DA_copy.body}Customer_Details::~Customer_Details(){ //## begin Customer_Details::~Customer_Details%4DA6C1D800DA_dest.body preserve=yes //## end Customer_Details::~Customer_Details%4DA6C1D800DA_dest.body}Customer_Details & Customer_Details::operator=(const Customer_Details &right){ //## begin Customer_Details::operator=%4DA6C1D800DA_assign.body preserve=yes //## end Customer_Details::operator=%4DA6C1D800DA_assign.body}
int Customer_Details::operator==(const Customer_Details &right) const{ //## begin Customer_Details::operator==%4DA6C1D800DA_eq.body preserve=yes //## end Customer_Details::operator==%4DA6C1D800DA_eq.body}int Customer_Details::operator!=(const Customer_Details &right) const{ //## begin Customer_Details::operator!=%4DA6C1D800DA_neq.body preserve=yes //## end Customer_Details::operator!=%4DA6C1D800DA_neq.body}//## Other Operations (implementation)void Customer_Details::book (){
//## begin Customer_Details::book%4DA6C2800196.body preserve=yes //## end Customer_Details::book%4DA6C2800196.body}// Additional Declarations //## begin Customer_Details%4DA6C1D800DA.declarations preserve=yes //## end Customer_Details%4DA6C1D800DA.declarations
//## begin module%4DA6C1D800DA.epilog preserve=yes//## end module%4DA6C1D800DA.epilog
(iii)BOOKING//## begin module%1.3%.codegen_version preserve=yes// Read the documentation to learn more about C++ code generator// versioning.//## end module%1.3%.codegen_version
//## begin module%4DA6C28C005D.cm preserve=no// %X% %Q% %Z% %W%//## end module%4DA6C28C005D.cm
//## begin module%4DA6C28C005D.cp preserve=no//## end module%4DA6C28C005D.cp
//## Module: Booking%4DA6C28C005D; Pseudo Package body//## Source file: C:\Program Files\Rational\Rose\C++\source\Booking.cpp//## begin module%4DA6C28C005D.additionalIncludes preserve=no//## end module%4DA6C28C005D.additionalIncludes
//## begin module%4DA6C28C005D.includes preserve=yes//## end module%4DA6C28C005D.includes// Booking#include "Booking.h"//## begin module%4DA6C28C005D.additionalDeclarations preserve=yes//## end module%4DA6C28C005D.additionalDeclarations
// Class Booking Booking::Booking() //## begin Booking::Booking%4DA6C28C005D_const.hasinit preserve=no //## end Booking::Booking%4DA6C28C005D_const.hasinit //## begin Booking::Booking%4DA6C28C005D_const.initialization preserve=yes
//## end Booking::Booking%4DA6C28C005D_const.initialization{ //## begin Booking::Booking%4DA6C28C005D_const.body preserve=yes //## end Booking::Booking%4DA6C28C005D_const.body}Booking::Booking(const Booking &right) //## begin Booking::Booking%4DA6C28C005D_copy.hasinit preserve=no //## end Booking::Booking%4DA6C28C005D_copy.hasinit //## begin Booking::Booking%4DA6C28C005D_copy.initialization preserve=yes //## end Booking::Booking%4DA6C28C005D_copy.initialization{ //## begin Booking::Booking%4DA6C28C005D_copy.body preserve=yes //## end Booking::Booking%4DA6C28C005D_copy.body}Booking::~Booking(){ //## begin Booking::~Booking%4DA6C28C005D_dest.body preserve=yes //## end Booking::~Booking%4DA6C28C005D_dest.body}Booking & Booking::operator=(const Booking &right){ //## begin Booking::operator=%4DA6C28C005D_assign.body preserve=yes //## end Booking::operator=%4DA6C28C005D_assign.body}int Booking::operator==(const Booking &right) const{ //## begin Booking::operator==%4DA6C28C005D_eq.body preserve=yes //## end Booking::operator==%4DA6C28C005D_eq.body}Int Booking::operator!=(const Booking &right) const{ //## begin Booking::operator!=%4DA6C28C005D_neq.body preserve=yes //## end Booking::operator!=%4DA6C28C005D_neq.body}//## Other Operations (implementation)void Booking::Pay (){ //## begin Booking::Pay%4DA6C2C0007D.body preserve=yes //## end Booking::Pay%4DA6C2C0007D.body}
// Additional Declarations //## begin Booking%4DA6C28C005D.declarations preserve=yes //## end Booking%4DA6C28C005D.declarations//## begin module%4DA6C28C005D.epilog preserve=yes//## end module%4DA6C28C005D.epilog