SlideShare una empresa de Scribd logo
1 de 18
Cross Platform Mobile
                              Application Architecture for
                                                Enterprise



Venkat Alagarsamy
venkat.alagarsamy@gmail.com



                                                https://www.linkedin.com/in/VenkatAlagarsamy
                                                    https://www.scribd.com/VenkatAlagarsamy
                                     https://www.facebook.com/Venkatachalapathi.Alagarsamy
Introduction



The abundance of the mobile technology, multiple
  platforms, advanced smart devices and high network
  availability triggered a sudden need for Enterprise
  Mobile Applications.

It is a trend toward a shift in work habits, with more
   employees working out of the office and using mobile
   devices and cloud services to perform business tasks.
State-of-the-art Enterprise Mobile Application

   Device Agnostic
   Screen Agnostic (Form-factor)
   Network Agnostic
   Should Work even without Network
   Offline Data Storage and Data Caching
   Device data and Over-the-air data security
   High User Experience (User Friendly) (Touch – Swipe, Pinch and Zoom)
   Access to device components (Camera, GPS, Bluetooth, eMail, Messaging etc)
   Localization
   Push Notifications
   Single sign-on
   Forward/Backward Compatibility
   Store Management
   Maintenance, Scalability and so on …….
Native vs. Web vs. Hybrid (Application Features)

                           Native          Web             Hybrid

Graphics          Native APIs       HTML, Canvas,SV   HTML, Canvas,SV
                                    G                 G
Performance       Fast              Slow              Moderate
Native Look and   Native            Emulated          Emulated
Feel
Distribution      Appstore          Web               Appstore
Native vs. Web vs. Hybrid (Device Access)

                           Native                  Web         Hybrid

Camera               Yes                  No             Yes
Notifications        Yes                  No             Yes
Local Apps like      Secured File S       Shared SQL     Secured File and
Contacts, Mail etc                                       Shared SQL
Geo Location         Yes                  Yes            Yes
Swipe                Yes                  Yes            Yes
Pinch and Zoom       Yes                  No             Yes
Connectivity         Online and Offline   Online         Online and Offline
Native vs. Web vs. Hybrid (Development)

                          Native                   Web          Hybrid

Backward/Forward   Moderate            Very High         High
Compatibility
Testing            Easy                Medium            Medium
Debugging          Easy                Difficult         Medium
Time to Market     Low                 Very Good         Moderate
Development        Objective C, Java   HTML5, CSS and    HTML5, CSS and
                                       JavaScript        JavaScript
Frameworks         LWUIT, J2ME         Struts            Phonegap,
                   Polish                                Sencha,
                                                         Convertigo
Hybrid Application



Hybrid application leverages both native and mobile web
 technologies. The mix of web and native defines degree
 of hybrid capabilities.

Gartner suggests to go for hybrid approach if an
  organization choose to port the application in more than
  two platforms.
Advantages of Hybrid Application

 Faster time to market when compared to pure
  native app development time cycles
 Lower total cost of ownership as cross platform
  adaptability is easier
 Reasonably good UX experience with the modern
  JavaScript toolkits (gestures, swipes, tap and
  transitions)
 Easy maintenance, upgrades and deployments
 Access to native features
Disadvantages Hybrid Application



 Slightly lower performance due to rendering of web
  pages and accessing data through multiple layers
 Limited UX experience compared to native UI
 Security concerns
Some Key Technologies

HTML5 (Support- http://mobilehtml5.org/)
CSS 3
JavaScript
JQuery
Backbone
ExtJS
Node
Frameworks: Phonegap, Sencha, Convertigo
Testflight
Hybrid – Offline Storage



Offline DB: SQLite, UltraLite, GoogleGears
Offline Encrypted DB: SQL Cipher
Offline DB are Relational DB
Can perform SQL queries on this DB
Can store HTML code as part of a DB for
 high performance
Hybrid – Security Risks

Cross site scripting (Prevention of malicious
 scripts)
Cross site Request Forgery (Cookie thefts)
SQL injections
Secured local storage (encryption)
Data encryption: additional encryption may
 be required for data transfers between web
 and native contents or data storages on the
 device database.
Hybrid – Performance

Service code (HTML and JavaScript) from
  Server – This could be avoided by storing the
  code either as a part of a footprint or in offline
  data.
Loading of larger images – Store the data
  locally then optimize and render according to
  device factors.
Over-air-data transfer
Encryption and Decryption time
.
Hybrid – Architecture
Hybrid – Architectural Approach
   (Custom Web Container – Component Access)

By leveraging WebKit engine, the custom
 web container can provide access to devices
 by messaging. The
WebKit engines are very native to each
 platform
JavaScript or framework libraries can access
 the WebKit engine APIs.
Hybrid – Architectural Approach
   (Custom Web Container – Device Rendering)


Using WebView control (iOS UIWebView or
 Andriod WebView), the hybrid apps renders
 HTML5.

WebView uses the native browser rendering
 engine and not the browser.
Hybrid – Build and Deployment

Once the application is developed, multiple
 foot print for very device should be created.
There are tools available to do that (like
 adobe for Phonegap)
The built application can be distributed using
 app stores (Commercial or Enterprise)
If performance has to be improved, the web
 content can be embedded on the device as
 part of the local footprint.
Conclusion

If the application has to support more than
 two platforms.
If time to market is low
Total cost of the ownership is significant
Uniform user experience across multiple
 devices
Developers availability

Invest less, address wide and grow rapidly…

Más contenido relacionado

La actualidad más candente

Mikrofrontend a Module Federation
Mikrofrontend a Module FederationMikrofrontend a Module Federation
Mikrofrontend a Module FederationThe Software House
 
Web Engineering- Web Application Categories & Characteristics Book Gerti Kappel
Web Engineering- Web Application Categories & Characteristics Book Gerti KappelWeb Engineering- Web Application Categories & Characteristics Book Gerti Kappel
Web Engineering- Web Application Categories & Characteristics Book Gerti KappelARVIND PANDE
 
architecture of mobile software applications
architecture of mobile software applicationsarchitecture of mobile software applications
architecture of mobile software applicationsHassan Dar
 
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...Simplilearn
 
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...Amazon Web Services
 
Web-Development-ppt (1).pptx
Web-Development-ppt (1).pptxWeb-Development-ppt (1).pptx
Web-Development-ppt (1).pptxRaihanUddin57
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure rupeshchanchal
 
Tech Mind Maps - Booklet Preview
Tech Mind Maps - Booklet PreviewTech Mind Maps - Booklet Preview
Tech Mind Maps - Booklet PreviewMichal Juhas
 
Web Development Ppt
Web Development PptWeb Development Ppt
Web Development PptBruce Tucker
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...Simplilearn
 
Web Application Performance
Web Application PerformanceWeb Application Performance
Web Application PerformanceCodeFireTech
 
Shivam Sharma resume(.Net Developer)
Shivam Sharma resume(.Net Developer)Shivam Sharma resume(.Net Developer)
Shivam Sharma resume(.Net Developer)Shivam Sharma
 
Mobile app capability latest deck
Mobile app capability latest deckMobile app capability latest deck
Mobile app capability latest deckNilesh Desai
 
qa intern powerpoint
qa intern powerpointqa intern powerpoint
qa intern powerpointCollin Chin
 

La actualidad más candente (20)

Mikrofrontend a Module Federation
Mikrofrontend a Module FederationMikrofrontend a Module Federation
Mikrofrontend a Module Federation
 
Web Engineering- Web Application Categories & Characteristics Book Gerti Kappel
Web Engineering- Web Application Categories & Characteristics Book Gerti KappelWeb Engineering- Web Application Categories & Characteristics Book Gerti Kappel
Web Engineering- Web Application Categories & Characteristics Book Gerti Kappel
 
architecture of mobile software applications
architecture of mobile software applicationsarchitecture of mobile software applications
architecture of mobile software applications
 
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
 
Web Engineering
Web EngineeringWeb Engineering
Web Engineering
 
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...
CI/CD Best Practices for Building Modern Applications - MAD302 - Anaheim AWS ...
 
Web-Development-ppt (1).pptx
Web-Development-ppt (1).pptxWeb-Development-ppt (1).pptx
Web-Development-ppt (1).pptx
 
DevSecOps
DevSecOpsDevSecOps
DevSecOps
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Tech Mind Maps - Booklet Preview
Tech Mind Maps - Booklet PreviewTech Mind Maps - Booklet Preview
Tech Mind Maps - Booklet Preview
 
Web Development Ppt
Web Development PptWeb Development Ppt
Web Development Ppt
 
Web development
Web developmentWeb development
Web development
 
Comenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidoresComenzando con Arquitecturas sin servidores
Comenzando con Arquitecturas sin servidores
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
 
Web Application Performance
Web Application PerformanceWeb Application Performance
Web Application Performance
 
Shivam Sharma resume(.Net Developer)
Shivam Sharma resume(.Net Developer)Shivam Sharma resume(.Net Developer)
Shivam Sharma resume(.Net Developer)
 
Mobile app capability latest deck
Mobile app capability latest deckMobile app capability latest deck
Mobile app capability latest deck
 
DevSecOps
DevSecOpsDevSecOps
DevSecOps
 
qa intern powerpoint
qa intern powerpointqa intern powerpoint
qa intern powerpoint
 
DevSecOps: What Why and How : Blackhat 2019
DevSecOps: What Why and How : Blackhat 2019DevSecOps: What Why and How : Blackhat 2019
DevSecOps: What Why and How : Blackhat 2019
 

Destacado

Lucio Grenzi - Use Ionic framework to develop mobile application
Lucio Grenzi - Use Ionic framework to develop mobile applicationLucio Grenzi - Use Ionic framework to develop mobile application
Lucio Grenzi - Use Ionic framework to develop mobile applicationCodemotion
 
Jab12 - Joomla! architecture revealed
Jab12 - Joomla! architecture revealedJab12 - Joomla! architecture revealed
Jab12 - Joomla! architecture revealedOfer Cohen
 
AWS and VMware: How to Architect and Manage Hybrid Environments
AWS and VMware: How to Architect and Manage Hybrid EnvironmentsAWS and VMware: How to Architect and Manage Hybrid Environments
AWS and VMware: How to Architect and Manage Hybrid EnvironmentsRightScale
 
Introduction to Hybrid Application Development
Introduction to Hybrid Application DevelopmentIntroduction to Hybrid Application Development
Introduction to Hybrid Application DevelopmentDotitude
 
ASAS 2013 - Architecture for dynamic mobile forms at MoreApps
ASAS 2013 - Architecture for dynamic mobile forms at MoreApps ASAS 2013 - Architecture for dynamic mobile forms at MoreApps
ASAS 2013 - Architecture for dynamic mobile forms at MoreApps Avisi B.V.
 

Destacado (6)

Lucio Grenzi - Use Ionic framework to develop mobile application
Lucio Grenzi - Use Ionic framework to develop mobile applicationLucio Grenzi - Use Ionic framework to develop mobile application
Lucio Grenzi - Use Ionic framework to develop mobile application
 
Jab12 - Joomla! architecture revealed
Jab12 - Joomla! architecture revealedJab12 - Joomla! architecture revealed
Jab12 - Joomla! architecture revealed
 
AWS and VMware: How to Architect and Manage Hybrid Environments
AWS and VMware: How to Architect and Manage Hybrid EnvironmentsAWS and VMware: How to Architect and Manage Hybrid Environments
AWS and VMware: How to Architect and Manage Hybrid Environments
 
Introduction to Hybrid Application Development
Introduction to Hybrid Application DevelopmentIntroduction to Hybrid Application Development
Introduction to Hybrid Application Development
 
ASAS 2013 - Architecture for dynamic mobile forms at MoreApps
ASAS 2013 - Architecture for dynamic mobile forms at MoreApps ASAS 2013 - Architecture for dynamic mobile forms at MoreApps
ASAS 2013 - Architecture for dynamic mobile forms at MoreApps
 
Hybrid mobile apps
Hybrid mobile appsHybrid mobile apps
Hybrid mobile apps
 

Similar a Cross platform mobile application architecture for enterprise

HTML5 and the dawn of rich mobile web applications
HTML5 and the dawn of rich mobile web applicationsHTML5 and the dawn of rich mobile web applications
HTML5 and the dawn of rich mobile web applicationsJames Pearce
 
Evolving Mobile Architectures
Evolving Mobile ArchitecturesEvolving Mobile Architectures
Evolving Mobile Architecturessgleadow
 
IBM MobileFirst - Hybrid Application Development with Worklight
IBM MobileFirst - Hybrid Application Development with WorklightIBM MobileFirst - Hybrid Application Development with Worklight
IBM MobileFirst - Hybrid Application Development with WorklightIBIZZ
 
Engage 2013 - Mobile Measurement Tactics
Engage 2013 - Mobile Measurement TacticsEngage 2013 - Mobile Measurement Tactics
Engage 2013 - Mobile Measurement TacticsWebtrends
 
The Modern Web, Part 1: Mobility
The Modern Web, Part 1: MobilityThe Modern Web, Part 1: Mobility
The Modern Web, Part 1: MobilityDavid Pallmann
 
Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Sreeni Pamidala
 
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...RIA RUI Society
 
Building cross platform mobile web apps
Building cross platform mobile web appsBuilding cross platform mobile web apps
Building cross platform mobile web appsJames Pearce
 
Enterprise Mobility with Sybase Unwired Platform
Enterprise Mobility with Sybase Unwired PlatformEnterprise Mobility with Sybase Unwired Platform
Enterprise Mobility with Sybase Unwired PlatformInfosys
 
Understanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesUnderstanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesSalesforce Developers
 
An Intro to Mobile HTML5
An Intro to Mobile HTML5An Intro to Mobile HTML5
An Intro to Mobile HTML5James Pearce
 
When worlds Collide: HTML5 Meets the Cloud
When worlds Collide: HTML5 Meets the CloudWhen worlds Collide: HTML5 Meets the Cloud
When worlds Collide: HTML5 Meets the CloudDavid Pallmann
 
Developing the Next Generation Embedded HMIs
Developing the Next Generation Embedded HMIs Developing the Next Generation Embedded HMIs
Developing the Next Generation Embedded HMIs mentoresd
 
Makersbay Nex-Gen Software Development Overview
Makersbay Nex-Gen Software Development OverviewMakersbay Nex-Gen Software Development Overview
Makersbay Nex-Gen Software Development Overviewslodha
 
Security strategies for html5 enterprise mobile apps
Security strategies for html5 enterprise mobile appsSecurity strategies for html5 enterprise mobile apps
Security strategies for html5 enterprise mobile appsGizmox
 
HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1James Pearce
 
Mobile Drupal
Mobile DrupalMobile Drupal
Mobile DrupalTwinbit
 

Similar a Cross platform mobile application architecture for enterprise (20)

HTML5 and the dawn of rich mobile web applications
HTML5 and the dawn of rich mobile web applicationsHTML5 and the dawn of rich mobile web applications
HTML5 and the dawn of rich mobile web applications
 
Evolving Mobile Architectures
Evolving Mobile ArchitecturesEvolving Mobile Architectures
Evolving Mobile Architectures
 
IBM MobileFirst - Hybrid Application Development with Worklight
IBM MobileFirst - Hybrid Application Development with WorklightIBM MobileFirst - Hybrid Application Development with Worklight
IBM MobileFirst - Hybrid Application Development with Worklight
 
Salesforce touch
Salesforce touchSalesforce touch
Salesforce touch
 
Engage 2013 - Mobile Measurement Tactics
Engage 2013 - Mobile Measurement TacticsEngage 2013 - Mobile Measurement Tactics
Engage 2013 - Mobile Measurement Tactics
 
The Modern Web, Part 1: Mobility
The Modern Web, Part 1: MobilityThe Modern Web, Part 1: Mobility
The Modern Web, Part 1: Mobility
 
Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]
 
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
 
The Enterprise Dilemma: Native vs. Web
The Enterprise Dilemma: Native vs. WebThe Enterprise Dilemma: Native vs. Web
The Enterprise Dilemma: Native vs. Web
 
Building cross platform mobile web apps
Building cross platform mobile web appsBuilding cross platform mobile web apps
Building cross platform mobile web apps
 
Enterprise Mobility with Sybase Unwired Platform
Enterprise Mobility with Sybase Unwired PlatformEnterprise Mobility with Sybase Unwired Platform
Enterprise Mobility with Sybase Unwired Platform
 
Understanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesUnderstanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile Architectures
 
An Intro to Mobile HTML5
An Intro to Mobile HTML5An Intro to Mobile HTML5
An Intro to Mobile HTML5
 
When worlds Collide: HTML5 Meets the Cloud
When worlds Collide: HTML5 Meets the CloudWhen worlds Collide: HTML5 Meets the Cloud
When worlds Collide: HTML5 Meets the Cloud
 
Developing the Next Generation Embedded HMIs
Developing the Next Generation Embedded HMIs Developing the Next Generation Embedded HMIs
Developing the Next Generation Embedded HMIs
 
Makersbay Nex-Gen Software Development Overview
Makersbay Nex-Gen Software Development OverviewMakersbay Nex-Gen Software Development Overview
Makersbay Nex-Gen Software Development Overview
 
Security strategies for html5 enterprise mobile apps
Security strategies for html5 enterprise mobile appsSecurity strategies for html5 enterprise mobile apps
Security strategies for html5 enterprise mobile apps
 
HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1
 
Mobile Drupal
Mobile DrupalMobile Drupal
Mobile Drupal
 
Native Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile AppsNative Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile Apps
 

Más de Venkat Alagarsamy

Más de Venkat Alagarsamy (8)

Wearable Tech - What is Next?
Wearable Tech - What is Next?Wearable Tech - What is Next?
Wearable Tech - What is Next?
 
IoT in Healthcare
IoT in HealthcareIoT in Healthcare
IoT in Healthcare
 
Introduction to NFC
Introduction to NFCIntroduction to NFC
Introduction to NFC
 
Enterprise mobileapplicationsecurity
Enterprise mobileapplicationsecurityEnterprise mobileapplicationsecurity
Enterprise mobileapplicationsecurity
 
Application of RFID in Fashion Retail outlet
Application of RFID in Fashion Retail outletApplication of RFID in Fashion Retail outlet
Application of RFID in Fashion Retail outlet
 
Introduction to RFID
Introduction to RFIDIntroduction to RFID
Introduction to RFID
 
Software Task Estimation
Software Task EstimationSoftware Task Estimation
Software Task Estimation
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testing
 

Cross platform mobile application architecture for enterprise

  • 1. Cross Platform Mobile Application Architecture for Enterprise Venkat Alagarsamy venkat.alagarsamy@gmail.com https://www.linkedin.com/in/VenkatAlagarsamy https://www.scribd.com/VenkatAlagarsamy https://www.facebook.com/Venkatachalapathi.Alagarsamy
  • 2. Introduction The abundance of the mobile technology, multiple platforms, advanced smart devices and high network availability triggered a sudden need for Enterprise Mobile Applications. It is a trend toward a shift in work habits, with more employees working out of the office and using mobile devices and cloud services to perform business tasks.
  • 3. State-of-the-art Enterprise Mobile Application  Device Agnostic  Screen Agnostic (Form-factor)  Network Agnostic  Should Work even without Network  Offline Data Storage and Data Caching  Device data and Over-the-air data security  High User Experience (User Friendly) (Touch – Swipe, Pinch and Zoom)  Access to device components (Camera, GPS, Bluetooth, eMail, Messaging etc)  Localization  Push Notifications  Single sign-on  Forward/Backward Compatibility  Store Management  Maintenance, Scalability and so on …….
  • 4. Native vs. Web vs. Hybrid (Application Features) Native Web Hybrid Graphics Native APIs HTML, Canvas,SV HTML, Canvas,SV G G Performance Fast Slow Moderate Native Look and Native Emulated Emulated Feel Distribution Appstore Web Appstore
  • 5. Native vs. Web vs. Hybrid (Device Access) Native Web Hybrid Camera Yes No Yes Notifications Yes No Yes Local Apps like Secured File S Shared SQL Secured File and Contacts, Mail etc Shared SQL Geo Location Yes Yes Yes Swipe Yes Yes Yes Pinch and Zoom Yes No Yes Connectivity Online and Offline Online Online and Offline
  • 6. Native vs. Web vs. Hybrid (Development) Native Web Hybrid Backward/Forward Moderate Very High High Compatibility Testing Easy Medium Medium Debugging Easy Difficult Medium Time to Market Low Very Good Moderate Development Objective C, Java HTML5, CSS and HTML5, CSS and JavaScript JavaScript Frameworks LWUIT, J2ME Struts Phonegap, Polish Sencha, Convertigo
  • 7. Hybrid Application Hybrid application leverages both native and mobile web technologies. The mix of web and native defines degree of hybrid capabilities. Gartner suggests to go for hybrid approach if an organization choose to port the application in more than two platforms.
  • 8. Advantages of Hybrid Application  Faster time to market when compared to pure native app development time cycles  Lower total cost of ownership as cross platform adaptability is easier  Reasonably good UX experience with the modern JavaScript toolkits (gestures, swipes, tap and transitions)  Easy maintenance, upgrades and deployments  Access to native features
  • 9. Disadvantages Hybrid Application  Slightly lower performance due to rendering of web pages and accessing data through multiple layers  Limited UX experience compared to native UI  Security concerns
  • 10. Some Key Technologies HTML5 (Support- http://mobilehtml5.org/) CSS 3 JavaScript JQuery Backbone ExtJS Node Frameworks: Phonegap, Sencha, Convertigo Testflight
  • 11. Hybrid – Offline Storage Offline DB: SQLite, UltraLite, GoogleGears Offline Encrypted DB: SQL Cipher Offline DB are Relational DB Can perform SQL queries on this DB Can store HTML code as part of a DB for high performance
  • 12. Hybrid – Security Risks Cross site scripting (Prevention of malicious scripts) Cross site Request Forgery (Cookie thefts) SQL injections Secured local storage (encryption) Data encryption: additional encryption may be required for data transfers between web and native contents or data storages on the device database.
  • 13. Hybrid – Performance Service code (HTML and JavaScript) from Server – This could be avoided by storing the code either as a part of a footprint or in offline data. Loading of larger images – Store the data locally then optimize and render according to device factors. Over-air-data transfer Encryption and Decryption time .
  • 15. Hybrid – Architectural Approach (Custom Web Container – Component Access) By leveraging WebKit engine, the custom web container can provide access to devices by messaging. The WebKit engines are very native to each platform JavaScript or framework libraries can access the WebKit engine APIs.
  • 16. Hybrid – Architectural Approach (Custom Web Container – Device Rendering) Using WebView control (iOS UIWebView or Andriod WebView), the hybrid apps renders HTML5. WebView uses the native browser rendering engine and not the browser.
  • 17. Hybrid – Build and Deployment Once the application is developed, multiple foot print for very device should be created. There are tools available to do that (like adobe for Phonegap) The built application can be distributed using app stores (Commercial or Enterprise) If performance has to be improved, the web content can be embedded on the device as part of the local footprint.
  • 18. Conclusion If the application has to support more than two platforms. If time to market is low Total cost of the ownership is significant Uniform user experience across multiple devices Developers availability Invest less, address wide and grow rapidly…