From 236734468e05aee26133690d6866ddd63984f732 Mon Sep 17 00:00:00 2001 From: Laura Hawkins Date: Thu, 4 Jun 2015 22:31:49 -0700 Subject: [PATCH] design use cases --- DesignUseCases.tex | 89 ++++++++++++++---------------------------------------- 1 file changed, 22 insertions(+), 67 deletions(-) diff --git a/DesignUseCases.tex b/DesignUseCases.tex index fdb971f..e33723b 100644 --- a/DesignUseCases.tex +++ b/DesignUseCases.tex @@ -730,13 +730,13 @@ bug reports, questions, or praise. } \subsection{[F1] Push Flashcard} \begin{description} -\item[Description]{The user shall be able to create a flashcard with their +\item[Description]{The User shall be able to create a flashcard with their input. } -\item[Desired Outcome]{The user shall have the flashcard added to their own +\item[Desired Outcome]{The User shall have the flashcard added to their own deck and the Live Feed. } \\ -\item[User Goals]{The user will see their flashcard in their deck and the +\item[User Goals]{The User will see their flashcard in their deck and the flashcard will be shared with others. } \item[Dependency Use Cases]{{[}A1{]} User Registration, {[}A2{]} User @@ -747,11 +747,11 @@ Login, {[}A3{]} Add a Class} \begin{itemize} \itemsep1pt\parskip0pt\parsep0pt \item - {The User has an account } + {The User has an account.} \item - {The User has added at least one class} + {The User has added at least one class.} \item - {The User is on the class' page} + {The User has navigated to the live feed for a class.} \end{itemize} \item[Post-conditions] @@ -759,89 +759,44 @@ Login, {[}A3{]} Add a Class} \begin{itemize} \itemsep1pt\parskip0pt\parsep0pt \item - {The User has flashcard added to their deck} + {The User has flashcard added to their deck.} \item - {The Flashcard is shown in the Live Feed} + {The Flashcard is shown in the Live Feed.} \item - {Other users can add this flashcard to their decks} + {Other users can add this flashcard to their decks.} \end{itemize} -\item[Trigger]{} - -\begin{itemize} -\itemsep1pt\parskip0pt\parsep0pt -\item - {The User has clicked on the button ``Make New Flashcard''.} -\item - {The Server receives a POST request containing the flashcard data.} -\end{itemize} +\item[Trigger]{The User wants to make a flashcard to study.} \item[Workflow] \begin{enumerate} \itemsep1pt\parskip0pt\parsep0pt \item - {The User is at the live feed for the class.} -\item - {The User shall click on the button}{Push - Flashcard} + {The User is at the live feed for the class from feed.html.} \item - {The - }{Client}{shall - present a dialog box for inputting the flashcard text to the User.} + {The User shall click on the 'Plus' button or press the hotkey 'c'.} \item - {The User shall input the flashcard text.} + {The frontend shall present a modal for inputting the flashcard text to the User.} \item - {Optionally, the User shall mark keywords in the flashcard text.} + {The User shall type in the content of their flashcard.} \item - {If the User creates this flashcard outside of the lecture time, he - will get the option to change the material date.} + {The User shall highlight keywords in the flashcard text.} \item - {The User shall click on the `Submit' button to submit the flashcard + {The User shall click on the `Contribute' button to submit the flashcard text, blanks, and material date, in JSON form as a POST request.} \item - {The Server shall obtain the flashcard information by deserializing - the JSON in the POST request.} + {The backend shall obtain the flashcard information by deserializing + the JSON in the POST request in views.py.} \item - {The Server shall create a new record for this flashcard in the - Flashcards table in the database.} + {The backend shall create a new record for this flashcard in the + Flashcards table in the database in models.py.} \item - {The Server shall publish the newly created card to the live feed of - the class.} + {The frontend shall publish the newly created card to the live feed of + the class using FeedController.js.} \end{enumerate} \end{description} -{Alternative Workflow:} - -\begin{enumerate} -\itemsep1pt\parskip0pt\parsep0pt -\item - {The User shall view a flashcard that he/she did not create} -\item - {The User shall click ``Edit''} -\item - {The client shall present a dialog box for editing the existing - flashcard text} -\item - {The User shall make edits} -\item - {The User shall click ``save''} -\item - {The client shall send a POST request} -\item - {The server shall remove the original card from user's deck} -\item - {The Server shall obtain the flashcard information by deserializing - the JSON in the POST request.} -\item - {The Server shall create a new record for this flashcard in the - Flashcards table in the database.} -\item - {The Server shall publish the newly created card to the live feed of - the class.} -\end{enumerate} - \newpage - {} \subsection{[F2] Edit Flashcard} -- 1.9.1