Mobile applications today are used in many different business areas, whether it is for internal corporate use or for providing services to clients. People come up with new concepts and ideas for apps everyday, but how does one ensure that app becomes a success without exceeding the budget and estimated time frame?
As with any project, mobile app development requires a well thought-out and carefully planned approach. At every stage of the process — from the initial idea to release of final application — many questions arise, answering which can really have an impact not only the project's budget, but also on the project's success.
Suppose you've worked out the concept, prepared requirements and specifications, determined the marketing strategy, and want to estimate development costs. Take a look at the following considerations to make sure the projects stays within your budget and is completed on time.
1. Choosing the right platform
As soon as you start planning your future mobile app you should decide on the mobile platform(s): native, web or hybrid. To make this decision, it's a good idea to first identify your target audience and think about future sources of monetization. Even though Android OS is the current leader in the global market (by the number of devices sold), certain applications are more profitable on other platforms. For example, if you are planning to generate income with in-app purchases, it's a good idea to opt for iOS, since many studies have shown that users of Apple products have a higher spending potential and are more likely to make in-app purchases.
You should also take into account peculiarities of local markets, depending on where your target audience is. For instance, low-prices Android devices are particularly popular in developing countries. The popularity of BlackBerry also varies greatly in different parts of the world.
If the target audience is very heterogeneous and broad, it can be very difficult to give preference to any particular platform. In this case, you might consider developing a cross-platform solution (i.e. HTML5 cross-platform app), instead or in addition to developing a native application. Developing a cross-platform HTML5 app costs less compared to simultaneous development of native applications for multiple operating systems. However, cross-platform apps do have certain limitations, so you might not be able to make use of each platform's full potential. For example, cross-platform apps often work much slower than their native counterparts.
2. Investing in analytics
Based on my own experience, I can tell that clients often try to bypass this important stage of the development cycle in an attempt to cut costs and reduce the budget. However, practice has shown that this approach does not reduce the final costs. On the other hand, professionally done analytics significantly reduces risks and improves the quality of the product. For example, it is a good idea to create a prototype or a mock-up before starting development of the actual application.
A prototype is created according to specifications and shows the user interface, including all of the application's logic, navigation, user interaction, notifications — in general all the information necessary for the development. This way, you have a good example of how the future app will function and can make necessary adjustments to the plan before starting the development phase. We have already discussed prototyping in more detail in the earlier post.
Depending on the level of detail, business analysis costs may reach 10-20% of the total budget for building a mobile app. While this may seem like a lot at first, these costs are fully justifies, when you consider the benefits. Think of the prototype as an investment that helps understand whether what you have written on paper will actually look good in real life. The company that handles analytics passes all the sources to the client (or at least that's what we do here in Azoft). Having prototypes on hand, the client can decide whether to give the green light to developers and begin production, or to refine the concept of the application.
3. Choosing your design
Be sure to think through the design of your application. Most mobile platforms allows a standard interface for application development. So, if your goal is to cut costs, perhaps you don't need a custom design and you can stick to standard design elements of your OS of choice. Skipping custom design significantly reduces the time and the final cost of the project, but places constraints on functionality, since standard design elements are usually very limited.
If your application needs at least one element that is not found in the standard set, you will have to seek services of a designer. When choosing your designer, ask for examples of designer's previous work to see if it matches your preferences. Working on design can be very tedious and often prolongs the development time frame. It's best when design is done together with analytics. Working out the design of your app can greatly shift the time, and with no clear interface requirements, it doesn't make sense to begin development.
4. Estimating development costs
Once all the requirements have been approved, we can move on to development. If we have a well thought-out prototype and approved design, it is fairly easy to provide an accurate cost and time estimate. The estimate is done by determining the cost of developing each screen, integration with the server, synchronization, and all that is necessary for the correct functioning of the app.
5. Quality assurance and testing
If you want to make a quality app, it is necessary take certain quality assurance measures (QA). These are small but very necessary costs, aimed at timely correction of errors that might have occurred during development. This part of job is usually taken care of by the developer to guarantee quality of work.
As for testing the app, again, some clients try to skip this step to save money. In any case, testing the finished application on real devices is an essential step prior to the app's release. Testing should be carried out on different devices with various versions of the operating system. Another option is to use a universal platform (for example, Device AnyWhere), that allows testing applications on all models that are relevant to the project. Therefore, when making a decision about testing, make sure you or the development team has access to all necessary tools or devices. Keep in mind that some apps require more extensive testing than others. If your app contains sensitive user data, especially financial information, it's a good idea to run some additional security tests, such as application penetration testing.
In addition, it is useful to have the finished application tested by real users. This allows to optimize the interface and make necessary changes to the app functionality. Going a step further, you might want to integrate the application with services such as Google Analytics or Flurry to get detailed analysis of how the app is being used by real people. Doing so can really give you valuable insight and improve the app in future updates.
Some real figures
Now that you know the key considerations affecting a mobile application cost, let us share budget estimations for different types of apps made by Propelics.
From our experience
We work on many projects of varying complexity, create applications for large enterprises as well as startups. Practice has shown again and again that when a clients carefully addresses these 5 questions in the very first stages of the project — we can almost guarantee that the project will be completed on time, stay within the agreed budget, and all parties involved will be happy with the final result.