We have 4487 guests and 1 member online

Video Spotlight

Home > Blogs > Featured Blogs > Plan and Deliver > Feature-Building Workshop

Feature-Building Workshop

Written by Peter Schuh   
Monday, 01 September 2008 12:53

“Where do user stories come from?”

This is a question that I hear constantly from people new to agile development. Lots of places, is the stock answer. User stories — or features — really can come from everywhere, as anyone on the team may have a good idea and propose it. Another common answer to this question is the Story-Writing Workshop, which is a good technique for quickly collecting a diverse set of stories from many people. But when the team’s customer already has a decent idea of what he or she wants built, and no user stories have yet been collected, the Feature-Building Workshop becomes the sharpest tool in the shed.

This is also a great Iteration Zero activity.

Participants

The Feature-Building Workshop can be as formal or informal as necessary and can pull in a variety of different participants. The usual suspects are:

  • The project manager (who is the workshop facilitator)
  • The team customer (or product owner, or stakeholder, or domain expert, or whomever is the right person to identify a preliminary feature set)
  • The tech lead (or a member of the delivery team most fluent in the domain area under discussion)

I try to keep the number of participants down to three for this particular activity. It really is very focused and too many participants can cause side conversations, unnecessary tangents, crackberry intrusions, and other distractions.

Input and Output

Typically, you use this technique to quickly define features for a project or initiative — for example, for a new application or significant updates to an existing application. The participants must have a good idea of what the application is meant to do or the problems it is meant to solve.

The result of this exercise is a map of features with dependencies that may be ready for estimation and prioritization. While still on the table or wall the map will look something like this:

Feature-Building Workshop

These features may be kept on index cars, stacked, sorted, and set back in place.  They can also be entered into a project management system or a simple spreadsheet.

Activity

This workshop can be done on a table with index cards or a wall with post-it notes. I like the table better, because you can move the cards around faster and it is easier for three people to gather around, but either medium works just fine.

The activity takes only five simple steps:

  1. Ask the team customer to identify the first independent feature — that is, a feature that may be built without any dependencies on any other features that may be discussed during the workshop. Write the name of this feature on an index card and set the card on the table. *Log in* may be a good first feature.
  2. All participants should consider whether this feature really can be built independent of any other features. If earlier features are identified they should be written on index cards and set on the table below the original feature.
  3. Continue adding features, either building on the existing features or adding one with no dependencies to the bottom tier.
  4. Vet the stories as the meeting progresses. Are the dependencies lined up correctly? Could features be merged or split to make the entire structure clearer?
  5. Write an ID for each feature on the left-hand corner of the index card. Write the ID’s of dependent features (other features upon which that feature depends) on the right corner.

That’s all you have to do. And you get a surprisingly useful set of initial features with which to begin estimation and planning.

Feature-Building Workshop
Posted: 2008-09-01 20:53:08

Read Full Article

Comments (0)Add Comment


Write comment

You must be logged in to post a comment. Please register if you do not have an account yet.

busy
Last Updated on Monday, 02 February 2009 21:43
 

Agile Marketplace - Announcements and Special Offers

Webcast:  Moving Build and Code Quality Upstream
This interactive panel discussion moderated by Bob Aiello, Editor-in-Chief fo the CM Journal brings industry experts Anders Wallgren, CTO of Electric Cloud and Gwyn Fisher, CTO of Klocwork together for a candid discussion of the cost savings, productivity and quality benefits that can be achieved by stabilizing builds and code quality as early in the development cycle as possible.
Register Now!

Collabnet -TeamForge 5.3
CollabNet TeamForge 5.3 includes Dynamic Planning—providing flexibility to model release scope and timeline in a single view. Now, you can easily manipulate/adjust release data.
Download Your Free Trial

Requirements-based testing (RBT) can help to ensure comprehensive test coverage, reducing the risk of failure and improving software quality. This white paper details how application lifecycle management can be used to more effectively implement RBT processes, offering greater collaboration, traceability and control.can help you increase efficiency, reduce project risk, and improve overall software quality. Learn how MKS Integrity for application lifecycle management enables RBT, delivering full lifecycle traceability to help ensure that project requirements have complete test planning and execution coverage.
Download the Requirements-Based Testing whitepaper

PureCM –SCM for Agile Teams
PureCM helps you to manage development in short iterations: keeping track of changes, supporting automated builds and preserving frequent snapshots of your projects.
Get the free trial now