Capstone Evaluation Rubric

Capstone Rubric

Table 1: Capstone Rubric, Group Participation
Group Participation (60%)
Tier IV (1)
  • full participation in all stand up meetings and scrums, except in the case of an EXCUSED absence from class
  • shows strong willingness to cross over and help classmates with other tickets
  • integrates GitHub generated comments on all tickets
  • no complaints have been brought to instructor or staff attention that have resulted in instructor action
Tier III (0.75)
  • full participation in all stand up meetings and scrums, except in the case of an EXCUSED absence from class
  • shows moderate willingness to cross over and help classmates with other tickets
  • integrates GitHub generated comments on most tickets
  • no complaints have been brought to instructor or staff attention that have resulted in instructor action
Tier II (0.5)
  • missed one stand up meeting or scrum (EXCUSED absences from class excluded)
  • shows little or no willingness to cross over and help classmates with other tickets
  • GitHub comment integration is inconsistent
  • no complaints have been brought to instructor or staff attention that have resulted in instructor action
Tier I (0.25)
  • missed two stand up meetings or scrums (EXCUSED absences from class excluded)
  • shows little or no willingness to cross over and help classmates with other tickets
  • GitHub comment integration is inconsistent or missing
  • complaints brought to instructor or staff attention have resulted in instructor action
Tier 0 (0)
  • missed three or more stand up meetings or scrums (EXCUSED absences from class excluded)
  • shows little or no willingness to cross over and help classmates with other tickets
  • GitHub comment integration is inconsistent or missing
  • complaints brought to instructor or staff attention have resulted in instructor action
Table 2: Capstone Rubric, Coding Standards & Documentation
Coding Standards & Documentation (10%)
Tier IV (1)
  • all classes, interfaces, functions, and methods have doc blocks
  • all major blocks of code are commented
  • all comments make it so any developer can easily discern what the code is doing
  • all variable names are sensical and consistently in camelBack capitalization
  • all blocks are indented with a tab character
  • all line endings are Unix style (i.e., \n and not \r\n)
  • One True Bracing Style (1TBS) is strictly adhered to
Tier III (0.75)
  • all classes, interfaces, functions, and methods have doc blocks
  • most major blocks of code are commented
  • most comments make it so any developer can easily discern what the code is doing
  • all variable names are sensical and consistently in camelBack capitalization
  • all blocks are indented with a tab character
  • line endings may be inconsistent
  • 1TBS is strictly adhered to
Tier II (0.5)
  • most classes, interfaces, functions, and methods have doc blocks
  • most major blocks of code are commented
  • comments are often notes to the developer and serve no purpose to an external audience
  • variable names may or may not be sensical and consistently in camelBack capitalization
  • blocks are indented with an inconsistent mix of tabs and spaces
  • line endings may be inconsistent
  • 1TBS is strictly adhered to
Tier I (0.25)
  • doc blocks are missing from two or more classes, interfaces, functions, or methods
  • major blocks of code are inconsistently commented
  • comments are often notes to the developer and serve no purpose to an external audience
  • variable names may be inconsistent
  • blocks are indented with an inconsistent mix of tabs and spaces
  • line endings may be inconsistent
  • 1TBS rules are violated
Tier 0 (0)
  • doc blocks are missing from four or more classes, interfaces, functions, or methods
  • five or more major blocks of code are not commented
  • variable names are inconsistent
  • variable names use a notation other than camelBack
  • 1TBS rules are violated
Table 3: Capstone Rubric, Code Correctness & Efficiency
Code Correctness &; Efficiency (10%)
Tier IV (1)
  • database calls are used wisely (e.g., no database calls in a loop)
  • all PHP classes have an accompanying unit test with full coverage of all mySQL methods
  • all controllers have an accompanying FuncUnit test for valid and invalid inputs
  • general purpose code is in a library file or in a static method within the class
  • all pages are mobile-first, cross browser compatible
  • look-and-feel of all pages are consistent, coherent, and professional
Tier III (0.75)
  • database calls are used wisely (e.g., no database calls in a loop)
  • all PHP classes have an accompanying unit test with full coverage of all mySQL methods
  • most controllers have an accompanying FuncUnit test for valid and invalid inputs
  • general purpose code is in a static method within the class
  • all pages are mobile-first, cross browser compatible
  • look-and-feel of all pages are consistent, coherent, and professional
Tier II (0.5)
  • some complicated processes may use database calls within a loop
  • most PHP classes have an accompanying unit test with full coverage of all mySQL methods
  • most controllers have an accompanying FuncUnit test for valid and invalid inputs
  • general purpose code is in a static method within the class
  • one cross browser problem is present
  • look-and-feel is inconsistent or layout errors are present
Tier I (0.25)
  • some complicated processes may use database calls within a loop
  • most PHP classes have an accompanying unit test with full coverage of all mySQL methods
  • some controllers have an accompanying FuncUnit test for valid and invalid inputs
  • general purpose code is copied and pasted where it's used
  • two cross browser problems are present
  • look-and-feel has major problems in consistency
Tier 0 (0)
  • no regard is given to effiency or performance
  • three or more PHP classes are missing unit tests
  • three or more controllers are missing FuncUnit tests
  • general purpose code is copied and pasted and often diverges from its original purpose
  • three or more cross browser problems are present
  • look-and-feel has no consistency or cohesion, or is incomplete
Table 4: Security
Security (20%)
Tier IV (1)
  • uses regular expressions where appropriate to sanitize input
  • filter_var() is used in all cases with user input and output
  • all forms are jQuery form validated
  • XSRF is used on all forms using the POST method
  • all properties are read from an encrypted file
Tier III (0.75)
  • uses regular expressions to sanitize input
  • filter_var() is used in all cases with user input
  • most forms are jQuery form validated
  • XSRF is used on most forms using the POST method
  • all properties are read from an encrypted file
Tier II (0.5)
  • filter_var() is used in most cases with user input
  • some forms are jQuery form validated
  • all properties are read from a file outside the web directory
Tier I (0.25)
  • no input sanitization is performed on the front end
  • all properties are read from a file inside the web directory
Tier 0 (0)
  • no input santitization is performed at all
  • properties can be found ANYWHERE in GitHub's history