User Story 1: As a student in CS 314, I want to develop unit tests for the Adventure game, so that I write the fewest number of tests that uncover the most problems.
Acceptance Criteria:
Definition of Done (DoD):
For all user stories:Playing the Adventure Game, you (the player) visit a series of interconnected underground rooms in which treasure is hidden. You can move from room to room searching for treasure. The objective is to bring the treasure out of the cave. Some rooms have doors that are locked. To open locked doors, you must find the key to locked doors, which are placed somewhere in the labyrinth. As you go from room to room, you can
- look at the room,
- go into an adjacent room or through an adjacent door,
- pick up an object in the room, or
- drop an object that you are carrying.
Besides the functionality outlined in the game description, you must develop tests for the following list of classes and methods:
- class Door: enter
- class Player: go, pickUp, drop
- class Room: addItem, removeItem, enter, exit
1. Continue splitting the user stories if needed. With your team, estimate story points for all split user stories. If you find a split story still has 13 or more story points, split it.
2. With your team, create the tasks needed to implement each split user story so that the Acceptance Criteria can be met. Make sure to meet the definition of done listed above. Add to your team's definition of done if needed. Estimate the number of hours for each task. Create tasks that are between 1 and 10 hours long.
3. Decide which teammembers will be working on which tasks.
4. Add the split user stories and tasks to the UserStory folder of your project, one text file for each user story: e.g. A3-US-1.txt. Please see previous assignment A2, A2-US-1.txt, for an example file format; estimated story points and task estimated and actual times must be included.
5. As each person finishes a task, update the task information in the respective User Story file to include the time it actually took to complete.
6. Make sure the plain text file in the src directory called overview.txt has been modified by each person so that it contains the information required in A3rubric.txt.
7. Create a single jar file of the code on the master branch that includes sources, test sources, the overview.txt file, and the user story file(s) (e.g. A3-US-1.txt). (See A3rubric.txt, PART 1 for details on the required jar file structure.) Part of your grade for A3 is that your program compiles and runs on the Computer Science Department's Linux systems, so test your program appropriately. Your program will be tested in Eclipse.
8. Submit your jar file to the Canvas dropbox for Assignment 3 (A3) to check-in your assignment.
Post questions or comments about this assignment, or problems with the design to the Assignment 3 Discussion on the Canvas discussion board, or send email to cs314@cs.colostate.edu.
1. You will receive a team grade based on the Canvas submission, your tests, test results, coverage results, and the game functionality.
2. You will receive an individual grade based on GitHub logs of your repository submissions and review system comments. Each team member is expected to have created and used branches for their own work for A3, with frequent pushes from their local systems to GitHub, and review requests when they are ready to merge to the master. Each team member is expected to review code changes proposed by their teammates and provide comments.