---
# System prepended metadata

title: User Stories

---

# User Stories

The purpose of this document is to describe the user and admin flow to establish the [models](https://docs.djangoproject.com/en/3.1/topics/db/models/) we need. 

## Admin

An admin should be able to create a new challenge. The challenge should have some long form text box/field that can be used to describe the challenge. The challenge should have some date range when submissions will be accepted. An admin should be able to view a dashboard which has submissions grouped by challenge. The dashboard should also indicate if the submission is ranked and the score of the submission. An admin should also be able to re-run a submission and view the status of a submission.

## User

When a user creates a submission, they will select the challenge they are creating the submission for. They should select if their submission is a ranked submission. They should also provide the name and tag of the docker image they are submitting (for the MVP we will assume images are hosted on the docker hub container registry). We should also collect an estimated amount of computing resources needed (hours, number of cores, amount of memory, and GPU requirements). These fields will be free text fields until we have a more standard way of collecting this information.  A user can also provide their submission a name.  We should also collect (optionally) a link to some code repository which is associated with the submission. A user should be able to delete a submission.

A user should be able to view a dashboard which displays all of their submissions, scores, and if the submission is ranked. They should also be able to view the "status" of their submission (for now this will just be if the container had a non-zero or zero exit code)

# More notes:
* A user may have multiple submissions to a challenge
* A user may only have one ranked submission per challenge
* We should ensure that the website is [accessible](https://developer.mozilla.org/en-US/docs/Web/Accessibility)
* ["Example" Submission](https://github.com/samplchallenges/SAMPL7/blob/master/physical_property/logP/analysis/logP_predictions/logP-ChrisLoschen-1.csv)

