Welcome to the Scotland Yard project! The project will help you to develop your programming skills, in particular to gain further competence, confidence and agility in the way you write object-oriented programs. The project will conclude in an unmarked competition event.
During the next few weeks, you will develop components for a Java application that allows you to simulate and play a digital version of the popular board game "Scotland Yard".
The project is to be completed in pair programming teams of two as registered during the start of the term. Make sure you do not exchange code between teams and ensure your repositories are private to your two team members at all times. Manage your time well; let us know early if you struggle or have issues in your team. Meet regularly in your team and stay in contact.
The project consists of two parts:
- The implementation of a core game component
cw-model
- The implementation of an open-ended AI extension
cw-ai
You will need to produce a 3-page PDF report accompanying your work. The assessment will be a VIVA at the end of term where you present your work and where we will discuss how you have understood and/or used the Java concepts and features described in lectures.
Before you start on this project, make sure you have completed all previous lab worksheets/tasks. Use the labs, and Microsoft Teams to ask questions (do not spend hours debugging on your own!). Do not post potentially credit-bearing code snippets on Teams. It is essential that you make the most of lab sessions where you can discuss your progress with our lab team and get help on the spot. In case both lab sessions and Teams have not provided an answer, see a lecturer after one of the lectures or during labs. The recommended time spent for this coursework is 30h in pair programming teams. Manage your workload well, meet regularly in your team and avoid leaving the implementation late.
See the task description page for each part to get started:
- IMPORTANT - you will need to use JAVA 17 for all operating systems this was necessary due to use needing a single version of Java for the gameserver and M1 Macs requiring Java 17
You may also want to read these:
- Assessment & Submission - information on how the project will be assessed and what you should submit.
- Maven - basic introduction into Maven (optional and not required to solve the coursework task).