Milestone 0 Instructions
Milestone 0 Checklist
[ ] Set of user stories
[ ] Sitemap for your web app
[ ] User interface sketches
[ ] Class diagram of your model
[ ] Initial code skeleton
[ ] Individual assignments and outcomes
[ ] Instructions to the instructors, submitted to eCourseware dropbox
[ ] Teammate evaluations
The main deliverables to come out of the initial planning are a collection of artifacts regarding project requirements, planning, and design. These artifacts are collectively called Milestone 0.
1. Project Artifacts
For Milestone 0, you will submit the following artifacts:
- a set of user stories (with definitions document),
- a sitemap for your web app,
- user interface sketches,
- a class diagram of your model, and
- initial code skeleton.
The artifacts should satisfy the following grading criteria:
-
Tagged submission in GitHub. To grade your code, I will clone your team’s GitHub repo, and checkout a tagged version of your code. You must tag your code as “milestone0”.
- Artifact quality. All your artifacts must be of high quality.
- User story quality. Your USs must follow the templates/guidelines/principles described in lecture.
- Sitemap quality. I don’t care about the exact notation you use for this diagram. However, it should be easy to figure out what pages your site will have and how those pages will be interconnected.
- UI-sketch quality. Your UI sketches should show the basic page elements (fields, buttons, etc.). They may or may not be styled (e.g., with colors/graphics). Such sketches are sometimes referred to as wireframes.
- Design quality. Your designs should follow principles of good design, such as the SRP (Single Responsibility Principle) and DRY (Don’t Repeat Yourself) principles.
- Class diagram quality. Use proper class diagram notation (as given in lecture). Label all associations, and include all multiplicities. Include attribute types (e.g., “name : string”).
- Consistent naming. You must use consistent names for things across artifacts. That way, for example, we can tell where each UI sketch fits into the sitemap.
-
Diagram format. Diagrams need not be anal-retentively typeset; they simply must be readable. Thus, you may hand-draw diagrams on paper/whiteboard, and scan them into a digital format (PDF preferred). Of course, if you really want to typeset them, that’s OK too.
- Diagram submission. Keep the diagrams and USs with your web app code. Specifically, add a folder
docs
to the top level of your project, and place the file(s) in there.
Keep in mind that these artifacts will evolve as the project rolls along. Plan for such evolution.
Note that there is an A&B eligible role (Quality Assurance Czar) with special responsibilities regarding the milestone submission.
2. Individual Assignments
Full task planning and outcome reporting must be part of each iteration and milestone. See the Individual Assignment Specification document for detailed instructions.
3. Instructions to the Instructors
Since the way to access the various milestone artifacts may vary from team to team, each team must submit a document containing instructions to the instructors regarding how to access each artifact. This document must be submitted to an eCourseware dropbox by the milestone deadline.
Teams must use the following template. Create a Markdown file (i.e., a text file with the file extension .md
), and paste in the template below. Each team should submit only one Instructions-to-the-Instructors file that is shared by all team members. For the file locations, give the file name(s) and location(s) of each item in your team’s repository (e.g., /docs/user_stories.md
). Feel free to leave additional explanations/instructions as sub-bullets.
# Milestone 0 - Instructions to the Instructors
- Team: xxx (Team Name)
- GitHub Repo URL: xxx (URL)
## File Locations in Repository
- User stories: xxx (File location)
- Sitemap: xxx (File location)
- User interface designs: xxx (File location)
- Class diagram of your model: xxx (File location)
- Milestone 0 individual assignments and outcomes: xxx (File location)
4. Teammate Evaluations
At the end of each iteration, each team member must provide an evaluation of each other team member.
Instructions and forms for performing these teammate evaluations will be communicated by email near
the end of the iteration.
Grading Rubric
Below are each of the grading items for this Milestone, along with their point values and weights. If an item is not submitted at all, 0 points will be awarded for that item. The top-level bullets specify grading criteria. The sub-bullets indicate standard deductions for errors in a submitted item. The deduction list below may not be complete because there may be mistakes that we did not expect. The deduction for an unexpected mistake will be assessed at the time it’s discovered and will reflect how severe the instructor thinks the mistake is. If the deductions for a grading item total more than the total points for that item, 0 points will be awarded for the item.
User Stories (with Definitions Document)
20 points with weight of 30%
- Followed title and description templates
- -1 for each violation up to a max of -5
- Not too big
- -1 for each violation up to a max of -5
- Complete set
- -1 to -10, depending on how incomplete
- Functional user requirements only
- -1 for each violation up to -3
- Customer-oriented
- -1 for each violation up to -5
- No design, just requirements
- -1 for each violation up to -3
- Has and uses the definitions document
- -5 for no definitions document if arguably needed
- -1 per undefined term (that arguably should have been defined) up to -5
- Has status tracking
- No deduction for Milestone 0, but should be present and up to date for future milestones
Sitemap
20 points with weight of 10%
- Shows pages and how they’re interconnected
- -15 if the figure doesn’t convey this
- -1 for each missing page up to -15
- -1 for each missing connection up to -5
- Clear and understandable
- -1 to -20 depending how unclear or difficult to understand
User Interface Sketches
20 points with weight of 20%
- Clear and well detailed
- -1 to -15 depending on how unclear or how many details are missing
- Shows the basic page elements
- -1 to -15 depending on how many page elements are not accounted for
- Complete set
- -1 to -15 depending on how many interfaces are not accounted for
Class Diagram of Model
20 points with weight of 20%
- Clear and detailed
- -1 to -15 depending on how unclear or how many missing details
- Complete
- -1 to -15 depending on how incomplete
- Uses proper class diagram notation
- -1 for each departure from class diagram notation up to -5
- All associations and multiplicities labeled
- -1 for each missing association or multiplicity label up to -4
- Follows good design principles
- -1 to -5 depending on the number and severity of design issues
Instructions to the Instructors
20 points with weight of 10%
- Used Markdown template
- -5 for not submitting a proper Markdown file
- -1 to -4 depending on the number of ways that the template wasn’t followed
- Provided all info requested
- -3 for each missing piece of info up to -15
Submission in GitHub
20 points with weight of 5%
- Tagged submission in GitHub
- -20 for no tag
- -10 tag, but on wrong commit
- Followed tag-naming convention
- -3 to -6 depending on how much the tag departed from the convention
- Repo well organized
- -1 to -15 depending on how disorganized the repo is
Peer Review of User Stories
20 points with weight of 5%
- Participated in review process
- -10 for not submitting user stories and definitions document
- -10 for not providing quality feedback to another team