Distributed Airline
Reservation System
KARTHIK SIDDALINGAPPA
NAGTHEJ MANANGI
PRAMOD PRAKASH
1
Overview of our Presentation
 Design of our project
 The Project Implementation
 The Customer Part
 Database
 Customer Demo
 System Admin
 Commercial Airliner
 Hurdles
 Enhancements
 Learnings
2
Design
 TCP Concurrent Server
 Multithreaded Server
 3 layers
 Distributed System
 Mutex / Semaphore
 Database : Backups and Restore
 File system – Display page: with forwards and backwards traversing
 C programming
 BSD sockets
3
Implementation 4
Distributed Airline
Reservation System
Customer System Admin
Commercial
Airliner
Client
Server Database
Control Flow Diagram 5
The Customer 6
The Distributed Systems
Main Page
Customer Login
(New and existing Users
with Authentication)
Customer Main Page
Customer contd. 7
CustomerOptions
Book Flights
Cancel Booking
Book Hotels
Book your rides
Update user Info
Contact us
The Flow Chart
 Client is constantly
reading the command
line and writing it to the
server
 Server will process the
information depending
the input given
 Dynamic data
processing
 Database
8
Customer?
Existing Customer? New Customer?
•Book Flights
•Cancel Flights
•Book Hotels
•Book Cabs
•Update personal Info
•Contact us
Process the Selected
option
Stop
Start
Customer (Demo) 9
Database 10
Database
Sqlite 3
Flights Database
Customer
Database
Airliner Database
Customer Database
 Customer information
 Add new Customer
 Update customer information
11
Customer Database (Demo) 12
The System Admin
 The sysadmin handles both the flights and the airliner data to meet
efficient services
 Adding, removing, or updating flights/airliner
 adding, deleting and backup the database.
13
Block Diagram: 14
The Distributed
Systems Main
Page
Administrator
Login
and
Authentication
Administrator
Main Page
15
AdminOptions
Flight database
Airliner database
database backup
Flightdatabase
options
Create flight database
Add flights
Update flights
Delete flights
Display flights
Airlinerdatabase
options
Create Airliner database
Add Airliner
Delete Airliner
Display Airliner
System Admin (Demo) 16
Multithreading (Demo) 17
Semaphore (Demo) 18
The Commercial Airliner
 Acts as a flight customer service agents.
 Notifies System admin if there are any changes in Flight details.
 Has the authority to add flights, Update, delete and display flight details.
 Provides information about Seat availability, Baggage information and on-
board facilities.
19
Flow Chart: 20
USER AUTHENTICATION
SERVICE OPTIONS
FOR AIRLINER
1. ADD FLIGHTS
2. UPDATE FLIGHTS
3. DELETE FLIGHTS
4. DISPLAY FLIGHT DETAILS
AUTHENTICATED
?
YES
NO
Airliner implementation:
 Database handling is done using SQLite 3.
 Database includes Itinerary comprising the flight number, Seat availability,
Travel class, Baggage info, and on-board facilities.
 Provides the database to sysadmin and notifies if there is any update in
flight details.
21
Airliner Demo 22
Hurdles:
 Figuring out the “n" terminated string, had to be read correctly.
 “The While problem”
 Moving on from File based implementation: “The Database”
 “Backward Traversing”
 Databases + BSD socket program : “The Merge”
 “Bringing it all together”
23
Enhancements planned:
 IPV6
 Encryption
 Winsock
 State information
24
We learnt! 25
• Learnt programming using BSD sockets.BSD Sockets
• Concept of threading.
• Memory and resources sharing.
Multithreading
• Communication between them.
• Design and implementation.Client-Server
• Implementing a client-server at an enterprise level, takes a lot of planning and design, this project gave us an
overview as to how a client server model can be implemented at an enterprise level.Implementation
• Learnt about the behaviour of the model at different hierarchy
Mutex/Semaphore
• Learnt about the difference between different calls in IPV4 and IPV6
IPV4 vs IPV6
• Got to learn about creating and passing queries to the database using SQL.
Database
• The most important task of all is to work as a team effectively, we managed to emerge as a better team.Team Work
Thank You! 26
Questions?

Distributed airline reservation system

  • 1.
    Distributed Airline Reservation System KARTHIKSIDDALINGAPPA NAGTHEJ MANANGI PRAMOD PRAKASH 1
  • 2.
    Overview of ourPresentation  Design of our project  The Project Implementation  The Customer Part  Database  Customer Demo  System Admin  Commercial Airliner  Hurdles  Enhancements  Learnings 2
  • 3.
    Design  TCP ConcurrentServer  Multithreaded Server  3 layers  Distributed System  Mutex / Semaphore  Database : Backups and Restore  File system – Display page: with forwards and backwards traversing  C programming  BSD sockets 3
  • 4.
    Implementation 4 Distributed Airline ReservationSystem Customer System Admin Commercial Airliner Client Server Database
  • 5.
  • 6.
    The Customer 6 TheDistributed Systems Main Page Customer Login (New and existing Users with Authentication) Customer Main Page
  • 7.
    Customer contd. 7 CustomerOptions BookFlights Cancel Booking Book Hotels Book your rides Update user Info Contact us
  • 8.
    The Flow Chart Client is constantly reading the command line and writing it to the server  Server will process the information depending the input given  Dynamic data processing  Database 8 Customer? Existing Customer? New Customer? •Book Flights •Cancel Flights •Book Hotels •Book Cabs •Update personal Info •Contact us Process the Selected option Stop Start
  • 9.
  • 10.
    Database 10 Database Sqlite 3 FlightsDatabase Customer Database Airliner Database
  • 11.
    Customer Database  Customerinformation  Add new Customer  Update customer information 11
  • 12.
  • 13.
    The System Admin The sysadmin handles both the flights and the airliner data to meet efficient services  Adding, removing, or updating flights/airliner  adding, deleting and backup the database. 13
  • 14.
    Block Diagram: 14 TheDistributed Systems Main Page Administrator Login and Authentication Administrator Main Page
  • 15.
    15 AdminOptions Flight database Airliner database databasebackup Flightdatabase options Create flight database Add flights Update flights Delete flights Display flights Airlinerdatabase options Create Airliner database Add Airliner Delete Airliner Display Airliner
  • 16.
  • 17.
  • 18.
  • 19.
    The Commercial Airliner Acts as a flight customer service agents.  Notifies System admin if there are any changes in Flight details.  Has the authority to add flights, Update, delete and display flight details.  Provides information about Seat availability, Baggage information and on- board facilities. 19
  • 20.
    Flow Chart: 20 USERAUTHENTICATION SERVICE OPTIONS FOR AIRLINER 1. ADD FLIGHTS 2. UPDATE FLIGHTS 3. DELETE FLIGHTS 4. DISPLAY FLIGHT DETAILS AUTHENTICATED ? YES NO
  • 21.
    Airliner implementation:  Databasehandling is done using SQLite 3.  Database includes Itinerary comprising the flight number, Seat availability, Travel class, Baggage info, and on-board facilities.  Provides the database to sysadmin and notifies if there is any update in flight details. 21
  • 22.
  • 23.
    Hurdles:  Figuring outthe “n" terminated string, had to be read correctly.  “The While problem”  Moving on from File based implementation: “The Database”  “Backward Traversing”  Databases + BSD socket program : “The Merge”  “Bringing it all together” 23
  • 24.
    Enhancements planned:  IPV6 Encryption  Winsock  State information 24
  • 25.
    We learnt! 25 •Learnt programming using BSD sockets.BSD Sockets • Concept of threading. • Memory and resources sharing. Multithreading • Communication between them. • Design and implementation.Client-Server • Implementing a client-server at an enterprise level, takes a lot of planning and design, this project gave us an overview as to how a client server model can be implemented at an enterprise level.Implementation • Learnt about the behaviour of the model at different hierarchy Mutex/Semaphore • Learnt about the difference between different calls in IPV4 and IPV6 IPV4 vs IPV6 • Got to learn about creating and passing queries to the database using SQL. Database • The most important task of all is to work as a team effectively, we managed to emerge as a better team.Team Work
  • 26.