Senior management prizes one simple attribute: predictability. Whether they communicate this value clearly or not, predictability can be more important to your bosses than cost. Trust emerges from the intuitive belief that things are under control. Things are not under control if delivery cannot be predicted accurately.
Management is trained to deal with problems and make decisions, given accurate information. So it's no wonder that deep frustration results when operating departments (including IT) uncover last-minute inaccuracies, leaving management with no ability to control the outcome. Imagine a manufacturing department that regularly encounters last-minute issues in production rates or quality.
Many IT departments measure status, quality, cost, effort, architectural reuse and a variety of other technical metrics, but most don't measure predictability. They should, however. In fact, IT should adjust some of its key metrics and related behavior to encourage and enhance predictability.
Here are some ways IT can do that:
1. Create a culture of estimating and measuring. Require all IT staff members to estimate the effort needed for all of their activities. Then measure actual results. In my experience, extreme variances will be common and should be discussed. But don't yell at the junior programmer for being 200 percent over his estimate. Instead, use it as a learning experience. Help him understand what went wrong, and coach him to do better next time. Without this learning culture, programmers and project managers are encouraged to "sweep it under the rug," which means that they learn nothing about predictability.
2. Reward openness regarding problems. I have been shocked over and over by programmers who say, "I was afraid to tell you about this problem." It's essential to create project teams that work together to identify and work on outstanding issues, not hide them. Last-minute complications will be reduced, and predictability will improve measurably.
3. Don't authorize long-running projects whose length precludes the ability to predict effort. Don't estimate the effort needed to develop a system when the requirements aren't clear. Effort will be impossible to predict. In these situations, divide the project into phases in which the effort and results are predictable.
4. Don't allow senior management to force you to estimate a project too early. You'll be setting yourself up to fail, and that means your delivery will be unpredictable.
5. Understand that uncertainty is not a failing; it's a nod to reality. Software development is at the intersection of artistic creativity and manufacturing. No two projects are exactly the same, and so there is inherent variability in the levels of effort required. In one recent case, a CIO presented the board with an estimate of 12,462 staff hours to complete the development of the next-generation software system. There was no contingency plan to allow for exigencies and adjustments.
Don't present such plans. They set an expectation for extreme accuracy, which is almost impossible for these kinds of projects. If you can run numerous IT projects simultaneously that are accurate to within 15 percent to 20 percent of the original estimate, you are above average in your predictability.
Predictability is the key emotional factor that builds confidence. If the plumber couldn't tell you how long it would take to replace the sink, you wouldn't hire him. Build and reinforce a culture of specialists whose estimating and predicting skills are continuously improving and being rewarded. Your annual budgets and plans will improve, and management's respect for IT will grow.
Strange is a regional director at Neudesic LLC in Los Angeles. Contact him at firstname.lastname@example.org.
This version of the story originally appeared in Computerworld's print edition.
This story, "Predictability Is the Key to Earning the Boss's Trust" was originally published by Computerworld.