Successful Incremental Releases

This 3-4 hour tutorial describes a a modeling approach to identifying holistic releases that will benefit users and earn value for business stakeholders. Also discussed are strategies for scaling features appropriately to allow both appropriate release estimation, and on-time delivery of the best possible product.

Successful Incremental Releases 3-4 hour tutorial

One of the benefits of Agile Software Development is “early and continuous delivery of valuable software.” Dividing development work up into small pieces (user stories or backlog items) then building the most valuable parts first sounds like a simple idea, but there’s often a bit more to it. Sometimes it takes a few not-so-valuable parts to allow users to take advantage of the most valuable parts. At times the most valuable parts may show well, but without a sufficient amount of software implemented, users may be unwilling to set aside legacy software or even manual processes to actually put the new software into use and earn the return on investment incremental release should bring.

In this tutorial participants will learn the basics of planning incremental releases that are useful to their users. We’ll discuss strategies for splitting user stories into the small but useful parts that allow releases to contain more user stories. You’ll learn more about the “myth of the finished user story” and why, if you’re not cautious, your stories may inflate while you’re not looking.

OOPSLA 2006

Incremental Releases – Zip File

JPA Incremental Releases – Handouts

JPA Incremental Releases – handout supplement

Other Useful Information

  • HOW YOU SLICE IT, the original Better Software article describing the span planning technique.
  • Task Cards: A Word doc of the cards used in the modeling exercise.
  • Meszaros Storyotypes, a paper by Gerard Meszaros which served as a foundation and the inspiration for the thinning guidelines discussed in this tutorial.

Usage to User Interface

Tutorial: Collaboratively Designing and Testing User Interface From User Stories, User Scenarios, or Use Cases

This 3-4 hour tutorial describes a practical approach to translating the goals users would like to achieve and the tasks they wish to accomplish into user interface designs that effectively support those goals and tasks.

You’ve gathered requirements for your new project as some set of features or user stories that users and stakeholders value most. You’ve prioritized these features and now it’s time for developers to estimate how long it might take to build. They’ve got questions on exactly what the user interface looks like and how it behaves. As a matter of fact, so do you.

You don’t have the luxury of halting everything for a few days or weeks while you locate a specialist to do the user interface design work. You’ve tried to draw a few pictures on the whiteboard, but you’re not confident they really solve the problem. How can you quickly and predictably move from a simple feature request to a user interface you feel confident in?

This tutorial will introduce a practical approach to translating the goals users would like to achieve and the tasks they wish to accomplish into user interface designs that effectively support those goals and tasks.

Participants will learn how a User Centered Design practitioner moves quickly from user task to user interface. Participants will learn through practice by taking a set of features and transforming them into tangible user scenarios, then collaboratively building and testing paper prototypes of their proposed user interface. In addition to paper prototyping skills and basic usability testing skills, participants will learn essential visual design skills that can help improve the appeal of your user interface.

What’s really going on here?

User interface design to many seems somewhat mystical. But, Larry Constantine & Lucy Lockwood’s Usage Centered Design offers a simple approach to move from a narrative of usage to an abstract user interface prototype. We then make that prototype more tangible using approaches described by Carolyn Snyder. Finally paper prototypes are testing using Snyder’s suggested approaches to usability testing of paper prototypes. Garrett’s Elements of User Experience Model frames the discussion so those involved understand the dependency usability has on user goals and tasks.

This work as been presented as a tutorial at a variety of conferences.

Gerard’s Agile-Usability Experience Report

Adding Usability Testing to an Agile Project

In the paper Gerard Meszaros and Janice Aston of Canadian Pacific Railway describe the injection of paper prototyping and lightweight usability testing into their project. Gerard has explained to me that after injecting the practice the amount of rework they normally saw after each release went down to a fraction of what it had been. And, business stakeholders and users are more actively involved and engaged than ever before.

The UCD Perspective Before and After Agile

The UCD Perspective Before and After Agile

In this paper Heather Williams and Andrew Furguson describe performing lightweight usability testing electronically with customers over a long distance. It’s a minor point of a strong paper that gives great tactical advice for UCD practitioners working on Agile projects.

The RITE Method

Using the RITE method to improve products; a definition and a case study

This paper from several folks at Microsoft describes the RITE method – or rapid iterative testing and evaluation method for using usability testing to find tune and improve the design of software. This approach to testing is highly aligned with agile thinking, and is the approach I’m taking in the Use to User Interface course.

Personas, Profiles, Actors, & Roles: Modeling Users to Target Successful Product Design

This 3 hour tutorial simplifies and demystifies commonly used user models such as personas, user profiles, user roles, and actors. You’ll learn how to simply construct each and leverage them to improve your software.

Leveraging what you understand about your application’s users is central to a user centered design approach. User personas have been touted as solution for improving the quality of user experience. But what exactly is a persona? How doe you create one? And, how does a persona differ from other popular approaches to modeling users such as actors, user roles, or user profiles?

In this tutorial you’ll how user models fit into a holistic user centered design process. You’ll learn about various types of user models. Through discussion and practice you’ll learn how to create simple role models, user profiles, and personas. You’ll learn how to leverage these user models to identify valuable features for your product, and overarching characteristics the design of your product must have to be successful for your target users.

This tutorial is fast paced, information dense, and full of collaborative activities to give you practice with the concepts and techniques introduced.

Personas, Profiles, Actors & Roles by Jeff Patton