Академический Документы
Профессиональный Документы
Культура Документы
The reassessment via coursework is about maintaining and extending a modern version of a classic
retro game (Pacman). You can play around with a clone of the original game downstairs at one of the
play stations at the back door. The modern version has never been completed, but at least it runs.
You can either start fresh from scratch or clone your previous project, up to you.
IMPORTANT: If you have any issues with setting up the project, please get in touch.
What to produce:
A README.md file (max. 500 words), documenting the work you conducted (highlighting the
key changes you made for maintenance and extension, where you made them, and why you
made them). Please also state if you started from scratch or cloned your previous project.
High level class diagram that shows the structure of the final version of your game (considering
only classes (excluding fields and methods, unless they are relevant for understanding design
principles/patterns), interfaces, relationships, and multiplicity). If you use software to reverse
engineer your class diagram, make sure the delivered diagram is correct and follows the above
requirements.
The source code documentation (Javadocs) should be delivered in form of a Javadoc folder
inside your project folder. Besides reading your README.md file we will look at the Javadocs
to find out how you maintained and extended the game. If it is not obvious from there we
might miss it. Also we have only a limited amount of time to look at each coursework
submitted. So, please make sure to provide informative but concise Javadocs.
A short (2 minutes) video, very briefly showing your software running and then, for the main
part, explaining your refactoring activities and additions. You should also highlight two
achievements you are most proud of.
Important:
1
This coursework is about maintaining and extending existing code. So, for the maintenance
part you have to use the existing code as a basis, and not write your own Pacman game from
scratch.
To pass the reassessment (40%):
Set up a new git repository on the school's git server https://projects.cs.nott.ac.uk/ and use it
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 meaningful
way to support the idea of single responsibility, improving encapsulation, reducing the size of
the game manager class in particular.)
Extend the delivered code base by adding:
o A START screen with some setup options to choose background and wall colour for
the game field (allowing a choice of at least 8 colours) and a button that allows going
to the GAME screen.
o An "invincible mode", which can be triggered during the game play once per round
(e.g. by pressing a specific key; but you can also choose other triggers). Pacman will
be invincible for 5 seconds; the ghosts will change colour during that time and once
they get in touch with Pacman will go back to their home in the centre of the screen;
the Pacman will get some bonus points for hitting a ghost during that time.
You can use either Java 8 or a higher version of Java for your implementation. The project files you are
submitting need to be either compatible with Eclipse or IntelliJ.
2
Note: You are gently reminded that we are at liberty to use plagiarism detection software on your
submission. Plagiarism will not be tolerated, and academic offences will be dealt with in accordance
with university policy and as detailed in the student handbook. This means you may informally discuss
the coursework with other students but your submission must be your own work. Please also note
that 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 over email.
Assessment Details:
This coursework is worth 100% of this reassessment and as such is marked out of 100.
Questions:
Dr Siebers and Dr Greensmith will of course be happy to answer questions and give high level
interim formative feedback on your assignment during the reassessment period.