Presentation on theme: "Preparing For Enterprise Mobile Apps Norman Smith, SAIC August 15, 2011."— Presentation transcript:
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
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
Public Facing Apps vs. Enterprise Apps Public FacingEnterprise Platform SpecificFrequentlyNo, Cross-platform App is considered a...ProgramSystem MaintenanceComplicated for platform specific implementations Single code base for cross-platform simplifies maintenance and support SecurityRarely because utilize publicly available data Enterprise data access makes security critical DistributionVendor-specific App StoreControlled via private app store, either internal or external App ManagementNot requiredMinimally be able to wipe app and data
Typical Public Facing App Architecture
Typical Mobile Enterprise App Architecture
Typical App Arch Using Rhomobile Tools
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 dont 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 Phone App Cross-platform, private app store, basic app management included, security concerns covered. The Solution App with Wiki back-end feeding data to multiple smart phone types. REST/Json based messaging. Data caching on phone.
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
App Management vs. Device Management App ManagementDevice Management Data EncryptionApp data onlyEntire phone Private App StoreUsuallyRarely Wipe Just App and DataYesNo Wipe Entire DeviceNoYes Remote DiagnosticsNoYes Policy EnforcementNoYes ExamplesRhoGallery, AntennaBlackberry BIS, Iron Mountain, Sybase
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
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 firstname.lastname@example.org 865-481-2990