讲解:COMP 250、Java、KDTree、JavaR|C/C++

CW2 Software Maintenance Spec SheetAcademic Year 2019/2020CW2 is about maintaining and extending a re-implementation of a classic retro game (Frogger). Thisversion has never been completed, but at least it runs, once it is set up properly.More information about the original Frogger game and its history is available here. You can also pickup some ideas for creating additional levels.https://www.arcadeclassics.net/80s-game-videos/froggerTo get started download the original re-implementation from the following GitHub repository.https://github.com/hirish99/Frogger-Arcade-GameThen you should set up a JavaFX project in your preferred IDE (either Eclipse or IntelliJ) in your localgit repository, integrate the classes and resources you downloaded into your project, upload it toGitLab, and start working on it.The marks will be split as follows:? 15% for git use (e.g. push, branch, merge, providing .gitignore)? 30% for refactoring? 30% for additions? 15% for documentation (Javadocs + class diagram)? 10% for a video, explaining your refactoring activities and additionsYou should roughly spend 50 HOURS on this courseworkWhat to produce:? A README.md file (max. 500 words), documenting the work you conducted (highlighting thekey changes you made for maintenance and extension, where you made them, and why youmade them)? High level class diagram that shows the structure of the final version of your game (consideringonly classes (excluding fields and methods, unless they are relevant for understanding designprinciples/patterns), interfaces, relationships, and multiplicity). If you use software to reverseengineer your class diagram, make sure the delivered diagram is correct and follows the aboverequirements.? The source code documentation (Javadocs) should be delivered in form of a Javadoc folderinside your project folder. Besides reading your README.md file we will look at the Javadocsto find out how you maintained and extended the game. If it is not obvious from there wemight miss it. Also we have only a limited amount of time to look at each courseworksubmitted. So, please make sure to provide informative but concise Javadocs.? Finally, you have to make a video (very briefly) showing your software running and then (forthe main part) explaining your refactoring activities and additions. You should also highlighttwo achievements you are most proud of.Important:? This coursework is about maintaining and extending existing code. So, for the maintenancepart you have to use the existing code as a basis, and not write your own Frogger game fromscratch.For moderate marks:2? Set up a git repository on the schools git server https://projects.cs.nott.ac.uk/ and use itactively for version control activities? Do some basic maintenance of the delivered code base (e.g. adding meaningful Javadocs,organising files in a meaningful way into packages, breaking up large classes in a meaningfulway to support the idea of single responsibility, improving encapsulation, etc.)? Extend the delivered code base by adding:o A START screen, displaying a picture related to the game and a button that providesac代写COMP 250、代做Java编程设计、代写KDTreecess to a INFO screen explaining the game operation.o A HIGH SCORE popup, appearing at the end of each round, showing the scores fromeach round, highest at the topFor higher marks: In addition to the previous, do some of the following...? Refactor the code by adding some design patterns to enhance maintainability? Organise the code to adhere to the MVC pattern? Create a permanent high score list (using a file to store scores)? Add interesting levels to the game (either follow the original Frogger game levels or come upwith your own ideas)? Add meaningful JUnit tests? Use build files (Ant or Maven or Gradle)You have to use Java 10 or higher and JavaFX 10 or higher for the implementation. The project filesyou are submitting need to be either compatible with Eclipse or IntelliJ.Deliverables: Three separate files, uploaded to Moodle:? A zip file containing your entire project (including your README.md and Javadocs). It needsto be possible to load (open/import) your project in one of the IDEs (either Eclipse or IntelliJ).If any unusual steps are required, please mention this in your README.md file. To avoiddisappointment later, test your final version on a different computer. This should help touncover hardcoded path dependencies, which was a major issue in previous years.? Please name your zip file as follows: Surname_FirstName_IDE_JavaVersion.zip, where IDErepresents the name of the IDE you used (i.e. either Eclipse or IntelliJ) and JavaVersion theJava version you used. Here is an example: Siebers_Peer-Olaf_IntelliJ_12.zip.? Your final class diagram as pdf. Please name your pdf as follows: Surname_FirstName.pdf.Here is an example: Siebers_Peer-Olaf.pdf? A video of up to 2 minutes, as described above, in a common format that can be played onthe lab machines in A32. Please test your video on the lab machines before submitting it, toavoid disappointment. Please name your video as follows: Surname_FirstName.EXT, whereEXT represents the extension related to your video format (e.g. mp4; mpg; avi). Here is anexample: Siebers_Peer-Olaf.mp4.Note: You are gently reminded that we are at liberty to use plagiarism detection software on yoursubmission. Plagiarism will not be tolerated, and academic offences will be dealt with in accordancewith university policy and as detailed in the student handbook. This means you may informally discussthe coursework with other students but your submission must be your own work. Please also notethat it is not permitted for you to copy and paste text from another source without correct referencing.If you are unclear about this process, please discuss with the module convenors during one of our labsessions or at the end of a teaching session.Assessment Details:? This coursework is worth 50% of your module mark.3Questions:? Dr Siebers and Dr Greensmith will of course be happy to answer questions and give high levelinterim formative feedback on your assignment during the lab sessions. However, we mightrefuse to answer very detailed technical questions, or very general questions like What doyou think about my project so far?.Good luck, have fun, code well :).转自:http://www.3daixie.com/contents/11/3444.html

你可能感兴趣的:(讲解:COMP 250、Java、KDTree、JavaR|C/C++)