






Hotspots: Admin Pages | Turn-in Site |
Current Links: Case Final Project Summer 2007
Summer 2006 Programming Assignment 2
Due: Wednesday, 21 June 2006
For this programming assignment, you will continue extending the Simon game that you did for Programming Assignment 1. For those of you not completing PA1, we have provided a solution for you (Simon-middle.cs). You are welcome to use either that solution or your own solution to complete this assignment. Here are the features that you will be asked to add to Simon:
- Choose Your Color: You can play the third type of Simon game. For more specifics on that game, see the Wikipedia article. Since a multiplayer game will be pretty awkward to play with one mouse, you should add a keyboard interface to the game; then, each person can simply press one keyboard key. Both of the other games should still function.
- High Score List: There should be a list that tracks the high scores for a game. It should contain a name, the level of difficulty, and the progress made along that level. The high scores should be sorted logically. The high score list should also have a useable interface that integrates well with the game.
- A Better Look: Function will only get you so far; looks are important as well. While your basic Simon game might function nicely, a better looking interface could really make it stand out. Check out Simon Extreme for Mac OS X; doesn't it make you want to have it (even if Simon is a pretty lame game)? For this assignment, you'll create a better look for your Simon game that will be based on manipulating images. To help you out, we've included a few stock images below for you to use. One of the benefits of separating the view and the model is that you can have several views on the same model. As such, the old interface should still work.
In addition to these features, you will write unit tests for the model of your Simon game. It is recommended that you implement the unit tests first for Simon Says and Player Says. Then, you can use the unit tests to make sure these games still work as you add Choose Your Color. Then, after that works, you can add the new look. This recommendation is made to save you some time. Unit tests can be extremely helpful when you are extending a system to make sure it still works. If you follow this recommendation, you can hopefully experience the benefit of doing unit testing.
A Better Look
We don't expect you to have mad Photoshop skills, so we've provided some basic images that can help you create a cooler looking Simon interface. Of course, you are welcome to design your own. The interface is based on a 316x316 size circle:
 |
| Figure 1: Example Interface (Red Button On) |
Images for Off Buttons
Images for On Buttons
Grading Criteria
- SUnit Testing (25)
- Your unit tests thoroughly cover the design - 20
- All your unit tests pass - 5
- Choose Your Color (25)
- The new game works - 15
- The other two games still work - 10
- High Score List (25)
- The list is well integrated into the game - 10
- The interface is usable - 5
- The list indicates name, level, and score - 5
- The list sorts entries from highest to lowest score - 5
- A Better Look (25)
- The new interface works as expected - 10
- The score, level choosing, and game choosing is well integrated into the interface - 5
- The old look still works - 10
Post Questions to the Newsgroup
Links to this Page