Mobile Application Development Strategy 1.0

advertisement
M OBILE A PPLICATION
D EVELOPMENT S TRATEGY
Choosing the right platform and tools
This document aims to compare the native mobile application development
with cross-platform tool based development approaches. The document
compares two of the most popular platforms, PhoneGap and Titanium in
general and provides a SWOT analysis and proposes PhoneGap as a choice
of platform for developing iNurse application.
Vimarsh P Vasavada
3/29/2012
3/29/2012
MOBILE APPLICATION DEVELOPMENT
STRATEGY
Choosing the right platform and tools
NATIVE MOBILE APPLICATION DEVELOPMENT
The mobile application development historically began as a Native Appplication development
on top of a particular mobile development SDK/Platform i.e. in earlier days of J2ME/WinCE
platforms to today’s vastly popular platforms like iOS, Android etc.
The native application development approaches has its unique advantages, mainly in terms
of significant performance benefits and access to native platform features. However, with
increasing number of platforms/versions and variety of devices, form-factors etc. the pure
native app development as an approach has been scrutinized for many application. The
pros/cons of native application is outlined briefly below:
Key Value Proposition




Allows access to native platform features
Native application experience (i.e. Usability and User Experience)
Performance
Allows to specialize i.e. iOS app and Android app can be designed differently for a
given business need.
Key Challenges:




Addressing large set of devices (Mobile phones, Tablets etc.)
Addressing Fragmentation of device platforms i.e. iOS, Android,BlackBerry etc.
o The problem of fragementation is further complicated by multiple versions
for a given single platform i.e. there are key differences between Android 2.1 ,
3.x and now 4.x versions.
o
Fragementation side effects
o The Development knowhow and people dependency - In order to develop a
particular application for all different devices a particular organization needs
to have typically iOS, Android etc. team
o Maintenance overhead for upcoming platform version support,new platform
support etc.
Testing and Porting on large number of handsets/tablets
1
3/29/2012
CROSS-PLATFORM TOOL BASED MOBILE APPLICATION
DEVELOPMENT
The fragmentation and development challenges posed by native app development are
addressed by cross-platform tools. These tools in general provide a simplified single
abstraction to mobile app development and in turn hide the complexity of device
fragmentation etc.
Key Value Proposition





Single simplified programming abstraction (for e.g. Java Script, HTML etc.)
Manages device fragmentation internally
Support for newer platforms/versions is seamless
Some platforms like Titanium can provide Native Look & Feel (i.e. Usability & User
Experience)
Some platform/tools like Titanium do allow to specialize for a given platform
Key Challenges:




Performance
Some platforms/tools do NOT provide Native Look & Feel for the application
Restricted environment as the full access to native capabilities is not available.
Some platform/tools do NOT allow to specialize for a given platform
The following sections provide a brief overview of PhoneGap and Titanium platforms and
then compare them at detail level.
2
3/29/2012
PHONEGAP PLATFORM
The PhoneGap platform is widely used tool to develop cross-platform mobile apps.
Development
The PhoneGap leverages existing web technology like HTML5, JavaScript, and CSS3 etc. to
author the mobile application. The PhoneGap platform has recently been acquired by Adobe
and now comes with Adobe DW integration.
Build
The PhoneGap build tools basically packages these files as an application binary and allows
to be downloaded via app-store.
The build tools comes in two flavours


Eclipse/iOS IDE based plugins wherin a developer needs to build and configure with
the help of Eclipse plugin
A build-service, a paid service by PhoneGap that shields the application packaging
complexities and tool/installation knowhow requirements
Execution/Run-Time Architecture
At run time PhoeGap leverages platform’s browser capabilities using WebView component to
render HTML5/JS. This has standard interpretation cost and also this means clearly that
PhoneGap apps are NOT native apps
Licensing
Apache
TITANIUM PLATFORM
Titanium platform AppAccelartor is very popular cross-platform tool.
Development
The application are sketched using Java Script APIs provided by Titanium platform.
The latest version of Titanium platform can consume HTML5/CSS3 etc. as well.
Build
The platform provides a Titanium Studio, an eclipse-tool, to build the final application
binary.
3
3/29/2012
Execution/Run-Time Architecture
At run time Titanium is significantly different from PhoneGap. The titanium platform
interprets the given JS files and at runtime it maps to Native UI components. For e.g., in JS
file one would have written
var btnHomeCJ = Titanium.UI.createButton({
title : "Home",….)
At runtime this button will be interpreted to Android/Native button. In other words,
Titanium apps are true Native apps
FEATURE COMPARISON
Feature
PhoneGap
Titanium
Development technologies
HTML5,CSS3,
Java Script
JQuery Mobile
DreamWeaver
Eclipse Plugin
HTML5 and CSS3 provides
powerful features to sketch
UI
Titanium Java Script API
Yes
Yes
Yes
Yes
Yes
Yes
Possible , will require custom
NATIVE plugin development
Possibble , will require
custom NATIVE plugin
development and integration
iOS
Android
BB
Windows
Palm
Bada
OpenSource/Free
Possible , will require custom
NATIVE plugin development
Possibble , will require
custom NATIVE plugin
development
iOS
Android
WYSIWIG Editor(s)
Build Tools
User Interface
Events
Database
Communication
Access to phone’s capabilities
like Camera,Contacts etc.
NFC
Security
Platforms supported
Licensing
NOT AVAILABLE
Eclipse Tool
Provide Native L&F.
Allows to access iOS and
Android native UI
components.
Most of the events like Touch,LongPress,Swipe etc. are
supported in both the platforms
OpenSource/Free
4
3/29/2012
SWOT ANALYSIS
Strength
PhoneGap
Titanium



Leverage existing web skills
Supports all major phone platforms



Weakness
Not a true Native App

Leverages Java Script
based development
Native L&F
Allows to specialize for
Android/iOS
Professional support
available
Relatively tough to work
with as a tool

Opportunity
Threats
With HTML5 becoming a defacto standard
and recent acquisition of PhoneGap by
Adobe makes it an interesting option
Future requirement for Native L&F
RECOMMENDATION FOR I NURSE APPLICATION
DEVELOPMENT
For iNurse Tablet application, first of all the cross-platform tool based approach is
recommended as the application is a straight forward Rich Ajax Mobile Application. The
native application is preferred generally when CPU intensive tasks are to be performed for
e.g. PDF Reader of Photo Processing application etc.
The PhoneGap platform is recommended as a tool of choice for iNurse as it is simple and
serves all the current/future needs of iNurse. The PhoneGap has large user base, is backed
by Adobe and has proper tooling and professional support as well. For all these reasons
PhoneGap is best fit for iNurse application development.
5
Download