Challenging Assumptions
Great post from Kathy Sierra about challenging assumptions. According to Kathy, the thing about assumptions is they become so ingrained that people don't even know they are dealing with assumptions - assumptions have become fact.
Assumptions are a real problem when it comes to building software, because they can lead to things going wrong and as a result both money and time get wasted. Here's a brief list of some common assumptions that can be held by those on the business and IT side of the house when it comes to software projects:
- Everyone shares the same goals
- That IT has the necessary skills and resources to complete the task competently
- The engineering team has fully and clearly understood what it is they've been asked to deliver
- That business has been made aware of potential problems and limitations with the project
Kathy lists four ways to challenge assumptions. We'd like to add a fifth: real time, real world metrics taken from the project. These metrics give business and IT the tools and the insight needed to overturn each of the assumptions listed above. Metrics taken from the tools your developers are using on a project provide the indisputable facts needed before the project starts and during the build phase to ensure the software is delivered on time, on budget and as specified by the business.
Breaking it down:
Everyone shares the same goals: by measuring what people are doing, you can tell what's being built and where there is a wrong emphasis - for example if there's not enough testing, when it's been specified the new application must be tough enough and scalable enough never to crash.
That IT has the necessary skills and resources to complete the task competently: metrics let you see who needs training and where critical skills gaps exist.
The engineering team has fully and clearly understood what it is they've been asked to deliver: by examining metrics you can see what's going wrong from an early stage, and head off problems so you don't have to break down portions of the new application and start over again.
That business has been made aware of potential problems and limitations: metrics presented through a business-like interface enable non-IT types to see where work is hitting problems, by examining things like the amount of time spent hammering out one particular problem or a bug.
It's time to change your world using metrics.
Previous Post:
Software: Art, Craft, or Business?

