Skip to main content Link Search Menu Expand Document (external link)

đź›  Methodology Assignment 5

Submit this assignment to Gradescope by Wednesday, November 23rd at 11:59PM (note the later-than-usual deadline). Post questions with the assignment, and the Quarter 1 code submission more generally, here.


In this assignment, you will submit a working draft of your Quarter 1 Project’s code, such that it:

  • Uses test data.
  • Implements the test target.

Before proceeding, make sure you’re familiar with Lessons 2 (Project Organization), 5 (Software Development) and 6 (Long-Running Jobs and Test Data).

  1. Suppose <projectdir> is the repository in which your project code is being written. In the folder <projectdir>/test/testdata, create and store test data, according to the principles from Lesson 6. For the purposes of MA 5, you need to create a minimal test data set that your project can take as input and run from start to finish on, without error. Your test data should be in the format that most closely resembles “raw” data that your project may use. For instance, if you use an API to access data, create test data in the same format that is returned by the API. (Remember, test data is not data that results from a train/test split! Review Lesson 6 for the definition.)

  2. Implement the target test in run.py that runs all your targets on the test data you created. (We know your project isn’t finished yet; for now, the test target should just build all outputs that you’ve currently implemented.)

  3. At the root of your project repository, create a submission.json file that follows the conventions in the Code Submission Specifics section of the Quarter 1 Project specifications. The file should have two key-value pairs (yes, including a DockerHub image).

  4. Push your repository to GitHub, and submit it to Gradescope.

MA 5 will be autograded on Gradescope; you’ll be able to see your score right when you submit. The tests will not depend on your project’s actual output, just on whether or not it satisfies the guidelines above.

Note: As with every methodology assignment, you should work on this individually. You can discuss the requirements with your group, but should create test data and submit the repository separately. Once the assignment is turned in, you can all share your test data.