Develop the GUI using JavaFX

Assignment Help Programming Languages
Reference no: EM131932606

Assignment 1 -

This assignment has TWO (2) questions.

Objectives - The objective of this assessment is for you to demonstrate your understanding of issues related to the design and use of sequential and concurrent data structures and algorithms.

Question 1 - A group of chess players meet every week for chess games. They want to record who has won a game against whom.

The following games have been played:

Player 1 vs Player 2 - winner = Player 2

Player 2 vs Player 4 - winner = Player 4

Player 2 vs Player 6 - winner = Player 6

Player 3 vs Player 4 - winner = Player 3

Player 3 vs Player 5 - winner = Player 3

Player 5 vs Player 2 - winner = Player 2

Player 5 vs Player 6 - winner = Player 5

Player 6 vs Player 1 - winner = Player 1

Your task is to decide what data structure/s would be best to store this information. This can include any of the data structures studied in the module, e.g. graphs, hash maps, trees, linked lists. When selecting a data structure, think about what operations the chess players might want to perform with the data, and which structures would be more efficient for these operations.

(a) Explain which data structure/s you chose and how it would store the information. Be as specific as possible, e.g. if you chose to use a graph, state clearly whether the graph will be implemented as an adjacency matrix or adjacency lists, or if you used a hash map, state what type the keys and values are.

(b) Show, with the aid of diagrams or tables if appropriate, how the game information given above, i.e. Player 1 vs 2 with winner = 2 and so on, would be stored in your chosen structure.

(c) Give two examples of operations that can be performed using your data structure. Here are some suggestions:

  • Finding whether a given player has won against another given player.
  • Listing the players that a given player has beaten.
  • Listing the players that a given player has lost to.
  • Listing all the games that have been played, including who played whom and who won.
  • Listing the players that a given player has played against (won or lost).

For each of the example operations you choose, explain how it would work using the data structure/s you chose and what time complexity it would have.

Question 2 - There is a bridge over a deep cavern. A group of people want to cross, but the bridge is unstable and can only support at most two people at one time. The code for the Person class is given below, which represents a person crossing the bridge. It uses a shared semaphore bridge.

Person code:

wait(bridge);

cross();

signal(bridge);

(a) There are four people, A, B, C and D, who want to cross the bridge. Each person is an instance of the Person class. Demonstrate how the semaphore prevents more than two people being on the bridge at the same time by giving an example execution trace. Show the value of bridge after each wait or signal step. Ensure that you state the initial value of bridge.

If a wait operation executes, indicate whether the process succeeds or is placed in the queue. If a signal operation executes, indicate whether the value is changed or a sleeping process is woken up. (7 marks)

(b) The owner of the bridge wants to keep track of how many people cross it. A shared variable count is used for this. Each Person instance increments the count as they cross the bridge. The Person code is changed to the following:

Person code:

wait(bridge);

wait(mutex);

int c = count;

count = c + 1;

signal(mutex);

cross();

signal(bridge);

Give an example trace to show what would happen if there was no mutex semaphore but the count was still updated by each Person. Your trace should show how an incorrect value for count could be obtained.

Assignment 2: JavaFX Final Year Module Chooser GUI

You must develop the GUI using JavaFX (and not any other Java framework such as Swing or AWT). Furthermore, you cannot use a GUI builder of any kind. Failure to meet either of these two requirements will result in an automatic mark of zero for this assignment.

Objectives

The objective of this assessment is for you to demonstrate your ability to design and implement an OO system consisting of a set of Java classes, using advanced libraries within the Java SDK. In particular:

1. To study and correctly make use of a prebuilt student profile data model.

2. To build a suitable user interface using JavaFX 8 libraries.

3. To implement event handling procedures that provide a basis for an interactive and user-friendly system.

4. To adhere to standard principles of the Model-View-Controller (MVC) design pattern and appropriately decompose classes through abstraction and encapsulation.

JavaFX Module Chooser GUI specification

A student profile captures the details of an individual second year undergraduate computing student and allows them to select their final year module options. There are compulsory modules that must be selected (depending on the course of study), and others that are only associated with certain courses. Modules either run in term 1 or 2, or all year long.

Your task is to build an interactive graphical user interface (GUI) that dynamically allows modules to be selected based on the chosen course of study, and then stores this information. The application should be user-friendly and contain appropriate validation to ensure only a legitimate selection of modules is made.

For this prototype, you are only required to use the data of two courses, Computer Science and Software Engineering. However, the system should be designed such that it would be relatively simple to add further courses and modules in the future.

The table overleaf shows all of the available modules, their credit amount, and whether they are an option or compulsory for Computer Science and Software Engineering students.

Computer Science students have 45 compulsory credits, whereas Software Engineering students have 60 compulsory credits. Computer Science students can exclusively study IMAT3428.

In total 120 credits must be selected via any legitimate combination of modules, but crucially you may only select 60 credits per term. The yearlong module IMAT3451 contributes towards 15 credits in each term.

Reference no: EM131932606

Questions Cloud

What is the probability of either x or y occurring : The events X and Y are mutually exclusive. Suppose P(X) = .05 and P(Y) = .02. (Show work)
What percentage of bolts will have a diameter : What percentage of bolts will have a diameter greater than 0.32 inches?
Discuss how each data source is relevant to the problem : Discuss what data you have collected or researched to indicate there is a problem.Include at least two (2) sources of data (charts, data, statistics, etc.).
What do you believe causes harmful conflict in the workplace : What do you believe causes harmful conflict in the workplace? Can this be avoided? If not, how can it be resolved without causing long-term damage.
Develop the GUI using JavaFX : Assignment 2: JavaFX Final Year Module Chooser GUI. You must develop the GUI using JavaFX. Furthermore, you cannot use a GUI builder of any kind
The statute of limitation on child sexual abuse charges : "An Introduction to Victimology" provides several landmark Supreme Court decisions that directly affect victims and further clarify their rights.
Does this create a dilemma for policy makers : Discuss how the right to assemble can be abused by terrorists. Does this create a dilemma for policy makers?
Find the p-value for the indicated hypothesis test : In a sample of 49 children selected randomly from one town, it is found that 8 of them suffer from asthma, Find the P-value for a test of the claim
What are the relevant data that contribute to the decision : What are the relevant data that contribute to this decision? How does the Balanced Scorecard help with the decision-making process?

Reviews

len1932606

4/7/2018 4:39:23 AM

About this assessment 1 This assignment has TWO (2) questions with a total of 30 marks, which will constitute 30% of your final mark for the module. Answer both questions. The deadline for submitting your work via Turnitin on Blackboard is Wednesday 11th 11.59p.m. Objectives - The objective of this assessment is for you to demonstrate your understanding of issues related to the design and use of sequential and concurrent data structures and algorithms.

len1932606

4/7/2018 4:39:16 AM

Submission - Submit your work as a single Word document or pdf document through Turnitin via the portal available on Blackboard. Write your answers to the questions in the Word or pdf document. DO NOT submit any source code files or any other files except a single Word or pdf file. Marking - For each question, you will receive full marks if the answer provided is fully correct and includes all necessary aspects, and partial marks if the answer has some incorrect parts and/or is missing some essential concepts. Anonymity - The assignment will be marked anonymously. You will compromise this anonymity if you put your name on the work. However, you should include your p-number.

len1932606

4/7/2018 4:39:10 AM

About this assessment 2 This individual summative coursework counts 30% towards your module mark. The deadline for submitting your work via Blackboard is 23:59 Sunday 22nd. You must develop the GUI using JavaFX (and not any other Java framework such as Swing or AWT). Furthermore, you cannot use a GUI builder of any kind. Failure to meet either of these two requirements will result in an automatic mark of zero for this assignment.

Write a Review

Programming Languages Questions & Answers

  Write a haskell program to calculates a balanced partition

Write a program in Haskell which calculates a balanced partition of N items where each item has a value between 0 and K such that the difference b/w the sum of the values of first partition,

  Create an application to run in the amazon ec2 service

In this project you will create an application to run in the Amazon EC2 service and you will also create a client that can run on local machine and access your application.

  Explain the process to develop a web page locally

Explain the process to develop a Web page locally

  Write functions

These 14 questions covers java class, Array, link list , generic class.

  Programming assignment

If the user wants to read the input from a file, then the output will also go into a different file . If the user wants to read the input interactively, then the output will go to the screen .

  Write a prolog program using swi proglog

Write a Prolog program using swi proglog

  Create a custom application using eclipse

Create a custom Application Using Eclipse Android Development

  Create a application using the mvc architecture

create a application using the MVC architecture. No scripting elements are allowed in JSP pages.

  Develops bespoke solutions for the rubber industry

Develops bespoke solutions for the rubber industry

  Design a program that models the worms behavior

Design a program that models the worm's behavior.

  Writing a class

Build a class for a type called Fraction

  Design a program that assigns seats on an airplane

Write a program that allows an instructor to keep a grade book and also design and implement a program that assigns seats on an airplane.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd