courses.pgbovine.net

Project Milestone 5

DUE: Wednesday, May 16 at noon

The purpose of this milestone is to start making more progress on the frontend UI portion of your project. Of course, you can continue to improve your backend as well, and you'll likely need to do so as your frontend shapes up.

By this milestone's due date, your frontend functionality should be nearly completed and hooked up to your backend so that your TA can interact with your app and perform non-trivial actions that are unique to your app's core functionality (i.e., not just logging in or opening static webpages). In other words, if you demo this app to your friends and family at this point, they will get an accurate sense of what product you're actually trying to make, even if the UI is still a rough draft.

The only component you don't need to have done by this point is your actual data visualizations. You can display data in a simple text-based display or in HTML tables for now; you will work on your data visualizations for Milestone 6.

The lectures in this class focus mostly on backend programming since COGS120/CSE170 already covered frontend concepts. Thus, you don't need to worry about making your UI look aesthetically good since that is not the focus of this class (although it's great if you do!).

For a frontend programming refresher, you can consult these COGS120/CSE170 materials from Fall 2017:

... or these labs from Winter 2018.

The grading rubric contains all of the required items to turn in for your milestone5.md write-up and to live demo to your TA. Always consult the rubric!

Finally, fill out a teammate assessment form.

Your TA will grade your milestone in class during your assigned grading day, so plan to come to class then to present your demo. If you do not come to class that day, then your milestone will not be graded.

Grading rubric (15 points)

  1. milestone5.md is present in your project's GitHub repository.
  2. milestone5.md contains screenshots of your latest UI webpages embedded directly within the file.
  3. milestone5.md contains a written explanation of how your UI's screenshots have improved upon the versions shown in milestone4.md.
  4. milestone5.md contains a written description of at least two non-trivial actions that users can perform when they use your app. These should not be simply logging in or opening static webpages; they need to be substantive actions that demonstrate your app's core functionality, and also differ from one another in a significant way (2 points).
  5. For User Action 1 described in milestone5.md, your TA is able to successfully perform that action in your app during your grading session just by reading your written description (2 points; you get 1 point if they have a lot of trouble and you need to help them out).
  6. For User Action 1, you can convince your TA that it is part of your app's core functionality.
  7. For User Action 1, you are able to explain the actual code you wrote to implement that action.
  8. For User Action 1, you can convince your TA that it was non-trivial to implement (e.g., not simply putting a link on a webpage).
  9. For User Action 2 described in milestone5.md, your TA is able to successfully perform that action in your app during your grading session just by reading your written description (2 points; you get 1 point if they have a lot of trouble and you need to help them out).
  10. For User Action 2, you can convince your TA that it is part of your app's core functionality.
  11. For User Action 2, you are able to explain the actual code you wrote to implement that action.
  12. For User Action 2, you can convince your TA that it was non-trivial to implement (e.g., not simply putting a link on a webpage).

(Important: you will not receive credit for the User Action 2 parts of the rubric if it is nearly identical to User Action 1. Make sure that these differ in a significant way. Use the “friends and family test” here: If your friends/family wouldn't be convinced that these actions are different enough, then your TA probably won't be convinced either.)

Frequently Asked Questions

First please check the project FAQ.