GUI Lab: Tic Tac Toe Game: Fall 2023

24 Jul 2023 - 17:44 | Version 1 |

Learning Objective(s)

  1. Learn to implement GUI's in java

Overview of the Program

Create a GUI environment for the Tic Tac Toe program

Specifics

  • The main method should be found in a program called GameDriver
  • You may use your code from the previous lab or the posted solution
  • You need to include at least one button and a menu
  • The menu should be used to start, quit and/or restart the game
  • The game should work with different size boards (default is 3x3)
  • The player names and size of board can be gotten via text mode but all other input must be via the GUI. (The names and size can also be gotten via the GUI if desired).
  • There should be limited (possibly no) changes to all of the code from the previous lab except for the driver. You might need to add a few accessors to some of the classes. That is allowed.

Phase 1

Design the program , interface and develop a testing plan.
  • The design must include a complete UML diagram and should correctly include an major functions.
  • The interface should be a drawing that identifies the different GUI components and their locations.
  • Because the game components already work, the testing should focus on the GUI and integration.
    • Because of the GUI nature of this assignment, your "expected output" can be a description as opposed to actual "screen shots".
  • Submit a Software Design Report in only one pdf

Phase 2

Using your graded software design report
  • implement the program
  • create a Software Development Report incorporating any necessary changes from the software design report. Be sure to include detailed instructions on how to run your program, including any instructions for extra credit.
    • In Lessons Learned, include a section that talks about one or two things you learned by looking at the solution to the previous lab.
  • create a zip folder containing only the following (and submit it)
    • only one file (as a pdf) with the completed software development report
    • all the .java files needed to run the program
    • any input files you might want to have the grader use when running the program

Submission

Optional improvements

Optional improvements should ONLY be worked on once the program is completing working. In addition, the work is to be done on your own with little if any help for lab assistants or the instructor.
  • Allow for an AI player (only when it is a 3x3 game). Because of the limited options, you should hard code the program to play a perfect game
  • Use multiple windows
  • Use a canvas.
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback
This website is using cookies. More info. That's Fine