Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Distributed airline reservation system

1,627 views

Published on

• Designed and developed a Master Server for an Airline Reservation System using C++ socket programming.
• Had the most enhanced user experience along with the number of features like Encryption, SMTP, IPV6, Database, Multi-threading, Backup and Restore etc.,

Published in: Engineering
  • Login to see the comments

Distributed airline reservation system

  1. 1. Distributed Airline Reservation System KARTHIK SIDDALINGAPPA NAGTHEJ MANANGI PRAMOD PRAKASH 1
  2. 2. 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
  3. 3. 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
  4. 4. Implementation 4 Distributed Airline Reservation System Customer System Admin Commercial Airliner Client Server Database
  5. 5. Control Flow Diagram 5
  6. 6. The Customer 6 The Distributed Systems Main Page Customer Login (New and existing Users with Authentication) Customer Main Page
  7. 7. Customer contd. 7 CustomerOptions Book Flights Cancel Booking Book Hotels Book your rides Update user Info Contact us
  8. 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. 9. Customer (Demo) 9
  10. 10. Database 10 Database Sqlite 3 Flights Database Customer Database Airliner Database
  11. 11. Customer Database  Customer information  Add new Customer  Update customer information 11
  12. 12. Customer Database (Demo) 12
  13. 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. 14. Block Diagram: 14 The Distributed Systems Main Page Administrator Login and Authentication Administrator Main Page
  15. 15. 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
  16. 16. System Admin (Demo) 16
  17. 17. Multithreading (Demo) 17
  18. 18. Semaphore (Demo) 18
  19. 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. 20. 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
  21. 21. 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
  22. 22. Airliner Demo 22
  23. 23. 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
  24. 24. Enhancements planned:  IPV6  Encryption  Winsock  State information 24
  25. 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. 26. Thank You! 26 Questions?

×