Budget: Part 9 of How to Commission a Software Project
This budget article is part of the “How to Commission a Software Project” series.
The Bad News
I can’t tell you how much it will cost to develop your software project. Additionally, the number in your head probably needs to be multiplied by 10 to help put a decent scope on it. It’s not a criticism, just anecdotally common. Very common.
The Good News
The good news is that without bloodshed you should be able to find a reputable outfit to give a very broad scoping range. It may even cost you nothing. However, I recommend using a paid consultative approach in order to have a proper detailed estimate. Bonus if you can get high-level requirements built into that. Most US-based outfits should be able to execute such a discovery effort for $3,000-$20,000 depending on stakeholder preferences and complexity of the scope.
Apples and Oranges
Be prepared for the interpretation of the budget and scope to be a substantial effort. Instead of shopping around for quotes, find someone you trust and get their real opinion. However, if you do get multiple quotes, pay attention. If the quotes feel dramatically different, there’s a good chance the prospective partners are dramatically different. Many dev shops won’t include documentation, design, or quality assurance efforts in their scope unless you ask for them specifically. In fact, asking if those pieces are included is a superb idea. I would view a response of “well, we can do that if you want” as a red flag and “we do that for every project anyway” as a minimum sign that best practices will be followed.
Hidden Complexity
Keep in mind that some specific features are much more work to either develop or test than common sense may illustrate. This is one reason I recommend paying someone to do a deep discovery to unpack your requirements. We’ll discuss platforms in another article but those are a great example of hidden scope. For example, an ordinary form that takes a day to build on a web application could take 5 days to build in a native mobile or desktop application. Another good example is graduating from a hosted payment solution like PayPal to putting customized payment forms on your own systems. The development effort itself is relatively simple, but the development team is now responsible for a more sophisticated level of PCI compliance – potentially dramatically more sophisticated. The burden for that could include weeks of extra development time and costly 3rd party audits.
Ask “will this feature cost more than it’s worth” early (and often).
Adjusting Budget Expectations
If you find out your project is far more expensive than you can afford, look at your projections and goals and reverse engineer what you can truly spend in order to hit your return on investment. From there, figure out if modifying the feature set can get you within budget. Do not skip steps (or hire a firm that will) in order to meet your initial budget. It will cost more in the long run and keep you up at night. Every night.
Interested in getting help with budgeting or scoping a software project?