Finish on Time by Managing Scale


When deciding how a user's task is to be supported in our software, we often look at possible design solutions and select one that's best for the product and the user. As the project deadline approaches, however, we might choose to dismiss some features outright. In this column, Jeff Patton suggests we try keeping more features by adjusting their scale.

"Based on the number of features we've completed over the past couple of iterations, we just don't have enough time to finish all this work," the project manager says nervously to the project sponsor. "Can we talk about what features you'd like to cut?"

The sponsor groans. "Cut more features! We've already been through this. We've cut to the bone already. We absolutely need all the features in this release!"

Does this situation sound familiar? Maybe a little too familiar? The next time you find yourself in a situation where scope cutting seems like the only way to deliver on time, consider looking for opportunities to rescale. What do I mean by rescale?

I often see software requirements conveyed in terms of solutions to problems. By that, I mean a specific bundle of information including user interface design, expected application behavior, some business rules, etc. Together, those things make up the requirements for a feature. But behind that description of the software solution is a person with a problem—an end-user with a task or series of tasks to perform to accomplish some goal.

To illustrate my point, let's take a very simple task having nothing to do with software, like "swing from tree," which may have many possible solutions.

Illustration courtesy of ThoughtWorks

About the author

Jeff Patton's picture Jeff Patton

Jeff Patton leads Agile Product Design, a small consultancy that focuses on creating healthy processes that result in products that customers love. Articles, essays, and blog can be found at Information about public classes, including Certified Scrum Training, can be found at

StickyMinds is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, is the place to go for what is happening in software development and delivery.  Join the conversation now!