Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
courses:cs335:spring2013:course_scheduler:requirements [2013/04/26 03:06] marmorsteinrcourses:cs335:spring2013:course_scheduler:requirements [2013/05/02 18:19] (current) – [What a User Sees] marmorsteinr
Line 9: Line 9:
 The user selects courses from a list of all possible courses to add to their preferred courses list.  This preferred courses list is then stored and presented on the following page.   The user selects courses from a list of all possible courses to add to their preferred courses list.  This preferred courses list is then stored and presented on the following page.  
  
-Depending on later design considerations,  the user may also be able to select departments (ie CSCI, PSYC) and/or distribution requirements (ie LIT) to add a premade group of all courses in that category to the preferred courses list.  This is done the same way as adding a course to the list.  The group would then act in the same manner as a user-created group.+
 ====Prerequisites==== ====Prerequisites====
  
Line 15: Line 15:
 ====What a User Sees==== ====What a User Sees====
  
-The user sees a list of all possible courses/groups on the page.  They are asked to select all of their preferred courses and/or groups from which they wish to find a compatible course.  There is some method for the user to select courses.  For example, there may be checkboxes or a selection list.  +The user sees a list of all possible courses on the page.  They are asked to select all of their preferred courses from which they wish to find a compatible schedule.  There is some method for the user to select courses.  For example, there may be checkboxes or a selection list.  
  
-There is a Clear button to deselect all selected courses/groups.  There is also a Submit button to store a list of all selected courses/groups and continue to the next page.  +There is a Clear button to deselect all selected courses.  There is also a Submit button to store a list of all selected courses and continue to the next page.  
 ====What a User Does==== ====What a User Does====
  
-The user scrolls through the list of courses and groups, selecting their preferred choices.  If they decide to reset the list, they press the Clear button and all courses/groups become deselected.  If they decide they have finished selecting their preferred choices, they press the Submit button.+The user scrolls through the list of courses, selecting their preferred choices.  If they decide to reset the list, they press the Clear button and all courses become deselected.  If they decide they have finished selecting their preferred choices, they press the Submit button.
 ====Behavior of the Application/Feature==== ====Behavior of the Application/Feature====
  
Line 34: Line 34:
 This feature is high priority.  It is necessary to have the user create a list of preferred courses that they want to analyze in order to find meaningful information regarding possible schedules for that user. This feature is high priority.  It is necessary to have the user create a list of preferred courses that they want to analyze in order to find meaningful information regarding possible schedules for that user.
  
-It is lesser priority to have premade groups in the list.+
  
 =====Selection/Deselection ===== =====Selection/Deselection =====
Line 48: Line 48:
  
 ====Behavior==== ====Behavior====
-The user clicks on the checkbox located on one of their preferred courses or course group, and that course is designated as selected and displayed on the schedule at the appropriate location for it's times, as a colored box with text indicating the course title. If the course is already selected, it is removed from the schedule.  +The user clicks on the checkbox located on one of their preferred courses, and that course is designated as selected and displayed on the schedule at the appropriate location for it's times, as a colored box with text indicating the course title. If the course is already selected, it is removed from the schedule. 
- +
-(Question guys--what do we put on the schedule display if they select a group? Do we just pick a course from the group, or do we display the times of all the courses as possibilities with dashed lines, or something?)+
  
 Updates are sent to the conflict detector accordingly, and a warning will appear beneath the schedule if a conflict is generated, and the conflicting schedule items will appear in a scary red color. Updates are sent to the conflict detector accordingly, and a warning will appear beneath the schedule if a conflict is generated, and the conflicting schedule items will appear in a scary red color.
Line 60: Line 58:
 =====Group Courses/Sections===== =====Group Courses/Sections=====
 ==== Feature ==== ==== Feature ====
-Group alternate course/section choices as one object for analysing possible schedules.+ 
 +Groups allow the user to indicate collections of multiple courses which are to some degree substitutable. Instead of the user manually searching for a set of compatible courses, the scheduler automatically searches through every possible schedule which includes one course from each selected group and each selected individual course. When there are multiple compatible schedules, the scheduler picks one based on the user-specified order of the groups, and then the order of courses within the groups. 
 + 
  
 ==== Prerequisites ==== ==== Prerequisites ====
Line 67: Line 68:
 ==== What a User Sees ==== ==== What a User Sees ====
  
-Describe what a user sees: what are the input fields, what are the results displayed, what order are they in+All courses and groups are listed vertically in a column.  
  
 +For courses:
 +Both dept/number and course name are immediately visible with a checkbox to the left.  Clicking on the name toggles the professor's name and course time in smaller font under the course title.
 +
 +For groups:
 +Group name is shown:   A toggle arrow to the left of the group label may be clicked to show a vertical list of courses/sections in the group indented to the right;  each course has a checkbox next to it and may be interacted with in the same manner as listed above.  A checkbox lies to the left of the toggle arrow.  (Idea:  group names could have gray background to differentiate from course names).
 ==== What a User Does ==== ==== What a User Does ====
  
-Describe the options for what a user can do.  Be specific.  (May be tied with fields in earlier section.)+To combine two courses into group: 
 +The user clicks on one course, and drags it over the other course's name.  When the mouse is released, the dragged course disappears and the other course turns into the new group.
  
-What is required of the user?  Any input that needs to validated?  Any constraints?  (Perhaps a user must fill in two fields or only one of two fields.)+To add a course to a group: 
 +The user clicks on the course and drags it over the group's name.  Upon release, the course's name is added to the group.
  
 +To combine two groups:
 +The user clicks and drags a group's name onto another group.  Upon release, the new group is created by moving all courses in the dragged group into the dragged-onto group.
 +
 +To remove a course from a group:
 +Not yet decided.  There may either be an x to the right of the course name which can be clicked, upon which the course is removed from the group and added to the bottom of the list, or the user right-clicks on the course name and selects "Remove from Group."
 +(Note:  If there are only two courses, the last course becomes a separate course as well.)
 ==== Behavior of the Application/Feature ==== ==== Behavior of the Application/Feature ====
  
-When a user enters input or clicks a buttonwhat are the possible outcomes?+When a user clicks and drags course or group onto another course or group, a new group containing all relevant courses is made.  If the user removes a course from a group, the course no longer appears on the group list and is instead in the main preferred course list.  If the user tries to click and drag a course or group onto an erroneous area (no group or course)nothing happens and the course/group goes back to its original location. 
 +==== Example Use Cases ====
  
-Examplesif user enters erroneous input, what happens?  if user does one of three options, what happens in each of those cases?+The user may:
  
-==== Example Use Cases ====+    *Combine two courses into a group 
 +    *Add a course or group to another group 
 +    *Remove a course from a group 
 +via the processes described above (in What Does the User Do). 
 +==== Priority ====
  
-Describe some typical situations of what a user can/will do.+Priority:  Medium-Low.  Despite potentially interesting uses, it is not necessary for the overall project.
  
-May want to put this earlier, but may not make sense unless you explain the other stuff.+===== Preselected Groups =====
  
-==== Priority ====+==== Feature ==== 
 +The user may also be able to select departments (ie CSCI, PSYC) and/or distribution requirements (ie LIT) to add a premade //group// of all courses in that category to the preferred courses list.  This is done the same way as adding a course to the list.  The group would then act in the same manner as a //user-created group//.
  
-Relative priority of feature (high, medium, low)+====Prerequisites==== 
 +Having grouped courses implemented.
  
 +Preferred courses page.
 +
 +====What the User sees====
 +On the preferred courses page, the user sees two tabs at the top. One (selected by default) says "courses" the other says "groups". If the "groups" is selected, instead of the default list of courses, they see a list of preselected groups that they can choose from.
 +
 +====What the user does====
 +Click the checkboxes next to the group, and then submit when they are finished.
 +
 +====Example use cases====
 +I need to fulfill my Humanities FDR. So I click the tab, see the "HU" group, click the checkbox next to it, get very excited, and then click the submit button.
 +
 +====Priority====
 +Low
  
 ===== Detect Warnings ===== ===== Detect Warnings =====
courses/cs335/spring2013/course_scheduler/requirements.1366945593.txt.gz · Last modified: 2013/04/26 03:06 by marmorsteinr
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0