Teaching
6515 S '13
 
Projects
Presentations
SVN
 
Acquire
Acquire, Revised
Acquire Plan
Project 1
Project 2
Project 3
Project 4
Project 5
Project 6
Project 7
Project 8
Project 9
Project 10
Project 11
Project 12

Project 8

Due date: Task 1: 2/28, NOON; Tasks 2 and 3: 3/11, 23:59

Objective 1: practice the hand-over of a code base

Objective 2: to implement a component to a given interface specification


This project will be handed out in stages.


Task 1: Meet with your new partner and present your code bases to each other. Then pick one of the two to continue. Articulate in a one-page memo why you chose the code base with which you will continue. The memo must include your old pair numbers and must identify the chosen code base by pair number.

Send the PDF (see project 3 for physical specs) to Asumu.

In return, you will get a new SVN repository that includes the chosen code base. In addition, the repository will include a folder for project 8, including a subfolder with the specifications for task 2.


Task 2: You are to implement two strategies for a given specification:

  1. The first strategy should:

    1. choose to place the largest tile according to to tile<=? in the possession of the player that can be placed on the current board, and
    2. choose to buy as many shares as possible in alphabetical order.
    Call the strategy largest-alpha suitably adapted to your language's conventions.

  2. The second strategy should:

    1. choose to place the smallest tile according to to tile<=? in the possession of the player that can be placed on the current board, and
    2. choose to buy as many shares as possible in anti-alphabetical order.
    Call the strategy smallest-anti suitably adapted to your language's conventions.

Imagine plugging these strategies into a player and running a complete game. Since the strategy is deterministic, the sequence of states is again predictable.


Task 3: Now that you have chosen your code base, it is time to introduce each other to this code base. To this end, you are to pair program (fix) your code base so that it passes the test case posted on the blog and similar test cases that you make up:

  1. The partner new to the code base should be the pilot for this exercise.
  2. She or he should run the test case (and similar ones) to find out whether/why it fails (they fail).
  3. She or he should find her or his way to broken modules and propose fixes. If the co-pilot agrees, fix them.
Repeat until all modified test cases pass your own test case.


last updated on Wed Apr 10 20:51:12 EDT 2013generated with Racket