The seemingly slow pace of software development can be a big source of frustration for business leaders who are keen to innovate through technology innovation. The ability to update software applications to meet changing customer requirements can give businesses a definite edge in an increasingly competitive global economy.
Yet all too often, technical teams simply can’t deliver to the project milestones required by the business. And it’s not always their fault. There are many reasons that software development is so slow and we have covered a few of them in our previous blog
However, by following these five tips, then you can give your software development project the best chance of success.
Invest quality time working with your Development Team to build a proper set of business requirements. This means thinking through as many of the business permutations as possible. Define the reports you want from the system as this helps validate whether your database will be designed in the right way. This will require an iterative process with a core team of experts from your side and the development team. Ensure the team have the space to invest in preparing thoroughly for this phase of the project. You don’t want it to drag on – but you do want it to be a high-quality set of interactions.
Once you have this, ensure you get a fixed price from your Development Team (whether this be an internal cost from an internal team or an external supplier). This will have a caveat that if you change the specification, they will need to come back to you for further discussion. However, this should not include them returning because they didn’t realize the scope initially.
Talk to your software development partner – the smaller the code base, the easier it will be to manage and update going forward. It is vital to consider not just your build cost, but also the cost of ongoing maintenance and support. If your development team can have the same people that built the application be involved in the ongoing maintenance, we would suggest this is an added advantage.
The relationship you have with your Development Team is critical. Senior Business Leaders will often say to me that they always want their Development Team in-house so that they can eyeball them on a Monday morning. Whilst I can concur with this sentiment, we don’t believe this is always the best option as you will have the ongoing cost of recruiting, managing, motivating and developing that team. Not only are Development resources at a premium at the moment, but as you can see from the table below from a pure cost per head, there are better value places to look.
Outsourcing is becoming increasingly popular and to do justice to this topic would require a separate article. The one word of caution we would mention here is not to be seduced solely by lower day rates.
We have spoken to too many customers who have reported that whilst the upfront cost was lower, the overall project ended up costing them a lot more. The important considerations are cultural fit, communications and a partner that isn’t so much larger than yourself that you don’t get the support you need,
Experience suggests an optimal solution is an outsourced team with a similar culture, with local management in your country as the primary interface and a commercial agreement that is fixed in the initial build and that both sides are heavily incentivized to ensure the application’s ongoing success. This should enable you to find a solution that commercially makes sense and is the right team for your business.
We believe this relationship should be seen as a Partnership, where both sides share in the project’s cost and risk. We would define success when you view your Development Team as a logical extension of your business.
There is a fair amount of research that has been carried out looking at the optimal size of a Development Team. Industry sources suggest that above 10 is too many and less than 3 is too small. Ultimately it is a fine balance between additional resource capacity and the communications overhead on the downside. Some people would suggest 7- 9 is the right number, clearly depending on the size of your project.
We are strong advocates for very small, focused teams. With a strong Product Owner to provide the interaction between the business and the development team and a strong Scrum Master (a person who leads the development team, removing obstacles, and ensuring they are efficient as possible), you can create a very dynamic and agile team.
Want to find out how SCAD Software is slashing software time-to-market? You can read more here.
Tech News You'll
Actually Want To Read