Rubric for Project Iterations

Total posts: 100 (per iteration)

Deductions under each category may exceed the points available for that category!

Software Development Process [5 points]

ItemPoints
The project README is outdated or incomplete.-3
There is a missing, incomplete, or poorly written plan for the user stories to be implemented in this iteration. Advisors: Please use the point adjustment and apply -2 for every extra case.-2
Not using (or poor use of) GitHub issues for documenting issues, assigning tasks, or introducing changes, updates, or new features.-4
Not using (or poor use of) branches (and pull requests) to isolate and merge changes/updates. (Includes poor pull request descriptions.)-3
Not using Continuous Integration & Delivery; The deployment process is not automated.-3

Implementation [20 points]

ItemPoints
The code in the main branch is not the deliverable of this iteration (does not correspond to the deployed app).-3
There are visible issues with the organization of code in the repository (poor structuring, temp files that are renamed to avoid merge conflicts, build files contaminated the repository, etc.)-5
There are visible issues with coding practices, e.g., code that is not modularized, methods/classes too long, poor naming, lack of comments, code that is not readable or requires refactoring (obvious code duplicate, etc.)-5
Commit history in a state of disarray (poor commit messages, too many or too few commits, unclear how the development progressed, all/most commits are made by one or a few members, etc)-2
Tried to pull and run the code locally but it didn't work (for any reason including poor documentation!) Advisors: You don't need to run the app locally on every iteration. But it must be done at least on two iterations at your discretion.-10

Test [15 points]

ItemPoints
Unit testing (mostly aimed at backend) is missing, incomplete, insufficient, or have poor coverage.-5
End-to-End testing (involves fronte=-end) is missing, incomplete, insufficient, or have poor coverage.-5
The existing tests are not automated or not integrated with the development process (e.g., not run automatically on merge or before deployment).-3
Poor practices when writing test code (e.g., lack of modularity or readability, test against production DB instead of mocking data, etc).-2

Delivery [50 points]

ItemPoints
Completed the iteration backlog but failed to complete a few minor tasks that they had planned. Advisors: Please apply an additional -5 if they miss several planned tasks.-5
Missing one major deliverable (e.g. a planned user story or a critical bug fix not completed). Advisors: Please use the point adjustment and apply -10 for each extra major deliverable that is missing.-10
The app runs locally (the team can demo it on their computer), but the deployed version is not functioning properly.-10
The app works (locally or in the deployed version), but some bugs/issues hinder the application's usability. Advisors: Please use the comment section to provide a few examples of those bugs/issues. Apply -5 per bug (feel free to group several small issues into one)-5

Teamwork [10 points]

ItemPoints
Missing (or poorly written) retrospective.-5
No evidence of code review (e.g., reviewer are assigned but pull request is approved with no feedback).-3
No evidence of active communication in the team slack channel.-2
Most team members missed more than one project meeting during this iteration.-3