Improving the Benefit to Cost Ratio in App Development Projects
Getting the most value out of your investment dollars is typically at the forefront of any investor’s mind. Application development is a complex and unpredictable process, so having your investment funds depleted due to unexpected complications is unfortunately commonplace.
As always, it’s important to do your research before committing to any project, and in light of the aforementioned unpredictable nature of the app development, due diligence is as necessary as ever.
So, what can you do to help decrease the chances of your project going off the rails? One characteristic to look into is the Benefit to Cost ratio.
What is the benefit to cost ratio and why is it important?
The Benefit to Cost ratio looks at the potential (or actual) monetary value of performing a project, versus the amount it costs to implement the project. The importance of this ratio is that it can be used to identify the value for money of a project, which is, as mentioned earlier, a highly important metric for either yourself or others as investors.
Improving this metric often means being more prudent with expenditure — an excellent endeavour for a business regardless. Less wasted funds mean there is more available for development work and releasing new features. Both provide greater value for your customers.
So, let’s take a look at ways to improve the Benefit to Cost ratio in your application development project.
Choose the right application development method for your circumstances
Before you or your teams starts to write even a line of code, a fundamentally important step is to choose the right architecture for your application.
The primary factors that will determine this choice are:
- your budget and
- identifying which platforms to cater for (i.e. web, iOS or Android).
Building an application for the web is a suitable option if you need it to be accessible via a web browser (Chrome, Safari, Firefox or Edge). If the target audience isn’t going to be using it much on a mobile device, if at all, then this is the option to go for. Rolling out updates is fast and simple; there is much more screen real-estate to work with in terms of design, and the user doesn’t have to manually download the application.
If your target customers are going to be using your application primarily on mobile devices and on more than one platform, then hybrid development would be a good option. Hybrid development allows apps for multiple platforms, such as iOS and Android, to be built from a shared codebase. This helps significantly with the Benefit to Cost ratio and not only with the initial creation of the app. Because, as new features are built in, they will only need to be coded once.
Native app development is the process of building a mobile app in the native language of the platform, such as iOS or Android. This differs from the hybrid method, which adds a browser layer on top of the native app.
Without this added layer, native apps have a performance gain over apps created with the hybrid method.
However, with this gain comes the compromise that the app cannot be built off a shared codebase. Separate apps must be built per platform, and new features must be coded more than once. Collectively, these added costs can significantly impact the Benefit to Cost ratio. If budget isn’t as much of a problem, the added performance improvement with native apps may be worth it.
Progressive Web Apps
Progressive Web Apps (PWAs) are the new comers to the application architecture space. A PWA can be thought of as a web application that provides a mobile app experience. With the help of the device platform, PWAs can be treated the same as a mobile app.
- be saved as a tile to the home screen,
- receive notifications,
- operate offline, and
- can leverage many other characteristics that mobile apps offer.
They also share all the benefits of web apps — including accessibility from a web browser.
At this point you may be wondering why everyone isn’t building PWAs. The main drawback right now is that their device capabilities are limited, as is support by the underlying iOS and Android platforms. But this is likely to change soon.
If your requirements dictate that you don’t need extensive access to device features such as Contacts, Bluetooth and Biosecurity, then a PWA may be the ideal option for your project.
Prioritise features wisely
Effective feature prioritisation forms the foundation of an optimal Benefit to Cost ratio. Prioritising a feature that provides less value to your users over another that provides greater value will reduce the Benefit-cost ratio. If done repeatedly, it could ultimately derail the project and cause a cost blow-out.
There are some tried and tested strategies for effective feature prioritisations, which include the methods of:
- Feasibility, desirability and viability studies
- The effort/impact matrix
- Story mapping
- Priority scorecard
Along with the value delivered, the effort to develop a feature should also be considered. This is where the effort/impact matrix helps. Features that are cheaper to implement may still be prioritised over other features with greater rewards but with considerably larger costs of implementation.
Leverage the advances in cloud architecture
The growth in cloud architecture over the past decade has come about for good reason. Building and hosting your application in the cloud can see a significant reduction in the ongoing costs of your project. Also, the cloud platforms offer a large variety of services which you can use without having to cater for this yourself.
Artificial Intelligence, Machine Learning, Big Data and Internet of Things are just a few areas where the cloud hosting platforms offer out-of-the-box solutions for you to use. They are designed to be easy to integrate with and are typically a more cost-effective option over rolling out your own.
As your product grows, it may become a more viable option to replace 3 rdparty services with your own products. The cost of hosting will always be there, but decreasing your dependence on external vendors may reduce your ongoing costs, adding further improvement to the Benefits to Cost ratio.
Other benefits of hosting in the cloud include:
- Flexibility — A lot of businesses don’t expect the same amount of use and traffic all day, every day. One of the cloud service providers’ greatest benefits is the ability to spin up and shut down infrastructure with ease, if not automatically. Also, pay-as-you-go billing means you only pay for what you use.
- Data recovery — Traditionally, when businesses hosted their own servers, everything was housed in one location. This introduced a lot of risk in case of catastrophe. Cloud providers offer geographical redundancy and superior data backup methods to provide far greater recoverability.
- Less maintenance — It’s no longer necessary to maintain your own infrastructure. Machine upgrades can all be taken care of by your chosen cloud provider.
- Performance — The major cloud providers all offer scale-up and scale-out options to handle bursts of increased server load.
Collectively, these help to bring down the Benefit to Cost ratio by keeping overheads low and decreasing the amount of distractions for your team.
The Benefit to Cost ratio is an important indicator in gauging the effectiveness of the funding you put into a project. In this article we have outlined some of the more important methods of improving this ratio.
Choosing the right architecture for your application is a fundamental first step. It’s important to ensure that your circumstances and goals are aligned appropriately with the development method you choose. Additionally, ensuring a policy for effective feature prioritisation is in place and pursuing a cloud-native solution design, are further measures that will help keep this Benefit to Cost ratio in check.
Originally published at https://denimdev.com.au on February 12, 2021.