How to create a successful mobile app
Lessons learned in mobile app development over eight years and hundreds of projects
Mobile adoption rates have been over 34% since 2014 growing from 1.57 billion users to over 2.1 billion in 2017 over the past several years, far outpacing Internet adoption rates from just a few years ago. Mobile users spend 90% of their time on smartphones through apps and just 10% mobile browsing. It follows that mobile app development would also be facing tremendous growth rates recently and in the coming years.
Research forecasts that revenue from mobile apps would be over $77 billion dollars in 2017, growing from $35 billion in 2014.
Companies correctly tend to look to their markets for future growth opportunities. That has indeed been the case amongst website and software developers. Many companies are rushing to the mobile app development field, increasing competition and decreasing the chances for success
With over 2.8 million apps on Google Play and 2.2 million apps on ITunes, the standard of what it takes to create a successful app has only increased. As a result, it would be advisable to learn from others who have been creating apps longer in order to increase your chances of success.
O Clock Software has been creating mobile apps since 2009. Below, is a list of some of the lessons we have learned along the way that we have incorporated into every project. Like everybody else, it has been from our mistakes that we have learned the most.
Our best lessons learned in no particular order.
Have a purpose in mind
We incorporate a great deal of planning into every project that we do. We have found that by doing so, we can eliminate a large number of the surprises that often come up as a result of poor planning. Some of these surprises include incomplete functionality, design errors, system errors, and of course, programming errors, amongst many more.
When planning your mobile app, have a purpose in mind for what you are doing. If you are a start-up, why are people going to download and use your app? What value do they realize from using your app and what problems do you solve?
The same question needs to be asked if you are company creating an app for your employees or clients. If the end users are employees, what do you gain from such an app and what is the expected return? The return can either be a direct financial gain or an increase in productivity, which indirectly leads to a financial gain.
If the end users are prospective clients, what value are you providing? Is your app a business development tool designed to grow your business?
Have a platform in mind
A big part of your success will come from the selection of which platform to build for. Will it be iOS or Android? Android has a large market share in developing countries while iOS is very large in the United States.
Almost half of all of the mobile app projects we work on involve both iOS and Android. It is also common to see a project start on one platform and then when completed, proceed to the other platform.
With a little bit of market research, you can find the best platform to start with. Consider the following:
- What type of app are you making?
- Where is your target market located?
- What is their preferred platform?
- What are their demographics?
Know your return on investment
How do you justify your investment in developing your app? What do you hope to achieve with your app, how will you calculate ROI and what is the number you are shooting for?
In our experience working with start-ups, they are primarily focused on making money. If you find yourself in this category, will you sell your app or make your money from advertising? What value will you provide your user that would inspire them to buy your app?
Businesses looking to build an app often have other ways of to define return on investment. It could be productivity gains from employees, improved morale, improved worker safety, and much more.
Design and build for low bandwidth
People access websites and apps through their mobile devices at different download speeds. Many developers fail to consider this when creating their apps. Design your app for low-bandwidth users despite the fact that most people have high-speed data connections. However, keep in mind that wireless speeds are slower than ‘connected’ broadband speeds.
With download speeds in mind, make sure that images are reduced in size as much as possible without sacrificing quality. Additionally, your focus needs to be on performance so take into account the memory and space of all of the devices that your app is intended for.
Focus on your user interface
Mock-ups and sketches play an important role in the mobile app development process. One equally important but often overlooked step is the flow diagram. A flow diagram will define how your user will interact with your user interface.
Prior to mobile apps, developers focused their user interfaces on keyboards and mouse input. Mobile app developers have a slightly different focus paying attention to the thumb and finger actions of the user. User interface components should be optimized according to how the user interacts with their device.
Size and placement of the interface matters in that it should be effortless and intuitive to the user. Minimize scrolling with the use of menu items when it comes to that part of the app that the end-user will interact with. Typography and images also matter a great deal when creating your user interface.
Test, test and then more testing
Many people assume that testing stops once a project has been accepted by the client and released to end-users. Before you get to that point, you need to test every piece of functionality making up your app along with how it works on several different sized devices and screens.
Once your project is released, users are most likely to find additional issues that were not caught in the first round of testing. If you have a bug that quickly escalates out of control, have a process in place to address the situation and to keep damage control at a minimum.
Mobile devices are evolving at ever-increasing rates. Have an upgrade strategy in place to keep your mobile app updated to work on the latest mobile platforms.
Software development is an inherently complicated process. Be prepared to address issues as they come up and expect testing to continue once your app has been released to your end user.
Know when to hire an expert
There is a tremendous amount of information available online from which to learn how to code your own mobile app. If you are looking to build an app to generate a financial return, I would strongly recommend that you hire a seasoned expert. This could be for your business, your work, or as an Internet start-up.
There is nothing wrong with learning how to develop an app or anything else for that matter. We all started that way. However, when you have a lot riding upon the outcome of your app, you are taking on much less risk handing the project off to an experienced developer or team.
Software development is an inherently complex process. Success requires many different things coming together to create something from nothing.
In our experience, successful development requires:
- An idea
- An understanding of your end-user and the problem they seek to solve
- Project management
- User interface design
- Quality assurance or testing
For many of us, it has taken years to acquire these skills, most often through trial and error. Unfortunately, learning these lessons did not come from completing five or ten projects but rather dozens or in some cases hundreds projects.
Bottom line, if you have a lot riding on the outcome of your project, you are better off leaving it to the professionals.
Putting it all together
I believe that the Internet has been the single greatest wealth and opportunity creator in the history of mankind. We have only realized a fraction of what is possible.
Mobile growth rates are exceeding desktop growth rates to the point where it is how most people interface with the Internet. As a result, the competition is intense and brutal.
I hope that you have learned from our successes and failures in mobile app development.
If you have a project you need help with, contact us as we are happy to discuss your ideas and make them a reality.
Stay up to date
Sign up to receive our posts via email!