February 05, 2007

Problems with project estimation

Dear Bob ...I observed several challenged IT projects over the years. The developers' estimates were low. The project managers scheduled based on the estimates. Needless to say, the projects were late. Are there reliable ways to estimate? Are there sound ways to track project status so you can tell your user community with confidence that their system will be ready by a certain date?You said in a recent newslett



Dear Bob ...

I observed several challenged IT projects over the years. The developers' estimates were low. The project managers scheduled based on the estimates. Needless to say, the projects were late. Are there reliable ways to estimate? Are there sound ways to track project status so you can tell your user community with confidence that their system will be ready by a certain date?

You said in a recent newsletter: the future lies with versatile developers who can create working software without creating volumes of documentation artifacts. Without detailed documentation, how do you determine who agreed with what requirements? When you are testing the software, how do you determine if a problem is a defect or a change? I guess if people involved have a great deal of mutual trust, then it may work.

--Managing

Dear Managing ...

Project estimation is one of those black arts I try to avoid. In addition to the karmic burden created by having to perform the required rituals, having to sacrifice the occasional chicken makes a terrible mess in my office.

My "solution" is to avoid estimating. When pressed I'm willing to give a "smells like" guesstimate for large efforts. The only estimates I'll provide are for next-phase projects I have the time and staff to properly plan. Then it isn't an estimate anymore - it's the computed cost of executing a project plan.

Sound ways to track project status? Of course: Weekly status meetings, where all participants report the status of their assignments (assignments are no longer than a week and status is either done or not done). Couple this practice with a discipline of keeping projects short and teams small and you can start to finish projects reliably.

Your question about documentation is harder to answer, because nothing works in all situations. Sometimes, especially in CYA sorts of environments or situations where different stakeholders have conflicting needs, you can need more. Nonetheless ...

Projects of any size and scope should always be about helping one or more parts of the business operate differently, not about delivering software that meets specifications. That being the case, the whole process of collecting software requirements from various stakeholders and reconciling it is bogus. Start the conversation by asking how the business should operate and everything about what follows changes. In particular, software requirements stop being a matter of finding compromises among various statements of "I want" and start being a simple account of the role software plays in new or changed business processes.

Testing also becomes something different in this sort of situation: It moves to a "Conference Room Pilot" where business users execute the new or changed process under controlled conditions. It doesn't much matter then whether a defect is the result of incorrect design, faulty programming, or end-users failing to anticipate their needs properly. All that matters is that the business can't run its process as it wants, which means the software must be tweaked to permit it.

And yes, all of this does require trust. Without it, a business has much bigger fish to fry than fixing software defects.

- Bob

White Paper

D2D Virtual Tape Library Replication Primer

This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.

Download now »

White Paper

An Alternative to Virtualization for Datacenter Cost Savings

Server virtualization is a popular option for dealing with mounting datacenter costs. Another equally promising approach is the use of an Application Delivery Controller. Citrix NetScaler provides a low-cost way for organizations to reduce their server count and accrue cost savings from a reduction in space, cooling, power and personnel.

Download now »

White Paper

Why Your Firewall, VPN, and IEEE 802.11i Aren't Enough to Protect Your Network

The emergence of WLANs has created a new breed of security threats to enterprise networks.

Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation

Download now »

White Paper

Bringing the Edge to the Data Center

Effectively address data protection challenges, implementing solutions that help store and protect business–critical data while cutting costs and improving efficiency and reliability.

Download now »

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Lewis: Advice Line Newsletter

The one-stop resource center for IT professionals.

©1994-2009 Infoworld, Inc.