Issuu on Google+

Best Practices for Developing and Deploying Mobile Apps in an Enterprise Environment Presenters: William Dunn President Dunn Solutions Group

Kenneth Yeung Consulting Manager – Application Development Dunn Solutions Group Iat Ieong Consultiant – Application Development Dunn Solutions Group


Agenda

     

Introduction Value of Mobile Application Development Challenges with Mobile App Development Solution Demo Q/A


Dunn Solutions Group Overview

Chicago

Minneapolis

Raleigh

Full-service IT consulting firm Founded in 1988 Offices  Chicago  Minneapolis  Raleigh  Bangalore, India

Bangalore


Practice Areas

Application Development

Business Intelligence

Packaged Solutions

Custom App Dev

End-to-End BI

Legal Dashboard

Mobile App Dev

Data Warehouse

Visible Visitors

Portals

Dashboards

Web Design

DI + EIM/Quality

E-Commerce

Budgeting & Planning

Training Open-Enrollment

Map Intelligence On-Site + Custom Managed Services Jumpstart/Mentoring Predictive Analytics


Selected Clients

City of Chicago


Agenda

     

Introduction Value of Mobile Application Development Challenges with Mobile App Development Solution Demo Q/A


Mobile App Usage vs. Web Consumption


Business Value of Mobile Apps  Enable Workers to be productive no matter where they are  Delays cost money  Decision can be made in the “field”  Being able to close a deal right away captures more opportunity

 Every one has a smart device  Computer in your pocket  Always Connected?  Location-Based Awareness

 Productive even with an intermittent connection


Enterprise Mobile Application Case Study Company: Large medical device company Problem: They let hospitals keep their devices on consignment and bill as used. Monthly manual inventory process for Field Sales Reps was time consuming and prone to errors Solution: Field Sales Reps use custom mobile iPad application. iPad app downloads datasets from the company database and stores locally on iPad, to ensure data access. Process: Reps update inventory quantities and collect digitized authorization signature. App pushes data back into database for analysis and immediate order fulfillment. Results: • Inventory manual process eliminated • Reduction of tracking and input errors • Inventory delivered more quickly • Digitized signature eliminates paperwork


What is the #1 Consumer App?


Differences between Consumer and Enterprise Apps  Consumer Apps  Angry Birds

 Enterprise Apps  Order Entry / Inventory / Business Process


Enterprise Mobile Apps Need to Deal With  Multiple Mobile Platforms  Security  Backend Integration


Bring Your Own Device To Work (BYOD)  In the past, companies used to purchase the mobile devices for their workers.  Today, more companies are allowing workers to bring their choice of mobile device to work  Accommodating worker tech preference is part of creating flexibility work environment.  Make remote work situations more feasible  BYOD make it easier for workers to work with information during more hours and at more locations. Therefore, workers are more productive, helps the company bottom line


Mobilizing the Enterprise Is Complex


Challenges Supporting Multiple Mobile Platforms

 Enterprise Mobile Apps now need to support a range of mobile devices  Support for multiple and major mobile smartphone and tablet devices.

 Platforms    

Windows iOS Android Other?


When to go “native”?    

Objective C++ (iOS) Java (Android) C# (Windows) HTML5 / Javascript


Use native programming languages when..  Very customized user experience  Games  Visualizations  Augmented Reality

 Need to access proprietary or specialize hardware  Speed / Performance of application is critical


Why should we use HTML5, CSS, and Javascript?  HTML5 support multimedia without plugin  It is “understood” by all computers and devices  A generic approach to develop mobile apps that work across all platforms without the cost and complexity of creating and maintaining apps for multiple platforms  Leverage existing web development resources to build enterprise mobile apps. Hence, minimize additional investments


Best Practices in Mobile Development  Design Considerations  Make your text readable -- don’t force your users to double-tap the phone just to ensure they can read the basics.  One column of information rather than several. It should fits nicely on a smartphone screen.  Minimal clicking to get to important information is essential.  Prioritizing how information appears should be done by determining the pages most visited on your website and placing that content at the top.


Performance Considerations  Performance  Computing power available on mobile device still lags behind desktop.  The most recent device is still about one half of a the computer resources (CPU, RAM) of a low end desktop computer  Only limited bandwidth available to mobile devices  Only retrieve the data that the application needs, and when it needs it.  Use light weight data format like JSON instead of more verbose format such as XML in order to make the best use of limited bandwidth  Use push-notification for providing data update as oppose to periodic polling, where periodic polling is more CPU intensive, as a result draining the battery as a mush faster rate.


User Interface  Usability  Limited screen real estate

• •

Avoid use of small font size to cram more information on a screen. Scrolling in mobile app can be difficult, so limit the need to scroll

 Make use of the Summary / Detail / Edit UI paradigm  Make use of high contrast and sufficiently bright colors, so that the application can be used in low light or sunlight conditions  Ensure the UI elements are sized appropriately


Leverage Open Standards for Data Connectivity  Data Access  Rather than attempting to provide support for database client connectivity, the current paradigm for data access from mobile app is based around web services.  In the design of a web service layer for a mobile app, logic around authentication, authorization, validation, and business rules should all be executed in server side.


App Security  Security  SSL-secure connection in order to prevent the authentication token from being captured via packet sniffing on a wireless connection  If possible secure data by storing the confidential data on the server side as oppose on the client device side/  Secure client side data storage for automatically encrypted disk storage

 Enable / Disable users to access Enterprise Mobile Apps  Lost Phone  How many devices are in your mobile enterprise?


Intermittent Data Access  Connectivity  Mobile devices will frequently switch between different types of connections (3G, 4G, WiFi). Therefore, implement the app with offline access with the concepts of data synchronization.  Implement some sort of caching mechanism. The caching component can be design to periodically retrieve larger data sets.


Backend Integration  Support a range of back-end systems  Mobilize a variety of back-end systems including databases, legacy systems, applications, and web-services.

 Difficult to hand code to each back-end system or data-sources.  Buy vs. Build  Better ROI on increasing productivity


Agenda

     

Introduction Value of Mobile Application Development Challenges with Mobile App Development Solution Demo Q/A


SAP Sybase Unwired Platform (SUP)


Sybase Unwired Platform provides the “plumbing�


Connect to Data


Create Application


Consume from Devices


Control and Manage Devices


Native Application Development


Business Process Workflow Development


Benefits


Additional Benefits


Agenda

     

Introduction Value of Mobile Application Development Challenges with Mobile App Development Solution Demo Q/A


Demo


Summary    

Multiplatform Support Mobile Objects Security Backend Integration


Agenda

     

Introduction Value of Mobile Application Development Challenges with Mobile App Development Solution Demo Q/A


Dunn Solutions Group Mobility Services

Implementation and configuration services Step-by-step 1. Review and capture business requirements for your organization 2. Determine business case and ROI for implementation 3. Document and design complete solution 4. Build, test and deploy


Questions & Answers

Bill Dunn President Dunn Solutions Group bill@dunnsolutions.com

Kenneth Yeung Consulting Manager Dunn Solutions Group kyeung@dunnsolutions.com


Developing Custom Mobile Applications