War or Peace - Rubric

Back to Project Home

Learning Goals

  • Follow an interaction pattern
  • Write readable code that adheres to Ruby convention
  • Write tests
  • Create an Object Oriented Solution to a problem (objects should interact to achieve the stated goal)
  • Host code on Github



Exceptional Meets Expectations Below Expectations Well Below Expectations
Functionality Application is robust and can handle a variety of inputs including invalid inputs and completes iteration 4 Application adheres to the flow outlined in the specification and can handle a variety of valid inputs (not just what is outlined in spec). Iteration 3 is complete. Only up to Iteration 2 is complete or the application does not follow the flow outlined in the specification. Iteration 2 is not complete.
Ruby Mechanics Project includes appropriate uses of hashes and enumerables not covered in class Appropriately uses Ruby’s built in datatypes and methods, flow control, and enumerables. Does not appropriately use one or two of the following: Ruby’s built in datatypes and methods, flow control, and enumerables Does not appropriately use Ruby’s built in datatypes and methods, flow control, and enumerables, or does not build classes
Ruby Conventions Classes, methods, and variables are well named so that they clearly communicate their purpose. Code is all properly indented and syntax is consistent. Code is mostly properly indented, spaced, and lines are not excessively long. Class, method, variable, and file names follow convention Code demonstrates some proper indenting and spacing. Class, method, variable, and file names inconsistently follow convention Code is not properly indented and spaced and lines are excessively long. Class, method, variable, and file names do not follow convention
Testing All methods that do not require command line input/output are accurately tested. Best use assertions are made. Each class has its own test file. Every method listed on the specification is tested. Most tests are written to accurately verify expected behavior. Tests are written for most methods listed on the specification, but the tests may be in an incorrect location or the tests may not accurately verify the expected behavior Fewer than 7 tests written (in addition to the card tests provided)

Version Control

Code is required to be hosted on a GitHub repository, and will have at least 20 commits and one pull request.

Lesson Search Results

Showing top 10 results