================================================================ CS314 Spring 2016 Grading Rubric DRAFT Assignment 3 (A3): Testing the Adventure Game ================================================================ Total Points Possible: 100 ======================= PART 1 ================================= Team Portion of Grade: Overview.txt/test reports - 45 possible points. ================================================================ - Names of all team members: 2 pts - Specific contributions by each team member: 2 pts - Time spent by each team member: 2 pts - The CSU Honor Pledge: 2 pts "I have not given, received, or used any unauthorized assistance." with the team members' names listed below. - Test information: 37 pts - BB results for Split User Story A: - Number of BB tests - Coverage metrics: % class, % method, % line, % branch - Number defects found and number of defects fixed - List of all of defects found: - For each defect, identify and describe the test (include some way to identify the test in the JUnit test class comments at the beginning of the class file and use these identities in the overview file), its inputs, and the expected and actual behavior. - WB results for Split User Story B: - Number of WB tests - Coverage metrics: % class, % method, % line, % branch - Number of defects found by WB tests and number of defects fixed - List of all of defects found: - For each defect, identify and describe the test as for BB tests, its inputs, and the expected and actual behavior. - If relevant, explain why you could not achieve 100% branch coverage. ============================= PART 2 =========================== Team Portion of Grade: Testing Quality & Completeness --- Finding the program failures - 20 possible points. ================================================================ Tests must run: 10 pts - tests on class Room: enter, exit, addItem, removeItem - tests on class Player: go, pickUp, drop - tests on class Door: enter - AllTests.java Defects found and fixed: 10 pts - as documented in the overview.txt file - JUnit files are documented according to Split User Story A, Acceptance Criteria (AC) 3 and Split User Story B, AC 2. ===================== Part 3 =================================== Team Portion of Grade: Completeness of submission - 15 possible points ================================================================ - Jar file: 10 pts. - The jar file must have separate packages for the game source code and for tests. Source code must be in a package called cs314_A3 and test source code must be in a package called cs314_A3Test. - On extracting from the jar file, apart from the .project file, there must be 2 directories, src and UserStories. The src directory must contain the overview.txt file, and 2 packages: cs314_A3 and cs314_A3Test. All source code for the game must be in cs314_A3 and all test code for the game must be in cs314_A3Test. The UserStories directory must contain all the user stories for A3, each in a separate text file. Split story A from the A3 assignment page must be documented in a file called A3-US-1A.txt and split story B in a file called A3-US1B.txt. Any additional split stories and all tasks must be documented in the same file as the split user story from which they were derived. - No class files or other unneeded files are in your jar file. - Compile/Run: - Files should compile successfully and without warnings. - Run: Your program should start without warnings and take user input without crashing. AllTests.java must run all of your JUnit tests, and they all must pass. - User story files: 5 pts. - Each user story file must contain the user story, acceptance criteria, any split stories, story point estimates, and all tasks needed to complete the user story, along with their estimated times and actual time taken. ================================PART 4 =============================== Individual Portion of Grade: Development Process - 20 possible points. ====================================================================== - GitHub logs show at least 1 branch for each student on the team: 5 pts. - Branch name is descriptive of the changes made, including a way to tell which student is working on it. - Branch commits occur often, with a small amount of changes in each commit. - Branch commit logs are descriptive of the changes made, and include the User Story and task to which they refer. - Multiple pushes have been made to each student branch. - No work is done directly on the master branch. - GitHub logs show the student has requested reviews of their proposed changes to the master: 5 pts. - GitHub logs show the student has reviewed their teammates proposed changes to the master: 5 pts. - GitHub logs show that all student branches have been merged into the master: 5 pts. PART 4 e1: -3 bad merge #1: merge with no review requested e2: -2 bad merge #2: merged someone else's request e3: -1 working on old, unrelated branch e4: -1 branch name not descriptive e5: -2 branch not associated with student e6: -1 pull review description poor/vacous comments e7: -3 directly working on the master PART 3 - user stories 5 e8: -2 incorrect user story format e9: -2 incomplete file (tasks missing/story points missing/incorrect scale, or some/all estimated/actual task times not included) e10: -1 tasks too vague e11: -2 files named incorrectly/wrong location/incorrect structure e12 disconnect with times in overview.txt