Wednesday, October 17, 2007

A blog only a software shop could love

Here's perhaps the most basic goal in designing software: nailing down ALL the requirements. If this is done right the first time, writing the SW is cake. In fact, it could probably be automated. That's the concept behind, for example UML.

Here's the rub: no person or organization ever thinks of (or has time to document) ALL the requirements. We're just not prescient and omniscient enough.

Here's one stab at a solution: creating long lists of "Use Cases" and then break these down into individual business requirements, then translate these into functional specifications, which are re-translated into technical specs, which are then coded.

Problem is, use cases are the business equivalent of a Roomba, wandering randomly around the room with no aim or accountability.

No comments: