Project Due Date: 4/20 11:59PM
Students will be expected to work in teams of two (or, on rare occasion, as an individual.) A student may choose her/his project partner. If a student does not choose a project partner, the instructor will assign one.
The project will be broken down into pieces, with class time allotted to work on the pieces. Students should expect to work on their project outside of class as well. As the course progresses, each deliverable of the project will build on the previous deliverables.
The project will be divided into two distinct parts. Each project partner will have responsibility for one of the two parts, and will be graded accordingly. Consequently project partners on the same team may not receive the same grade! Project partners are encouraged to work together, help eachother, and share code with eachother but they are not required to do so.
Please note that there should no sharing of code between project teams. Any instance of this will be treated as a case of academic dishonesty.
Your final project grade will be determined by an end-of-semester assessment of the project’s over-all quality, based on the opinion of the instructor. Possible numeric grades for the class project are as follows: 100, 90, 80, 70, 60, 0.
Here are questions that I will ask when reviewing your work…
- Is the presentation clean? Or sloppy?
- Is your solution easy to use?
- Are messages shown to the user informative? Or Cryptic?
- Does it work?
- Does it use the class technology?
- Does it show thought an attention to detail?
- Does it solve the problem?
We are going to build a scavenger hunt game. Each two-person team will create an “Admin” interface that allow a user to create a game, and a “Player” interface that allows a person to participate in the scavenger hunt. For the sake of simplicity, each scavenger hunt will be composed of 5 stages, and each stage will have a clue that will lead the player to the next stage.
The “admin” will be able to sign in, create a hunt, specify the clues, and generate 5 QR codes that can be posted at each stage’s location. Admins may also see a list of players have performed in past hunts. Admins may make a particular hunt available, or unvailable. The QR code functionality will be provided by an API.
A “player” will participate in a game by signining in, scanning a QR code, seeing a clue, and finding the next QR code until the hunt is over. A “player” should see a leader board that shows the last players progress and completion time. A “player” must also have the ability to send an SMS text message to one or more friends, inviting them to play. The SMS message functionality will be provided by an API.