Mobile Application Development | Choice of Technology

Mobile Application Development | Choice of Technology

Native - Andorid & iOS

HTML5

Hybrid - React Native, Cordova, MobileGap, iconic etc

Why?

If you are a business or individual developer, the most important decision to build your mobile app is a choice of technology. If jump to implementation and realize that that technology either doesn't support or very complex to write your features. Switching to that technology, will be expensive in terms of money and time. It will also bring down the moral of your team. 

Hence, While choosing the technology, there are various factors which you must consider before take decision. Because this decision, can make or break your idea or business. 

So, What should be need to know?

So before you start, you should know the following-
  1. You business idea - List of Major features
  2. Know your user - your user base
  3. Time & Money to spend
What these three things will do?

It will help you to write your principles on which you will evaluate each avaliable option.

So let's start-


1. List top features of your app and risk associate to that feature - Giving you one common example- User Registration and Authentication - 

  • Do you really want to the user's information? 
  • What level of data you need to know about user?
  • Do you want user to use your app using public authentication provider like google, facebook etc.
  • Can user do any financial transaction?
  • User device footprint and geolocation?
  • Need to use biometric authentication?
  • Does app need multi factor authentication?
  • What are the liabilities & compliance related to users data?
Answering of these questions, will give you the idea of depth of technology support you need from mobile device component. Like if you want to remote on borad your user and later use a facial biometric authentication, you need to use technology which can work with core component like camera, edge detection etc.

Based on your features, you can categorized your app.

2. You must know your user base-
  • Major platform (Android / iOS) of your user base
  • User Device base is high end model or low end.
  • Can user afford / willing to pay for your app cost.
  • How much look & feel and usability will impact your user base? etc
Answering of these question will give you an idea of your user segment and it affordability.

3. Time & Money you are willing to invest
  • Quantify the money you are willing to spend and categorise
    • Ideation
    • Development cost
    • License cost
    • Security and some non functional cost
    • hardware cost & production support cost
  • Fixed the timeline where you want production ready your app
    • Ideation Time frame
    • Time frame for each Iteration in development and Testing
    • Time needed for infrastructure etc
Once you have all these answers in hand, now you are ready to define the principle based on following-
  • Simplicity
  • Availability
  • Reliability 
  • Affordability
  • Sustainability
Based on your need, you may choose the level of all these principle and can decide the best framework which could fit into your application need.

What are the available options?


  • Native - Android & iOS
  • HTML5
  • Hybrid - React Native, Cordova, Mobile Gap, iconic etc


How to decide?

If you get evaluate these option on your principles, you will get an answer-
  • Native - Android & iOS
    • Simplicity - Yes as you can provide native look & feel, navigation according to your customers, each access to native device component will make design simple and smooth.
    • Availability - Check your available feature on different versions of android & iOS. And compare it with your user base. Can it also be avalible on new waerables, answer is yes upto some extent based on your device capabilities.
    • Reliability - Because the app is written native, and if it should be most reliable.
    • Affordability - Check your developer cost as your may need sepearte developer for andorid and iOS. Usually, these developer's cost is high. 
    • Sustainability - Will native technology, specially Android backed by Google and iOS back Apple get support and new feature delopment in future? Answer is yes, but Microsoft and 
  • HTML5
    • Simplicity- you can write website app, new app in html 5 or some web app but when you will use core component  of device other than browser, it may be difiicult.
    • Avalability - Yes, where device has browser. nowday, most of device support browser.
    • Relaibility - it will haviliy relly on browser support and make cause some issues while access native components.
    • Affordability - It should be affordable as cost of resources are cheaper than natives.
    • Sustainabilty - It should get support and stay long time as it is a major language in web development and govern by W3C.
  • Hybrid - React Native, Cordova, Mobile Gap, iconic etc. If abobe two is not your choice, your must look for hybrid framework. There are lot of hybrid frame works avaliale and will discuss most used frmework in detail based on our principles.


Comments