Strategies for Successful Development

Process and technology for small teams building real software

The No-Spec Spec: Fit

Posted by S4SD (Seth Morris) on 2008/09/20

This is part of the series, The No-Spec Spec.

The Fit document is the easiest to create, the hardest to describe, and the most pervasively important piece in the No-Spec Spec. The project’s Fit tells you why you’re doing the project at all.

This is a job for the highest level authorizing the project, or at least the highest level you can get. On a large initiative this would be the executive sponsor, although a head PM or someone in Sales could do it. On an internal feature or a drill-down piece of a larger project it could be a PM or a member of the development organization.

It should be short. Half a page is just fine; more than a page suggests that someone is going off into inappropriate detail.

What goes in the Fit

Answer these questions:

  • How is this project related to previous projects, strategically?
  • What business or organizational purpose does the project meet?
  • What future plans will this project support?

If this is a large product initiative, the Fit should tie the project to the company’s goals, strategy, and business purpose. If you’re on an internal project, the Fit should describe how the organization’s mission within the company relates to the project. This is the place to reiterate that internal tools are never the product; even for an internal tools project, the Fit should reach all the way to the organization and company’s purpose.

Put another way, Fit is about what is larger than the project and about how the project fits with that. This is an exercise in "chunking up" and seeing the larger environment that contains the project.

A project’s Fit shouldn’t change. If it does, something has fundamentally altered in your whole purpose. Reevaluating the project and its priority becomes the #1 job.

Using the Fit

The Fit is the ultimate criteria: it is the background which allows the project and product to exist. Pin it up somewhere. Any time someone is off in the weeds, walk them over to the printout and ask them if what they’re doing is described on that paper.

It’s amazing how often looking at the reason for a project reminds people to back off, simplify, and propose features instead of trying to sneak them in.

Example Verbiage

None of these are complete Fit statements, but they give a good idea of the kinds of things that wind up in the Fit document.

A rev of enterprise product:

This product update will meet specific demands from 3 of our high-profile enterprise clients:
     <bullet list of demands and clients>
Meeting these on-schedule will raise our visibility in those companies and help the sales team reach new departments in the companies.
Increasing sales within these companies will raise revenue and increase the value of these clients as references.

A shrink-wrap product rev:

This project will get the product to back-of-the-box feature parity with competitor A, version N.
     <bullet list of feature checklist items>
Other aspects of the project should be listed as well, but not intermingled.

An internal feature from engineering:

This feature will reduce development time and number of bugs on all projects that use this module; it will increase QA and Operation’s visibility into the behavior of the system. Specifically, it will (a) reduce the maintenance time on future products by reducing ramp-up time when a developer has to use this module, (b) increase the granularity of logging, and (c) resolve several long-standing bugs that have hampered new feature implementation.
<List the bugs and what resolving them will do for the team overall>

A drill-down piece of a larger project:

This piece will enable features A and B by servicing requests from several features/modules, returning data they need to do synchronous processing. It will maintain state for several business objects and abstract all data storage details of these objects from its clients.
<List the client modules/objects and the business objects this module owns>

Summary

As you can see, the Fit piece is about something that includes or contains the project. It describes how the project serves the purpose of something larger than itself; it says why the project exists. Absolutely everything on the project should tie back to the Fit.


Listening to: Pink Floyd – The Piper at the Gates of Dawn – Interstellar Overdrive

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: