New Story Splitting Resource

January 27, 2012

More than two years after I originally published it, “Patterns for Splitting User Stories” remains one of the most visited posts on my blog. Splitting user stories continues to be one of the areas where the teams I work with most often need coaching.

To support the teams I coach, I’ve created a flow chart that goes through the questions I’ll ask when I’m helping a team split their stories. [click to continue…]

{ 0 comments }

Atul Gawande is a surgeon and author who has written some excellent books and New Yorker articles reflecting on the state of modern medicine. Recently, his writing has gone beyond medicine in interesting ways. As he looks for lessons for medicine from other disciplines, he ends up with things to teach both medical professionals and skilled knowledge workers more generally. His book The Checklist Manifesto manages to be a riveting 224 pages on what ought to be one of the least interesting topics possible: the checklist.

So I was intrigued to see a link to a New Yorker article from Dr. Gawande on my own specialty, coaching. It’s as good as I might have hoped. [click to continue…]

{ 0 comments }

Cucumber Tip: IRB From Inside a Step Definition

December 7, 2011

Most Ruby programmers know about Ruby’s interactive console, IRB. (If you don’t, stop right here, open up a command window and run irb. Type some Ruby code. See how it returns the result of each line right away.) IRB is great for poking around with unfamiliar libraries. Suppose you’re using Capybara with Cucumber for the [...]

Read the full article →

Building a Useful Task Board

November 21, 2011

The task board is a simple, yet powerful, tool for Scrum teams. As a coach, I can tell a lot about a team just by looking at their task board in the middle of a sprint. If your Scrum team is in the same location, I can’t think of a good reason why you wouldn’t [...]

Read the full article →

Cucumber Tip: Key-Value Tables

October 27, 2011

You may not realize this: Tables in Cucumber steps don’t have to have a header row. Sometimes it can work really well to use a headerless table of key-value pairs. Let’s look at an example. Suppose we have a scenario that fills out an advanced search form to search for medical providers matching certain criteria. [...]

Read the full article →

The Future of Cucumber on .NET

October 21, 2011

Beginning just over two years ago, I worked with some great developers to create Cuke4Nuke as a way to bring Cucumber to .NET. Shortly after the first releases of Cuke4Nuke, TechTalk released SpecFlow, a native .NET tool inspired by Cucumber. As a pure .NET solution without Ruby dependencies, SpecFlow seemed to be easier for Microsoft [...]

Read the full article →

Why Longer Sprints Probably Won’t Help

September 2, 2011

As a coach, I’m frequently told, “Our sprint length is too short. We want to change it from X to Y weeks.” The time box—the sprint in Scrum, the iteration in XP and other iterative methods—is one of the most powerful tools in agile software development for revealing problems in a team or organization. Notice [...]

Read the full article →

Cucumber Regular Expressions Cheat Sheet

August 23, 2011

Regular expressions are a big part of what makes Cucumber tests both expressive in English and DRY on the automation side. To make the most of that power, you have to know something about regular expressions. I’ve created a cheat sheet for my Cucumber class workbook based on last year’s “Just Enough Regular Expressions for [...]

Read the full article →

Getting Started with Ruby, Cucumber, and Capybara on Windows

August 20, 2011

The Ruby version of Cucumber isn’t just for Rails developers. If you have a .NET or Java web or service app, Ruby can be a great language for testing. With libraries like Capybara for driving web apps and JSON, RestClient, SOAP, and others for interacting with service apps, you’ll find testing in Ruby requires much [...]

Read the full article →

Another Story Splitting Pattern (Maybe)

May 4, 2011

User stories are typically written using a template like, “As a <role>, I want to <action> so that <value>.” My other story splitting patterns focus on complexity in the action part of the story. But sometimes the functional complexity in a user story is hidden in the role rather than the action. Consider: could you [...]

Read the full article →