Commit f5324c837c7c7be81c94222d27b2dca955af6dfe
Exists in
master
Merge branch 'master' of git.ucsd.edu:110swag/docs
mergin
Showing 1 changed file Side-by-side Diff
DesignUseCases.tex
View file @
f5324c8
... | ... | @@ -805,9 +805,9 @@ |
805 | 805 | \item[Description]{The User shall be able to edit the text on their own |
806 | 806 | flashcard } |
807 | 807 | |
808 | -\item[Desired Outcome]{Flashcard is edited and saved appropriately} | |
808 | +\item[Desired Outcome]{Flashcard is edited and saved appropriately.} | |
809 | 809 | \\ |
810 | -\item[User Goals]{To be able to change text on a flashcard} | |
810 | +\item[User Goals]{To be able to change text on a flashcard.} | |
811 | 811 | |
812 | 812 | \item[Dependency Use Cases]{{[}A1{]} User Registration, {[}A2{]} User |
813 | 813 | Login, {[}A3{]} Add a Class, {[}F1{]} Push Flashcard, {[}F3{]} Pull |
814 | 814 | |
815 | 815 | |
... | ... | @@ -818,11 +818,11 @@ |
818 | 818 | \begin{itemize} |
819 | 819 | \itemsep1pt\parskip0pt\parsep0pt |
820 | 820 | \item |
821 | - {Flashcard is created} | |
821 | + {Flashcard is created.} | |
822 | 822 | \item |
823 | - {Flashcard in user's deck} | |
823 | + {Flashcard in user's deck.} | |
824 | 824 | \item |
825 | - {Flashcard is viewable} | |
825 | + {Flashcard is viewable.} | |
826 | 826 | \end{itemize} |
827 | 827 | |
828 | 828 | \item[Post-conditions] |
829 | 829 | |
830 | 830 | |
831 | 831 | |
832 | 832 | |
... | ... | @@ -830,27 +830,19 @@ |
830 | 830 | \begin{itemize} |
831 | 831 | \itemsep1pt\parskip0pt\parsep0pt |
832 | 832 | \item |
833 | - {Flashcard is edited} | |
833 | + {Flashcard is edited.} | |
834 | 834 | \end{itemize} |
835 | 835 | |
836 | -\item[Trigger]{User has clicked ``Edit'' button when viewing a specific | |
837 | -flashcard} | |
838 | - | |
836 | +\item[Trigger] {The User wants to change a card to show different information.} | |
839 | 837 | \item[Workflow] |
840 | 838 | |
841 | 839 | \begin{enumerate} |
842 | 840 | \itemsep1pt\parskip0pt\parsep0pt |
841 | +\item{User has clicked ``Edit'' button when viewing a specific flashcard.} | |
843 | 842 | \item |
844 | - {The user shall view their deck} | |
843 | + {The frontend shall produce an editable dialog box containing flashcard | |
844 | + text } | |
845 | 845 | \item |
846 | - {The client shall present user with a grid view of cards in | |
847 | - chronological creation order} | |
848 | -\item | |
849 | - {The user shall select a flashcard and click `Edit'} | |
850 | -\item | |
851 | - {The client shall produce an editable dialog box containing flashcard | |
852 | - text} | |
853 | -\item | |
854 | 846 | {The user shall make desired changes} |
855 | 847 | \item |
856 | 848 | {The user shall click `Save'} |
857 | 849 | |
858 | 850 | |
... | ... | @@ -902,16 +894,16 @@ |
902 | 894 | \\ |
903 | 895 | \item[Priority Level]{``Must'' } |
904 | 896 | |
905 | -\item[Status]{Not Implemented} | |
897 | +\item[Status]{Implemented} | |
906 | 898 | |
907 | 899 | \item[Pre-conditions] |
908 | 900 | |
909 | 901 | \begin{itemize} |
910 | 902 | \itemsep1pt\parskip0pt\parsep0pt |
911 | 903 | \item |
912 | - {Flashcard has been created } | |
904 | + {A flashcard has been created and is in the Live Feed for a class. } | |
913 | 905 | \item |
914 | - {That flashcard is in the Live Feed} | |
906 | + {The User is currently viewing the Live Feed for that class.} | |
915 | 907 | \end{itemize} |
916 | 908 | |
917 | 909 | \item[Post-conditions] |
918 | 910 | |
919 | 911 | |
920 | 912 | |
921 | 913 | |
... | ... | @@ -919,25 +911,22 @@ |
919 | 911 | \begin{itemize} |
920 | 912 | \itemsep1pt\parskip0pt\parsep0pt |
921 | 913 | \item |
922 | - {User shall have that flashcard added to their deck} | |
914 | + {User shall have that flashcard added to their deck.} | |
923 | 915 | \item |
924 | - {User can review this flashcard later} | |
916 | + {User can review this flashcard later.} | |
925 | 917 | \end{itemize} |
926 | 918 | |
927 | -\item[Trigger]{User has clicked on the flashcard in the Live Feed.} | |
919 | +\item[Trigger]{The User wants to save a flashcard for review later.} | |
928 | 920 | |
929 | 921 | \item[Workflow] |
930 | 922 | |
931 | 923 | \begin{enumerate} |
932 | 924 | \itemsep1pt\parskip0pt\parsep0pt |
933 | 925 | \item |
934 | - {The User is in the Live Feed.} | |
935 | -\item | |
936 | 926 | {User shall click on the ``Pull Flashcard'' button on a Flashcard in |
937 | 927 | the Feed.} |
938 | 928 | \item |
939 | - {The Client shall make the pulled Flashcard disappear from the Live | |
940 | - Feed} | |
929 | + {The frontend shall } | |
941 | 930 | \item |
942 | 931 | {The Client shall make the pulled Flashcard appear in the User's Deck |
943 | 932 | on the sidebar.} |
944 | 933 | |
... | ... | @@ -965,10 +954,10 @@ |
965 | 954 | \item[Description]{Cards may be flagged indicating inappropriate content} |
966 | 955 | |
967 | 956 | \item[Desired Outcome]{The flashcard's inappropriateness variable is |
968 | -adjusted} | |
957 | +adjusted.} | |
969 | 958 | \\ |
970 | 959 | \item[User Goals]{To note if a card should not belong in the class and |
971 | -should not be displayed in the feed} | |
960 | +should not be displayed in the feed.} | |
972 | 961 | |
973 | 962 | \item[Primary Actor]{User (Student)} |
974 | 963 | |
... | ... | @@ -977,7 +966,7 @@ |
977 | 966 | \\ |
978 | 967 | \item[Priority Level]{``Should''} |
979 | 968 | |
980 | -\item[Status]{Unimplemented} | |
969 | +\item[Status]{Implemented} | |
981 | 970 | |
982 | 971 | \item[Pre-conditions] |
983 | 972 | |
984 | 973 | |
... | ... | @@ -990,9 +979,11 @@ |
990 | 979 | \begin{itemize} |
991 | 980 | \itemsep1pt\parskip0pt\parsep0pt |
992 | 981 | \item |
993 | - {Flashcard is created} | |
982 | + {Flashcard is created.} | |
994 | 983 | \item |
995 | - {Flashcard is viewable in feed} | |
984 | + {Flashcard is viewable in feed.} | |
985 | +\item | |
986 | + {The User has clicked the red button on the flashcard which is the "Hide Card" button.} | |
996 | 987 | \end{itemize} |
997 | 988 | |
998 | 989 | \item[Post-conditions] |
999 | 990 | |
1000 | 991 | |
1001 | 992 | |
1002 | 993 | |
1003 | 994 | |
1004 | 995 | |
1005 | 996 | |
... | ... | @@ -1000,32 +991,27 @@ |
1000 | 991 | \begin{itemize} |
1001 | 992 | \itemsep1pt\parskip0pt\parsep0pt |
1002 | 993 | \item |
1003 | - {Flashcard is hidden from user} | |
994 | + {Flashcard is hidden from user.} | |
1004 | 995 | \item |
1005 | - {Flashcard internal variable is adjusted} | |
996 | + {Flashcard internal variable is adjusted.} | |
1006 | 997 | \end{itemize} |
1007 | 998 | |
1008 | -\item[Trigger]{User clicks flag on a specific flashcard} | |
999 | +\item[Trigger]{The User does not like the particular flashcard.} | |
1009 | 1000 | |
1010 | 1001 | \item[Workflow] |
1011 | 1002 | |
1012 | 1003 | \begin{enumerate} |
1013 | 1004 | \itemsep1pt\parskip0pt\parsep0pt |
1005 | +\item { | |
1006 | + The frontend displays a toast that offers the User the report text.} | |
1014 | 1007 | \item |
1015 | - {The User is at a page of their classes.} | |
1008 | + {The User clicks the ``Report'' text on the flashcard.} | |
1016 | 1009 | \item |
1017 | - {The User selects one of their classes to enter the Live Feed.} | |
1010 | + {The frontend shall hide the flashcard from the User.} | |
1018 | 1011 | \item |
1019 | - {The User is on the Live Feed for his/her class.} | |
1012 | + {The backend shall check if the User already hid the flashcard in views.py function report.} | |
1020 | 1013 | \item |
1021 | - {The User shall identify an inappropriate card and flag the card.} | |
1022 | -\item | |
1023 | - {The User clicks the ``Flag as Inappropriate'' button on the flashcard | |
1024 | - that he/she wants to report} | |
1025 | -\item | |
1026 | - {The Client shall hide the card from the user} | |
1027 | -\item | |
1028 | - {The server shall create a FlashcardReport object} | |
1014 | + {The backend shall hide the flashcard in models.py in class FlashcardHide. } | |
1029 | 1015 | \end{enumerate} |
1030 | 1016 | \end{description} |
1031 | 1017 | {} |
1032 | 1018 | |
1033 | 1019 | |
1034 | 1020 | |
... | ... | @@ -1036,16 +1022,16 @@ |
1036 | 1022 | |
1037 | 1023 | {} |
1038 | 1024 | |
1039 | -\subsection{[F5] Filter Flashcards} | |
1025 | +\subsection{[F5] Filter Flashcards - Deferred} | |
1040 | 1026 | |
1041 | 1027 | \begin{description} |
1042 | -\item[Description]{The user is able to filter for flashcards by date} | |
1028 | +\item[Description]{The User is able to filter for flashcards by date.} | |
1043 | 1029 | |
1044 | -\item[Desired Outcome]{The user shall see flashcards based on the filter | |
1045 | -options} | |
1030 | +\item[Desired Outcome]{The User shall see flashcards based on the filter | |
1031 | +options.} | |
1046 | 1032 | |
1047 | -{User Goals:}{The user can find what he/she is specifically looking | |
1048 | -for} | |
1033 | +{User Goals:}{The User can find what he/she is specifically looking | |
1034 | +for.} | |
1049 | 1035 | |
1050 | 1036 | \item[Primary Actor]{User (student)} |
1051 | 1037 | |
1052 | 1038 | |
1053 | 1039 | |
... | ... | @@ -1055,16 +1041,18 @@ |
1055 | 1041 | \\ |
1056 | 1042 | \item[Priority Level]{''Should''} |
1057 | 1043 | |
1058 | -\item[Status]{Not}{}{Implemented } | |
1044 | +\item[Status]{Not Implemented } | |
1059 | 1045 | |
1060 | 1046 | \item[Pre-conditions] |
1061 | 1047 | |
1062 | 1048 | \begin{itemize} |
1063 | 1049 | \itemsep1pt\parskip0pt\parsep0pt |
1064 | 1050 | \item |
1065 | - {User has registered for the course } | |
1051 | + {User has added the class.} | |
1066 | 1052 | \item |
1067 | - {Flashcards exist in the course} | |
1053 | + {Flashcards exist in the course.} | |
1054 | +\item | |
1055 | + {The User has navigated to the study page.} | |
1068 | 1056 | \end{itemize} |
1069 | 1057 | |
1070 | 1058 | \item[Post-conditions]{} |
1071 | 1059 | |
1072 | 1060 | |
1073 | 1061 | |
1074 | 1062 | |
... | ... | @@ -1075,27 +1063,21 @@ |
1075 | 1063 | {User only sees specific flashcards} |
1076 | 1064 | \end{itemize} |
1077 | 1065 | |
1078 | -\item[Trigger]{User has selected advanced options from menu} | |
1066 | +\item[Trigger]{The User wants to only see cards for a specific date range.} | |
1079 | 1067 | |
1080 | 1068 | \item[Workflow] |
1081 | 1069 | |
1082 | 1070 | \begin{enumerate} |
1083 | 1071 | \itemsep1pt\parskip0pt\parsep0pt |
1084 | 1072 | \item |
1085 | - {The User chooses one of their classes.} | |
1073 | + {The frontend shall render the page described in study.html.} | |
1086 | 1074 | \item |
1087 | - {The User presses the class they want to view.} | |
1075 | + {The User fills in the date fields.} | |
1088 | 1076 | \item |
1089 | - {The Client displays the Live Feed.} | |
1077 | + {The frontend checks the date fields before making the POST request to /api/study.} | |
1090 | 1078 | \item |
1091 | - {The User is at the Live Feed.} | |
1092 | -\item | |
1093 | - {The User wants to filter the cards on the Live Feed.} | |
1094 | -\item | |
1095 | - {The User shall select what filter option they want from a drop down | |
1096 | - menu.} | |
1097 | -\item | |
1098 | - {The Client shall display only relevant flashcards.} | |
1079 | + {The system follows the Study workflow, displaying only cards made within a certain date time.} | |
1080 | + | |
1099 | 1081 | \end{enumerate} |
1100 | 1082 | \end{description} |
1101 | 1083 | {} |