CIS*2430 Assigment OneThe Big PictureThis assignment consists of two separate tasks.1. Refactor or rewrite a given procedural Tic Tac Toe game so that the code base demonstrates good...

1 answer below »
Java programming - tictactoe game


CIS*2430 Assigment One The Big Picture This assignment consists of two separate tasks. 1. Refactor or rewrite a given procedural Tic Tac Toe game so that the code base demonstrates good object oriented software practices. Starter files have been pushed to your course A1 git repository. Your solution must be submitted using that A1 git repository. 2. Write a code review for an object oriented java program. The code review must be submitted via the course website on moodle. Your assignment submission is considered to be complete only when the code review has been submitted. Ensure that your code review is submitted well before the deadline for your target grading period. You can clone your assignment repo in one of two ways using a terminal or command prompt: • git clone https://gitlab.socs.uoguelph.ca/2430f22/≪your username here≫/A1.git • If you have set up ssh keys and have the campus vpn running: git clone [email protected]:2430f22/≪your username here≫/A1.git This assignment is intended to be independent work. Your submissions will be programatically inspected to identify possible plagiarism. Learning Outcomes Completion of this assignment will help you master the learning outcomes noted below. • Identify the major characteristics of different programming paradigms(procedural, functional, logical, and object-oriented). • Differentiate between procedural and object-oriented paradigms. • Design and implement classes for an object-oriented program demonstrating correct use of encapsulation, constructors, method overloading, class invariants, accessors, mutators, instance variables and class variables. Grading Assignment Grade Calculation: (TTT + CR)*PI Component Symbol Grade Range Marking Process Tic Tac Toe TTT 0.0-70.0 Instructional team member marks submission on their own schedule during grading period Code Review CR 0.0-30.0 Instructional team member marks submission on their own schedule during grading period Personal Interview PI 0.0-1.0 Students must schedule the interview with an instructional team member using the scheduler on the course website. Failure to at- tend an interview will result in a grade of 0.0 for this component. 1 Task Descriptions Part 1: Tic Tac Toe A working, but possibly buggy, java program called TicTacToeP has been added to your A1 repository. It allows two people to play tic tac toe by sharing the computer. While the program works, it is not written as an object oriented program. Your task is to refactor or rewrite this program to be object oriented. You may use some or all of the code in TicTacToeP or you may completely start over. You should design your solution to have suitable classes and to use public and private methods to accomplish the goals of the program. During your personal interview you may be asked to explain why you made the design choices that you made. The class that has the main method for your game must be called Runner. You may write as many additional classes as you feel are needed. All of your classes must be in the a1 package. You can use the TicTacToeP source code as an example of adding a package to a class. Your game must provide a similar game-play experience as provided by the TicTacToeP game, but you should fix any existing bugs. Feel free to make improvements to the messages and overall experience but don’t change the interaction style completely. During your personal interview you may be asked to explain your UX choices or how you could add a specific new feature. These types of questions are looking for design-level detail, not code. You might also be asked to explain how a different implementation of one of your features would impact the overall program. This portion of the assignment is graded out of 70 marks. Your submission must compile without errors or warnings and must pass checkstyle to be awarded a grade other than zero. 35 of the marks are for demonstrating good object oriented design. Elements examined may include: • naming conventions, layout and organization of code • comments (javadoc and inline) • member variable declaration and use • accessors and mutators • names of classes and methods • allocation of responsibility and purpose for classes and methods • encapsulation 35 of the marks are for the functionality. Elements examined may include: • game play • win and tie conditions • clear, informative messages to user • user interface is predictable and easy to operate Part 2: Code Review Use the ”A1 Code Review” files from the course website for this portion of the assignment. Submit your code review as a pdf file or a plain text file that uses markdown for formatting. During your personal interview you may be asked to explain or justify the observations you make in your code review. The code review must follow the outline shown. 1. Functionality Does the code work as outlined in the purpose stated at the top of the program file? If not, what bugs were found? How could those bugs be addressed? 2. Encapsulation Has this code been designed to adhere to the OO principle of encapsulation? Give specific examples from the code that could improve the encapsulation. 3. Coding Conventions and Formatting Does this code follow good coding conventions? Does the layout pro- mote readability? Give specific suggestions for improvements. 4. Readability Is it easy to read this code and understand what it is doing? Are there comments where needed? Is the code self-documenting? Give specific suggestions for improving the readability. 5. Responsibility Does each class in the code base have an obvious purpose? Is that purpose necessary to the operation of the overall program? Does each method have an obvious purpose? Give recommendations for improving the code base to ensure that every part of the code is doing one essential part of the overall computation. 2 This portion of the assignment is graded out of 30 marks. Each of the code review sections is allocated 6 of the 30 marks. Marks are given for thoroughness, thoughtfulness and for demonstrating a solid understanding of the OO principles involved. Up to 10 marks will be deducted from the total for poor grammar or spelling. Personal Interview Your personal interview will be conducted virtually by a member of the instructional team During the interview you will be asked questions about your assignment submission. Some of those questions may involve you imagining a different solution than the one you submitted. Your response to each question will be graded using a 5 point scale and an interview grade calculated from those responses. The interviewer is not responsible for the final calculation of the interview grade. 3
Answered 4 days AfterOct 17, 2022

Answer To: CIS*2430 Assigment OneThe Big PictureThis assignment consists of two separate tasks.1....

Vikas answered on Oct 22 2022
51 Votes
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here