Skip to content

Latest commit

 

History

History
78 lines (54 loc) · 8.85 KB

File metadata and controls

78 lines (54 loc) · 8.85 KB

#Frontend Web Development Assessment

##Project Rubric

Criteria

In evaluating project submissions each criteria item is evaluated using the following levels:

  1. Subpar or Lacking Proficiency
  2. Baseline Proficiency
  3. High Proficiency

Functionality

Metric High Proficiency Baseline Proficiency Subpar or Lacking Proficiency
Matching specifications The application functions exactly as intended. The application functions mostly as intended. The application does not function as intended.
Javascript Console Errors No errors. Less than 3 noted errors per page. More than 3 noted errors per page.
Markup errors (missing/extra closing tags). No errors. Less than 3 noted errors per page. More than 3 noted errors.
CSS errors (non-existent properties, incorrect rule syntax). No errors. Less than [number] errors. More than [number] errors.
File references (images, css files, linked scripts). No broken references. Less than [number] broken references. More than [number] broken references.

Appearance

Metric High Proficiency Baseline Proficiency Subpar or Lacking Proficiency
Matching specifications The application’s front-end matches the designs exactly. The application’s front-end matches the designs closely, but not exactly. Less than 50% of the application’s front-end matches the design.
Visual errors (unnecessary vertical/horizontal scroll distances,misplaced content) No visual errors. Less than 3 errors. More than [number] errors.

Performance

Metric High Proficiency Baseline Proficiency Subpar or Lacking Proficiency
Responsiveness The application feels light and fast. The application is fast enough to keep a user from wanting to leave the page. The application is slow and clunky.
Load Time Using YSlow, the site is a grade A or better. Using YSlow, the site is a B or better. Using YSlow, the site is a C or below

Structure/Organization

Metric High Proficiency Baseline Proficiency Subpar or Lacking Proficiency
File Structure Files are separated into folders by file type and/or purpose. Folder names and folder structure is intuitive. Files are separated into folders by file type and/or purpose. Folder names and folder structure might require some explanation to another developer. Files are not all separated into folders by file type and/or purpose. Folder names and folder structure are not intuitive enough for sharing.
Separation of Concerns CSS rules and Javascript are separated from HTML. ? CSS rules and Javascript are included in the HTML.
SEO Techniques SEO techniques (<meta> tags and header tags - <h1>, <h2>, <h3>) are used to effectively provide useful information to search engines throughout the code. Some SEO techniques (<meta> tags and header tags - <h1>, <h2>,<h3>) are used to effectively provide useful information to search engines. SEO techniques (<meta> tags and header tags - <h1>, <h2>, <h3>) are not effectively to provide useful information to search engines.

Code Quality: HTML

Metric High Proficiency Baseline Proficiency Subpar or Lacking Proficiency
Structure The pages are broken down into logical sections. The pages are broken down into logical sections, with a few minor exceptions. There may be some attempt at breaking the pages down into logical sections, but overall, they are not logically structured.
Choice of HTML tags The individual consistently chooses the best (most semantic) element for the job. Tags are nested correctly and logically. The individual chooses the best (most semantic) element for the job, with a few minor exceptions. 75%+ of tags are nested correctly and logically. The individual makes some unsuccessful attempts, but overall, fails to choose the best (most semantic) element for the job. Most tags are not nested correctly and logically.
Use of classes and IDs The individual appropriately uses classes on elements with similar purposes and/or similar styling. Class and ID names are intuitive, meaningful, and concise. The individual uses classes on some elements with similar purposes and/or similar styling. With some minor exceptions, class and ID names are intuitive, meaningful, and concise. The individual does not apply classes on elements with similar purposes and/or similar styling. Overall, class and ID names are not intuitive, meaningful, or concise.
Readability Code is very easy to read. The individual indents consistently, and leaves frequent comments. Code is mostly easy to read.
Separation of content The individual consistently makes good decisions about when to use CSS to achieve visual effects, over HTML. With a few minor exceptions, the individual uses CSS to achieve visual effects, over HTML, when appropriate. The individual uses HTML to achieve visual effects, when CSS would be more appropriate.

Code Quality CSS

Metric High Proficiency Baseline Proficiency Subpar or Lacking Proficiency
Structure The code is separated into logical sections. The code is broken down into logical sections, with a few minor exceptions. There may be some attempt at breaking the code down into logical sections, but overall, it is not logically structured.
Use of CSS Properties The individual demonstrates a command of a wide variety of properties and techniques. He/she successfully accomplishes the desired visual outcomes in standard, accepted ways. The individual demonstrates ability to implement a variety of properties and techniques. He/she accomplishes the desired visual outcomes, primarily through standard, accepted ways. The individual implements some properties and techniques. He/she may accomplish the desired visual outcomes, but misuses certain properties.
Readability Code is very easy to read. The individual indents consistently, and leaves frequent comments. Code is mostly easy to read. The individual indents and leaves comments. Because the individual does not indent consistently or leave comments, the code is challenging to read.
Concision The individual’s code is very concise. He/she makes clever use of selectors to keep the number of duplicate rules low. The individual’s code is concise, but there may be a few unnecessary duplicate rules. The code is not concise. There are several instances where selectors could have been used, but were not.

Code Quality Javascript

Metric High Proficiency Baseline Proficiency Subpar or Lacking Proficiency
Organization Procedural code and event handlers are consistently separated from functions. Procedural code and event handlers are separated from functions, with a few minor exceptions. Procedural code and event handlers are not separated from functions.
Program Logic The student has very effectively used loops, functions, and conditionals, to [insert]. In a few instances, the student did not use loops, functions, and conditionals, where they might more easily accomplished certain goals. There are several cases in which students could have more easily accomplished certain things, using loops, functions, and conditionals.
Readability The code is well-indented and consistently spaced. Throughout, complex pieces of logic are appropriately commented. The code is indented and consistently spaced. In most cases, complex pieces of logic are appropriately commented. While there may be some attempt at organizing the code, it is not indented or spaced to support readability. Further, complex pieces of logic are missing commentary.
Efficiency The code is consistently written in an efficient manner, with an eye for accomplishing as much as possible with concise code. The code is efficiently written. Student regularly performs unnecessary operations.
Maintainability Throughout, the code is DRY (free from repetition of blocks of identical or highly similar code). All variables have intuitive names. The code is DRY (free from repetition of blocks of identical or highly similar code). With a few minor exceptions, variables have intuitive names. The code includes repetition of blocks of identical or highly similar code. Most variables do not have intuitive names.