Either you’ve been running or just have started a business and asked yourself whether you need a mobile app, then this article is for you.
After reading an article you will find answers to the following questions:
Is a mobile-friendly web page enough for my business or does it require a mobile app?
Should I use hybrid technologies? If yes, what is a better option, cross-platform tool or native technology?
How can I properly start mobile app development?
Does app development require a team of back-end developers?
Which monitoring tools should be used to track app health and how to keep it evolving?
Sometimes creating a mobile-friendly website is enough and you really don't have to waste your time and money for building a mobile app (by the way, if your website is still not optimized for mobile platforms, you have to do this first). However, in some cases, it’s impossible to provide a good user experience through a mobile-friendly web page.
There are specific mobile app benefits that will provide immaculate user experience:
Interacting with phone API. Accessing contacts, GPS location tracking and interacting with other hardware sensors, storing some data on the phone storage, taking photos, interacting with other apps are easier for the user to be used in mobile app then on the website. Can you imagine your taxi app working in a browser? A taxi app will definitely make your user navigation more comfortable and smooth.
Performance matters! If your app users have to do some calculations or data manipulations they will be able to execute those faster via an app then website. In some cases, complex data manipulations are executed on the back-end, but it’s up to engineers to decide.
Simple UI layouts look wonderful on web pages, however, mobile apps have smooth UI/UX and animations on both, complex and simple designs. Will you prefer having a nice page transition animation or blank screen blink during web page loading? Mobile apps provide better user experience with UI widgets (dialogs date pickers, dropdowns, long lists of data and much more).
With mobile app installed the users have quick access to your services through the icon on their phone. It eliminates unnecessary actions including opening a browser and typing URL. Yes, users can create web page shortcuts, but it requires additional action and an average mobile user is not even aware of such possibility.
The mobile app can work without an internet connection. Users will be able to use your app during flights or other places with no internet. It’s possible to integrate a date cashing and synchronization mechanism into an app to keep data updated and precached when the app is connected to the internet. An option to syncronize big data chunks on a wifi network will allow the user to avoid additional charges for data roaming or overusing mobile data plans.
A mobile app will improve your business SEO (Search Engine Optimisation). Web pages linked to an app get additional points during indexing and appear higher in search results on mobile devices in comparison to the web pages without an app.
1. Time. Obviously, you need to spend time and money to build it. Besides, you should find a person who will be responsible for communication with the team of engineers or a project manager on your behalf. No matter whether it’s you or your employee, it will take time and effort.
2. Money. You will have to spend some money to support the app after it is released. Think about the support service. If you already have one, prepare to increase their workload and if you don’t have the support service, hire professionals to handle these responsibilities. Staying in close touch with customers is one of the keys to keeping your app/business ratings growing. Changes you would like to see in an app will always require additional expenses.
3. Updates. If something goes wrong it will take time to fix it. If you find a serious bug or need any changes in the app it will take time to roll out an update. After implementing and testing the required functionality the app can be delivered to the market. The review process for Android apps takes several hours, while iOS apps require several days for the same process to be conducted. So it’s almost impossible to roll out requested updates for Android and iOS apps on the same day. Website updates are usually presented much faster.
If you just have realized that having an app is obligatory for your business the next question you have to consider is what technology to use.
You might be wondering, isn't it up to engineers to decide the technologies to be used for app development? Yes, it’s up to them. But it’s up to you to approve the budget, which greatly depends on the technologies you are going to choose. Understanding the basic differences between technologies can save you a penny. Expensive does not always mean better and cheaper does not always mean worse.
We won’t go too deep into details but there’s the common rule. If your project is relatively small and can be implemented by a few engineers in 2 months or less, then choose a hybrid solution. If you are going to implement a business app with complex business logic or build a complex enterprise app and it won’t be a short term project, you must consider native development. Medium-sized projects don’t require native technologies and a cross-platform solution will be a wise choice here. Hybrid technologies like PhoneGap and Ionic are a good fit for prototyping and small-size projects development.
Cross-platform (React Native and Flutter are the most popular cross-platform tools nowadays) is a compromise choice between hybrid and native technologies in regard to the speed of development and engineering efforts. Much like hybrid technologies cross-platform platforms share the common codebases and allow interacting with phone platform API whole lot better. UI rendering provides a glossy shining look for your app. App performance is good enough for most business use cases. Here you can read more about the comparison between these two trending technologies.
One of the biggest disadvantages of choosing hybrid and cross-platform tools is a phone platform API interaction implemented by applying third-party libraries with native code under the hood. Therefore, engineers usually switch to native technologies if there’s a need to create a specific feature. You rarely encounter an engineer who knows how to develop using both cross-platform and native development tools, as a result, you will require a temporary extension of your development team, which is time-consuming and requires a budget extension.
Building the same app with the help of native tools (Swift for IOS and Kotlin for Android) is costly and requires more time compared to hybrid or cross-platform development, however, it doesn’t require an engineering team extension.
It’s similar to choosing materials for building a hundred-floor skyscraper and gazebo. In this case, a gazebo is to be built with hybrid tools, while skyscraper will definitely require native. In regard to middle-sized buildings, it is wise to use cross-platform. It’s obvious that building a gazebo applying native technologies is throwing your money out. However, if you build a skyscraper with the help of hybrid tools, get ready, it will crash as soon as the last floor is being constructed.
Before you start doing something, you need a plan. Here at inVerita we will help you to define core product features. We will provide you with a clickable wireframes prototype (it takes several days to create) for you to see how your app is going to function. We will help you to build a vision of product development, define a budget, approximate timeline, delivery dates, team composition, create a list of features for MVP and go the extra mile if necessary. We call it the discovery phase.
The discovery phase is a short period before project implementation (it can be several days or several weeks long, depending on project size and complexity). It will require you or another person responsible to communicate closely with business analysts, designers and engineers to produce all required documentation for project development kick-off and to discover all or possible issues. We highly recommend starting development only after the discovery phase is conducted.
At the end of the discovery phase, you will receive all the necessary documentation. You are free to share this documentation with other software delivery companies in order to choose the best supplier, however, we are sure that after start working with inVerita you won’t change the team.
If you have questions about the discovery phase, please contact us.
Nowadays, services like Firebase or Backendless cover the basic needs of back-end development for mobile apps. It is easy for front-end engineers to complete managing and setting up without involving back-end specialists. These technologies can be used for prototyping, simple back-end API integration or quick project kick-off. Using these services extremely reduces expenses, as there’s no need to expend your development team.
But it’s not a silver bullet. Depending on the complexity of tasks and business requirements, there are still many cases requiring a custom back-end. Usually, mobile and web application development platforms like Firebase are free to use at the low load and expensive if the load goes beyond free limits.
There’s no short answer to this question. Each case should be discussed with an engineering team.