Architecting mobile application

7
ARCHITECTING MOBILE APPLICATION K Senthil Kumar Assistant Professor, Sri Eshwar College of Engineering, Coimbatore – 641 202

Transcript of Architecting mobile application

Page 1: Architecting mobile application

ARCHITECTING MOBILE APPLICATIONK Senthil Kumar

Assistant Professor,

Sri Eshwar College of Engineering,

Coimbatore – 641 202

Page 2: Architecting mobile application

ARCHITECTING MOBILE APPLICATION Enterprise IT is facing strong demand for New

application to increase customer engagement. Enterprise employees also looking for app to

perform day to day activities. The first step to create any mobile application

is to select right client architecture. They are Web Based app Hybrid App(Uses HTML but implements native web

browser to access internal devices). Native App

Page 3: Architecting mobile application

CLASSIFYING APP BASED ON NEEDS Customer facing vs. employee facing Data acquisition vs. data sharing Rarely updated applications vs. frequently updated applications Textual interface similar to web sites vs. non-standard graphical

user experience Standalone vs. connected Online only vs. offline support when necessary Custom native look and feel for each OS vs. common web look

and feel Highly sensitive data vs. publicly available content Small set of highly motivated user base vs. large set of indifferent

(mildly interested) users App store vs. web based distribution approach Rarely updated app content vs. frequently updated app content Paid app vs. free app Time to market For a limited marketing campaign vs. nearly permanent app

associated with the core brand.

Page 4: Architecting mobile application

KEY TECHNICAL CRITERIA FOR EVALUATING MOBILE ARCHITECTURES

Access to Hardware Sensors Web based approach not support accessing in built device

capabilities, hybrid apps also support accessing in built device using third party plug ins, so the best architecture for apps with hardware sensors is to make use of native IDE’s.

Performance Web based approach and hybrid approach uses interpreter

to run the app which consumes more system resource. Native apps uses in built application that will decrease the resource consumption and increase the performance.

Native Look and Feel There are several webframework that provide libraries to

create web based app that looks like native app but the time for development is high. The best way to use such approach is to create multi platform app.

Page 5: Architecting mobile application

KEY TECHNICAL CRITERIA FOR EVALUATING MOBILE ARCHITECTURES

Search, Distribution and Upgrades Update is not required for web app but it is required for

native app, if app is frequently updated then web app model is best. If app is not updated frequently then native app is best.

Offline Capability If app requires offline capability then native app is best

option, otherwise web app is best

Development & Testing For a typical native application, roughly 20% of the effort is user

experience design, 20% is requirements and design, 40% is development and 20% is testing . It is same for web app or hybrid app. But if the app is targeted towards multiple platforms then the time is divided into multiple time in native app but it is same in web app or hybrid app

Page 6: Architecting mobile application

KEY TECHNICAL CRITERIA FOR EVALUATING MOBILE ARCHITECTURES

Time-to-market, Budget and Life cycle

Time to market and budget is lower for native app if our app is targeted to single platform. If it is targeted for multiple platform then web app is easier.

Total Cost of Ownership (TCO) Total cost of ownership is cheaper in web apps

Consumer Perceptions Consumer perception is very important because the

main purpose of the app is to keep customer engaged with company. A badly designed app will create bad name to the brand. So app should be developed based on customer level

Page 7: Architecting mobile application

KEY TECHNICAL CRITERIA FOR EVALUATING MOBILE ARCHITECTURES

Bring Your Own Device (BYOD): If your app is going to used in enterprise with BYOD policy

then hybrid will be best option because many employee will bring multiple devices with multiple platforms, creating app for all platform is practically not possible.

Key Challenges Performance, Usability, Data Access, Security, Connectivity