Flight/Hotel Booking System -Phase II Phase II is due on 7/5/2022 In Phase II, your task is to develop the user interfac
Posted: Sat May 14, 2022 4:30 pm
Flight/Hotel Booking System -Phase II Phase II is due on 7/5/2022 In Phase II, your task is to develop the user interface for Travel Booking System using JavaFX. The system should meet the following requirements. 1. Display the Main UI Window that allows the user to choose whether they are a customer or staff 2. Customer Ul window should allow the user to book a specific flight. 3. Staff UI to allow the user to view and manage flights, hotels, or reports. 4. Flights UI window should allow the user to add, update, delete flights in the system 5. Reports Ul window should allow the admin to view all the available or the unavailable bookings. Your system should have a GUI interface to interact with system users and should use files to save data permanently. Not using files will result in losing 30% of the project grade. Your system should also handle exceptions such as input mismatch exceptions if the user inputs the wrong data types. Below are some of the screenshots for the GUI you are supposed to create in phase II of the project. The following screenshot are guidelines of how the system should look like. Wherever needed, you should make us of the classes and methods created in phase I in the functionality of this user interface. They are the minimal requirements. However, if some of you would like to improve the design or implement more functionalities, then you are free to do so. Main UI Window: This window is loaded when you first start the application (Fig.1). Flight/Hotel Booking System Customer Staff Figure / Main View window
Customer UI Window: This window is shown when the user clicks on the Customer button in the MainView (Fig. 1). The user should choose a flight from the table to book. Customer Destination Take on Book Flight Seat Price No content in table Figure 2 Customer View When the user enters a customer ID, destination and take-off then clicks on Book Flight, the system should check if the user exists then books the flight accordingly. When the flight is booked, the content of the table should reflect the booked seats for this specific customer. The save button should save the changes to the data files. 123 Customer Destination Take on Doha Book Flint Sawe Pa Seal Price 30000 Figure Customer View After Booking Staff UI Window: This window is shown when the user clicks on the Staff Button in the MainView [Fig. 1]. The user should be able to view and manage flights, hotels, or reports. ох Staff Window Flights Hotels Reports Fire State 2
Flights UL Window: When the user clicks on the Flights button, another window should appear showing all the flights in the system in a tabular format as follows: Flight Add fight with some Take-OH Destination Flight Date De 2022016 3731 The user should be able to add, update or delete flights from the system. The save button should save all the changes made to the data files. Add Flight Flight Number Destination Take-off Flight Date Add Cancel F. Fight Flight. Number ORI Flight Date Tale- D Destination Addigh beton Furg
Reports U Window: This window is shown when the user click on the Reports Button in the Staf View (Fig. 4). The user should choose either "Available" or "Unavailable" from a menu and a report of all bookings with the specified condition should appear when "Find Bookings" button is clicked (Hint: The report is a string from phase Booking System methods] х Find Bookinys Report Type: Avale Hotel Id Hotel Name 796 Sheraton Flight No QR352 QR3731 Destination Take Off Flight Date London Doha 2022-04-16 Doha Paris 2022-04-16 Figwe Ruyats
Instructions: 1. This is a group-work project (3 students per group, exceptionally a group of 4 may be allowed). 2. Please immediately form your group and share them on Blackboard. I have already created a link that allows you to register your group. 3. Please start immediately and plan your time so that you finish within the project period. Submissions after the due date will incur a 25% penalty for every day or part of a day. 4. Documentation (Please join the documentation of phase I along with phase II in one report: • Cover Page with necessary information: QU logo, Students' names & register ID, Department name, Term and Project title • Short report that includes a brief description of your application and a list (better to be in a tabular structure) of the methods used with a short description of cach. • Evidence of correct execution and results using snapshots of program execution (sample runs). Code listing 5. Discussion and demo of the project: Students should demo their program, explain how it works and answer questions about the implementation. Each team member must contribute to the discussion and demo 6. Submission: • Each group should submit a zip file of the project code and the word file of the project documentation • an archive of their project folder. You can export using eclipse IDE. • an MS-Word document containing the report for phase I + II. Each member MUST submit a one-page confidential report (called the self-report) describing his/her exact contribution to the project and explaining the advantages and disadvantages of working in teams, based on your current experience with this project. This is individual and you will be required to submit it on a different link. [DO NOT SHARE this with your teammates) Evaluation criteria: 30% for the functionalities required above, and the report that shows the code and the results of all the test cases. This includes correct indentation and formatting of your code, use of meaningful variable name, abiding by Java naming conventions etc. (Phase 1) • For not working solution with errors: In case your implementation is not working then 40% of the grade will be lost and the remaining 60% will be determined based on the code quality and how close your solution is to the working implementation • 20% for authoring and producing the Javadoc documentation+Phasel report (Phase 1) 25% for adding a GUI to the application. (Phase II) 15% File management (saving, loading, updating) (Phase II) 10% for presentation of work (Phase II) - NO PRESENTATION NO GRADE Copying and/or plagiarism (-100%)
Customer UI Window: This window is shown when the user clicks on the Customer button in the MainView (Fig. 1). The user should choose a flight from the table to book. Customer Destination Take on Book Flight Seat Price No content in table Figure 2 Customer View When the user enters a customer ID, destination and take-off then clicks on Book Flight, the system should check if the user exists then books the flight accordingly. When the flight is booked, the content of the table should reflect the booked seats for this specific customer. The save button should save the changes to the data files. 123 Customer Destination Take on Doha Book Flint Sawe Pa Seal Price 30000 Figure Customer View After Booking Staff UI Window: This window is shown when the user clicks on the Staff Button in the MainView [Fig. 1]. The user should be able to view and manage flights, hotels, or reports. ох Staff Window Flights Hotels Reports Fire State 2
Flights UL Window: When the user clicks on the Flights button, another window should appear showing all the flights in the system in a tabular format as follows: Flight Add fight with some Take-OH Destination Flight Date De 2022016 3731 The user should be able to add, update or delete flights from the system. The save button should save all the changes made to the data files. Add Flight Flight Number Destination Take-off Flight Date Add Cancel F. Fight Flight. Number ORI Flight Date Tale- D Destination Addigh beton Furg
Reports U Window: This window is shown when the user click on the Reports Button in the Staf View (Fig. 4). The user should choose either "Available" or "Unavailable" from a menu and a report of all bookings with the specified condition should appear when "Find Bookings" button is clicked (Hint: The report is a string from phase Booking System methods] х Find Bookinys Report Type: Avale Hotel Id Hotel Name 796 Sheraton Flight No QR352 QR3731 Destination Take Off Flight Date London Doha 2022-04-16 Doha Paris 2022-04-16 Figwe Ruyats
Instructions: 1. This is a group-work project (3 students per group, exceptionally a group of 4 may be allowed). 2. Please immediately form your group and share them on Blackboard. I have already created a link that allows you to register your group. 3. Please start immediately and plan your time so that you finish within the project period. Submissions after the due date will incur a 25% penalty for every day or part of a day. 4. Documentation (Please join the documentation of phase I along with phase II in one report: • Cover Page with necessary information: QU logo, Students' names & register ID, Department name, Term and Project title • Short report that includes a brief description of your application and a list (better to be in a tabular structure) of the methods used with a short description of cach. • Evidence of correct execution and results using snapshots of program execution (sample runs). Code listing 5. Discussion and demo of the project: Students should demo their program, explain how it works and answer questions about the implementation. Each team member must contribute to the discussion and demo 6. Submission: • Each group should submit a zip file of the project code and the word file of the project documentation • an archive of their project folder. You can export using eclipse IDE. • an MS-Word document containing the report for phase I + II. Each member MUST submit a one-page confidential report (called the self-report) describing his/her exact contribution to the project and explaining the advantages and disadvantages of working in teams, based on your current experience with this project. This is individual and you will be required to submit it on a different link. [DO NOT SHARE this with your teammates) Evaluation criteria: 30% for the functionalities required above, and the report that shows the code and the results of all the test cases. This includes correct indentation and formatting of your code, use of meaningful variable name, abiding by Java naming conventions etc. (Phase 1) • For not working solution with errors: In case your implementation is not working then 40% of the grade will be lost and the remaining 60% will be determined based on the code quality and how close your solution is to the working implementation • 20% for authoring and producing the Javadoc documentation+Phasel report (Phase 1) 25% for adding a GUI to the application. (Phase II) 15% File management (saving, loading, updating) (Phase II) 10% for presentation of work (Phase II) - NO PRESENTATION NO GRADE Copying and/or plagiarism (-100%)