Commit 2799e38b by David Ormsbee

Some expansion of the Submissions Models docs.

parent 52a5ef00
""" """
This holds generic submissions and scores information. Is is ignorant of Submission models hold student responses to problems, scores, and a history of
workflows, ORA, etc. So the flow is this: those scores. It is intended to be a general purpose store that is usable by
different problem types, and is therefore ignorant of ORA workflow.
Student submission:
* XBlock creates a Submission
* submissions app sends a general notification that a submission has happened
* openassessment can listen for that signal if it wants, or query itself on demand
* when openassessment is satisfied that it has collected enough information to
score the student, it will push that score information back to this app.
* when the LMS wants to know what raw scores a student has, it calls this app.
Things to consider probably aren't worth the extra effort/complexity in the MVP:
* Many to Many relations for students-submissions, evaluations-submissions
* Version ID (this doesn't work until split-mongostore comes into being)
""" """
from django.db import models from django.db import models
from django.utils.timezone import now from django.utils.timezone import now
...@@ -58,7 +45,11 @@ class StudentItem(models.Model): ...@@ -58,7 +45,11 @@ class StudentItem(models.Model):
class Submission(models.Model): class Submission(models.Model):
"""A single response by a student for a given problem in a given course. """A single response by a student for a given problem in a given course.
A student may have multiple submissions for the same problem. A student may have multiple submissions for the same problem. Submissions
should never be mutated. If the student makes another Submission, or if we
have to make corrective Submissions to fix bugs, those should be new
objects. We want to keep Submissions immutable both for audit purposes, and
because it makes caching trivial.
""" """
student_item = models.ForeignKey(StudentItem) student_item = models.ForeignKey(StudentItem)
......
...@@ -24,8 +24,9 @@ Submissions ...@@ -24,8 +24,9 @@ Submissions
Peer Assessment Peer Assessment
*************** ***************
Apps
---- Django Apps
-----------
Submissions Submissions
*********** ***********
......
Public Interface
----------------
...@@ -10,9 +10,10 @@ not ready for general use. ...@@ -10,9 +10,10 @@ not ready for general use.
Setup Setup
----- -----
::
pip install -r requirements/dev.txt pip install -r requirements/dev.txt
pip install -e .
python manage.py runserver python manage.py runserver
User Guide User Guide
...@@ -26,10 +27,6 @@ Author Guide ...@@ -26,10 +27,6 @@ Author Guide
Developer Guide Developer Guide
--------------- ---------------
.. toctree::
:maxdepth: 2
dev/conventions
API Documentation API Documentation
----------------- -----------------
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment