Difference between revisions of "User Stories"

From WeBWorK_wiki
Jump to navigation Jump to search
(admin: backup & monitor; instr: improve use of OPL; student: help about desired characteristics of an answer)
Line 20: Line 20:
 
** View assignments from different courses on same page
 
** View assignments from different courses on same page
 
** Sort assignments (e.g. by Course, by type, by completion or assigned date)
 
** Sort assignments (e.g. by Course, by type, by completion or assigned date)
  +
** view completion status of each problem in an assignment while working on one of its problems
  +
** get context-sensitive help
  +
*** info about type of answer: numeric (real, rational), functional expression, equation
  +
*** info about necessary accuracy
  +
**** programed or spontaneuous popup
  +
**** decimal places vs significant figures
  +
**** absolute or relative tolerance
   
 
* User Management
 
* User Management
Line 107: Line 114:
 
** Upload/Download one or more problems
 
** Upload/Download one or more problems
 
** View available problems
 
** View available problems
  +
*** identify/exclude problems already used
  +
**** in this assignment
  +
**** in any assignment for this course
  +
**** for a recycled course: identify when used in past
 
** Search for problems
 
** Search for problems
 
*** By topic
 
*** By topic
  +
**** DBcourse, DBchapter, DBsection
  +
**** keyword(s)
  +
**** text--author (editi on), chapter, section
  +
*** By type (multiple choice, numerical, symbolic)
  +
*** by component: has solution, uses MathObjects,
 
*** By author or directory
 
*** By author or directory
 
*** By institution
 
*** By institution
*** By type (multiple choice, numerical, symbolic)
 
  +
*** enable instructor preferences for starting new search
 
** Tag problems with relevant metadata
 
** Tag problems with relevant metadata
 
** View a problem with a given seed (view a new version of a problem)
 
** View a problem with a given seed (view a new version of a problem)
Line 117: Line 133:
 
** Package a problem with all of its auxiliary files so that it can be shipped to a colleague (probably as part of a problem set)
 
** Package a problem with all of its auxiliary files so that it can be shipped to a colleague (probably as part of a problem set)
 
** Report a bug in a problem
 
** Report a bug in a problem
  +
** report a common confusion with a problem
   
 
* Course management
 
* Course management
 
** Archive a copy of the course for safety backup or for use next semester.
 
** Archive a copy of the course for safety backup or for use next semester.
  +
** reuse a course
  +
*** revise dates: open, close, show ans & sol
  +
*** treat collection of problems used previously as a virtual library
   
 
* Analytics
 
* Analytics
Line 135: Line 155:
 
** Add / Remove / Edit users within a course
 
** Add / Remove / Edit users within a course
 
* Use WeBWorK function calls in external scripts
 
* Use WeBWorK function calls in external scripts
  +
* System (with aid from IT expert)
  +
** backup crucial data
  +
** monitor important logfiles
  +
** identify which tasks to handle via cron, which by-hand

Revision as of 07:07, 2 June 2013

This is a list of basic tasks desired by WeBWorK users (Students, instructors, administrators, etc.), as motivated by [1]. The intention is for this document to motivate back-end and API development.

Note that this is not intended to be a list of current functionality. It is a list of tasks that users desire to be able to do in the system.

Please feel free to add any missing tasks to this list.

Students

  • Problem/Problem Sets
    • View the list of my problem sets
    • View the list of problems in a problem set
    • Print my assignment
    • View a problem
    • Attempt a problem (enter answers and get feedback)
    • View my grades on the problems in a problem set
    • View my overall grades for all problem sets
    • View my performance compared to students in this class or this group from the current course or past classes
    • Get a new version of a problem
    • View my past answers to a problem
    • 'Save Progress' button for use with whiteboard or calculator resources
    • View assignments from different courses on same page
    • Sort assignments (e.g. by Course, by type, by completion or assigned date)
    • view completion status of each problem in an assignment while working on one of its problems
    • get context-sensitive help
      • info about type of answer: numeric (real, rational), functional expression, equation
      • info about necessary accuracy
        • programed or spontaneuous popup
        • decimal places vs significant figures
        • absolute or relative tolerance
  • User Management
    • Change my email address
    • Change my password
  • Communication
    • Email the instructor

Instructors

  • User management
    • Add a user (or a few users) manually
    • Import users from a file
    • Update a student's information (login, email, name, id number, password, etc.)
      • Student status that includes "enrolled," but "disallow logins" (e.g., for old semesters). This might be a characteristic of a course rather than a student.
    • Act as a student (see what an individual student sees)
    • Delete a student
    • List all students
    • List all students in a given section / recitation
    • Assign problem sets to one or more users
    • View grades / progress for one or more users
    • View a student's past answers on a problem
    • Export list of users
    • Create a group of students by hand or through rules. Default group is one class.
    • Edit a characteristic or characteristics of many students (e.g., set student status to inactive/drop)
  • Communication
    • Email a student / group of students / all students
  • Problem Sets
    • Create a new problem set
    • Change the details of a problem set
      • Set Name
      • Open, due, answer dates
      • Give an individual student, or group of students an extension of the due date.
      • Re-open a closed homework set for all students and set a new global due date. Should this override all local due dates (i.e., homework extensions given to individuals)
        • Suggested solution: When resetting a global due date a pop-up window warns if there are any individual overrides. The instructor has a chance to adjust these individual extensions or not as the situation warrants.
      • Whether to show hints / solutions, and when(should this be decided by the problem (e.g. PG code) or should it be set by the environment (webwork2)? Some combination?
      • Edit the set header file (there should be only one set header file for both html and tex)
      • Other set-specific parameters
    • Specify different types of assignments, with separate grading and assignment rules:
      • Normal Homework Assignment (assigned to everyone in a (class or group), scored as normal homework)
      • Prep Assignment (assigned to specific groups, not part of normal homework)
      • Follow-up Prep Assignment (opened upon completion of Prep Assignment)
      • In-Class Problems (paired to in-class lecture, option for everyone to have the same seed. Different than normal homework.)
      • In-Class Group / Peer Problems (specific problem assigned to specific group for during class.)
      • Gateway Quiz problem set (how is this defined?)
        • Timed Test/Quiz problem sets
        • Userset Versioning of Test/Quiz problem sets
        • Test/Quiz problem sets composed of groups of problems (e.g., sections, with characteristics---e.g., problem order---that can be set by section, but the sections appearing in a specified order)
        • Allow restriction of student access to scores and previously submitted work
      • In-Class Quiz or In-Class exam set (scores distinguished differently from normal homework assignments)
      • Placement Testing Mechanism (e.g. student registration, reporting of scores and post-quiz message)
      • Master Type Sets (future problems or groups of problems determined by a ruleset that uses results on previous problems or groups of problems)---this should be able to play with testing and homework assignment types
    • Add problems / problem pools to a problem set
    • Change settings for an individual problem within a problem set
      • Number of Attempts
      • Value
      • When to show hints (if available)
    • Assign problem sets to one or more users (possibly based on user criteria such as section / recitation)
    • Show or hide problem set to students. (visible/hidden)
    • View grades / progress for one or more problem sets
    • Export grades for one or more problem sets
    • Set whether a problem / problem set should be reseeded after a certain number of attempts
    • Import / Export homework sets
      • Export a problem set with all of its auxiliary files and transmit it to a colleague.
    • Regrade a problem within a problem set after modification
    • Set default values for settings to apply to all newly created homework sets
    • Assign problem sets to students in specified group
    • Turn on / off universal resources for students:
      • R
      • Sage
      • whiteboard
      • graphing calculator (especially with whiteboard)
      • geometry software (geogebra, jsxgraph)
      • simple calculator
  • Problem Pools
    • Create a problem pool
    • Add / remove problems from a problem pool
  • Problems
    • Edit a problem
    • Create a new problem
    • Copy a problem
    • Upload/Download one or more problems
    • View available problems
      • identify/exclude problems already used
        • in this assignment
        • in any assignment for this course
        • for a recycled course: identify when used in past
    • Search for problems
      • By topic
        • DBcourse, DBchapter, DBsection
        • keyword(s)
        • text--author (editi on), chapter, section
      • By type (multiple choice, numerical, symbolic)
      • by component: has solution, uses MathObjects,
      • By author or directory
      • By institution
      • enable instructor preferences for starting new search
    • Tag problems with relevant metadata
    • View a problem with a given seed (view a new version of a problem)
    • Add a problem to a problem set
    • Package a problem with all of its auxiliary files so that it can be shipped to a colleague (probably as part of a problem set)
    • Report a bug in a problem
    • report a common confusion with a problem
  • Course management
    • Archive a copy of the course for safety backup or for use next semester.
    • reuse a course
      • revise dates: open, close, show ans & sol
      • treat collection of problems used previously as a virtual library
  • Analytics
    • Store student performance for non-webwork assessments (e.g. paper/pencil tests, quizzes, etc.)
    • Provide statistics and performance by students on assignments for specified group(s) and specified course(s)

Administrators

  • Courses
    • Create a course
    • Change the name of a course
    • Make a course available/unavailable to students
    • Copy content (users, sets, problems) from one course to another
    • Back up a course / courses
    • Restore a course from backup
    • Add / Remove / Edit users within a course
  • Use WeBWorK function calls in external scripts
  • System (with aid from IT expert)
    • backup crucial data
    • monitor important logfiles
    • identify which tasks to handle via cron, which by-hand