It's All About the Tasks . . .
How do you handle the specification, acceptance and measurement of the web apps you build?
How do you handle the specification, acceptance and measurement of the web apps you build?
The line in the review that resonated most for me?
"Whenever the spec describes the product in terms of adjectives (“it will be extremely cool”) rather than specifics (“it will have brushed-aluminum title bars and all the icons will be reflected a little bit, as if placed on a grand piano”) you know you’re in trouble."
I think I’m going to add that to my training materials for our design partners, because whenever a member of the client team comes into a project meeting and tries to “design by adjective”, I know it is probably the beginning of the end of the project.
Design by Adjective is terminal to projects (whether graphics or programming) only when the client is unwilling to take the time to transform the generalized goals into specific requirements. There is nothing wrong with wanting a project to be "cool", "cutting edge" (or even "slow" and "difficult to use" - whatever floats your boat) as an initial statement of intent as long as the client is willing to work with the designer or architect to transform the initial intention into a set of measurable design goals.
A good rule of thumb is that you shouldn’t have anything in your project specification that you don’t have an agreed acceptance test for (what IS easy to use – how do you agree if an application is easy to use?!). If a client wants to include “design guidelines” to support a detailed set of functional requirements as guideposts (e.g. we’d rather make it quick to learn than easy to customize) that is fine, but make sure any contract clearly states that the guidelines are not deliverables or with a certain subset of clients you’re going to have a long, hard acceptance phase . . . “But my DOG couldn’t use it. Do you know how big a potential audience the dog market is? Seriously underserved too . . .”
Got the concept from a great review by Joel Spolsky. Thanks Joel!
It is optimized for UI heavy applications and we’ve found it to be a simple but lightweight way to go from business objectives through use cases to detailed functional requirements in a meaningful way. Of course, it isn’t a silver bullet and is heavily influenced by everything from use cases to feature driven development, but we’re getting great results with it over at SystemsForge. Check out the article and let me know what you think!