7.8.0.1

1 — Requirements & Plans

Due Thursday, September 19, midnight

Delivery Create a directory called Tsuro in your repository and within this directory create a folder dubbed Planning. This is where you place the product of this week’s project step:

Design Task Read the description of Tsuro. These rules are not the original ones; instead they represent how your instructor would like to see the game done. It is thus pointless to search for implementations on the web; nobody else has such a strange taste.

We will develop the software to run Tsuro games and tournaments for automated players. Your friends will supply the code for autonomous players, and you will provide the framework for running fair games for such players. The goal is to run tournaments where every signed up player gets a chance to participate in several rounds of Tsuro games, in a manner yet to be determined

Write up a project analysis. The analysis should consist of two parts:
  • Part 1 describes the identifiable components of your software system. Ask yourself
    • what are the pieces that make up an automated player

    • what are the pieces that make up the game software

      This prose uses "who" and "they" in reference to pieces of software. Think of them as possibly independent "actors" and humanize them temporarily.

    • "who" knows what, "who" needs to know what, and how do "they" communicate

      For the communication part, sketch a UML-ish sequence diagram in local.md.

    • what is needed as common knowledge to make communication successful.

  • Part 2 describes how you should proceed about implementing these pieces. Keep in mind that you wish to have "demo" software soon so that a potential client can admire fully working prototypes.

The memo must not exceed 2 pages. Use at most one page per part.