Distributed Airline Reservation System

21
Distributed Airline Reservation System” Presentation by: Group: 9 Dwiti Gajab – 008020038 Aman Chaurasia – 008017516 Pardeep Badhan – 004504293 Advisor: Dr. Rod Fatoohi 5/15/12 1

description

GUI, BSD socket, .NET socket, Encryption using MD5, authentication.

Transcript of Distributed Airline Reservation System

Page 1: Distributed Airline Reservation System

“Distributed Airline Reservation System”

Presentation by:Group: 9

Dwiti Gajab – 008020038Aman Chaurasia – 008017516Pardeep Badhan – 004504293

Advisor: Dr. Rod Fatoohi

5/15/12 1

Page 2: Distributed Airline Reservation System

Contents:

1) Presentation overview

2) System functionality

3) Database design

4) Flow diagram

5) Project features

6) Project Implementation code (GUI)

7) Snapshots

8) Challenges

9) References

10) Demonstration of project

25/15/12

Page 3: Distributed Airline Reservation System

Presentation Overview:

Objective - To develop and design a distributed airline reservation system.

C# (for GUI), .NET sockets (client), BSD sockets (server) with C programming, MYSQL database, UNIX environment.

35/15/12

Page 4: Distributed Airline Reservation System

System Functionality:

Login required for all. System Administrator:- Add airline database/representative Airline Representative:

- Add/Delete specific flights

- View its own flights

- List all customers for specific flight

- Update the airline information (email, airline name, password etc.) Customers:- Register as a new user

- Make/Cancel/View reservations

- Update personal information

45/15/12

Page 5: Distributed Airline Reservation System

Database Design:

System administrator

Users/Customers

Airline representative

55/15/12

Page 6: Distributed Airline Reservation System

Flow Diagram:

65/15/12

Page 7: Distributed Airline Reservation System

Project Features: BSD sockets (server): – well integrated with OS. .NET sockets (client) I/O multiplexing “select ()” used:

- application needs data sharing.

- less switching time between process. “MySQL” database. Encryption using MD5 algorithm. Multi-user authentication: – Login required. Data passed in binary format

- less BW usage, fast transmission of signals.

75/15/12

Page 8: Distributed Airline Reservation System

Project implementation code:

GUI: Login Example (Form - new_user_form.cs)1 button_login_click() /* function called upon Click of login button*/

2 String username = textBox_login_username.Text.Trim().ToString(); /* read the username string from the textbox */

3 String password = textBox_login_password.Text.Trim().ToString();

/* read the password string from the textbox */

85/15/12

Page 9: Distributed Airline Reservation System

Project implementation code (contd):GUI: Login Example (contd)

4 if (flight_resv_client.attempt_login(username, password, user_info) == true)

{ /* user was authentication successfully */

}

/* Do not do anything, authentication failed */

5. attempt_login() /* form a message that will sent to the server */

6. msg.msg_id = HTON(MSG_ID_LOGIN_USER)

7. msg.username = username

8. msg.password = password

9. Steam s = tcp_client.GetStream(); /* get TCP client data stream */

10. s.write(msg, msg.Length); /* send the message to the server */

11. s.Flush(); /* flush the buffer now */

12. s.Read(user_info, sizeof(user_info)

if (user_info.success != 0 ) {

/* user was authenticated was successfully */ return (true);

} else { /* user was not authenticated */

MessageBox.Show(user_info.error); return (false);

}

195/15/12

Page 10: Distributed Airline Reservation System

MySql:

105/15/12

Table “users”

Table “flights”

Page 11: Distributed Airline Reservation System

Snapshot:System Administrator:

115/15/12

Page 12: Distributed Airline Reservation System

Snapshot:Airline representative:

125/15/12

Page 13: Distributed Airline Reservation System

Snapshot:Airline representative (contd):

135/15/12

Page 14: Distributed Airline Reservation System

Snapshot:

Customers:

145/15/12

Page 15: Distributed Airline Reservation System

Snapshot:

Customers:

155/15/12

Page 16: Distributed Airline Reservation System

Snapshot:Server:

165/15/12

Page 17: Distributed Airline Reservation System

Snapshot:Server (Contd):

175/15/12

Page 18: Distributed Airline Reservation System

Challenges:

Implementing C# and linking it with client MYSQL database Encrypting password using MD5

185/15/12

Page 19: Distributed Airline Reservation System

References:

1. http://zetacode.com/tutorials/mysqlcapitutorial/(For entire MYSQL database implementation)

2. http://en.wikipedia.org/wiki/MySQL

3. http://www.pantz.org/software/mysql/mysqlcommands.html(for commands)

4. TCP/IP Volume III Client server programming and application by Stevens and Comer

5. UNIX Network Programming by Stevens and Fenner

195/15/12

Page 20: Distributed Airline Reservation System

205/15/12

Page 21: Distributed Airline Reservation System

Any Questions???

Thank You…

215/15/12