Homework 1

Overview

You will be writing a Specification Document for a software project of your choosing.

DayDate
ReleaseTueSEP 08, 2020
DueTueSEP 15, 2020 @ 11pm (EST)

Open the SRS doc, then go to File -> Make a Copy where you will be able to edit the document. Once finished, go to File -> Download -> PDF document. Submit the PDF file to Gradescope under HW1 submission link.

Onboarding

In order to provision you a GitHub repository to work on the homework, you must complete the Homework Onboarding Form. You need to do this once. After successful "onboarding" you will be given a GitHub repository that contains a srs.md file under homeworks/hw1. The file is a SRS template; you must complete it, commit, and push to your repo.

Task

If you have already selected a project topic (or considering a few alternatives), make this about your topic; write the "requirement specification" accordingly (but do so individually). If you don't have a topic in mind, you can make it about a project idea you might already have in mind or you come up with. Your specification document must include all sections outlined in the SRS template. You need to do this in two different formats. See Submission sections below for details.

tip

For user stories (i.e. functional requirements), make sure you see User Stories section before you start working on them.

Submission

The task needs to be done in two different formats:

  1. As a markdown file that you commit/push to your personal repo that was created for you. We will only look at your last commit version (unless you later ask us to look at an alternate one). If you are not familiar with markdown, you may want to checkout the Toolbox page for some resources.

  2. As a PDF document that you will submit to Gradescope.

Once you have completed the specification of your software, commit the changes and push to the repository that was created for you. Then head over to Gradescope to submit your work. You must submit both the Markdown file and the PDF file (and any wireframe files you may have) as a single .zip file.