31
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

Online Ticket Reservation[1]

  • Upload
    legy86

  • View
    226

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Online Ticket Reservation[1]

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.

Page 2: Online Ticket Reservation[1]

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

book()

Booking

Booking no : integerDate : dateTotal : integerStatus : stringname : string

Pay()

Payment

Date : dateAmount : integer

Page 3: Online Ticket Reservation[1]

6.SEQUENCE DIAGRAM

Travaller Employee Online catalog

Login

transport medium selection

Check availability

Avail

Register

No of ticket needed

Travel timing

Starting &departure

7. COLLABARATION DIAGRAM

Customer

Server

Bank

2: Yes

1: CheckAvailability

3: If no schedule

4: Enter Information

5: Reconfirm booking

8: GEt ticket

6: Payment

7: Confirm payment

8. STATESPACE DIAGRAM

Page 4: Online Ticket Reservation[1]

Display Availability

Get booking request

Display Payment details

Get user's payment details

Complete

Print ticket

no

9. COMPONENT VIEW

Online booking server

Bank

Customer

10. DEPLOYMENT DIAGRAM

Page 5: Online Ticket Reservation[1]

Server update

preemptive

<process name><thread name>

Railway Database

User PC

11.CODE GENERATION

HEADER 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

//## Module: Payment%4DA6C2D0001F; Pseudo Package specification//## Source file: C:\Program Files\Rational\Rose\C++\source\Payment.h

#ifndef Payment_h#define Payment_h 1

//## begin module%4DA6C2D0001F.additionalIncludes preserve=no

Page 6: Online Ticket Reservation[1]

//## end module%4DA6C2D0001F.additionalIncludes

//## begin module%4DA6C2D0001F.includes preserve=yes//## end module%4DA6C2D0001F.includes

//## begin module%4DA6C2D0001F.additionalDeclarations preserve=yes//## end module%4DA6C2D0001F.additionalDeclarations

//## begin Payment%4DA6C2D0001F.preface preserve=yes//## end Payment%4DA6C2D0001F.preface//## Class: Payment%4DA6C2D0001F//## Category: <Top Level>//## Persistence: Transient//## Cardinality/Multiplicity: nclass Payment { //## begin Payment%4DA6C2D0001F.initialDeclarations preserve=yes //## end Payment%4DA6C2D0001F.initialDeclarations

public: //## Constructors (generated) Payment();

Payment(const Payment &right);

//## Destructor (generated) ~Payment();

//## Assignment Operation (generated) Payment & operator=(const Payment &right);

//## Equality Operations (generated) int operator==(const Payment &right) const;

int operator!=(const Payment &right) const;

// Additional Public Declarations //## begin Payment%4DA6C2D0001F.public preserve=yes //## end Payment%4DA6C2D0001F.public

Page 7: Online Ticket Reservation[1]

protected: // Additional Protected Declarations //## begin Payment%4DA6C2D0001F.protected preserve=yes //## end Payment%4DA6C2D0001F.protected

private: //## Get and Set Operations for Class Attributes (generated)

//## Attribute: Date%4DA6C2D80000 const date get_Date () const; void set_Date (date value);

//## Attribute: Amount%4DA6C2DC0232 const integer get_Amount () const; void set_Amount (integer value);

// 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

Page 8: Online Ticket Reservation[1]

//## 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

Page 9: Online Ticket Reservation[1]

//## begin module%4DA6C1D800DA.cp preserve=no//## end module%4DA6C1D800DA.cp

//## Module: Customer Details%4DA6C1D800DA; Pseudo Package specification//## Source file: C:\Program Files\Rational\Rose\C++\source\Customer Details.h

#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

public: //## Constructors (generated) Customer_Details();

Customer_Details(const Customer_Details &right);

//## Destructor (generated) ~Customer_Details();

//## Assignment Operation (generated) Customer_Details & operator=(const Customer_Details &right);

Page 10: Online Ticket Reservation[1]

//## Equality Operations (generated) int operator==(const Customer_Details &right) const;

int operator!=(const Customer_Details &right) const;

//## Other Operations (specified) //## Operation: book%4DA6C2800196 void book ();

//## Get and Set Operations for Associations (generated)

//## Association: <unnamed>%4DA6C2E6001F //## Role: Customer_Details::<the_Booking>%4DA6C2E701C5 const Booking * get_the_Booking () const; void set_the_Booking (Booking * value);

// Additional Public Declarations //## begin Customer_Details%4DA6C1D800DA.public preserve=yes //## end Customer_Details%4DA6C1D800DA.public

protected: // Additional Protected Declarations //## begin Customer_Details%4DA6C1D800DA.protected preserve=yes //## end Customer_Details%4DA6C1D800DA.protected

private: //## Get and Set Operations for Class Attributes (generated)

//## Attribute: Name%4DA6C20100EA const string get_Name () const; void set_Name (string value);

//## Attribute: Address%4DA6C20902CE const string get_Address () const; void set_Address (string value);

//## Attribute: Email%4DA6C21302EE const string get_Email () const;

Page 11: Online Ticket Reservation[1]

void set_Email (string value);

//## Attribute: Age%4DA6C271006D const integer get_Age () const; void set_Age (integer value);

// 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

Page 12: Online Ticket Reservation[1]

//## 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}

inline const string Customer_Details::get_Email () const

Page 13: Online Ticket Reservation[1]

{ //## 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}

inline void Customer_Details::set_the_Booking (Booking * value){ //## begin Customer_Details::set_the_Booking%4DA6C2E701C5.set preserve=no the_Booking = value;

Page 14: Online Ticket Reservation[1]

//## 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

//## Module: Booking%4DA6C28C005D; Pseudo Package specification//## Source file: C:\Program Files\Rational\Rose\C++\source\Booking.h

#ifndef Booking_h#define Booking_h 1

//## 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 { -> }

Page 15: Online Ticket Reservation[1]

class Booking { //## begin Booking%4DA6C28C005D.initialDeclarations preserve=yes //## end Booking%4DA6C28C005D.initialDeclarations public: //## Constructors (generated) Booking();

Booking(const Booking &right); //## Destructor (generated) ~Booking(); //## Assignment Operation (generated) Booking & operator=(const Booking &right); //## Equality Operations (generated) int operator==(const Booking &right) const;

int operator!=(const Booking &right) const;

//## Other Operations (specified) //## Operation: Pay%4DA6C2C0007D void Pay ();

//## Get and Set Operations for Associations (generated)

//## Association: <unnamed>%4DA6C2F20177 //## Role: Booking::<the_Payment>%4DA6C2F3034B const Payment * get_the_Payment () const; void set_the_Payment (Payment * value);

// Additional Public Declarations //## begin Booking%4DA6C28C005D.public preserve=yes //## end Booking%4DA6C28C005D.public

protected: // Additional Protected Declarations //## begin Booking%4DA6C28C005D.protected preserve=yes //## end Booking%4DA6C28C005D.protected

private:

Page 16: Online Ticket Reservation[1]

//## Get and Set Operations for Class Attributes (generated)

//## Attribute: Booking no%4DA6C29B00DA const integer get_Booking_no () const; void set_Booking_no (integer value);

//## Attribute: Date%4DA6C2A101B5 const date get_Date () const; void set_Date (date value);

//## Attribute: Total%4DA6C2A500CB const integer get_Total () const; void set_Total (integer value); //## Attribute: Status%4DA6C2A9005D const string get_Status () const; void set_Status (string value); //## Attribute: name%4DA6C2AC0251 const string get_name () const; void set_name (string value); // Additional Private Declarations //## begin Booking%4DA6C28C005D.private preserve=yes //## end Booking%4DA6C28C005D.private

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;

Page 17: Online Ticket Reservation[1]

//## 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

Page 18: Online Ticket Reservation[1]

{ //## 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;

Page 19: Online Ticket Reservation[1]

//## 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

//## Module: Payment%4DA6C2D0001F; Pseudo Package body//## Source file: C:\Program Files\Rational\Rose\C++\source\Payment.cpp

//## 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

Page 20: Online Ticket Reservation[1]

// 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}

Page 21: Online Ticket Reservation[1]

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

Page 22: Online Ticket Reservation[1]

//## 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 (){

Page 23: Online Ticket Reservation[1]

//## 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

Page 24: Online Ticket Reservation[1]

//## 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}

Page 25: Online Ticket Reservation[1]

// Additional Declarations //## begin Booking%4DA6C28C005D.declarations preserve=yes //## end Booking%4DA6C28C005D.declarations//## begin module%4DA6C28C005D.epilog preserve=yes//## end module%4DA6C28C005D.epilog