User Stories
Jump to navigation
Jump to search
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)
- 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 (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, close, answer dates
- Whether to show hints / solutions, and when
- 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
- Search for problems
- By topic
- By author
- By institution
- By type (multiple choice, numerical, symbolic)
- 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)
- Course management
- Archive a copy of the course for safety backup or for use next semester.
- 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