View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Fall2002 Midterm Review: The Big Barn

Player object which would contain the player's name and current point total.

Barn object would probably be a master organizer which would relay information and keep information about all players in a PlayerList (a master list of all players) in the barn (and their point totals).

The RegistrationDesk is responsible for adding players (creating a new Player object) to the Barn and assigning unique ID numbers and resetting scores to 0.

GameConsole object would generate points and assign points to the Player as floatingPoints (points not yet added to the total).

ScoreKiosks would add all floatingPoints to the totalPoints for the player object and notify the Barn that the points were changed. The Barn would make sure the current top 6 list was up to date.

Whenever the top 6 list is changed, it send a message to ScoreBoard to update the display.

A. Where are game points before they are associated with Players?
Game points reside in the GameConsole until a player places his/her band in the GameConsole to be registered.

B. How do game points get collected by ScoreKiosks?
The GameConsole simply associates points with the user in a floatingPoints variable. The ScoreKiosk merely adds the floatingPoints to the totalPoints. (It would probably just as easy to tell the Barn about the updated totals, but the physical act of "collecting" the points is probably intended to increase the interactive properties of the system to make it more interesting and "fun")

C. How does the ScoreBoard get the Players and determine the top six Players?
The ScoreBoard would only be responsible for displaying the current top six players which are updated in the Barn. This prevents the need of the ScoreBoard to be passed the entire PlayerList and do calculations whenever someone's point totals are updated. The Barn can simply update the player objects and have a simple check to see if an updated player has a point value that is greater than the lowest score in the topSix list and update accordingly. Otherwize the ScoreBoard would have to be passed information each time a player updates his total (instead of only when the topSix changes).

This is a reasonable approach, though one could argue the Barn has too much control in this design. I think this is a borderline case, where you might try to distribute things more, but that might make things more complex. Think about these alternatives. Rich LeBlanc

In the realistic scenario of a theme park, you probably don't want the bracelets or consols or other things too complicated to keep costs for those items down (in case they get lost, stolen, broken, hacked, etc.) By centralizing the software, only one expensive piece of equipment is needed and the rest may be fairly simple and inexpensive.

Link to this Page