We have updated the content of our program. To access the current Software Engineering curriculum visit curriculum.turing.edu.
FlashCards Rubric
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
Exceeds Expectations | Meets Expectations | Approaching Expectations | 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 | At least 30 commits. At least 3 pull requests. Commit messages and Pull Request documentation clearly indicate changes made. | Code is hosted on main branch of Github repository. At least 20 commits. At least 1 pull request. | Code is hosted on Github, but has fewer than 20 commits or has no pull requests | Code is not hosted on Github |