How should I budget for my software development project?
One of the most satisfying moments in the life of an entrepreneur is when that Idea comes to you; an Idea that will bridge fractured worlds, win over hearts and minds and take your company and your community to a new level. One of the most deflating feelings is when you need to append a budget to that Idea.
While being alive to the reality of cost is important, it does not necessarily have to come at the expense of the value of your Idea. In this article, we will discuss budget-setting for a software development project that brings your Idea to life, making sure this budget supports you rather than hampering you, so that you can keep on dreaming and being inspired.
Yes, I followed up “dreaming” and “being inspired” with “homework”. Indeed, it is important to prepare and educate yourself as best as you can to make informed decisions about your budget.
Legwork: Comparables and Lessons Learned
Homework can be seen as a two-part whole: the legwork and the mindset. The legwork includes getting comparables to get into the right ballpark. Ideally, we’d compare apples to apples, but it is not always easy to find the perfect apple. Keep that in mind when comparing “similar projects”, and avoid assuming that one outcome will beget another. In addition, look at how well your company maintains operations with an added ongoing project (software or otherwise), as a software development project is a potential source of disruption to your day-to-day operations. Successful projects rely on good collaboration – which demands time from your staff. Finally, cultivate and be attuned to the lessons learned from your own past projects, and others’.
Mindset: Cost Certainty and Value Certainty
The other part of your whole is to define your mindset when it comes to budgets. People often conflate the existence of a budget with a need for cost certainty (not to mention its own impact on time certainty). You should ask yourself if that is indeed what you are looking for, and whether you should rather focus on value certainty. Value is cultivated and refined over time – do you want to position your team to keep looking for value? Being value-driven does not mean having a blank cheque; it simply means that you are ready to re-prioritize and fine-tune the details of your budget as the situation evolves.
A software development plan never survives contact. But doing your homework will help you make in-project budget decisions and adjustments based on facts, sound reasoning and objectives, rather than constantly fight fires.
Now, we can identify the elements of a software development project:
Labor, including travel expenses: this includes the labor from your own company or a hired external firm. Don’t forget that you are paying for brainpower as well as coding fingers, and as such, technical advice does cost money and is probably the most valuable part of your project.
Equipment, software licenses: there are many options to choose from, hence the importance of setting your goals and understanding your context accordingly. For example, free open source software may work in some cases but not in others.
Impact on day-to-day operations: your staff may need to take some time away from their daily tasks to collaborate on the ongoing project. Once the project is delivered, there may be costs related to training and initial ramp-up time as the new system is integrated and used in daily operations.
Recurring cost of maintenance: typically, you should budget 10% to 30% of the initial project cost for each subsequent year after go-live.
- Direct vs indirect costs
- Fixed vs variable costs
- One-time vs recurring costs
- Needs vs wants
Of course, building a checklist is one thing, and assigning realistic amounts to each item is another. This is where the legwork pays off – the comparables will help you budget an initial amount, and the lessons learned will help you with contingency and risk assessment. Finally, it is important that there be a company-wide buy-in to the budget and the value that the project will bring. A common and united front will be important when you start collecting quotes.
Getting Ready for Quotes
Now that you’ve internally set a preliminary budget for your software development project – for your Idea! – you can start collecting quotes from firms and vendors.
You will get a range of quotes, and perhaps a few surprises along the way. Take time to study those surprises; some may reflect real insights that you may have overlooked or underestimated, while others may be upsells or scare tactics. Alternatively, they may mean that the firms and vendors have misunderstood your mindset, or are not quoting based on your needs but rather theirs. Take this as an opportunity to clarify your own mindset.
Finally, remember that the quotes you are receiving make up just a portion of your overall budget, and not its entirety – that’s why we calculated the indirect costs and impact of your project on your day-to-day operations.
Keep Dreaming About Your Idea
We started this article talking about your Idea. That initial energy and passion that you felt at that moment needs to be bottled and shared during the entire project. The grind of managing a budget may cloud your original vision, which can lead to unconscious distortion.
There is a happy medium between, on the one hand, balancing your budget – even an immutable one – and on the other hand, helping your Idea be born; your preparedness and leadership will help you walk that razor’s edge.
And here at Spiria, we are here to help you. 😊