Reference no: EM133141863
IAPP001 - Applications Programming Assignment - University of Technology Sydney
TASK DESCRIPTION - This project requires students to write an Object Oriented solution for a given application.
LEARNING OUTCOMES -
1. Demonstrate a working knowledge of lists in Java.
2. Design a good OO solution from a specification.
3. Use inheritance in Java.
4. Construct a GUI interface
BRIEF - This is a take home assessment to evaluate your understanding of object-oriented concepts taught so far in IAPP001.
You will use your Project A as the starting point for this project.
You will design a Graphical User Interface to support your application, using the domain classes from Project A.
Your GUI design should outline the main use cases for the application, the basic pane design and situations to handle for the application. You may use a main window and sub windows or a main window with a stacked tab pane.
You will design the windows and panes for your application. You will implement all of the GUI components following your design. You will implement the Observer pattern and test that your solution satisfies the requirements of your application.
The assessment is comprised of three (3) parts: the GUI design, the code and the explanation.
GUI design -
Create your design for the GUI components - think about input needed from the user. Make sure your GUI design shows the GUI layout for your application. You can use paint or word tools to create the design. Make sure each panel/pane has at least 1 button to handle events.
The code -
Copy your project and create a model package. Move all the domain classes to the model package. Add MyObserver and Updater to the model package. Delete the In class and changes all dependencies to use parameters for input. Write your GUI components. Make sure you are using the Observer pattern to refresh each window when the data changes in the models. You need to implement the 4 steps for the observer pattern - all model methods that change data need to call updateViews(). All panels have an implemented update() method etc.
The explanation: (300 words) -
Write a detailed explanation of how the user would interact with your GUI to perform each of the usecase tasks. Explain how the observer pattern works by following the flow of control for one of the usecases.