Fog Creek Software
Discussion Board

Usability vs. FUnctionality specifications

Your article on software craftsmanship has it backwards, in my opinion, and you do a good job (quite accidentally) of demonstrating one of the things wrong with this industry.

Rather than taking a first pass at the "copy file" spec from the point of view of its functionality, you should have spec'd it from the user's point of view.  You then would have arrived at the features you realized you needed later on--feedback, separate process, handling large files, etc.  The result would be that you would have accurately predicted 90% of the work going into 90% of the features.  The actual process of copying the file would then become a trivial 1% of the work.

So, quite inadvertently, I think your article demonstrates one of the serious problems in our industry.  We're more like a hobbiest in a Home Depot drooling at all the shiny power tools, rather than a craftsman that makes the chair to an exacting level of comfort by measuring the customer's butt.

Marc Clifton
Wednesday, December 3, 2003

On the other hand, developer experience can often identify requirements that anything short of large-scale surveys will miss.

Let's face it, creating a pool of potential users large enough to capture the need for dealing nicely with huge file imports could well bankrupt the company. Yet developer experience suggests (or at least mine does) suggests that examining edge-cases is important. Dealing with them may not be, but examining them is.

I don't know whether I'd have made the same decision as Jo

Ron Porter
Wednesday, December 3, 2003

Odd logic.  Don't come work for me.

The functionalty was already there.  What was described was an improvement.

The new copy works the same way as the old copy from a users point of view.  That's good design.

Few people will notice, but that's the point of craftmanship.  People only complain when the screws don't line up.

Wednesday, December 3, 2003

*  Recent Topics

*  Fog Creek Home