Aim
The problem and implementing the design using principles of correct syntax, program structure and layout.
Scenario
Through a friend's birthday party, you met a team manager (Jack) of a game company in New Zealand. Through a casual chat with Jacky, you found out that he and his team are planning to make a hangman game on popular mobile platforms including iOS and Android. You were interested so you proposed to him to outsource the project to you. Since the team Jacky is leading is overloaded with many other projects, he considered and later agreed to let you have a try at it. However, before making the decision to pay you for the design and programming of the complete game, the company requested to you to make a text-based version of the game first. This text-based game should demonstrate your ability to finish the rest of the project by yourself and also give them a rough idea of how the complete version might look like.
Tasks
The followings are the recommended steps to implement and then program the game. The strategy behind is to divide the whole development into two parts. Part A involves designing and programming a simplified hangman game which allows player to guess a single word only. Part B involves extending the game to include more interesting features such as building a small word bank for the game, saving player's game stats, authenticating player's login name and password and registering a new player. You have a selection to follow these recommended steps or do it in your own way to complete the deliverables.
Part A
• Read the program scenario and some parts of the program specification (e.g. Gameplay)
• Design a hangman game using structured English. Determine the variables, loops and decisions required for a single round of hangman game. A single round of hangman should involve asking player to guess a single English word through text input (keyboard) and output (screen) repetitively until he guessed every single letter of the word.
• Implement and validate the design in a single class with a main method. Revise the design and implementation iteratively if any mistake was made in the design.
Part B
• Read the whole program specification carefully. Evaluate the classes required. Determine the attributes and methods required for each class. Draw class diagrams for the classes.
• Show a flowchart to visualise the program logic in authenticating player's login name and password and listing all existing players' details
• Write the code for the classes. You can wish to test each of the major methods before writing the next, so that the same mistake is not repeated in multiple methods.
• As you make your program, you might find a few things in your design that will be improved. Revise your design as you go.