Join Raj Polikepati, Director of Application Development at Texas.gov, as he leads a practical discussion about how to act on your mobile strategy. A panel of mobile savvy leaders present different mobile technologies and the pros and cons of each as they pertain to the eGovernment space. They will also address skill requirements, API services, and architectural features
WORLD DEVELOPMENT REPORT 2024 - Economic Growth in Middle-Income Countries.
Beyond Strategy: Building Your Mobile Capabilities
1. Beyond Strategy: Building Your
Mobile Capabilities
Presented by:
Raj Polikepati
Director of App Development
Texas.gov
TASSCC Technology Education Conference
April 10, 2015
2. 4/15/2015 2
Agenda
Objectives of Mobile Strategy
Mobile 101
Technology Options
API/Data
Team Roles & Responsibilities
Building Mobile Skills & Competency
Closing Thoughts
3. Start by asking the right questions – “Will mobile …”
Improve
agency
results?
Reach a
targeted
constituent
niche?
Include
features
that are
needed?
Benefit
internal
operations?
Be adequately
funded?
Require a
significant
commitment?
Deliver
larger
benefits?
3
Identify Your Real Objectives
4. Constituent / User
Easily accessible info
High expectations
Simple, easy-to-use mobile
experience
Different needs depending
on service (1x/day vs.
1x/year)
Speed and safety
4/15/2015
Agency
Easy to interact with
Transparent
Timely responses
Fiscally responsible
Internal effectiveness /
efficiency
Maximize technology
resources
4
Identify Your Real Objectives
Consider constituent and agency perspectives
5. 4/15/2015 5
Mobile Features
Geo-location
• Leverages GPS hardware on your device
to pinpoint locations
• Searches for what’s nearby (buildings,
addresses, parks, restaurants, etc.)
• Provides turn-by-turn directions
• Enables sharing of location with others
• Geotags photos taken with phone
Personal Data / History
• Information stored locally on device
• Contact info/lists
• GPS location
• Browsing & download history
• Cached data
• Images
Google
Maps
Map My
Run
Find My
Phone
Local
Businesses
54% of mobile users who
download apps decided
not to install a
phone app
when they discovered how
much personal info they need
to share in order to use it.
6. 4/15/2015 6
Mobile Features
Camera
• Able to take digital still photos and videos
• Input device for other applications
• Scanner
• Object recognition to provide information
about that object
• Web cam for video conferencing
• Optical Character Recognition (OCR)
Push Notifications
• Send information to users even when the
app isn’t in use
• Keep users updated on activity that occurs
within the application(s)
8. Pros
Best usability, features, and overall
mobile experience
Richer functionality and graphical
effects
Full access to device functions and
sensors
Presence on the app store
Fast startup and access (after initial
download)
Content is generally available off-line
Users are generally more engaged
with the application
4/15/2015
Cons
Individual code for each platform
Requires knowledgeable
programming resource
Limits audience
Requires redistribution for
updates and maintenance
Requires app store vendor
approval
Increases privacy concerns
8
What is a Native Mobile App?
Software developed for a specific mobile device
platform and a specific language
9. Pros
Device and browser agnostic
Easier to develop and support
Improved SEO single code base
Site not downloaded via an App
Store
No costly, future upgrades when
new mobile devices hit market
Consistent user experience
across all devices
Very scalable approach
Leverage some phone features
with HTML5
4/15/2015
Cons
Cross-browser and
device incompatibilities
Slower load times
Content is not
necessarily mobile-
friendly
When you are serving
the same HTML, source
order cannot be changed
No app store presence,
so limited discoverability
9
What is Mobile Responsive Design?
Serves the same HTML to every device and adapts its
presentation based on the device’s specific capabilities
10. Pros
Reaches widest range of devices
Leverages same code as website
Easier to develop & support
App store presence
Faster development process
than native apps
Provides offline modes for
access without network
connectivity
Bill content delivered via web
apps independently, such as by
subscription
4/15/2015
Cons
Performance slightly
diminished
Users expect similar
experience as native app
Software downloads
from web required
Available only through
dedicated app stores
Requires some app store
approval and updates
10
What is Hybrid Mobile Design?
Native mobile experience, with advantage of
write once, run anywhere
12. 4/15/2015 12
Will the app be used
frequently?
Do you have
plenty of time
and resources?
Responsive
Design Web
Application
Yes
No
Hybrid or
Responsive
Design
Yes
No
Will it be used by
employees or
constituents?
Is the app highly
interactive?
Constituents
Yes
No
Hybrid
Employees
Do you need to
support multiple
operating
systems?
No
Native
Yes
Start Here
Which MOBILE architecture is right for
YOU?
13. Considerations BEFORE you launch your mobile strategy -
this is what you’ll have to live with post-launch …
• Operating costs – all mobile initiatives have incremental
costs including Native, Responsive Design, and Hybrid
• You will be living in a new world – developer skills, social
skills, constituent’s mobile expectations
• Extremely fast-changing technologies – need to keep up
or else
• Consider a “Think Mobile First” design approach when
developing new applications – helps with usability and
effectiveness of mobile and desktop apps
4/15/2015 13
Ongoing Ownership & Operations
14. 4/15/2015 14
APIs: Where Rubber Meets the Road
Application is only as good as the data
Write once; invoke everywhere
Multi-channel delivery
• Desktop web/native mobile/responsive
• Kiosk/Over-the-Counter (OTC)
• Interagency integrations, data warehouse
Open API Strategy
• Crowdsourcing App Dev
• Cross-Agency GovDelivery
• Lower cost of ownership
18. Product Manager
User Interface/User
Experience Experts
Engineering
Quality Assurance
4/15/2015 18
Roles & Responsibilities
“Coming together is a beginning. Keeping together is
progress. Working together is success." --Henry Ford
19. CEO of the App
• What’s different?
– Mobile Ecosystem vs.
business SME
– Extensive behavioral
research
– Device-centric vs.
consistent look and
feel
4/15/2015 19
Mobile Product Manager – Who?
21. What’s Important?
• Thrives in iterative/agile
environment
• Instrumentation of
metrics
• Focus on fine-grained
API’s (vs. composite
services)
• PolyGlot (Objective
C/Swift/Java(Android)/HT
ML/CSS/JS)
4/15/2015 21
Engineering
22. Pragmatic app testing
Comprehensive testing on each
device
Right mix of real devices and
emulators
In-the-wild testing
Attention to metrics
Most importantly –
PERSEVERANCE!!!
4/15/2015 22
QA
23. Responsive Web & Native
Texas.gov Site Templates – Contact Us
• Good resources on
– Team Treehouse
– Code School
– www.AListApart.com
– Lynda.com
– Apple iOS Developer
– Android Developer
• Great Prototype Collaboration Website: Invisionapp.com
4/15/2015 23
Mobile Skills and Competencies
24. For Responsive, start with a framework like
Twitter Bootstrap, Gumby
While developing, use the built-in
“responsive design view” tool in
Firefox or Chrome
Highly recommend the “Responsive Design”
book from A Book Apart
Programming in Objective-C (6th Edition)
(Developer's Library) - By Stephen G. Kochan
4/15/2015 24
Mobile Skills and Competencies
25. Hybrid Mobile
• PhoneGap
• Appcelerator Titanium
• Mobile Angular UI
• Sencha Touch
4/15/2015 25
Mobile Skills and Competencies
26. 4/15/2015 26
A scalable approach is always repeatable
Experiment with approach from time to
time
Leverage API benefits for mobile
governance
Choices are abundant with pros and cons
Adopt the tools that your team is most
comfortable
Mobile-First shift is less technical and
more cultural
Designated champion – Product Manager
Real use cases will get sponsorship!!!
Closing
Thoughts
27. 4/15/2015 27
Raj Polikepati
Director of Development
rpolikepati@egov.com
512-651-9801
Daniel Moreno
Outreach Associate
dmoreno@egov.com
512-651-9803
Contacts
Editor's Notes
Objectives help with determining the technology approach.
This is key – technology is important, but you need to focus on objectives first. Easy to get lost in technology, if objectives are not clearly defined.
What will mobile specifically do to improve your agency results?
Do you have a specific constituent niche that you need to reach?
Do you have a clear picture of features that are needed – geo location, social, push notifications, constituent convenience?
Are there agency internal operations that could benefit from mobile?
What level of investment (people, dollars) is appropriate – how much to spend?
How committed are you to mobile – hobby or all in?
Is there a “killer app” that could deliver large benefits?
Do you have a champion that can help make mobile a success?
Next level of understanding objectives is to consider Constituent and Agency perspectives.
Constituent / User
Wants information at their fingertips
Expects that government is as effective as private sector
Wants a simple, easy-to-use mobile experience
Have different needs depending on application – 1x / day vs. 1x / year
Expects mobile sites to load as fast or faster than desktop sites
Agency
Wants to be easy to interact with
Strives to be transparent
Needs immediate responses and interactions with constituents
Must apply limited budget smartly
Could use mobile to improve internal effectiveness / efficiency
Needs to maximize use of technology resources
Researching Mobile Features is next step in developing your Mobile Strategy.
Personal data/history:
The Pew Internet Project survey found that 54 percent of mobile users who download apps have decided to not install a cell phone app when they discovered how much personal information they would need to share in order to use it. Read more: http://www.dailymail.co.uk/sciencetech/article-2198856/Fears-privacy-leading-app-revolt-researchers-find.html#ixzz277pooTI8
Camera
A mobile camera able to take digital still photos and videos and used as an input device for other applications
Scanner (bar codes, QR codes, business cards, documents, images, etc)
Object recognition to provide information about that object (augmented reality)
Web cam for video conferencing (Skype)
Optical Character Recognition (OCR)
Push Notifications
A way for an app to send information to your phone (via a badge, alert, or pop up message) even when the app isn’t in use
To keep you updated on activity that occurs within the application(s)
Native and Responsive Design are “bookends” of Mobile technology.
On one end of the “bookend” scale is Native Mobile – think “app store.”
Pros
Typically provides the best usability, best features, and best overall mobile experience.
Richer functionality and graphical effects
Full access to device functions and sensors (camera, GPS, push notifications, calendar, microphone, contacts, accelerometer, etc.)
Presence on the app store MarketPlace (iTunes/Android/Windows Phone)
Fast in startup and access (after initial downloaded) since it’s one tap from the screen
Content is generally available off-line
Users are generally more engaged with the application
Cons
Must develop individual code for each platform
Requires programming resource with Objective-C, Java, .NET, and/or Javascript knowledge
Limited audience: Application is open only to audience of that platform
Requires redistribution for each future update and maintenance
App store vendor approval is required
Increased privacy concerns since native apps can gain access to personal data stored on the device w/o user’s consent.
On the other end of the “bookend” is responsive design (is also called Mobile Web)
Examples:
Texas.gov Solutions website - http://www.texas.gov/en/Solutions/Pages/default.aspx
Board of Nursing License Renewal – https://txapps.texas.gov/NASApp/bnexam/BNExamManager
Mesquite Utility Payment – https://apps2.portal.texas.gov/UtilityPay/TX/COM/UtilityPayCOM/en/Welcome/Index
https://txapps.texas.gov/tolapp/disasterfund/home.do
List of public/private websites –
http://mediaqueri.es/
Texas A&M Go Mobile - http://gomobile.tamu.edu/index.php
Popular Newspaper Agency - http://www.bostonglobe.com/
Serves the same HTML to every device and adapting its presentation (mostly through CSS) based on the specific capabilities of the device being used to access it (desktop, tablet, mobile)
Pros
Device and browser agnostic - can reach the widest range of devices
Easier to develop and support – HTML5, CSS, & Javascript knowledge
Improved SEO - because your content is on the web, it's searchable
Single code base – code reuse
Site does not need to be downloaded via an App Store
No costly, future upgrades when new mobile devices hit the market
Consistent user experience across all devices
Very scalable approach
Leverage some phone features with HTML5
Cons
Cross-browser and device incompatibilities - some mobile platforms still come with old browsers that do not support higher functions
Load times tend to be slower
Content is not necessarily mobile-friendly
When you are serving the same HTML, source order cannot be changed
No app store presence, so limited discoverability
In the middle of the “bookends” is Hybrid Mobile – mix of Native and Responsive Design
Written with the same technology used for websites and mobile web implementations that is hosted or runs inside a thin native container and provides access to native platform features on a mobile device.
Native mobile experience, with advantage of “write once, run anywhere”
Pros
Device and browser agnostic - can reach the widest range of devices
Can leverage the same code as the website
Easier to develop and support – HTML5, CSS, & Javascript knowledge
App Store MarketPlace presence
Tends to have a faster development process over native apps
Provides offline modes that can be accessed without network connectivity
Content delivered through Web apps can be billed independently, such as by subscription.
Cons
Sacrifice small amounts of performance
Does not feel or behave like a native application - users may be expecting this
All or some parts of the software are downloaded from the Web each time it is run.
Available only through dedicated app stores
Still requires some app store approval and updates
http://www.google.com/url?sa=i&rct=j&q=&esrc=s&source=images&cd=&ved=0CAcQjRw&url=http%3A%2F%2Fwww.getelastic.com%2Fmobile-web-native-or-hybrid-app-decision-chart%2F&ei=YcEVVbGWH8y0yASR0YHQAg&bvm=bv.89381419,d.eXY&psig=AFQjCNHpLsyp7Hrvih9uuYF6r5KTLNTi-w&ust=1427575515578225
http://www.getelastic.com/mobile-web-native-or-hybrid-app-decision-chart/
RESS is any mobile device and image replacement. Note: This shouldnt be confused with one specific implementation which is in beta at www.RESS.io
Final consideration of evaluating your strategy: we’ve already discussed (1) Asking the right questions, (2) Discussed technology landscape – so (3) is ongoing operations/ownership
Most applications are visualization of information which is stored as data. Due to real-estate limitation, very precise and minimal meaningful data needs to be displayed to the user and hence unlike composites, micro services providing fine-grain API.
Crowdsourcing either through campaign’s, such as,
Online competitions
Hack-a-thons
School Projects
Reference: http://www.bamboorocketapps.com/rest-json-vs-soap-xml/
Size
REST is a lot smaller and less bloated than SOAP-XML therefore you will be passing much less data over the network, which is particularly important for mobile devices.
Efficiency
REST-JSON is also easier to parse the data so therefore easier to extract and convert the data, so therefore requires much less from the CPU from the client.
Caching
REST-JSON provides improved response times and server loading due to support from caching
Implementation
REST-JSON interfaces are much easier to design and implement.
Versions of the app running on the device can be updated at a different time than the new functionality addition
Functionality should be progressively added. It is contrary to mindset of graceful degradation
Fine-grained
Most API are called from internal servers. Since the call is coming from unlimited clients a thoroughly vetted
Secured Access, such as oauth, token exchange, etc
Since services are restful, CDN – Content delivery networks, such as Akamai, Amazon, Azure
Mobile Product Managers are subtle difference from traditional product managers. Need to familiar with the supporting platforms, be more ruthless and objective in selection of the toolset. Understand the dashboard vs minimalist screen info. Store optimization etc.
Product Manager:
Vision
Roadmap
Business
Technology
User Experience
Data Analytics
Interrupt driven – Mobile user experience is lot more interrupt driven than otherwise. So the UX navigation is lot more challenging.
Contextual – Location, Camera, Fingerprint, etc
Device centric, UI to follow to device best practices
Size, memory, bandwidth
The complexities of mobile are such that you cannot completely test every aspect of a mobile app. There are a number of external and internal factors to be considered, including:
• Multiple devices and OS versions
• Multiple networks
• Multiple cloud service APIs
The most pragmatic (cost and time effective) approach is to test key usage patterns (key devices, OS, carriers etc.) and focus on instrumenting the app to collect, analyze and iterate using real-world data.
In the wild testing: (provided by vendors, such as, Applause, Browser Stack
On a Range of Devices:
On Real Devices:
On-Location: different network quality
Different patch sets: Not everyone is up-to-date on phone. Including the os and also the application version.
PhoneGap – Just packages a mobile ready web application into a native app. It can be built using any home built UI or can leverage other web frameworks such as Bootstrap, Jquery Mobile, Knockout.js and/or for that matter Angular JS. There are some API to access phone hardware features and also possibly write your own custom plugins.
Appcelerator – JavaScript API – Opinioned Framework with lot of conventions
Mobile Angular UI is based on the most popular open source web frameworks – Angular JS and Bootstrap.
Angular JS was developed originally at Google
Scalable approach is always repeatable. Keep this as part of minimal viable product checklist always.