Skip to end of metadata
Go to start of metadata

PLEASE NOTE: THIS IS A PUBLIC SITE.

In an effort to ensure access to UMassOnline's community of users as well as others who might provide insight as we undertake the LPR, all content, comments and attachments are accessible by the public.

Introduction to Storytelling: Use Cases and User Stories

Storytelling, broadly, is an approach to defining business and functional requirements, where actual end-users of a service or system describe how they currently, or would like to work.

Indeed UMassOnline's educational partners recognize the value, and recommend the practice, of use cases in successful transition between Learning Management Systems. Blackboard, for example, utilizes use cases to understand how institutions can benefit from technology: when assessing content management systems use cases highlight how student achievements can be demonstrated through an e-Portfolio or how libraries can utilize e-Reserves [1]. Blackboard even includes use cases in training sessions focusing on technology migration and adoption, offering, "Define Domain capabilities; Identify an institutional use case and list related roles and responsibilities;" "Identify Organization use cases" [2]. In fact, as part of Blackboard's own adoption of Agile Methods, as described at BbWorld2007, functional requirements are developed through one or more use cases or "user stories” for each business priority [3].

In Oracle's adoption of Agile Methods they state, "one of the most broadly applicable techniques introduced by the agile processes is to express product requirements in the form of user stories. Each user story has various fields including an “actor”, a “goal” or task that they need to perform, an explanation of “why” it is needed and the associated value, and a corresponding “priority” [4]. Following up with, "This [user stories] stands in sharp contrast to the previous approach, in which users stated not only what functionality they wanted, but also how the functionality would be implemented. The agile approach removes preconceptions from the design process and allows the capabilities of the components to be demonstrated [5].

This is our goal here are UMassOnline through the LPR, to identify the features of the next-generation learning platform by collecting actual examples of how teaching and learning is occurring online now and in the future, through use cases and in particular, user stories. While user stories provide narrative descriptions of the resources and transactions that users undergo to achieve some business goal, user stories provide specific information that is testable.

Story Telling Techniques

User Stories

Writing User Stories

IBM's Scott Ambler, in Introduction to User Stories offers, "A user story is a very high-level definition of a requirement, containing just enough information so that the developers can produce a reasonable estimate of the effort to implement it."

David Churchville, CEO of ExtremePlanner Software offers a good framework for writing users stories:

  1. Make them customer-focused: have the customer, not a technologist, write them.
  2. Make them elevator-friendly: a good story should pass the elevator test, it should be possible to explain them in the time span of an elevator ride.
  3. Make them the right size: they should focus on one task.
  4. Make them testable: [this one is key] "An untestable story might be something like 'Make the order screen easy to use.'" A better user story would be, "As a outside sales rep, I want to have all all my tools available in two clicks, so I can navigate through the system quickly."

Advantages of User Stories

Mike Cohn, author of "User Stories Applied: For Agile Software Development explains the advantages of using stories here and here, but briefly:

  • user stories are first person and thus represent actual activities and needs (are not speculative, conceptual or theoretical) ;
  • user stories are precise, but not detailed, and enable the achievement of goals rather define features (they do not describe problems, they describe practices) ;
  • user stories help define value for each requirement, thus the system and ultimately the operation (and organization), and;
  • user stories provide consistency;

Examples:

Traditional Functional Requirement within RFI/RFP's

User Story Submitted in RFI/RFP

Acceptance Test Script provided by RFI/RFP Respondent

Create threaded discussion forums accessible to the entire user community
Create threaded discussion forums accessible to the class
Create threaded discussion forums accessible to specific groups of people
Create nested discussion forums
Link to/from discussion forums from within course materials (e.g. link from assignment description to an assignment-specific discussion forum)
Link between discussion forums
Search, sort and manage messages in discussion forums
Create moderated discussion groups
Create discussion forums that allow anonymous postings
Compile a selection of messages for printing, saving, archiving
Ability to restrict attachments in specific discussion forums
Ability to restrict/limit file size of attachments in specific discussion forums
Ability to rate discussion postings
Ability for users to create their own identities (e.g. create and upload an avatar)
Grading feature tied into the gradebook/classlist
Hide private discussion forums from those who are not members
Flexible access permissions: ability to restrict or allow access to discussion forums based on individual identification, group membership, user-defined criteria, completion of an activity (e.g. submission of assignments), performance on an activity (e.g. achieving 70% on a quiz) and/or date/time
Flexible privilege permissions: ability to allow different individuals or groups different abilities within specific discussion forums: e.g. for a specific forum: allow one group to view, read, post, reply; allow another group to only view and read
Instructor can selectively assign specific users or groups (e.g. Instructional Assistants, TAs, students) the ability to create and/or manage discussion forums as above

As a faculty member,
I want to create small groups of students,
so that I can allow peer to peer assessments.

  1. Create Groups
    • Login into Bb Vista with your username and password
    • Select your campus from the list of institutions
    • Select your active section.
    • Click on the TEACH tab.
    • Click on the GROUP MANAGER button from the left side of the screen.
    • Click on the CREATE GROUPS button.
    • Select one of the three options to create a group:
      • Create custom group (Create a single group and choose the members you want to add to it.)
      • Create multiple groups (Create empty groups to which you can add members later or create groups in
      • Create groups with sign-up sheets (Allow Students to select the groups they want to join by using sign-up sheets.)
    • Type in Group Name: (required)
    • Add Members to Group
    • Click on SAVE/or Save and Create Another Group
  2. Create Discussions
    • Login into Bb Vista with your username and password
    • Select your campus from the list of institutions
    • Select your active section.
    • Click on the TEACH tab.
    • Click on the DISCUSSIONS button from the left side of the screen.
    • Click on the CREATE TOPIC button.
    • Select one of the three options to create a discussion:
      • Threaded topic. (Create a threaded topic for a more traditional online discussion. Users post and reply to messages. Replies that are associated with the same post are grouped together, creating message threads that can be expanded and collapsed.)
      • Blog topic. (Create a collaborative blog (weblog) space by allowing participants to post a chronological series of entries on a particular topic. Participants can then add comments to any blog entry.)
      • Journal topic. (Create a journal topic to give Students a place for their own writing. The journals can be kept private between the Student and the Section Instructor or shared with the class.)
    • Click on NEXT.
    • Click on PEER REVIEW to expand and see more options.
    • Select one of the three options for peer review:
      • Do not enable peer review in this topic
      • Allow Students to review messages using a simple rating scale (all messages in topic may be reviewed)
      • Allow Students to review messages using a grading form (Only the first message in each thread may be reviewed)
    • Click on SAVE.
  3. Create Selective Release
    • Login into Bb Vista with your username and password
    • Select your campus from the list of institutions
    • Select your active section.
    • Click on the BUILD tab.
    • Create Discussion (see above.)
    • Add Content Link > Discussion > Select Discussion to be displayed.
    • Click on TEACH tab.
    • Click on the SELECTIVE RELEASE button from the left side of the screen.
    • Click on the SET RELEASE CRITERIA button.
    • Click on the ADD GROUP CRITERIA button.
    • Check the group or groups that match your criteria.
    • Click on SAVE.
    • Click on SAVE.

Further Examples

A set of examples were created from the original survey developed by the LPR Committee Members. This survey was converted to user stories to, first, show some actual examples of user stories and secondly, to show how a campus could use a more familiar form (surveys) to develop user stories. While they might provide some actual value as a user story that expresses a campus' needs, they are not actual user stories developed by the stakeholders mentioned (although they were derived from survey questions developed by actual stakeholders), nor are they at all comprehensive: an individual campus may very well have unique stakeholders and/or activities not represented in these examples.

References

  1. Shorten the Ramp. Enhance the Result. Blackboard Content Management System.
  2. From the Blackboard Learning System to the Blackboard Academic Suite Onsite Blackboard Training
  3. Product Development Best Practices: An Agile, User-centric Software Development Lifecycle
  4. Agile & Scrum: What are these methodologies and how will they impact QA/testing roles?
  5. Building Agile Applications using Fusion Development and Oracle Enterprise Architecture Principles
  6. Mike Cohn's "Succeeding With Agile: A Guide To Transitioning" from Agile Alliance 2007.
  7. IBM's Capturing business requirements using use cases
  8. IBM's Validated requirements from business use cases and the Rational Unified Process

PLEASE NOTE: THIS IS A PUBLIC SITE.

In an effort to ensure access to UMassOnline's community of users as well as others who might provide insight as we undertake the LPR, all content, comments and attachments are accessible by the public.