CMPS251 Project Phase 2 Fall22

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

Qatar University Object-Oriented Programming (CMPS251)

Dept. of Computer Science & Engineering Fall 2022 Term Project

Club Registration App


Project Phase II requirements
Due on 24/12/2022

In Phase II your task is to develop the user interface for the Club registration App using JavaFX. The
system should meet the following requirements.

1. Display the Main UI Window that allows the users to choose member, or session window
2. Member UI Window that allows the users to choose customer, administrator or coach window
3. Customer/ Administrator/ Coach UI allow the user to add, update, delete for a specific customer/
administrator/ coach.
4. Session UI window should allow the user to register, unregister customers in the system

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 10% of the project grade.

Below are some of the screenshots for the GUI you suppose to create in phase II of the project. The
following screenshot are guidelines of how the system should look like. 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].

Figure 1 Main app window

Member UI Window
This window is loaded when you click on member button [Fig. 2].

Figure 2 Member UI window


Main Customer Window
This window is shown when the user clicks on the Customer Button in the Member View [Fig.3].

Figure 3 Customer Main UI window

Add Customer Window


This window is shown when the user clicks on the Add Button inside the Customer View shown [Fig. 4]

Figure 4 Add customer window


Update Customer Window
This window is shown when the user clicks on the Update Button inside the Customer View shown
[Fig.5]. The user should select a customer before clicking update. You will be required to populate the
selected customer info into a form to allow the user to edit.
Figure 5 – Update Customer window

Delete Customer
If the user does not select any customer you should display a warning message saying , “please select a
customer to delete”

If the user selects a customer and presses on the delete button then give a confirmation message saying ,
“Do you want to delete customer no: X ”

Figure 6 – Delete Customer

You will create similar windows for administrator/ coach as customer windows.

Session View

This window is shown when the user clicks on the Sessions Button inside the Main View shown [Fig.1].
The following are the steps you need to implement.
1. You should populate the customer ids and coach ids in the two drop down elements [Customer,
Coach].
2. When the user selects a customer id, coach, start date, end date, and enter session name, price,
start time, end time, and then presses on Register button. Then you need to use this information
to create a Session object and save this object into the file called sessions and display in the table.
Hint: before creating the session object, use the findCustomer and findCoach methods you
created in Phase 1, to get all customer and coach objects.
The below figure shows adding a rental

Figure 7: Register a customer


3. To un-Register a customer from a session, select a session of populated sessions then press Un-
Register button. If the user selects a session and presses on the Un-Register button then give a
confirmation message saying , “Do you want to delete customer ”. Then you will remove
customer from session.

Figure 8: Un-Register a customer


Instructions for Phase 2

1. All the instruction in phase I apply here too, as these instructions are just a continuation of the
previous phase.
2. 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.
3. The name of the student who created a class must be written as the author using Javadoc comments.
Also, add the date of the creation of the class.
4. Each group should submit one softcopy of their work by uploading an archive of their project folder
to the course website on Blackboard under your group and also update their Phase I report by adding
phase II GUI.
5. Each student 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.

Evaluation criteria:

• Project Code/Implementation 80%. You can earn this 80% as follows,


o code completeness: the code is complete and working. The student implemented all the GUI
and saving to files requirements with no errors [60%]
o quality of implementation [20%] includes meaningful naming of identifiers, no redundant
code, simple and efficient design, clean code without unnecessary files/code, use of comments
where necessary, proper white space and indentation use of a meaningful variable name,
abiding by Java naming conventions etc.
o 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.
• Project Report 20%: You should combine Phase 1 and Phase 2 reports and resubmit again as
one report. The report should have
o a cover page that lists your names and QU ID's.
o the source code of all the developed Java classes (font size should be 12 points, please)
o screenshots of all input/output of the GUI.
• If you do not attend the discussion session of the project (-100)
• Copying and/or plagiarism (-100%) . It is the right of the instructor to use any way of testing the student
in the discussion and demo session, and according to that in some cases ( 100% ) graded projects may be
down to (-100%) graded project.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy