Friday, April 20, 2007

Estimating Value of a Possible Software Project

What factors to consider when estimating the value of a possible software project?

I made a list various factors I have considered, more or less formally as the case may be, when estimating the value of undertaking a development project.
When I thought about how I measure these factors I found that I generally think of them as each having a probability-distribution.
Instead of "This feature will cut response time in half", something like "This has a 90% chance of getting of cutting response time by 10%, and maybe a 30% chance of cutting it by 60%."
What factors do you find are most worth spending time to consider?
How might you express those factors in making a go/no-go decision on a project?

Examples, in no particular order:

Value Factors: What will we get from this software?

  • capabilities - but then I ask, what is the value of each capability?
  • What is the "total market available" for this software/feature?
  • How much of that market can we expect to get?
  • What new markets will this get us into?
  • What cost(s) will this feature help us avoid or reduce?
  • What value does this bring to our team - new skills, experience, etc.
  • How much fund will this be?
  • Synergy with other projects?
  • What is the time-to-market value? (what is the value of releasing early vs. later?) Taken to the extreme, that question turns into a cost question: "What is the cost of not releasing at all?"
  • Reputation value: What value does this bring to our brand?
Cost Factors: What will it cost us?
  • Labor costs
  • Hardware costs
  • Licensing costs
  • Costs associated with various risk factors:
  • Reputation cost for overreaching.
  • Human cost (burn-out, staff turnover) of doing too much.
  • New or increased legal or financial liabilities.
  • Delay to other projects.

Technorati Tags: ,