-
Notifications
You must be signed in to change notification settings - Fork 0
Deliverable 1 Report
For the details of our Meeting Minutes, please view here.
Guidelines for Deliverable 1 can be found here.
Using Umple, we designed our class diagram through several iterations. We met multiple times as a team, and convened. See the minutes here on the following class diagram:
Here is the breakdown of each of the associations in the diagram:
There is a single QuorridorSystem, which is instantiated when the application is started.
- There are 0 to 2 users for the QuorridorSystem.
- The QuorridorSystem can only have a single game at a time, which has a start time and an end time.
The Game class is in charge of the state of the game. It incorporates:
- From 0 to 2 pawns.
- From 0 to 20 walls.
- Exactly 81 tiles. This provides the restriction in the model to the amount of tiles that can exist in the game. Also, this representation of the tiles is the "Static" portion of the game board, which is totally independent from the game state. The Tile Class contains an integer for the row position, and a character for the column position, as described in the specification document.
The Token class is abstract, which associates from 0 to 1 tiles.
- This means that a token can be placed on the Tile, and this limits each token being only placed on a single tile.
- Extending from the Token class are the two classes, Pawn and Wall. The specialisation of the Pawn class is the Color attribute, and the Wall class has the Orientation attribute.
The User class exists to represent the person playing the game.
- As such, it has a stock of 0 to 10 walls, as well as 0 to 10 placed walls (which in implementation will exclude each other, such that these two properties will add up to 10 walls).
- It contains a list of moves, to which is a doubly linked list to the previous and next moves. The association to the user is currentMove, or the move that is rendered in the UI.
- The user has access to 0 or 1 pawn, which it can move on the tiles.
We have two enumeration classes in our model:
- Color: This class describes the color of the Pawn used by a User, which can be Black or White.
- Orientation: This class describes the two possible orientations of the Wall object, which can be either Horizontal or Vertical.
Home | Deliverable 1 | Deliverable 2 | Deliverable 3 | Deliverable 4 | Meeting Minutes
2019. ECSE223 Group 04