- Please refer to the Assignment Presentation Requirements for advice on how to set out your assignment. Click on Policies and Advice in the left-hand menu and look under the Advice section.
- You must read the NCC Education documents ‘What is Academic Misconduct? Guidance for Candidates’ and ‘Avoiding Plagiarism and Collusion: Guidance for Candidates’ and ensure that you acknowledge all the sources that you use in your work. These documents are available on Campus. Click on Policies and Advice in the left-hand menu and look under the Policies section.
- You must complete the ‘Statement and Confirmation of Own Work’. The form is available on Campus. Click on Policies and Advice in the left-hand menu and look under the Policies section.
- Please make a note of the recommended word count. You could lose marks if you write 10% more or less than this.
- You must submit a paper copy and electronic copy. Media containing viruses, or media that cannot be run directly.
- All electronic media will be checked for plagiarism.
Sudokus are number placement puzzles defined by a series of 3×3 grids. Into each the numbers one to nine must be placed exactly once. Each number can also be used only once in a column, and similarly in a row. Sudokus start with some of the cells in each grid filled, and it’s the player’s job to work out how to fill in the rest. A ‘starting’ sudoku puzzle may look like this:
Therefore it is completed, it will look like this.
See this Wikipedia page for more information about this popular family of puzzle games:
Page 2 of 4
Analysis, Design and Implementation © NCC Education Limited 2019
Your task for this assessment is to write a Sudoku puzzle generator that can create solvable puzzles in three difficulty categories:
- Easy – 50% of the Sudoku puzzle is filled from the start
- Medium – 25% of the Sudoku puzzle is filled from the start
- Hard – 10% of the Sudoku puzzle is filled from the start
Each of the sudoku puzzles you create should be solvable. Therefore you need to ensure their validity when they are generated. Once they are generated, they should be presented to the player who will then be able to fill in the puzzle.
- The only way you know whether the solution is correct is to complete the whole puzzle and submit it for assessment. You’re either right or you’re wrong.
- You can check at any time during the game to find out which numbers in the grid are correct and which are incorrect.
Players can therefore save progress and return to previously attempted puzzles. On request, the application will produce a set of stats for a player that include the following:
- Percentage of completed puzzles
- Percentage of completed puzzles at each difficulty level
- Average time to complete in each difficulty category
- Average number of mistakes in incomplete puzzles
Your job is to create the software that permits all of this functionality.
- Allows for sudoku puzzles to be generated in three difficulty levels
- Generates the correct number of pre-filled elements for each sudoku
- Validates each sudoku to ensure that it can be solved.
- Provides the UI for completing generated Sudoku puzzles.
- Stores progress of each sudoku for the player that generated it.
- Calculate statistics regarding player performance
- Support for unaided checking of entered solutions
- Support for aided checking of entered solutions
Your solution will consist of a class diagram, a use-case diagram, and an activity diagram for the process of assessing whether a sudoku puzzle is actually possible to solve. Therefore submit the completed program code in an appropriate programming language.
25 Marks are available for the creation of the appropriate activity diagram.
Analysis, Design and Implementation Education Limited 2019
Use case diagrams
8 Marks are available for the provision of suitable use-case diagrams.
15 marks are available for a code architecture that shows an appropriate level of coupling and cohesion, along with the necessary amount of inheritance and encapsulation to express the system.
26 marks are available for implementing the system as described and providing the completed Java/C# code.
- Whatever IDE you use, it should be possible to open and run the project directly from the extracted archive.
- Diagrams and materials associated with the tasks .
- All references and citations must use the Harvard Style.
Please use the following checklist to ensure that your work is ready for submission.
Have you read the NCC Education documents ‘What is Academic Misconduct? Guidance for Candidates’ and ‘Avoiding Plagiarism and Collusion: Guidance for Candidates’ and ensured that you have acknowledged all the sources that you have used in your work?
Have you completed the ‘Statement and Confirmation of Own Work’ form and attached it to your assignment? You must do this.
Have you ensured that your work has not gone over or under the recommended word count by more than 10%?
Have you ensured that your work does not contain viruses and can be run directly?