Mobile Business Apps – How to choose the right development framework?

While developing mobile business apps, choosing the right mobile application development framework is a key decision making process. It is highly important that, the decision maker invests significant time upfront towards making the right decision considering the factors such as application type, domain, target device platforms, UI & UX design, usability requirements,..

When the right mobile development framework is selected after considering all of the above mentioned key parameters, we can reasonably be assured that the mobile app can be implemented & maintained within the budget & timeframe meeting customer business needs.

download

In this article, I would like to share some of the available mobile app development approaches, frameworks, its pros & cons.

A few mobile approaches;

1. Mobile Web: An app specifically developed for limited real estate and mobile usage on the go. Ex: m.facebook.com!
2. Full Native: An app fully developed in the platform’s frameworks, they offer the best experience. However developing for multiple platforms usually means writing the app multiple times. Example: Apps developed using Android, iOS SDK’s.

3. Hybrid:
An app built using a mix of native and web technologies. Hybrid frameworks comes in two flavors,

a. Free and open source framework: The following would be mobile app development approach with this option:
• Develop App UI/pages using UI Development frameworks such as WebIx, Bootstrap, Sencha, Ionic, Intel® XDK,..
• Use Apache Cordova to access the Mobile Device features such as Camera, Dialer, Geolocation,..
• Build the Mobile app to the target platforms (Adroid, iOS,..) using frameworks such as Phone Gap, Titanium, ..

b. Licensed frameworks: Example: Oracle Mobile Application Framework (MAF). Licensed frameworks come prepackaged with inbuilt UI controls, API’s to access device features and the hybrid app build framework as well

AndroidiOSWindows
Pros & cons of the above popular approaches:

Full Native:

Pros:
• OS default themes can be leveraged to design the app UI & Navigation in line with native device UI
• More control in accessing the device features and functionalities

Cons:
• Talents with technical competencies such as Java, Objective C & .NET are required to develop Native apps for Android, iOS & Windows platforms
• Separate front end code base has to be developed for each of the platforms
• Development/Maintenance time & cost increases significantly to deploy the app in different platforms

Hybrid – Open Source

Pros:
• Write Once & Run Anywhere (WORA)
• Write code in familiar Client Side programming languages such as Java Script
• Significant reduction in development & maintenance cost compared to Full Native approach

Cons:
• App UI & Navigation may not match the standard Mobile OS themes
• Detailed Client Side Technology competency (Java Script, HTML 5, CSS 3,..) & Knowledge on UI development frameworks (Bootstrap, Sencha, WebIx,..) is required to develop complex business apps using this model

Hybrid – Licensed (Ex. Oracle MAF)

Pros:
• Write Once & Run Anywhere (WORA)
• Significant reduction in development & maintenance cost compared to Full Native approach
• Extensive ready to use UI controls are available using which complex web pages can be easily designed & developed
• Prebuilt Binding tools can be used to automatically bind the web pages with the backend data feeds (such as DB, SOAP or REST based services)
• MAF Plugin is available for both Jdeveloper & Eclipse IDE’s
• Significant reduction in development & maintenance cost compared to other Mobile App development approach

Cons:
• App UI & Navigation may not match the standard Mobile OS themes
• Available in Licensed mode only
Note: There are other Licensed Mobile application development frameworks in the market. Since I have experienced on using Oracle MAF, I have considered this as an example in this article.

There are no hard-and-fast rules which can help us to decide on the development framework. Every mobile app development initiative has to be analyzed & evaluated in detail considering the above factors to arrive at the right development framework suiting the context.

I hope the information in this article will help you to evaluate & choose the right mobile application development framework to develop your mobile business apps.

— Prashanth N