320 likes | 326 Views
This guide explores the essentials of developing effective enterprise mobile apps, highlighting key considerations like cross-platform development, security, and management. Learn about mobile app architectures, tools, and strategies for successful deployment in the enterprise environment.
E N D
Preparing For Enterprise Mobile Apps Norman Smith, SAIC August 15, 2011
Introduction • Public Facing vs Enterprise Mobile Apps • The Enterprise Prospective • Lessons Learned • Getting Started • Summary
Background • We started exploring Cross-Platform Mobile apps as an IR&D project with a national non-profit organization • Took cross-platform approach, which led to our Enterprise emphasis • Long Lessons Learned List • Mobile apps are not simply programs, they are systems • Mobile Enterprise Apps are different • Mobile Enterprise Apps are Cross-Platform
Why Users Will Benefit From Mobile Apps • Mobile apps are Universal • Cross-platform • Uses all capabilities of the smartphones • GPS, camera, autodialing, menu selections, alerts, query by location • Information presentation • Lists, images, maps • Integrated with their enterprise backend systems
Cross-Platform Devices • Phones • iOS – iPhone, Touch • Android • Blackberry • Windows Phone 7 • Tablets • iPad • Android
Mobile Capabilities That Influence Apps • GeoLocation • PIM Contacts • Camera • Barcode • Date/Time Picker • Native Menus • Tab Bar • Navigation Bar • Signature Capture • Bluetooth • Calendar • Push • Screen Rotation • Native Maps • Alert • Audio File Playback • Ringtones • NFC
The Enterprise Prospective • Everyone wants Mobile Apps • Today's mindset is phone-specific • Must take the Enterprise View • Cross-platform apps • Must consider security • Access corporate data • Apps must be managed • Cross-Platform means phones and tablet even if you don’t plan on supporting today
NASA WebTADS Mobile App The Problem Allow employees who are out of the office to enter and approve time. The Solution A time charging application with most functionality of desktop app. Private App store. The Phone App Apps for iPhone, Blackberry, and iPad. No data stored locally.
E2I Knowledge Share App The Problem Create a collaboration environment for staff frequently out of office. No more e-mail to wrong people. The Solution App with Wiki back-end feeding data to multiple smart phone types. REST/Json based messaging. Data caching on phone. The Phone App Cross-platform, private app store, basic app management included, security concerns covered.
Mobile Enterprise Apps... • Are Enterprise-centric • Security, Data usage, Architecture • Are cross-platform • Single code base is critical for long term maintenance • Standardize on a development platform • Treated as a system • Phone/tablet is client portion • Server portion feeds data to the phone • Apps/Devices must be managed • Private App Store for selective distribution
Mobile Enterprise App Security • Must be incorporated from start • Count on close examination by IT security • You'll need a Security Plan • Server may be covered by existing backup procedures
Plan on IT Security Review • What data is exposed • Architecture • What tools are used • Server scans will be required • How are known issues handled • Phone password handling
Lessons Learned • Take the Enterprise View • Use light weight messaging • Build security into the app • Enterprise Mobile Apps are cross-platform • Most Mobile Apps require a back-end server to access enterprise • Development tools make a difference • Think about division of processing between device and back-end server • UI experience in simulators are different than on the device • Screens multiply like rabbits!
Prototype Screen Map
Standardize Mobile Development • Common Development Approach • Provide Tools – Hosted Development Portal or local • Developer Training • Back-end Specifications • JAD Session for gathering initial specs • Enables developers to move from project to project
Getting Started • Have a plan • Budget for MEAP tools • Identify an evangelist • Choose a first project
Mobile Plan • Vision • Cross-platform or not • Address Security • Review Tools
Pick A Framework • What tools are available • Support for Mobile Enterprise apps? • Developer skills/preferences • Tool costs • Is the scripting language proprietary or open source? • Cross-platform?
Tool Costs • Private App Store • App/Device Management • Development environment • Phone client (most are licensed per phone/per app/sometimes per month) • Middleware
Identify An Evangelist • Do presentations • Get people thinking about potential • Get organization on board • Capture app ideas • Must be on board with chosen tools
The First Project • Choose for success • Allow extra time for learning curves • Iterate to get visibility • Look for data sources that are already REST-based • Spread the knowledge
MEAP Defined “A Mobile Enterprise Application Platform is a development framework that provides tools and client/server middleware for mobile applications.”
MEAP Tools • Vendors support to varying degrees • Features: • Middleware • Scripting Language for phone • Device management • App Management • Phone client • Private app store • Not cheap
MEAP Costs • Phone Client per device/per app and sometimes per month • Servers may be your site or theirs • Tools • Phone client • Middleware • App store • Development tools (IDE and/or Language) • App/Device Management
Vendors • Rhomobile – www.rhomobile.com • Antenna Software – www.antennasoftware.com • Kony Solutions – www.kony.com • Apperian – www.apperian.com • Mobile Iron – www.mobileiron.com • JAMF Casper – www.jamfsoftware.com • Mobiquity – http://mobiquityinc.com • Sybase – www.sybase.com
Summary • Approach from an Enterprise point of view • Mobile Enterprise Apps are universal across disciplines • Have a mobile computing plan • Identify an evangelist • Treat mobile apps as systems, not just “phone programs”
Contact Info Norman Smith SAIC Technical Fellow Assistant VP For Technology smithno@saic.com 865-481-2990