SlideShare une entreprise Scribd logo
1  sur  100
Mobile Application Development
Eric Cattoir
IBM Rational Client Technical Professional
© 2014 International Business Machines Corporation 2
Disclaimer
• This presentation is based on a lot of sources – See also references slide in
back
• Purpose is to give an overview – not to be complete on any of the technologies
• Things in this world are evolving quickly
• We discuss a lot of industry initiatives with some focus on how IBM fits in there
3
Agenda
 Introduction
 Mobile Application Development
 Reference Architectures
 Mobile Applications
Client Side
Server Side
 Mobile Testing
 Summary
4
Agenda
 Introduction
 Mobile Application Development
 Reference Architectures
 Mobile Applications
Client Side
Server Side
 Mobile Testing
 Summary
© 2014 International Business Machines Corporation 5
Short Intro Video
http://www.youtube.com/watch?v=Eegb0PDzTTI
© 2014 International Business Machines Corporation 6
Demo High Level Architecture
© 2014 International Business Machines Corporation 7
What has changed in society?
• A fundamental change in communication occurred
Texting, Twittering and Facebooking have made social networking the
base of next-generation communication
A third generation of communication is leading and is based on:
 Real time connection between people
 Smart and geographically-aware devices
 Cheap bandwidth
• A fundamental change in collaboration capabilities occurred
Today people can collaborate synchronously and asynchrounously
Wikis, collaboration tools, chats, web conferences, video streams....
Barriers become more important to overcome in today’s globalized
environment
© 2014 International Business Machines Corporation 8
What has changed in IT?
A fundamental change in IT innovation occurred
In the past, enterprise IT lead the way
 New systems made their way from large companies, to small
businesses, to home office applications, and
finally to consumers, including students and
children
– Today, consumers are leading the way
• Consumer services, social sites and interactive
games are making their way into businesses
• The consumarization of IT is also underway
Employees are using popular "consumer market" technologies and devices
at home and then introducing them in the workplace
Employees are also leveraging social media and networking sites like
Facebook and Twitter.
© 2014 International Business Machines Corporation 9
What is meant by Systems of Engagement?
General definition: Systems of Engagement is a solution (“Systems”) which has multiple
ways how users can “engage” (interact) focusing on communication and collaboration
across boundaries becoming more consumer oriented and increasing efficiency and
productivity.
“Empower customers, employees and partners with context-rich apps and smart
products to help them decide and act immediately in their moments of need.” (Forrester’s
definition of SoE with input from Geoffry Moore)
© 2014 International Business Machines Corporation 10
Business Model
•Free version – key features
•Premium versions (paid)
• Business
• Business Plus
• Executive
•Revolution & evolution in
the job market scenarios
Social & People Centric
•Quickly build a professional social network
•Publish your professional profile
•Visibility to your connections profiles
•Easily join professional groups
•Endorse others with skills
•Recommend others to help job finding
•Efficient job hunting
•Integrated messaging/email
•Connected with social tools
Example of SoE in action - Linkedin – social professional network with 225,000,000
users!
SoR to SoE
CVs + HR databases +
Recommendation Letters
Linkedin
(Social professional network)
Engaging aspects
Extremely Social & People Centric
Web & Mobile support
Multi-language
Highly Performant
Free & Premium
Performant
•Scales to millions of users world wide
•Extremely fast response time
Mobile
•iOs, Android,
Windows Phone
•Phones & tablets
Multi-language
•The app is a vailable
in various languages
© 2014 International Business Machines Corporation 11
A summary comparison between Systems of Record and
Systems of Engagement
Systems of Record Systems of Engagement
Orientation Data-centric User-centric
Usability User learns system System learns user
Focus Transactions Interactions
Governance Command & Control Collaboration
Value Single-Source of Truth Open Forum for Discovery &
Dialog
Performance
Standard
Accuracy & Completeness Immediacy & Accessibility
Policy Focus Security (Protect Assets) Privacy (Protect Users)
Source: aiim & tcgAdvisors - A “Future History” of Content Management
© 2014 International Business Machines Corporation 12
Mobile in Context of Systems of Engagement
Mobile is about transacting
1
96% year to year increase in mobile cyber Monday sales between 2012 and 2011
Mobile enables the Internet of Things
91% of mobile users keep their device within arm’s reach 100% of the time
5 Trends with significant implications for the enterprise
2
4
3
Mobile is primary
5
90% of users use multiple screens as channels come together to create integrated
experiences
Mobile must create a continuous brand experience
Global Machine-to-machine connections will increase from 2 billion in 2011 to 18
billion at the end of 2022
Insights from mobile data provide new opportunities
75% of mobile shoppers take action after receiving a location based messages
2
© 2014 International Business Machines Corporation 13
Mobile is primary
91% of mobile users keep
their device within arm’s
reach 100% of the time
Insights from mobile
data provide new
opportunities
75% of mobile shoppers
take action after receiving
a location based
messages
Mobile is about transacting
96% year to year increase in mobile
cyber Monday sales between 2012 and
2011
Mobile must create a
continuous brand
experience
90% of users use multiple
screens as channels
come together to create
integrated experiences
Mobile enables
the Internet of
Things
Global Machine-to-
machine connections will
increase from 2 billion in
2011 to 18 billion at the
end of 2022
A business in motion must be mobile first
© 2014 International Business Machines Corporation 14
85% of adults who have completed a mobile
transaction in the past year expect the
experience to be better than using a laptop
or desktop computer
Yet 41% of comments about the
top mobile companies expressed
frustration
Source: Harris Interactive Survey of Mobile User Experience March 2011
Expectations versus Realities
© 2014 International Business Machines Corporation 15
The same percentage of developers who claim
Testing and Quality Assurance is in
their top 5 concerns…
Also claim they are challenged with
developing applications as quickly as
management wants
SD Times: “More than half of organizations are building mobile applications” http://www.sdtimes.com/link/36553
Quality versus Time, who hasn’t faced this challenge?
16
Agenda
 Introduction
 Mobile Application Development
 Reference Architectures
 Mobile Applications
Client Side
Server Side
 Mobile Testing
 Summary
© 2014 International Business Machines Corporation 17
Why mobile development is different
Development is different.Mobile apps are different.
• They are more strategic – Greater
urgency and immediacy of
engagement
• The risk is more visible – app
stores show ratings and comments
and can prevent user adoption
• They are context-aware – know
where you are and what you are
doing
• They run on unstable networks–
interruption is the norm, not the
exception
• Smaller footprint – More
challenging to make compelling and
easy to use
• Always on – An opportunity to
deliver greater value
• Faster development cycles drives
automation demand
• More devices to support, each with its
own set of capabilities, OS and UI
behaviors
• More development approaches to
choose from – Web, HTML, Native
• More third-party and open-source
tools, frameworks and libraries to
choose from
• One constant exception: enterprise
software services coordination
© 2014 International Business Machines Corporation 18
Mobile Lifecycle
Management & Testing
Data Access
& Integration
Building & Deploying
Mobile Apps
 Secure code and reuse
across platforms
 Management needs for
B2C / B2B / B2E
 Analytics & continuous
improvement
 Address multi-channel and
multi-tier
Rapid Prototyping
 Access to device inventory
 Test automation & planning
 Lifecycle management
 Team collaboration &
automation
 Fit within existing enterprise
development process
 Short project cycles &
integration effort
 Different data usage
patterns for mobile
 Content delivered in context
 Driving engagement (push)
across multi-tier systems
How do I develop &
deliver across platforms?
How do I test and manage
the lifecycle of the app?
How do I integrate into
existing systems?
Mobile app development imperatives and challenges
© 2014 International Business Machines Corporation 19
Development Lifecycle
20
Agenda
 Introduction
 Mobile Application Development
 Reference Architectures
 Mobile Applications
Client Side
Server Side
 Mobile Testing
 Summary
© 2014 International Business Machines Corporation 21
IBM introduces the IBM MobileFirst offering portfolio
AnalyticsSecurityManagement
IBM & Partner Applications
Application Platform and Data Services
Banking Insurance Transport Telecom Government
Industry Solutions
HealthcareRetail Automotive
Application & Data Platform
Strategy&DesignServices
Development&IntegrationServices
Cloud & Managed Services
Devices Network Servers
© 2014 International Business Machines Corporation 22
Capability View
© 2014 International Business Machines Corporation 23
Microsoft Reference Architecture
Source Microsoft Mobile Architecture Guide
© 2014 International Business Machines Corporation 24
Logical Architecture
Client Middle Tier Backend
© 2014 International Business Machines Corporation 25
Example Implementation
25
26
Agenda
 Introduction
 Mobile Application Development
 Reference Architectures
 Mobile Applications
Client Side
Server Side
 Mobile Testing
 Summary
© 2014 International Business Machines Corporation 27
Client Side
Client Middle Tier Backend
© 2014 International Business Machines Corporation 28
Client Architecture Choices
Web
Application
Desktop and mobile
using open web
programming models
Limited to no device-
specific functionality
Native Mobile
Application
Mobile only, using
native languages
Native appearance,
device
capabilities, perform
ance
Mobile Web
Application
Mobile only using
open web client
programming models
Hybrid Mobile
Application
Mobile only, app runs
on device leveraging
open web via
JavaScript bridge
Native device
capabilities
Mobile Browser Execution Application Store download and install
Richness of Mobile Presentation / Services
Portability (cross-device reuse)
Maintenance Cost (TCO)
© 2014 International Business Machines Corporation 29
Publish in AppStoreClient Architecture Choices
 Native code
 Access to full set of
lower-level device
capabilities
Native Appl.
Device APIs
100101010101110
100101001001010
111010010011010
101010100100100
101111001001100
101010100101010
101001010101010
101010101011111
10
 HTML, JavaScript, CSS,
with optional native code
 Installed and run like a
native mobile app;
mobile-optimized UI
 Access to lower-level
device capabilities
Native Shell
Web
Native
Device APIs
<!D
OCT
YPE
html
PUB
LIC
crea
ted
100
101
010
101
110
100
101
010
 HTML, JavaScript, CSS
 Accessed from a mobile
web browser; mobile-
optimized UI
 Limited access to lower-
level device capabilities
 HTML, JavaScript, CSS
 Accessed from a mobile
web browser
 No device-specific
capabilities
Mobile Browser
Web Code
<!DOCTYPE html
PUBLIC
<html>
<! - - created
2003-12-12 - -
<head><title>XYZ
</title>
</head>
<body>
</p>
Web Mobile Web Hybrid Mobile Native
Richness of Mobile Presentation / Services
Portability (cross-device reuse)
Maintenance Cost (TCO)
Mobile Browser
Web Code
<!DOCTYPE html
PUBLIC
<html>
<! - - created
2003-12-12 - -
<head><title>XY
Z</title>
</head>
<body>
</p>
© 2014 International Business Machines Corporation 30
HTML5 is both an app deployment platform (on-browser)
and a technology for creating native apps (off-browser).
37% of mobile developers use as a platform, i.e. to develop
mobile websites, or web-apps. An additional 15% of app
developers use HTML5 beyond the browser, via hybrid
apps or HTML5-to-native tools.
Technology Choices – See study from Vision Mobile
2013 was a year that cemented the Android/iOS duopoly
beyond any doubt. Android reached 81% of smartphone
sales in Q3 2013. Moreover, Android continues to dominate
Developer Mindshare with 71% of developers that target
mobile platforms, developing for Android, according to our
latest survey of 7,000+ developers. With the market
flooded with Android handsets, the surprising fact is that
Android’s Developer Mindshare has not increased any
further.
on HTML5 vs. native development, off-browser routes
like PhoneGap, Appcelerator or FireFox OS can mitigate
issues relating to performance or API access. In spite of
these issues, HTML5 remains a very attractive cross-
platform development route for developers, 16% of whom
indicate their intention to adopt the platform.
HTML5 has become a bit of a misnomer since it is a
technology stack rather than a fully-fledged app
ecosystem. Developers employ HTML5 technology in a
number of ways: to develop mobile websites, web
apps, hybrid apps or use HTML5 code within native apps
to display web content. In that sense, HTML5 can be
viewed as both a deployment platform (onbrowser) and a
technology that can be used beyond the browser (off-
browser), through tools such as
PhoneGap, Appcelerator, Firefox OS and 10s more.
Firefox OS now claims a 7% Developer Mindshare which
is by no means competitive, but presents a solid foothold
for a platform that launched a commercial handset just six
months ago. On top of that, 14% of developers indicated
that they plan to adopt the platform. Mozilla aims to create
an app ecosystem centred around HTML5, by adding
ecosystem features and capabilities that are currently
missing: web app discovery, distribution, and
monetisation.
© 2014 International Business Machines Corporation 31
Platform Choices
© 2014 International Business Machines Corporation 32
IOS Development
• Requires Mac
• IDE Xcode
• Language : Objective C
Alternative C, C++
MonoTouch C# using Xamarin
• Deployment through Appstore
© 2014 International Business Machines Corporation 33
Android Development
• Mac, Linux or Windows
• IDE Android SDK (Android
Studio in prerelease)
• Language : Java
Alternative C, C++
MonoDroid C#
• Deployment through Play
Store or by installing APK
© 2014 International Business Machines Corporation 34
Windows Phone Development
• Windows
• IDE VisualStudio
• Language : C#
Alternative C, C++
• Silverlight or XNA
Framework
• Deployment through
Windows Phone
Marketplace
© 2014 International Business Machines Corporation 35
BlackBerry Development
• Linux, Windows
• IDE Momentum, Visual
Studio
• Language : C,
Alternative C, C++
• Qt framework
• Deployment Desktop
Manager or Blackberry
Enterprise Server or
Blackberry App World
© 2014 International Business Machines Corporation 36
HTML 5 Development
• Linux, Windows, Mac,
Web
• IDE Many available
• Language : HTML 5,
CSS, JavaScript
• Many frameworks
• Deployment through
Web Server
© 2014 International Business Machines Corporation 37
Major Javascript Mobile Toolkits and Related Frameworks
Mobile Toolkits
Dojo Mobile JQuery Mobile Sencha Touch
Toolkits
Dojo Toolkit
Dojox
Dijit
Dojo Base/ CoreUtil
JQuery UI
JQuery
Sencha
Jquery Mobile
Sencha Touch
EXT GWT
EXT JS
EXT Core
© 2014 International Business Machines Corporation 38
Comparing Dojo and JQuery
© 2014 International Business Machines Corporation 39
Mobile First Design
© 2014 International Business Machines Corporation 40
Responsive Design Simple Example
@media all and (min-width:
651px) {
#quotePrice:
{
float:left;
position:relative;
width:320px
}
#quotePriceList:
{
float:left;
position:relative;
width:320px
}
}
@media all and (max-width:
650px) {
#quotePrice:
{
position:relative;
width:320px
}
#quotePriceList:
{
position:relative;
width:320px
}
http://www.dwuser.com/educatio
n/content/responsive-design-a-
crash-course-and-demo/
http://www.dwuser.com/educati
on/content/creating-
responsive-tiled-layout-with-
pure-css/
© 2014 International Business Machines Corporation 41
• Accelerate Development
Web, hybrid, and native development: open,
flexible, standard-based, multi-screen/omni-
channel
Functional testing
Development lifecycle tools and integration
• Facilitate App Security and Trust
Server-enforced authentication
App authenticity and user-app-device binding
Secure and syncable on-device storage
App version enforcement
• Enable User Engagement
Unified push and SMS notifications
Geolocation and context collections and
intelligence
Mobile-friendly integration
• Support Mobile Analytics
Efficient acquisition of analytics data
Development, operational, and business
analytics
Offline and online event management
IBM Worklight: A mobile application platform
Example of Hybrid Development
© 2014 International Business Machines Corporation 42
Feedback Management
Reporting for Statistics
and Diagnostics
PublicAppStores
Worklight Application
CenterDevelopment Team Provisioning
App Feedback Management
Enterprise App Provisioning
and Governance
2
Device RuntimeCross-Platform
Compatibility Layer
Encrypted and Syncable Storage
Runtime Skins
Server Integration Framework
ApplicationCode
3
Worklight Console
5
Unified Push and SMS Notification
Development and Operational Analytics
App Version Management
ckendSystems&CloudServices
Worklight Server
User Authentication and Mobile Trust
Mashups and Service
Composition
JSON Translation
Adapter Library for Backend Connectivity
StatsandLogsAggregation
Unified Push
Notifications
Client-Side
App Resources
Direct Update
Mobile
Web Apps
4
Geolocation Services
5, Hybrid, and Native Coding
ptimization Framework
Integrated Device
SDKs
Party Library Integration
Build Engine
Worklight Studio
SDKs
Functional
Testing
WYSIWG Editor
and Simulator
Blackberry
Android
iOS
Windows Phone
Java ME
Windows 8
Mobile Web
Desktop Web
1
Enhanced crash & platform-level exception capture
Location-based event handling
Worklight Components
© 2014 International Business Machines Corporation 43
Worklight Studio
• Eclipse Based IDE
• Native, hybrid and standard web development
• Environment-specific optimization
• Native development options
• Runtime skins
• 3rd-party library integration
• Device SDK integration
• Access to emulators and debugging tools
• Supports auto-complete and validation
HTML5, Hybrid, and Native
Optimization Framework
Integrated Device SDKs
3rd Party Library Integration
Build Engine
Worklight Studio
SDK's
Functional Testing
WYSIWG Editor and Simulator
Blackberry
Android
iOS
Win Phone
Java ME
Windows 8
Mobile Web
Desktop Web
© 2014 International Business Machines Corporation 44
Preview in Browser
Perform device-specific tests in the Mobile Browser Simulator: supports Cordova and
Worklight client API
© 2014 International Business Machines Corporation 45
Worklight Studio – Common Code Structure
• common resources serve as the basis for the
optimized environments that may be added later.
hold resources that are shared by all environments.
• lib directory stores 3rd party library files for the
project
• js (JavaScript files)
auth.js – authentication
messages.js – internationalization
myApp.js – application code
• MyApp.html file is initially configured as main file
application-descriptor.xml
contains reference to "mainfile“
enable authentication (onDemand, onStartup)
worklightRootURL (application URL)
environment specific references
© 2014 International Business Machines Corporation 46
Worklight Studio - Environment Optimization
HTML files from an environment folder will ove
images from an environment folder will overrid
JavaScript from an
environment folder is
appended to the same
file in the common
folder
CSS files from an
environment folder will
be appended to the
CSS files in the
common folder
© 2014 International Business Machines Corporation 47
Integrated Device SDKs
© 2014 International Business Machines Corporation 48
Edit within Worklight Studio
© 2014 International Business Machines Corporation 49
Rich Page Editor (WYSIWYG UI Construction)
• Eclipse perspective for
Worklight projects.
• Optimized layout for
hybrid app
development
• Rich page editor: drag-
and-drop, palette of
components, propertie
s view, beautified
outline, and raw
editable source code
• Changes to code
automatically apparent
in rich page editor, and
vice-versa, for quick
development
© 2014 International Business Machines Corporation 50
Mobile Functional Test Tools
• Create, run, and automate tests on
mobile applications
• Improve quality and time-to-value with
industry-first app testing
Create resilient and code-less test cases
Record once, play back on multiple
devices
• Standardized, eclipse based
• Comprehensive – Android and
iOS, Native and hybrid
• Complete – Recording, editing, and
running
on mobile devices
• Resilient – Same test runs across
multiple
devices
• Also for non-developers – Scripts in
natural language description
New in Worklight 6.0
© 2014 International Business Machines Corporation 51
Centralized Build
Create an Worklight project and application in Eclipse via Worklight Studio
Add a mobile environment of your choosing
Add app content
Build and deploy it to the Worklight Server
Use the specific environment tools to deploy to device
 Eclipse for Android
 Xcode for iOS
 Visual Studio for Windows Phone
 Ripple for BlackBerry
Worklight
Build System
Source
Code
Repository
Worklight Applicati
Center
© 2014 International Business Machines Corporation 52
Worklight Studio: Back-end Integration
• Secure back-end integration
with Worklight Adapters
• Out of the box support for
SQL, HTTP (REST and
SOAP), Cast Iron, and JMS
Adapters
• XML-based declarative
specification and JavaScript
programming
• Multi-source data mashups
and back-end service
composition
• Simplified adapter testing
• Access to session data and
user properties
• Server-side debugging
© 2014 International Business Machines Corporation 53
Application Center
• The Worklight Application Center
enables companies to easily set up
an enterprise app store for their
enterprise and development teams.
• The Application Center provides:
Administrators with fine-grained control
over the distribution of mobile apps
across the enterprise, including ACL
and LDAP support;
Employees with a central location for
the latest apps needed by their
department and optimized for their
device;
Developers with an easy way to
distribute mobile builds and elicit
feedback from development and test
team members.
PublicAppStores
Worklight Application
CenterDevelopment Team Provisioning
App Feedback Management
Enterprise App Provisioning
and Governance
2
© 2014 International Business Machines Corporation 54
Worklight Server
• Adapters with support for
SOAP, REST, SQL, JMS, IBM Cast
Iron, and Node.js (preview in 6.0)
• Performs Data Transformation to
streamline back-end data for mobile
consumption
• Server and device Security control
• Supports Physical Clustering for high
availability
• Controls Application Deployment and
Versioning
• Push Notification administration
• Analytics including user
adoption, usage data, app crash and
exceptions
EnterpriseBackendSystems&CloudServices
Worklight Server
ser Authentication and Mobile Trust
Mashups and Service
Composition
JSON Translation
apter Library for Backend Connectivity
StatsAggregation
Unified Push
Notifications
Client-Side
App Resources
Direct Update
Mobile
Web Apps
© 2014 International Business Machines Corporation 55
Worklight Runtime – Direct Update On-device Logic
1. Web resources packaged with app to ensure initial offline availability
2. Web resources transferred to app's cache storage
3. App checks for updates on startup and foreground events
4. Updated web resources downloaded when necessary, with user confirma
Worklight Server
Native Shell
Pre-packaged resources
1 Download
4 Update web resource
App Store
Web resources
Cached resources
2 Transfer
3 Check for updates
© 2014 International Business Machines Corporation 56
Geo-location Scenarios
Routing trucks arriving at warehouse
Location-aware security for hospital app
Username
Password
Submit
✔
?
Automatic
Check-In
............
…
…… …… ……
hotel check-in
g mall experience
SMS, Push
© 2014 International Business Machines Corporation 57
Worklight Console
• Application Version Management
Install, update, disable, enable
• Push management
• Configurable audit log
• Administrative dashboards for:
Deployed applications
Installed adapters
Push notifications
• Development and Operational
Analytics
Device RuntimeCross-Platform
Compatibility Layer
Encrypted and Syncable Storage
Runtime Skinning
Server Integration Framework
ApplicationCode
3
Worklight Console
5
Unified Push and SMS Notification
Development and Operational Analytics
App Version Management
kendSystems&CloudServices
Worklight Server
User Authentication and Mobile Trust
Mashups and Service
Composition
JSON Translation
dapter Library for Backend Connectivity
StatsAggregation
Unified Push
Notifications
Client-Side
App Resources
Direct Update
Mobile
Web Apps
4
Geolocation Services
© 2014 International Business Machines Corporation 58
Unified Push Notifications
Back-end SystemBack-end System
Back-end SystemBack-end System
Polling Adapters
Message-based Adapters
Unified Push APINotification State Database
User-Device Database
iOS Dispatcher
Android Dispatcher
BlackBerry Dispatcher
(roadmap)
Windows Phone Dispatcher
SMS Dispatcher
Apple Push Servers (APN)
Google Push Servers (GCM)
RIM Push Servers
Microsoft Push Servers
SMS/MMS Brokers
Administrative Console
Worklight Client-side Push Services
iOS
Push API
Android
Push API
BlackBerry
Push API
Windows
Push API
Broker API
Uniform access to push notifications providers
‒ Register for, Notify and Receive a notification
Register for and Send SMS based notifications
‒ E.g., for JME
Worklight Client-side Push Services
Worklight Client-side Push Services
Worklight Client-side Push Services
59
Agenda
 Introduction
 Mobile Application Development
 Reference Architectures
 Mobile Applications
Client Side
Server Side
 Mobile Testing
 Summary
© 2014 International Business Machines Corporation 60
Server Side
Client Middle Tier Backend
© 2014 International Business Machines Corporation 61
Middleware Choices
• SOAP defines a standard communication protocol (set of rules) specification
for XML-based message exchange. SOAP uses different transport protocols,
such as HTTP and SMTP. The standard protocol HTTP makes it easier for
SOAP model to tunnel across firewalls and proxies without any modifications to
the SOAP protocol. SOAP can sometimes be slower than middleware
technologies like CORBA or ICE due to its verbose XML format.
• REST describes a set of architectural principles by which data can be
transmitted over a standardized interface (such as HTTP). REST does not
contain an additional messaging layer and focuses on design rules for creating
stateless services. A client can access the resource using the unique URI and a
representation of the resource is returned. With each new resource
representation, the client is said to transfer state. While accessing RESTful
resources with HTTP protocol, the URL of the resource serves as the resource
identifier and GET, PUT, DELETE, POST and HEAD are the standard HTTP
operations to be performed on that resource.
© 2014 International Business Machines Corporation 62
Implementing Backend Services
• Provide Data and Operations for Mobile Frontend
• Many Possible Technology choices
J2EE Stack
Microsoft .Net Stack
PHP
Node.JS
Python
…
• Choice Depends on
Skills
Available infrastructure
Integration Requirements
History
© 2014 International Business Machines Corporation 63
Node.js
• JavaScript escapes from the browser!
• A tiny (5.6MB install) runtime for creating web Servers using JavaScript that is
generating a lot of interest
• Part of the 'JavaScript everywhere' thing
• See Jerry Cuomo talking about it here
© 2014 International Business Machines Corporation 64
Node.js simple example
var express = require('express');
var app = express();
app.get('/nl', function(req,res){
res.send('Hallo wereld');
});
app.get('/fr', function(req,res){
res.send('Bonjour tout le monde');
});
var port=8080;
app.listen(port);
© 2014 International Business Machines Corporation 65
Node.js Package Manager
• Easy to Install Additional Packages
from Central Repository
Example
 npm -install express
• Allows you to add additional
functions
Large set of modules available
 Eg. Node-red visual tool for wiring
the internet of things
• Thousands of Packages available
Example Node-red IBM Emerging
Technologies around Internet of Things
© 2014 International Business Machines Corporation 66
Node-red Example
© 2014 International Business Machines Corporation 67
Relational Databases……
tables of rows (tuples)
columns have a single (typed) value.
All Operations take and return tuples
a powerful simple general model
Atomic
Consistent
Independent
Durable
Transactions across ALL the data.
© 2014 International Business Machines Corporation 68
App1
App3
App2
Relational
DB
Relational DBs allow multiple
applications to share database.
Integration Databases Application Databases
App /
service
1990s
2000s
Nosql or
Relational
DB
Trend is to dedicated databases &
SOA
© 2014 International Business Machines Corporation 69
Problems with relational databases
• Mismatched to in-memory object model.
Led to ORMs and Object databases.
• Prevalence of “Graph” problems.
• Scale up not scale out.
© 2014 International Business Machines Corporation 70
Relational databases Some Nosql DBs:
ACID Transactions Eventual Consistency
Transactions across all data Limited scope transactions
Flat relational model Aggregates in the data model.
Must Scale Up Can Scale Out
© 2014 International Business Machines Corporation 71
NoSQL Data Models
Nosql
Data
Model
graph
aggregate
Key value
Document
Column store
• Concept of an Aggregate
Collection of data that we access together.
Boundaries for ACIDity
Aggregates make it easy for the database to manage and distribute data.
© 2014 International Business Machines Corporation 72
Key-value store
Key Opaque Blob of
data.
aggregate
Value
© 2014 International Business Machines Corporation 73
Document database
Key
value
Some structured
data, with limits
on types.
aggregate
© 2014 International Business Machines Corporation 74
Column Store
© 2014 International Business Machines Corporation 75
Graph
© 2014 International Business Machines Corporation 76
C
A
P
Availability:
Each client can
always read
and and write
Consistency:
All clients always
have the same
view of the data
Partition Tolerance:
The system tolerates
communication
failures.
Pick
Two
CP
CA AP
BigTable
Hbase
MongoDB
Terrastore
BerkleyDB
MemcacheDB
Redis
DB2
Mysql
Oracle
Postgres
Dynanamo
Voldemort
KAI
Cassandra
SimpleDB
CouchDB (E.g IBM Cloudant)
Riak
Relational
Key-Value
Column-Oriented
Document-Oriented
Graph
Data
Models
Based on Nathan Hurst’s Blog
neo4J
CAP & Data Model classification
© 2014 International Business Machines Corporation 77
Run Your Apps
The developer can chose any language runtime or
bring their own. Just upload your code and go.
DevOps
Development, monitoring, deployment and
logging tools allow the developer to run the
entire application
APIs and Services
A catalog of open source, IBM and third party
APIs services allow a developer to stitch
together an application in minutes.
Cloud Integration
Build hybrid environments. Connect to on-
premises systems of record plus other public and
private clouds. Expose your own APIs to your
developers.
Extend SaaS Apps
Drop in SaaS App SDKs and extend to new use
cases (e.g,. Mobile, Analytics, Web)
IBM BlueMix
© 2014 International Business Machines Corporation 78
New Applications Create New Developer Needs
 Environments set up in minutes versus
days or weeks
 Choice: Languages, Services and Tools
 Friction free way to experiment with new middleware capabilities
 Self service environment to deploy, scale and monitor applications
 Securely connect to and integrate with existing applications data
© 2014 International Business Machines Corporation 79
Cloud
Operating
Environment
Development
Services
Operational
Services
Infrastructure
Services
Application
Services
CREATE CONSUME
CAPACITYCONTROL
• Enable applications to be rapidly &
incrementally composed from services
• Deliver application changes continuously
• Enable continuous availability
• Support fit-for-purpose programming
models & services
• Embed manageability of services &
application
• Workload Optimized & Elastic
APPLICATIONS / WORKLOADS
• Persistence
• Messaging & Workflow
• Scripting & Programming
Languages
• Compute, Storage, Netw
ork
• Clustering & Elasticity
• Logging
• Monitoring
• Security
• Code Repository &
Version control
• Continuous build &
Test
Cloud Operating Environment Architecture
© 2014 International Business Machines Corporation 80
Standardization; OPEX savings; faster time to value
Networking
Storage
Servers
Virtualization
O/S
Middleware
Runtime
Data
Applications
Traditional
On-Premises
Networking
Storage
Servers
Virtualization
O/S
Middleware
Runtime
Data
Applications
Platform
as a Service
Networking
Storage
Servers
Virtualization
O/S
Middleware
Runtime
Data
Applications
Software
as a Service
Networking
Storage
Servers
Virtualization
Middleware
Runtime
Data
Applications
Infrastructure
as a Service
O/S
Vendor Manages in CloudClient Manages
aaS – split of provider- and consumer-side responsibilities
© 2014 International Business Machines Corporation 81
Workload definition, Optimization, & Orchestration
Software
Defined
Environment
Software Defined Compute Software Defined Storage
Software Defined
Networking
Resource Abstraction & Optimization
datastore mobile devopsmiddleware Services
Traditional
Workloads
Services & Composition Patterns
API & Integration
Services
Traditional
Workloads
security
cloudfoundry.org
OPEN ecosystem of composable services
Optimized workload deployment
Integration patterns with systems of record
CapabilityValue
Fast, automated composition of services
Repeatable patterns-of-expertise
Hardware
Cloud
Operating
Environment
Developer centric platform, marketplace & services in a
Cloud Operating Environment
© 2014 International Business Machines Corporation 8282
©2014 IBM
Corporation
Continuing our history of embracing and extending Open Source
Embracing Cloud Foundry As An Open Source PaaS
© 2014 International Business Machines Corporation 83
Upload your code and run your application in seconds
Run Your Apps
© 2014 International Business Machines Corporation 84
Dev Ops
Liberty for
Java
RubyNode.js “Bring Your
Own
Buildpack”
SQL
Database
JSON
Database
Mongo DB PostgreSQL
Mobile
Data
Data
Managemen
t
Services
MQTT
CloudCode Mobile App
Mgmt
Mobile
Services
Mobile
Quality
Assurance
BLU Data
Warehouse
MySQL
Twilio
Data Cache Session
Cache
Elastic MQ
Web & App
Application
Decision SSO Redis
MapReduce
RabbitMQ Log
Analysis
Historian
Internet Of
Things
Push
Runtimes
Monitoring
and
Analytics
Git
Hosting
Deployment
Automation
Web IDE Agile
Developmen
t
A broad range of runtimes & services
© 2014 International Business Machines Corporation 85
The Mobile Backend Starter application is a pre-defined set of
mobile services that make sense together
© 2014 International Business Machines Corporation 86
Looking at the boilerplate, a mobile developer can get an idea
of the types of services available in the boiler plate application
© 2014 International Business Machines Corporation 87
http://www.bluemix.net
© 2014 International Business Machines Corporation 88
Mobile Security Considerations
© 2014 International Business Machines Corporation 89
Security Framework
© 2014 International Business Machines Corporation 90
Billions of smart devices instrument our world today
Interconnecting these smart devices c
The Internet of Things
© 2014 International Business Machines Corporation 91
Why MQTT design goals (1998)
• MQTT == MQ Telemetry Transport
• The MQTT specification is open and royalty free
for ease of adoption
http://www.ibm.com/developerworks/webserices/library/
ws-mqtt/index.html
• Open-source implementations available
• A Publish Subscribe messaging protocol allowing
a message to be published once and multiple
consumers (applications / devices) to receive the
message
Support loose coupling
Durable and non durable subscriptions
A publication may be retained
• Designed for constrained devices
Tiny footprint MQTT client (and server) libraries
E.g. a c client lib in 30Kb and a Java lib in 64Kb
Suited to applications / devices that may have very
limited processing resources available
 8 Bit controllers upwards
92
Agenda
 Introduction
 Mobile Application Development
 Reference Architectures
 Mobile Applications
Client Side
Server Side
 Mobile Testing
 Summary
© 2014 International Business Machines Corporation 93
The Quality of mobile applications is critical
93
Mobile apps can increase customer
interaction, improve productivity and offer access to
new markets. But poor quality can have a real impact
on business.
The number of mobile devices and platforms is
continuously growing, and the pace of delivery and
response to customer feedback is a growing challenge.
The mobile ecosystem extends back-end services and
integrated platforms which complicates end-to-end
application testing.
How can we ensure software quality in a cost effective way?
© 2014 International Business Machines Corporation 94
41% of projects fail to
deliver expected
business ROI
Quality Management for Systems of Engagement
Accelerating delivery of high quality, multi-tiered mobile applications
Solutions to improve ROI:
1. Automate UI and Performance tests for mobile apps
2. Virtualize back-end services to maintain agility
3. Improve manual test case management and optimize
execution across multiple mobile devices
4. Extend Worklight with automated testing
Cross cutting mobile themes, addressed by Rational Software
© 2014 International Business Machines Corporation 95
 Mobile Test Automation
Support for native, and hybrid applications running on
Android and iOS
Natural language test and visual test editing
Simplified IDE and mobile device clients for test
authoring, execution, and reporting
High-fidelity capture an replay of multi-touch events
 Eclipse Client integration
Mobile Test Automation
Support for Selenium web GUI test automation
Multi-channel test scenarios
Integration with Rational Quality Manager and the IBM
Worklight mobile development platform
 End-to-end mobile testing
Testing of middle-tier and back end-services
Virtualization of middle-tier and back-end systems
Performance testing of your integration infrastructure
Mobile Test Automation with IBM Rational Test Workbench
© 2014 International Business Machines Corporation 96
End-to-end Mobile Application Testing
• Examine integration protocols and
messages to verify end-to-end
communication
• Reuse integration tests to verify the
scalability of your integration middleware
and services infrastructure
• Virtualize application services to enable
continuous integration, accelerate
testing, and reduce application integration
risk
• Leverage Rational Test Workbench
extensive testing features to address non-
mobile components of your environment
Test and Virtualize mid-tier and back
end applications and services
Client Tier
Middle Tier
Backend Data
and Services
Virtual
component
or service
For more information visit: http://www-03.ibm.com/software/products/us/en/rtvs/
97
Agenda
 Introduction
 Mobile Application Development
 Reference Architectures
 Mobile Applications
Client Side
Server Side
 Mobile Testing
 Summary
© 2014 International Business Machines Corporation 98
Bringing it all Together
© 2014 International Business Machines Corporation 99
References
• IBM Mobile Reference Architecture
http://www.ibm.com/mobilefirst/us/en/
• Architecting Mobile Solutions for the Enterprise – Dino Esposito
ISBN: 978-0-7356-6302-2
• Microsoft Mobile Architecture Guide
• HTML 5 and CSS 3 Responsive Web Design cookbook – Benjamin Lagrone
ISBN: 978-1-84969-544-2
• SAMS Teach yourself HTML 5 in 24 hours - Jennifer Kyrnin
ISBN-13: 978-0-672-33440-5
• Mobile Design Pattern Gallery – Theresa Neil
ISBN: 978-1-449-31432-3
• Professional Mobile Application Development - Jeff MCWerther, Scott Gowell
ISBN: 978-1-118-20390-3
• IBM Bluemix
http://www-01.ibm.com/software/ebusiness/jstart/bluemix/
• IBM Institute for Business Value – Mobile study
http://www-935.ibm.com/services/us/gbs/thoughtleadership/
© 2014 International Business Machines Corporation 100
References....
• IBM Rational Mobile Solutions
http://www-01.ibm.com/software/rational/mobile/
• Node Red
http://nodered.org/
• IBM Developerworks
http://www.ibm.com/developerworks/
• MQTT
http://mqtt.org/
• Vision Mobile Developer Economics Report
http://www.developereconomics.com/reports/q1-2014/
• Worklight
http://www-03.ibm.com/software/products/en/worklight/

Contenu connexe

Tendances

Introduction to Mobile Development
Introduction to Mobile DevelopmentIntroduction to Mobile Development
Introduction to Mobile DevelopmentPragnesh Vaghela
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating SystemBilal Mirza
 
Development of Mobile Application -PPT
Development of Mobile Application -PPTDevelopment of Mobile Application -PPT
Development of Mobile Application -PPTDhivya T
 
Introduction to Mobile Application Development
Introduction to Mobile Application DevelopmentIntroduction to Mobile Application Development
Introduction to Mobile Application Developmentshikishiji
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating SystemBilal Mirza
 
Introduction to Android and Android Studio
Introduction to Android and Android StudioIntroduction to Android and Android Studio
Introduction to Android and Android StudioSuyash Srijan
 
Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android Ranjith Kumar
 
Introduction to mobile application
Introduction to mobile applicationIntroduction to mobile application
Introduction to mobile applicationK Senthil Kumar
 
Mobile Operating Systems
Mobile Operating Systems Mobile Operating Systems
Mobile Operating Systems Anant Lodha
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android pptTaha Malampatti
 
Mobile Application Development Services-MobileApptelligence
Mobile Application Development Services-MobileApptelligenceMobile Application Development Services-MobileApptelligence
Mobile Application Development Services-MobileApptelligenceMobileapptelligence
 
Mobile Development Overview
Mobile Development OverviewMobile Development Overview
Mobile Development OverviewShawn Grimes
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidzeelpatel0504
 
Android PPT Presentation 2018
Android PPT Presentation 2018Android PPT Presentation 2018
Android PPT Presentation 2018Rao Purna
 
Android Operating System (Androrid OS)
Android Operating System (Androrid OS)Android Operating System (Androrid OS)
Android Operating System (Androrid OS)Siddharth Belbase
 

Tendances (20)

Introduction to Mobile Development
Introduction to Mobile DevelopmentIntroduction to Mobile Development
Introduction to Mobile Development
 
Android ppt
Android ppt Android ppt
Android ppt
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating System
 
Development of Mobile Application -PPT
Development of Mobile Application -PPTDevelopment of Mobile Application -PPT
Development of Mobile Application -PPT
 
Introduction to Mobile Application Development
Introduction to Mobile Application DevelopmentIntroduction to Mobile Application Development
Introduction to Mobile Application Development
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating System
 
Introduction to Android and Android Studio
Introduction to Android and Android StudioIntroduction to Android and Android Studio
Introduction to Android and Android Studio
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android
 
Introduction to mobile application
Introduction to mobile applicationIntroduction to mobile application
Introduction to mobile application
 
Mobile Operating Systems
Mobile Operating Systems Mobile Operating Systems
Mobile Operating Systems
 
Android Presentation
Android PresentationAndroid Presentation
Android Presentation
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android ppt
 
Mobile Application Development Services-MobileApptelligence
Mobile Application Development Services-MobileApptelligenceMobile Application Development Services-MobileApptelligence
Mobile Application Development Services-MobileApptelligence
 
Mobile operating system
Mobile operating systemMobile operating system
Mobile operating system
 
Mobile Development Overview
Mobile Development OverviewMobile Development Overview
Mobile Development Overview
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android PPT Presentation 2018
Android PPT Presentation 2018Android PPT Presentation 2018
Android PPT Presentation 2018
 
Android Operating System (Androrid OS)
Android Operating System (Androrid OS)Android Operating System (Androrid OS)
Android Operating System (Androrid OS)
 
Mobile platforms
Mobile platformsMobile platforms
Mobile platforms
 

En vedette

Mobile Application Development
Mobile Application DevelopmentMobile Application Development
Mobile Application Developmentjini james
 
Mobile Application Design & Development
Mobile Application Design & DevelopmentMobile Application Design & Development
Mobile Application Design & DevelopmentRonnie Liew
 
architecture of mobile software applications
architecture of mobile software applicationsarchitecture of mobile software applications
architecture of mobile software applicationsHassan Dar
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App DevelopmentChris Morrell
 
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
Client vs Server Templating: Speed up initial load for SPA with Angular as an...Client vs Server Templating: Speed up initial load for SPA with Angular as an...
Client vs Server Templating: Speed up initial load for SPA with Angular as an...David Amend
 
Graph Databases - Where Do We Do the Modeling Part?
Graph Databases - Where Do We Do the Modeling Part?Graph Databases - Where Do We Do the Modeling Part?
Graph Databases - Where Do We Do the Modeling Part?DATAVERSITY
 
iOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingiOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingJim Tochterman
 
Debunking Common Myths of Mobile Application Development
Debunking Common Myths of Mobile Application DevelopmentDebunking Common Myths of Mobile Application Development
Debunking Common Myths of Mobile Application DevelopmentAntenna Software
 
Web App or Native App
Web App or Native AppWeb App or Native App
Web App or Native AppYu Wei Shang
 
Considerations when building mobile app. Presented by Microstrategy
Considerations when building mobile app. Presented by MicrostrategyConsiderations when building mobile app. Presented by Microstrategy
Considerations when building mobile app. Presented by Microstrategyitnewsafrica
 
Native vs hybrid approach Mobile App Development
Native vs hybrid approach Mobile App DevelopmentNative vs hybrid approach Mobile App Development
Native vs hybrid approach Mobile App DevelopmentSenthil Kumar Kaliathan
 
Survey, comparison & evaluation of cross platform mobile application developm...
Survey, comparison & evaluation of cross platform mobile application developm...Survey, comparison & evaluation of cross platform mobile application developm...
Survey, comparison & evaluation of cross platform mobile application developm...Soumya Kanti Datta
 
Comparison between-ios-and-android
Comparison between-ios-and-androidComparison between-ios-and-android
Comparison between-ios-and-androidCodiant
 
History Of The Development Of Mobile Applications
History Of The Development Of Mobile ApplicationsHistory Of The Development Of Mobile Applications
History Of The Development Of Mobile Applicationsemmaroberts477
 
Cross platform approach for mobile application development : a survey
Cross platform approach for mobile application development : a surveyCross platform approach for mobile application development : a survey
Cross platform approach for mobile application development : a surveyMounaim Latif
 

En vedette (17)

Mobile Application Development
Mobile Application DevelopmentMobile Application Development
Mobile Application Development
 
Mobile Application Design & Development
Mobile Application Design & DevelopmentMobile Application Design & Development
Mobile Application Design & Development
 
architecture of mobile software applications
architecture of mobile software applicationsarchitecture of mobile software applications
architecture of mobile software applications
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
 
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
Client vs Server Templating: Speed up initial load for SPA with Angular as an...Client vs Server Templating: Speed up initial load for SPA with Angular as an...
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
 
Graph Databases - Where Do We Do the Modeling Part?
Graph Databases - Where Do We Do the Modeling Part?Graph Databases - Where Do We Do the Modeling Part?
Graph Databases - Where Do We Do the Modeling Part?
 
iOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingiOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group Meeting
 
Debunking Common Myths of Mobile Application Development
Debunking Common Myths of Mobile Application DevelopmentDebunking Common Myths of Mobile Application Development
Debunking Common Myths of Mobile Application Development
 
History of Mobile Development
History of Mobile DevelopmentHistory of Mobile Development
History of Mobile Development
 
Web App or Native App
Web App or Native AppWeb App or Native App
Web App or Native App
 
Considerations when building mobile app. Presented by Microstrategy
Considerations when building mobile app. Presented by MicrostrategyConsiderations when building mobile app. Presented by Microstrategy
Considerations when building mobile app. Presented by Microstrategy
 
Native vs hybrid approach Mobile App Development
Native vs hybrid approach Mobile App DevelopmentNative vs hybrid approach Mobile App Development
Native vs hybrid approach Mobile App Development
 
Survey, comparison & evaluation of cross platform mobile application developm...
Survey, comparison & evaluation of cross platform mobile application developm...Survey, comparison & evaluation of cross platform mobile application developm...
Survey, comparison & evaluation of cross platform mobile application developm...
 
Comparison between-ios-and-android
Comparison between-ios-and-androidComparison between-ios-and-android
Comparison between-ios-and-android
 
L17 Presentation Layer Design
L17 Presentation Layer DesignL17 Presentation Layer Design
L17 Presentation Layer Design
 
History Of The Development Of Mobile Applications
History Of The Development Of Mobile ApplicationsHistory Of The Development Of Mobile Applications
History Of The Development Of Mobile Applications
 
Cross platform approach for mobile application development : a survey
Cross platform approach for mobile application development : a surveyCross platform approach for mobile application development : a survey
Cross platform approach for mobile application development : a survey
 

Similaire à Mobile application development

Why Mobile will Change your Business - Parmelee
Why Mobile will Change your Business - ParmeleeWhy Mobile will Change your Business - Parmelee
Why Mobile will Change your Business - ParmeleeProlifics
 
Ibm mobile first briefing
Ibm mobile first briefingIbm mobile first briefing
Ibm mobile first briefingNitin Gaur
 
IBM InterConnect Build and Deploy MobileFirst Applications
IBM InterConnect Build and Deploy MobileFirst ApplicationsIBM InterConnect Build and Deploy MobileFirst Applications
IBM InterConnect Build and Deploy MobileFirst ApplicationsLeigh Williamson
 
The impact of mobile on the IT organization
The impact of mobile on the IT organizationThe impact of mobile on the IT organization
The impact of mobile on the IT organizationChris Pepin
 
Five Ways to Improve Your Mobile Testing
Five Ways to Improve Your Mobile TestingFive Ways to Improve Your Mobile Testing
Five Ways to Improve Your Mobile TestingTechWell
 
Enterprise mobility trends 2013
Enterprise mobility trends 2013 Enterprise mobility trends 2013
Enterprise mobility trends 2013 Regalix
 
IBM Mobile Quality Assurance - Open Beta Study Group Session 1
IBM Mobile Quality Assurance - Open Beta Study Group Session 1IBM Mobile Quality Assurance - Open Beta Study Group Session 1
IBM Mobile Quality Assurance - Open Beta Study Group Session 1Roger Snook
 
Mobile trends and academic opportunities presented at Strathmore and JKUAT Un...
Mobile trends and academic opportunities presented at Strathmore and JKUAT Un...Mobile trends and academic opportunities presented at Strathmore and JKUAT Un...
Mobile trends and academic opportunities presented at Strathmore and JKUAT Un...Jeremy Siewert
 
Using Watson to build Cognitive IoT Apps on Bluemix
Using Watson to build Cognitive IoT Apps on BluemixUsing Watson to build Cognitive IoT Apps on Bluemix
Using Watson to build Cognitive IoT Apps on BluemixIBM
 
14 Software Development Trends to Follow in 2022
14 Software Development Trends to Follow in 202214 Software Development Trends to Follow in 2022
14 Software Development Trends to Follow in 202275waytechnologies
 
RICH INTERNET APPLICATIONS, PLATFORMS AND TOOLS - A PARADIGM SHIFT IN WEB USE...
RICH INTERNET APPLICATIONS, PLATFORMS AND TOOLS - A PARADIGM SHIFT IN WEB USE...RICH INTERNET APPLICATIONS, PLATFORMS AND TOOLS - A PARADIGM SHIFT IN WEB USE...
RICH INTERNET APPLICATIONS, PLATFORMS AND TOOLS - A PARADIGM SHIFT IN WEB USE...cscpconf
 
Rich internet applications,
Rich internet applications,Rich internet applications,
Rich internet applications,csandit
 
Develop a Successful Mobile App‏
Develop a Successful Mobile App‏Develop a Successful Mobile App‏
Develop a Successful Mobile App‏Mohamed Mahdy
 
Enterprise Mobility Solutions: Enterprise operations on the move
Enterprise Mobility Solutions: Enterprise operations on the moveEnterprise Mobility Solutions: Enterprise operations on the move
Enterprise Mobility Solutions: Enterprise operations on the moveSoftweb Solutions
 
The nexus of Social, Mobile, Cloud and Big Data Analytics
The nexus of Social, Mobile, Cloud and Big Data AnalyticsThe nexus of Social, Mobile, Cloud and Big Data Analytics
The nexus of Social, Mobile, Cloud and Big Data AnalyticsE-Government Center Moldova
 
State Enterprise Advantages and Disadvantages | Mobile Readiness
State Enterprise Advantages and Disadvantages | Mobile ReadinessState Enterprise Advantages and Disadvantages | Mobile Readiness
State Enterprise Advantages and Disadvantages | Mobile ReadinessKloudData Inc
 
Asia Pacific Enterprise Mobility & Application Landscape
Asia Pacific Enterprise Mobility & Application Landscape Asia Pacific Enterprise Mobility & Application Landscape
Asia Pacific Enterprise Mobility & Application Landscape Charles Mok
 
IBM Mobili First - IBM Business Connect QatarPut your business in motion
IBM Mobili First - IBM Business Connect QatarPut your business in motionIBM Mobili First - IBM Business Connect QatarPut your business in motion
IBM Mobili First - IBM Business Connect QatarPut your business in motionDalia Reda
 

Similaire à Mobile application development (20)

Why Mobile will Change your Business - Parmelee
Why Mobile will Change your Business - ParmeleeWhy Mobile will Change your Business - Parmelee
Why Mobile will Change your Business - Parmelee
 
Ibm mobile first briefing
Ibm mobile first briefingIbm mobile first briefing
Ibm mobile first briefing
 
IBM InterConnect Build and Deploy MobileFirst Applications
IBM InterConnect Build and Deploy MobileFirst ApplicationsIBM InterConnect Build and Deploy MobileFirst Applications
IBM InterConnect Build and Deploy MobileFirst Applications
 
The impact of mobile on the IT organization
The impact of mobile on the IT organizationThe impact of mobile on the IT organization
The impact of mobile on the IT organization
 
Five Ways to Improve Your Mobile Testing
Five Ways to Improve Your Mobile TestingFive Ways to Improve Your Mobile Testing
Five Ways to Improve Your Mobile Testing
 
Enterprise mobility trends 2013
Enterprise mobility trends 2013 Enterprise mobility trends 2013
Enterprise mobility trends 2013
 
IBM Mobile Quality Assurance - Open Beta Study Group Session 1
IBM Mobile Quality Assurance - Open Beta Study Group Session 1IBM Mobile Quality Assurance - Open Beta Study Group Session 1
IBM Mobile Quality Assurance - Open Beta Study Group Session 1
 
Mobile trends and academic opportunities presented at Strathmore and JKUAT Un...
Mobile trends and academic opportunities presented at Strathmore and JKUAT Un...Mobile trends and academic opportunities presented at Strathmore and JKUAT Un...
Mobile trends and academic opportunities presented at Strathmore and JKUAT Un...
 
Using Watson to build Cognitive IoT Apps on Bluemix
Using Watson to build Cognitive IoT Apps on BluemixUsing Watson to build Cognitive IoT Apps on Bluemix
Using Watson to build Cognitive IoT Apps on Bluemix
 
14 Software Development Trends to Follow in 2022
14 Software Development Trends to Follow in 202214 Software Development Trends to Follow in 2022
14 Software Development Trends to Follow in 2022
 
RICH INTERNET APPLICATIONS, PLATFORMS AND TOOLS - A PARADIGM SHIFT IN WEB USE...
RICH INTERNET APPLICATIONS, PLATFORMS AND TOOLS - A PARADIGM SHIFT IN WEB USE...RICH INTERNET APPLICATIONS, PLATFORMS AND TOOLS - A PARADIGM SHIFT IN WEB USE...
RICH INTERNET APPLICATIONS, PLATFORMS AND TOOLS - A PARADIGM SHIFT IN WEB USE...
 
Rich internet applications,
Rich internet applications,Rich internet applications,
Rich internet applications,
 
Develop a Successful Mobile App‏
Develop a Successful Mobile App‏Develop a Successful Mobile App‏
Develop a Successful Mobile App‏
 
Enterprise Mobility Solutions: Enterprise operations on the move
Enterprise Mobility Solutions: Enterprise operations on the moveEnterprise Mobility Solutions: Enterprise operations on the move
Enterprise Mobility Solutions: Enterprise operations on the move
 
The nexus of Social, Mobile, Cloud and Big Data Analytics
The nexus of Social, Mobile, Cloud and Big Data AnalyticsThe nexus of Social, Mobile, Cloud and Big Data Analytics
The nexus of Social, Mobile, Cloud and Big Data Analytics
 
State Enterprise Advantages and Disadvantages | Mobile Readiness
State Enterprise Advantages and Disadvantages | Mobile ReadinessState Enterprise Advantages and Disadvantages | Mobile Readiness
State Enterprise Advantages and Disadvantages | Mobile Readiness
 
Unisys Mobility Solutions
Unisys Mobility SolutionsUnisys Mobility Solutions
Unisys Mobility Solutions
 
Asia Pacific Enterprise Mobility & Application Landscape
Asia Pacific Enterprise Mobility & Application Landscape Asia Pacific Enterprise Mobility & Application Landscape
Asia Pacific Enterprise Mobility & Application Landscape
 
IBM Mobili First - IBM Business Connect QatarPut your business in motion
IBM Mobili First - IBM Business Connect QatarPut your business in motionIBM Mobili First - IBM Business Connect QatarPut your business in motion
IBM Mobili First - IBM Business Connect QatarPut your business in motion
 
Html for Mobile App Development
Html for Mobile App DevelopmentHtml for Mobile App Development
Html for Mobile App Development
 

Plus de Eric Cattoir

Ibm edge computing meetup
Ibm edge computing meetupIbm edge computing meetup
Ibm edge computing meetupEric Cattoir
 
Kubernetes solutions
Kubernetes solutionsKubernetes solutions
Kubernetes solutionsEric Cattoir
 
You always dreamt of your own quantum computer. now you can have it in the cloud
You always dreamt of your own quantum computer. now you can have it in the cloudYou always dreamt of your own quantum computer. now you can have it in the cloud
You always dreamt of your own quantum computer. now you can have it in the cloudEric Cattoir
 
Anatomy of a hyperledger application
Anatomy of a hyperledger applicationAnatomy of a hyperledger application
Anatomy of a hyperledger applicationEric Cattoir
 
Bluemix overview with Internet of Things
Bluemix overview with Internet of ThingsBluemix overview with Internet of Things
Bluemix overview with Internet of ThingsEric Cattoir
 
2449 rapid prototyping of innovative io t solutions
2449   rapid prototyping of innovative io t solutions2449   rapid prototyping of innovative io t solutions
2449 rapid prototyping of innovative io t solutionsEric Cattoir
 
Devoxx 2014 presentation
Devoxx 2014 presentationDevoxx 2014 presentation
Devoxx 2014 presentationEric Cattoir
 
Innovate at speed with Devops
Innovate at speed with DevopsInnovate at speed with Devops
Innovate at speed with DevopsEric Cattoir
 
The new developer experience
The new developer experienceThe new developer experience
The new developer experienceEric Cattoir
 
IBM Rational Solution for mobile
IBM Rational Solution for mobileIBM Rational Solution for mobile
IBM Rational Solution for mobileEric Cattoir
 

Plus de Eric Cattoir (12)

Ibm edge computing meetup
Ibm edge computing meetupIbm edge computing meetup
Ibm edge computing meetup
 
Kubernetes solutions
Kubernetes solutionsKubernetes solutions
Kubernetes solutions
 
You always dreamt of your own quantum computer. now you can have it in the cloud
You always dreamt of your own quantum computer. now you can have it in the cloudYou always dreamt of your own quantum computer. now you can have it in the cloud
You always dreamt of your own quantum computer. now you can have it in the cloud
 
Anatomy of a hyperledger application
Anatomy of a hyperledger applicationAnatomy of a hyperledger application
Anatomy of a hyperledger application
 
Bluemix overview with Internet of Things
Bluemix overview with Internet of ThingsBluemix overview with Internet of Things
Bluemix overview with Internet of Things
 
2449 rapid prototyping of innovative io t solutions
2449   rapid prototyping of innovative io t solutions2449   rapid prototyping of innovative io t solutions
2449 rapid prototyping of innovative io t solutions
 
Ibm iot overview
Ibm   iot overviewIbm   iot overview
Ibm iot overview
 
Devoxx 2014 presentation
Devoxx 2014 presentationDevoxx 2014 presentation
Devoxx 2014 presentation
 
Innovate at speed with Devops
Innovate at speed with DevopsInnovate at speed with Devops
Innovate at speed with Devops
 
The new developer experience
The new developer experienceThe new developer experience
The new developer experience
 
Agile at scale
Agile at scaleAgile at scale
Agile at scale
 
IBM Rational Solution for mobile
IBM Rational Solution for mobileIBM Rational Solution for mobile
IBM Rational Solution for mobile
 

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Dernier (20)

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Mobile application development

  • 1. Mobile Application Development Eric Cattoir IBM Rational Client Technical Professional
  • 2. © 2014 International Business Machines Corporation 2 Disclaimer • This presentation is based on a lot of sources – See also references slide in back • Purpose is to give an overview – not to be complete on any of the technologies • Things in this world are evolving quickly • We discuss a lot of industry initiatives with some focus on how IBM fits in there
  • 3. 3 Agenda  Introduction  Mobile Application Development  Reference Architectures  Mobile Applications Client Side Server Side  Mobile Testing  Summary
  • 4. 4 Agenda  Introduction  Mobile Application Development  Reference Architectures  Mobile Applications Client Side Server Side  Mobile Testing  Summary
  • 5. © 2014 International Business Machines Corporation 5 Short Intro Video http://www.youtube.com/watch?v=Eegb0PDzTTI
  • 6. © 2014 International Business Machines Corporation 6 Demo High Level Architecture
  • 7. © 2014 International Business Machines Corporation 7 What has changed in society? • A fundamental change in communication occurred Texting, Twittering and Facebooking have made social networking the base of next-generation communication A third generation of communication is leading and is based on:  Real time connection between people  Smart and geographically-aware devices  Cheap bandwidth • A fundamental change in collaboration capabilities occurred Today people can collaborate synchronously and asynchrounously Wikis, collaboration tools, chats, web conferences, video streams.... Barriers become more important to overcome in today’s globalized environment
  • 8. © 2014 International Business Machines Corporation 8 What has changed in IT? A fundamental change in IT innovation occurred In the past, enterprise IT lead the way  New systems made their way from large companies, to small businesses, to home office applications, and finally to consumers, including students and children – Today, consumers are leading the way • Consumer services, social sites and interactive games are making their way into businesses • The consumarization of IT is also underway Employees are using popular "consumer market" technologies and devices at home and then introducing them in the workplace Employees are also leveraging social media and networking sites like Facebook and Twitter.
  • 9. © 2014 International Business Machines Corporation 9 What is meant by Systems of Engagement? General definition: Systems of Engagement is a solution (“Systems”) which has multiple ways how users can “engage” (interact) focusing on communication and collaboration across boundaries becoming more consumer oriented and increasing efficiency and productivity. “Empower customers, employees and partners with context-rich apps and smart products to help them decide and act immediately in their moments of need.” (Forrester’s definition of SoE with input from Geoffry Moore)
  • 10. © 2014 International Business Machines Corporation 10 Business Model •Free version – key features •Premium versions (paid) • Business • Business Plus • Executive •Revolution & evolution in the job market scenarios Social & People Centric •Quickly build a professional social network •Publish your professional profile •Visibility to your connections profiles •Easily join professional groups •Endorse others with skills •Recommend others to help job finding •Efficient job hunting •Integrated messaging/email •Connected with social tools Example of SoE in action - Linkedin – social professional network with 225,000,000 users! SoR to SoE CVs + HR databases + Recommendation Letters Linkedin (Social professional network) Engaging aspects Extremely Social & People Centric Web & Mobile support Multi-language Highly Performant Free & Premium Performant •Scales to millions of users world wide •Extremely fast response time Mobile •iOs, Android, Windows Phone •Phones & tablets Multi-language •The app is a vailable in various languages
  • 11. © 2014 International Business Machines Corporation 11 A summary comparison between Systems of Record and Systems of Engagement Systems of Record Systems of Engagement Orientation Data-centric User-centric Usability User learns system System learns user Focus Transactions Interactions Governance Command & Control Collaboration Value Single-Source of Truth Open Forum for Discovery & Dialog Performance Standard Accuracy & Completeness Immediacy & Accessibility Policy Focus Security (Protect Assets) Privacy (Protect Users) Source: aiim & tcgAdvisors - A “Future History” of Content Management
  • 12. © 2014 International Business Machines Corporation 12 Mobile in Context of Systems of Engagement Mobile is about transacting 1 96% year to year increase in mobile cyber Monday sales between 2012 and 2011 Mobile enables the Internet of Things 91% of mobile users keep their device within arm’s reach 100% of the time 5 Trends with significant implications for the enterprise 2 4 3 Mobile is primary 5 90% of users use multiple screens as channels come together to create integrated experiences Mobile must create a continuous brand experience Global Machine-to-machine connections will increase from 2 billion in 2011 to 18 billion at the end of 2022 Insights from mobile data provide new opportunities 75% of mobile shoppers take action after receiving a location based messages 2
  • 13. © 2014 International Business Machines Corporation 13 Mobile is primary 91% of mobile users keep their device within arm’s reach 100% of the time Insights from mobile data provide new opportunities 75% of mobile shoppers take action after receiving a location based messages Mobile is about transacting 96% year to year increase in mobile cyber Monday sales between 2012 and 2011 Mobile must create a continuous brand experience 90% of users use multiple screens as channels come together to create integrated experiences Mobile enables the Internet of Things Global Machine-to- machine connections will increase from 2 billion in 2011 to 18 billion at the end of 2022 A business in motion must be mobile first
  • 14. © 2014 International Business Machines Corporation 14 85% of adults who have completed a mobile transaction in the past year expect the experience to be better than using a laptop or desktop computer Yet 41% of comments about the top mobile companies expressed frustration Source: Harris Interactive Survey of Mobile User Experience March 2011 Expectations versus Realities
  • 15. © 2014 International Business Machines Corporation 15 The same percentage of developers who claim Testing and Quality Assurance is in their top 5 concerns… Also claim they are challenged with developing applications as quickly as management wants SD Times: “More than half of organizations are building mobile applications” http://www.sdtimes.com/link/36553 Quality versus Time, who hasn’t faced this challenge?
  • 16. 16 Agenda  Introduction  Mobile Application Development  Reference Architectures  Mobile Applications Client Side Server Side  Mobile Testing  Summary
  • 17. © 2014 International Business Machines Corporation 17 Why mobile development is different Development is different.Mobile apps are different. • They are more strategic – Greater urgency and immediacy of engagement • The risk is more visible – app stores show ratings and comments and can prevent user adoption • They are context-aware – know where you are and what you are doing • They run on unstable networks– interruption is the norm, not the exception • Smaller footprint – More challenging to make compelling and easy to use • Always on – An opportunity to deliver greater value • Faster development cycles drives automation demand • More devices to support, each with its own set of capabilities, OS and UI behaviors • More development approaches to choose from – Web, HTML, Native • More third-party and open-source tools, frameworks and libraries to choose from • One constant exception: enterprise software services coordination
  • 18. © 2014 International Business Machines Corporation 18 Mobile Lifecycle Management & Testing Data Access & Integration Building & Deploying Mobile Apps  Secure code and reuse across platforms  Management needs for B2C / B2B / B2E  Analytics & continuous improvement  Address multi-channel and multi-tier Rapid Prototyping  Access to device inventory  Test automation & planning  Lifecycle management  Team collaboration & automation  Fit within existing enterprise development process  Short project cycles & integration effort  Different data usage patterns for mobile  Content delivered in context  Driving engagement (push) across multi-tier systems How do I develop & deliver across platforms? How do I test and manage the lifecycle of the app? How do I integrate into existing systems? Mobile app development imperatives and challenges
  • 19. © 2014 International Business Machines Corporation 19 Development Lifecycle
  • 20. 20 Agenda  Introduction  Mobile Application Development  Reference Architectures  Mobile Applications Client Side Server Side  Mobile Testing  Summary
  • 21. © 2014 International Business Machines Corporation 21 IBM introduces the IBM MobileFirst offering portfolio AnalyticsSecurityManagement IBM & Partner Applications Application Platform and Data Services Banking Insurance Transport Telecom Government Industry Solutions HealthcareRetail Automotive Application & Data Platform Strategy&DesignServices Development&IntegrationServices Cloud & Managed Services Devices Network Servers
  • 22. © 2014 International Business Machines Corporation 22 Capability View
  • 23. © 2014 International Business Machines Corporation 23 Microsoft Reference Architecture Source Microsoft Mobile Architecture Guide
  • 24. © 2014 International Business Machines Corporation 24 Logical Architecture Client Middle Tier Backend
  • 25. © 2014 International Business Machines Corporation 25 Example Implementation 25
  • 26. 26 Agenda  Introduction  Mobile Application Development  Reference Architectures  Mobile Applications Client Side Server Side  Mobile Testing  Summary
  • 27. © 2014 International Business Machines Corporation 27 Client Side Client Middle Tier Backend
  • 28. © 2014 International Business Machines Corporation 28 Client Architecture Choices Web Application Desktop and mobile using open web programming models Limited to no device- specific functionality Native Mobile Application Mobile only, using native languages Native appearance, device capabilities, perform ance Mobile Web Application Mobile only using open web client programming models Hybrid Mobile Application Mobile only, app runs on device leveraging open web via JavaScript bridge Native device capabilities Mobile Browser Execution Application Store download and install Richness of Mobile Presentation / Services Portability (cross-device reuse) Maintenance Cost (TCO)
  • 29. © 2014 International Business Machines Corporation 29 Publish in AppStoreClient Architecture Choices  Native code  Access to full set of lower-level device capabilities Native Appl. Device APIs 100101010101110 100101001001010 111010010011010 101010100100100 101111001001100 101010100101010 101001010101010 101010101011111 10  HTML, JavaScript, CSS, with optional native code  Installed and run like a native mobile app; mobile-optimized UI  Access to lower-level device capabilities Native Shell Web Native Device APIs <!D OCT YPE html PUB LIC crea ted 100 101 010 101 110 100 101 010  HTML, JavaScript, CSS  Accessed from a mobile web browser; mobile- optimized UI  Limited access to lower- level device capabilities  HTML, JavaScript, CSS  Accessed from a mobile web browser  No device-specific capabilities Mobile Browser Web Code <!DOCTYPE html PUBLIC <html> <! - - created 2003-12-12 - - <head><title>XYZ </title> </head> <body> </p> Web Mobile Web Hybrid Mobile Native Richness of Mobile Presentation / Services Portability (cross-device reuse) Maintenance Cost (TCO) Mobile Browser Web Code <!DOCTYPE html PUBLIC <html> <! - - created 2003-12-12 - - <head><title>XY Z</title> </head> <body> </p>
  • 30. © 2014 International Business Machines Corporation 30 HTML5 is both an app deployment platform (on-browser) and a technology for creating native apps (off-browser). 37% of mobile developers use as a platform, i.e. to develop mobile websites, or web-apps. An additional 15% of app developers use HTML5 beyond the browser, via hybrid apps or HTML5-to-native tools. Technology Choices – See study from Vision Mobile 2013 was a year that cemented the Android/iOS duopoly beyond any doubt. Android reached 81% of smartphone sales in Q3 2013. Moreover, Android continues to dominate Developer Mindshare with 71% of developers that target mobile platforms, developing for Android, according to our latest survey of 7,000+ developers. With the market flooded with Android handsets, the surprising fact is that Android’s Developer Mindshare has not increased any further. on HTML5 vs. native development, off-browser routes like PhoneGap, Appcelerator or FireFox OS can mitigate issues relating to performance or API access. In spite of these issues, HTML5 remains a very attractive cross- platform development route for developers, 16% of whom indicate their intention to adopt the platform. HTML5 has become a bit of a misnomer since it is a technology stack rather than a fully-fledged app ecosystem. Developers employ HTML5 technology in a number of ways: to develop mobile websites, web apps, hybrid apps or use HTML5 code within native apps to display web content. In that sense, HTML5 can be viewed as both a deployment platform (onbrowser) and a technology that can be used beyond the browser (off- browser), through tools such as PhoneGap, Appcelerator, Firefox OS and 10s more. Firefox OS now claims a 7% Developer Mindshare which is by no means competitive, but presents a solid foothold for a platform that launched a commercial handset just six months ago. On top of that, 14% of developers indicated that they plan to adopt the platform. Mozilla aims to create an app ecosystem centred around HTML5, by adding ecosystem features and capabilities that are currently missing: web app discovery, distribution, and monetisation.
  • 31. © 2014 International Business Machines Corporation 31 Platform Choices
  • 32. © 2014 International Business Machines Corporation 32 IOS Development • Requires Mac • IDE Xcode • Language : Objective C Alternative C, C++ MonoTouch C# using Xamarin • Deployment through Appstore
  • 33. © 2014 International Business Machines Corporation 33 Android Development • Mac, Linux or Windows • IDE Android SDK (Android Studio in prerelease) • Language : Java Alternative C, C++ MonoDroid C# • Deployment through Play Store or by installing APK
  • 34. © 2014 International Business Machines Corporation 34 Windows Phone Development • Windows • IDE VisualStudio • Language : C# Alternative C, C++ • Silverlight or XNA Framework • Deployment through Windows Phone Marketplace
  • 35. © 2014 International Business Machines Corporation 35 BlackBerry Development • Linux, Windows • IDE Momentum, Visual Studio • Language : C, Alternative C, C++ • Qt framework • Deployment Desktop Manager or Blackberry Enterprise Server or Blackberry App World
  • 36. © 2014 International Business Machines Corporation 36 HTML 5 Development • Linux, Windows, Mac, Web • IDE Many available • Language : HTML 5, CSS, JavaScript • Many frameworks • Deployment through Web Server
  • 37. © 2014 International Business Machines Corporation 37 Major Javascript Mobile Toolkits and Related Frameworks Mobile Toolkits Dojo Mobile JQuery Mobile Sencha Touch Toolkits Dojo Toolkit Dojox Dijit Dojo Base/ CoreUtil JQuery UI JQuery Sencha Jquery Mobile Sencha Touch EXT GWT EXT JS EXT Core
  • 38. © 2014 International Business Machines Corporation 38 Comparing Dojo and JQuery
  • 39. © 2014 International Business Machines Corporation 39 Mobile First Design
  • 40. © 2014 International Business Machines Corporation 40 Responsive Design Simple Example @media all and (min-width: 651px) { #quotePrice: { float:left; position:relative; width:320px } #quotePriceList: { float:left; position:relative; width:320px } } @media all and (max-width: 650px) { #quotePrice: { position:relative; width:320px } #quotePriceList: { position:relative; width:320px } http://www.dwuser.com/educatio n/content/responsive-design-a- crash-course-and-demo/ http://www.dwuser.com/educati on/content/creating- responsive-tiled-layout-with- pure-css/
  • 41. © 2014 International Business Machines Corporation 41 • Accelerate Development Web, hybrid, and native development: open, flexible, standard-based, multi-screen/omni- channel Functional testing Development lifecycle tools and integration • Facilitate App Security and Trust Server-enforced authentication App authenticity and user-app-device binding Secure and syncable on-device storage App version enforcement • Enable User Engagement Unified push and SMS notifications Geolocation and context collections and intelligence Mobile-friendly integration • Support Mobile Analytics Efficient acquisition of analytics data Development, operational, and business analytics Offline and online event management IBM Worklight: A mobile application platform Example of Hybrid Development
  • 42. © 2014 International Business Machines Corporation 42 Feedback Management Reporting for Statistics and Diagnostics PublicAppStores Worklight Application CenterDevelopment Team Provisioning App Feedback Management Enterprise App Provisioning and Governance 2 Device RuntimeCross-Platform Compatibility Layer Encrypted and Syncable Storage Runtime Skins Server Integration Framework ApplicationCode 3 Worklight Console 5 Unified Push and SMS Notification Development and Operational Analytics App Version Management ckendSystems&CloudServices Worklight Server User Authentication and Mobile Trust Mashups and Service Composition JSON Translation Adapter Library for Backend Connectivity StatsandLogsAggregation Unified Push Notifications Client-Side App Resources Direct Update Mobile Web Apps 4 Geolocation Services 5, Hybrid, and Native Coding ptimization Framework Integrated Device SDKs Party Library Integration Build Engine Worklight Studio SDKs Functional Testing WYSIWG Editor and Simulator Blackberry Android iOS Windows Phone Java ME Windows 8 Mobile Web Desktop Web 1 Enhanced crash & platform-level exception capture Location-based event handling Worklight Components
  • 43. © 2014 International Business Machines Corporation 43 Worklight Studio • Eclipse Based IDE • Native, hybrid and standard web development • Environment-specific optimization • Native development options • Runtime skins • 3rd-party library integration • Device SDK integration • Access to emulators and debugging tools • Supports auto-complete and validation HTML5, Hybrid, and Native Optimization Framework Integrated Device SDKs 3rd Party Library Integration Build Engine Worklight Studio SDK's Functional Testing WYSIWG Editor and Simulator Blackberry Android iOS Win Phone Java ME Windows 8 Mobile Web Desktop Web
  • 44. © 2014 International Business Machines Corporation 44 Preview in Browser Perform device-specific tests in the Mobile Browser Simulator: supports Cordova and Worklight client API
  • 45. © 2014 International Business Machines Corporation 45 Worklight Studio – Common Code Structure • common resources serve as the basis for the optimized environments that may be added later. hold resources that are shared by all environments. • lib directory stores 3rd party library files for the project • js (JavaScript files) auth.js – authentication messages.js – internationalization myApp.js – application code • MyApp.html file is initially configured as main file application-descriptor.xml contains reference to "mainfile“ enable authentication (onDemand, onStartup) worklightRootURL (application URL) environment specific references
  • 46. © 2014 International Business Machines Corporation 46 Worklight Studio - Environment Optimization HTML files from an environment folder will ove images from an environment folder will overrid JavaScript from an environment folder is appended to the same file in the common folder CSS files from an environment folder will be appended to the CSS files in the common folder
  • 47. © 2014 International Business Machines Corporation 47 Integrated Device SDKs
  • 48. © 2014 International Business Machines Corporation 48 Edit within Worklight Studio
  • 49. © 2014 International Business Machines Corporation 49 Rich Page Editor (WYSIWYG UI Construction) • Eclipse perspective for Worklight projects. • Optimized layout for hybrid app development • Rich page editor: drag- and-drop, palette of components, propertie s view, beautified outline, and raw editable source code • Changes to code automatically apparent in rich page editor, and vice-versa, for quick development
  • 50. © 2014 International Business Machines Corporation 50 Mobile Functional Test Tools • Create, run, and automate tests on mobile applications • Improve quality and time-to-value with industry-first app testing Create resilient and code-less test cases Record once, play back on multiple devices • Standardized, eclipse based • Comprehensive – Android and iOS, Native and hybrid • Complete – Recording, editing, and running on mobile devices • Resilient – Same test runs across multiple devices • Also for non-developers – Scripts in natural language description New in Worklight 6.0
  • 51. © 2014 International Business Machines Corporation 51 Centralized Build Create an Worklight project and application in Eclipse via Worklight Studio Add a mobile environment of your choosing Add app content Build and deploy it to the Worklight Server Use the specific environment tools to deploy to device  Eclipse for Android  Xcode for iOS  Visual Studio for Windows Phone  Ripple for BlackBerry Worklight Build System Source Code Repository Worklight Applicati Center
  • 52. © 2014 International Business Machines Corporation 52 Worklight Studio: Back-end Integration • Secure back-end integration with Worklight Adapters • Out of the box support for SQL, HTTP (REST and SOAP), Cast Iron, and JMS Adapters • XML-based declarative specification and JavaScript programming • Multi-source data mashups and back-end service composition • Simplified adapter testing • Access to session data and user properties • Server-side debugging
  • 53. © 2014 International Business Machines Corporation 53 Application Center • The Worklight Application Center enables companies to easily set up an enterprise app store for their enterprise and development teams. • The Application Center provides: Administrators with fine-grained control over the distribution of mobile apps across the enterprise, including ACL and LDAP support; Employees with a central location for the latest apps needed by their department and optimized for their device; Developers with an easy way to distribute mobile builds and elicit feedback from development and test team members. PublicAppStores Worklight Application CenterDevelopment Team Provisioning App Feedback Management Enterprise App Provisioning and Governance 2
  • 54. © 2014 International Business Machines Corporation 54 Worklight Server • Adapters with support for SOAP, REST, SQL, JMS, IBM Cast Iron, and Node.js (preview in 6.0) • Performs Data Transformation to streamline back-end data for mobile consumption • Server and device Security control • Supports Physical Clustering for high availability • Controls Application Deployment and Versioning • Push Notification administration • Analytics including user adoption, usage data, app crash and exceptions EnterpriseBackendSystems&CloudServices Worklight Server ser Authentication and Mobile Trust Mashups and Service Composition JSON Translation apter Library for Backend Connectivity StatsAggregation Unified Push Notifications Client-Side App Resources Direct Update Mobile Web Apps
  • 55. © 2014 International Business Machines Corporation 55 Worklight Runtime – Direct Update On-device Logic 1. Web resources packaged with app to ensure initial offline availability 2. Web resources transferred to app's cache storage 3. App checks for updates on startup and foreground events 4. Updated web resources downloaded when necessary, with user confirma Worklight Server Native Shell Pre-packaged resources 1 Download 4 Update web resource App Store Web resources Cached resources 2 Transfer 3 Check for updates
  • 56. © 2014 International Business Machines Corporation 56 Geo-location Scenarios Routing trucks arriving at warehouse Location-aware security for hospital app Username Password Submit ✔ ? Automatic Check-In ............ … …… …… …… hotel check-in g mall experience SMS, Push
  • 57. © 2014 International Business Machines Corporation 57 Worklight Console • Application Version Management Install, update, disable, enable • Push management • Configurable audit log • Administrative dashboards for: Deployed applications Installed adapters Push notifications • Development and Operational Analytics Device RuntimeCross-Platform Compatibility Layer Encrypted and Syncable Storage Runtime Skinning Server Integration Framework ApplicationCode 3 Worklight Console 5 Unified Push and SMS Notification Development and Operational Analytics App Version Management kendSystems&CloudServices Worklight Server User Authentication and Mobile Trust Mashups and Service Composition JSON Translation dapter Library for Backend Connectivity StatsAggregation Unified Push Notifications Client-Side App Resources Direct Update Mobile Web Apps 4 Geolocation Services
  • 58. © 2014 International Business Machines Corporation 58 Unified Push Notifications Back-end SystemBack-end System Back-end SystemBack-end System Polling Adapters Message-based Adapters Unified Push APINotification State Database User-Device Database iOS Dispatcher Android Dispatcher BlackBerry Dispatcher (roadmap) Windows Phone Dispatcher SMS Dispatcher Apple Push Servers (APN) Google Push Servers (GCM) RIM Push Servers Microsoft Push Servers SMS/MMS Brokers Administrative Console Worklight Client-side Push Services iOS Push API Android Push API BlackBerry Push API Windows Push API Broker API Uniform access to push notifications providers ‒ Register for, Notify and Receive a notification Register for and Send SMS based notifications ‒ E.g., for JME Worklight Client-side Push Services Worklight Client-side Push Services Worklight Client-side Push Services
  • 59. 59 Agenda  Introduction  Mobile Application Development  Reference Architectures  Mobile Applications Client Side Server Side  Mobile Testing  Summary
  • 60. © 2014 International Business Machines Corporation 60 Server Side Client Middle Tier Backend
  • 61. © 2014 International Business Machines Corporation 61 Middleware Choices • SOAP defines a standard communication protocol (set of rules) specification for XML-based message exchange. SOAP uses different transport protocols, such as HTTP and SMTP. The standard protocol HTTP makes it easier for SOAP model to tunnel across firewalls and proxies without any modifications to the SOAP protocol. SOAP can sometimes be slower than middleware technologies like CORBA or ICE due to its verbose XML format. • REST describes a set of architectural principles by which data can be transmitted over a standardized interface (such as HTTP). REST does not contain an additional messaging layer and focuses on design rules for creating stateless services. A client can access the resource using the unique URI and a representation of the resource is returned. With each new resource representation, the client is said to transfer state. While accessing RESTful resources with HTTP protocol, the URL of the resource serves as the resource identifier and GET, PUT, DELETE, POST and HEAD are the standard HTTP operations to be performed on that resource.
  • 62. © 2014 International Business Machines Corporation 62 Implementing Backend Services • Provide Data and Operations for Mobile Frontend • Many Possible Technology choices J2EE Stack Microsoft .Net Stack PHP Node.JS Python … • Choice Depends on Skills Available infrastructure Integration Requirements History
  • 63. © 2014 International Business Machines Corporation 63 Node.js • JavaScript escapes from the browser! • A tiny (5.6MB install) runtime for creating web Servers using JavaScript that is generating a lot of interest • Part of the 'JavaScript everywhere' thing • See Jerry Cuomo talking about it here
  • 64. © 2014 International Business Machines Corporation 64 Node.js simple example var express = require('express'); var app = express(); app.get('/nl', function(req,res){ res.send('Hallo wereld'); }); app.get('/fr', function(req,res){ res.send('Bonjour tout le monde'); }); var port=8080; app.listen(port);
  • 65. © 2014 International Business Machines Corporation 65 Node.js Package Manager • Easy to Install Additional Packages from Central Repository Example  npm -install express • Allows you to add additional functions Large set of modules available  Eg. Node-red visual tool for wiring the internet of things • Thousands of Packages available Example Node-red IBM Emerging Technologies around Internet of Things
  • 66. © 2014 International Business Machines Corporation 66 Node-red Example
  • 67. © 2014 International Business Machines Corporation 67 Relational Databases…… tables of rows (tuples) columns have a single (typed) value. All Operations take and return tuples a powerful simple general model Atomic Consistent Independent Durable Transactions across ALL the data.
  • 68. © 2014 International Business Machines Corporation 68 App1 App3 App2 Relational DB Relational DBs allow multiple applications to share database. Integration Databases Application Databases App / service 1990s 2000s Nosql or Relational DB Trend is to dedicated databases & SOA
  • 69. © 2014 International Business Machines Corporation 69 Problems with relational databases • Mismatched to in-memory object model. Led to ORMs and Object databases. • Prevalence of “Graph” problems. • Scale up not scale out.
  • 70. © 2014 International Business Machines Corporation 70 Relational databases Some Nosql DBs: ACID Transactions Eventual Consistency Transactions across all data Limited scope transactions Flat relational model Aggregates in the data model. Must Scale Up Can Scale Out
  • 71. © 2014 International Business Machines Corporation 71 NoSQL Data Models Nosql Data Model graph aggregate Key value Document Column store • Concept of an Aggregate Collection of data that we access together. Boundaries for ACIDity Aggregates make it easy for the database to manage and distribute data.
  • 72. © 2014 International Business Machines Corporation 72 Key-value store Key Opaque Blob of data. aggregate Value
  • 73. © 2014 International Business Machines Corporation 73 Document database Key value Some structured data, with limits on types. aggregate
  • 74. © 2014 International Business Machines Corporation 74 Column Store
  • 75. © 2014 International Business Machines Corporation 75 Graph
  • 76. © 2014 International Business Machines Corporation 76 C A P Availability: Each client can always read and and write Consistency: All clients always have the same view of the data Partition Tolerance: The system tolerates communication failures. Pick Two CP CA AP BigTable Hbase MongoDB Terrastore BerkleyDB MemcacheDB Redis DB2 Mysql Oracle Postgres Dynanamo Voldemort KAI Cassandra SimpleDB CouchDB (E.g IBM Cloudant) Riak Relational Key-Value Column-Oriented Document-Oriented Graph Data Models Based on Nathan Hurst’s Blog neo4J CAP & Data Model classification
  • 77. © 2014 International Business Machines Corporation 77 Run Your Apps The developer can chose any language runtime or bring their own. Just upload your code and go. DevOps Development, monitoring, deployment and logging tools allow the developer to run the entire application APIs and Services A catalog of open source, IBM and third party APIs services allow a developer to stitch together an application in minutes. Cloud Integration Build hybrid environments. Connect to on- premises systems of record plus other public and private clouds. Expose your own APIs to your developers. Extend SaaS Apps Drop in SaaS App SDKs and extend to new use cases (e.g,. Mobile, Analytics, Web) IBM BlueMix
  • 78. © 2014 International Business Machines Corporation 78 New Applications Create New Developer Needs  Environments set up in minutes versus days or weeks  Choice: Languages, Services and Tools  Friction free way to experiment with new middleware capabilities  Self service environment to deploy, scale and monitor applications  Securely connect to and integrate with existing applications data
  • 79. © 2014 International Business Machines Corporation 79 Cloud Operating Environment Development Services Operational Services Infrastructure Services Application Services CREATE CONSUME CAPACITYCONTROL • Enable applications to be rapidly & incrementally composed from services • Deliver application changes continuously • Enable continuous availability • Support fit-for-purpose programming models & services • Embed manageability of services & application • Workload Optimized & Elastic APPLICATIONS / WORKLOADS • Persistence • Messaging & Workflow • Scripting & Programming Languages • Compute, Storage, Netw ork • Clustering & Elasticity • Logging • Monitoring • Security • Code Repository & Version control • Continuous build & Test Cloud Operating Environment Architecture
  • 80. © 2014 International Business Machines Corporation 80 Standardization; OPEX savings; faster time to value Networking Storage Servers Virtualization O/S Middleware Runtime Data Applications Traditional On-Premises Networking Storage Servers Virtualization O/S Middleware Runtime Data Applications Platform as a Service Networking Storage Servers Virtualization O/S Middleware Runtime Data Applications Software as a Service Networking Storage Servers Virtualization Middleware Runtime Data Applications Infrastructure as a Service O/S Vendor Manages in CloudClient Manages aaS – split of provider- and consumer-side responsibilities
  • 81. © 2014 International Business Machines Corporation 81 Workload definition, Optimization, & Orchestration Software Defined Environment Software Defined Compute Software Defined Storage Software Defined Networking Resource Abstraction & Optimization datastore mobile devopsmiddleware Services Traditional Workloads Services & Composition Patterns API & Integration Services Traditional Workloads security cloudfoundry.org OPEN ecosystem of composable services Optimized workload deployment Integration patterns with systems of record CapabilityValue Fast, automated composition of services Repeatable patterns-of-expertise Hardware Cloud Operating Environment Developer centric platform, marketplace & services in a Cloud Operating Environment
  • 82. © 2014 International Business Machines Corporation 8282 ©2014 IBM Corporation Continuing our history of embracing and extending Open Source Embracing Cloud Foundry As An Open Source PaaS
  • 83. © 2014 International Business Machines Corporation 83 Upload your code and run your application in seconds Run Your Apps
  • 84. © 2014 International Business Machines Corporation 84 Dev Ops Liberty for Java RubyNode.js “Bring Your Own Buildpack” SQL Database JSON Database Mongo DB PostgreSQL Mobile Data Data Managemen t Services MQTT CloudCode Mobile App Mgmt Mobile Services Mobile Quality Assurance BLU Data Warehouse MySQL Twilio Data Cache Session Cache Elastic MQ Web & App Application Decision SSO Redis MapReduce RabbitMQ Log Analysis Historian Internet Of Things Push Runtimes Monitoring and Analytics Git Hosting Deployment Automation Web IDE Agile Developmen t A broad range of runtimes & services
  • 85. © 2014 International Business Machines Corporation 85 The Mobile Backend Starter application is a pre-defined set of mobile services that make sense together
  • 86. © 2014 International Business Machines Corporation 86 Looking at the boilerplate, a mobile developer can get an idea of the types of services available in the boiler plate application
  • 87. © 2014 International Business Machines Corporation 87 http://www.bluemix.net
  • 88. © 2014 International Business Machines Corporation 88 Mobile Security Considerations
  • 89. © 2014 International Business Machines Corporation 89 Security Framework
  • 90. © 2014 International Business Machines Corporation 90 Billions of smart devices instrument our world today Interconnecting these smart devices c The Internet of Things
  • 91. © 2014 International Business Machines Corporation 91 Why MQTT design goals (1998) • MQTT == MQ Telemetry Transport • The MQTT specification is open and royalty free for ease of adoption http://www.ibm.com/developerworks/webserices/library/ ws-mqtt/index.html • Open-source implementations available • A Publish Subscribe messaging protocol allowing a message to be published once and multiple consumers (applications / devices) to receive the message Support loose coupling Durable and non durable subscriptions A publication may be retained • Designed for constrained devices Tiny footprint MQTT client (and server) libraries E.g. a c client lib in 30Kb and a Java lib in 64Kb Suited to applications / devices that may have very limited processing resources available  8 Bit controllers upwards
  • 92. 92 Agenda  Introduction  Mobile Application Development  Reference Architectures  Mobile Applications Client Side Server Side  Mobile Testing  Summary
  • 93. © 2014 International Business Machines Corporation 93 The Quality of mobile applications is critical 93 Mobile apps can increase customer interaction, improve productivity and offer access to new markets. But poor quality can have a real impact on business. The number of mobile devices and platforms is continuously growing, and the pace of delivery and response to customer feedback is a growing challenge. The mobile ecosystem extends back-end services and integrated platforms which complicates end-to-end application testing. How can we ensure software quality in a cost effective way?
  • 94. © 2014 International Business Machines Corporation 94 41% of projects fail to deliver expected business ROI Quality Management for Systems of Engagement Accelerating delivery of high quality, multi-tiered mobile applications Solutions to improve ROI: 1. Automate UI and Performance tests for mobile apps 2. Virtualize back-end services to maintain agility 3. Improve manual test case management and optimize execution across multiple mobile devices 4. Extend Worklight with automated testing Cross cutting mobile themes, addressed by Rational Software
  • 95. © 2014 International Business Machines Corporation 95  Mobile Test Automation Support for native, and hybrid applications running on Android and iOS Natural language test and visual test editing Simplified IDE and mobile device clients for test authoring, execution, and reporting High-fidelity capture an replay of multi-touch events  Eclipse Client integration Mobile Test Automation Support for Selenium web GUI test automation Multi-channel test scenarios Integration with Rational Quality Manager and the IBM Worklight mobile development platform  End-to-end mobile testing Testing of middle-tier and back end-services Virtualization of middle-tier and back-end systems Performance testing of your integration infrastructure Mobile Test Automation with IBM Rational Test Workbench
  • 96. © 2014 International Business Machines Corporation 96 End-to-end Mobile Application Testing • Examine integration protocols and messages to verify end-to-end communication • Reuse integration tests to verify the scalability of your integration middleware and services infrastructure • Virtualize application services to enable continuous integration, accelerate testing, and reduce application integration risk • Leverage Rational Test Workbench extensive testing features to address non- mobile components of your environment Test and Virtualize mid-tier and back end applications and services Client Tier Middle Tier Backend Data and Services Virtual component or service For more information visit: http://www-03.ibm.com/software/products/us/en/rtvs/
  • 97. 97 Agenda  Introduction  Mobile Application Development  Reference Architectures  Mobile Applications Client Side Server Side  Mobile Testing  Summary
  • 98. © 2014 International Business Machines Corporation 98 Bringing it all Together
  • 99. © 2014 International Business Machines Corporation 99 References • IBM Mobile Reference Architecture http://www.ibm.com/mobilefirst/us/en/ • Architecting Mobile Solutions for the Enterprise – Dino Esposito ISBN: 978-0-7356-6302-2 • Microsoft Mobile Architecture Guide • HTML 5 and CSS 3 Responsive Web Design cookbook – Benjamin Lagrone ISBN: 978-1-84969-544-2 • SAMS Teach yourself HTML 5 in 24 hours - Jennifer Kyrnin ISBN-13: 978-0-672-33440-5 • Mobile Design Pattern Gallery – Theresa Neil ISBN: 978-1-449-31432-3 • Professional Mobile Application Development - Jeff MCWerther, Scott Gowell ISBN: 978-1-118-20390-3 • IBM Bluemix http://www-01.ibm.com/software/ebusiness/jstart/bluemix/ • IBM Institute for Business Value – Mobile study http://www-935.ibm.com/services/us/gbs/thoughtleadership/
  • 100. © 2014 International Business Machines Corporation 100 References.... • IBM Rational Mobile Solutions http://www-01.ibm.com/software/rational/mobile/ • Node Red http://nodered.org/ • IBM Developerworks http://www.ibm.com/developerworks/ • MQTT http://mqtt.org/ • Vision Mobile Developer Economics Report http://www.developereconomics.com/reports/q1-2014/ • Worklight http://www-03.ibm.com/software/products/en/worklight/

Notes de l'éditeur

  1. Source: http://www.webopedia.com/TERM/C/consumerization_of_it.html
  2. 1) SoE definition: Systems of Engagement is a solution (“Systems”) which has multiple ways how a user can  “engage” (interacts) with the system. A key focus is put on communication and collaboration across company-boundaries, increase the productivity of their employees and become suddenly very efficient and consumer oriented. SoE describes systems which are more decentralized, incorporate technologies which encourage peer interactions, and which often leverage cloud technologies to provide the capabilities to enable those interaction. See horizon: http://www-01.ibm.com/software/ebusiness/jstart/systemsofengagement/ 2) Some SoE implementation aspects: Use social media to attract and hold consumer attention Address complex issues collaboratively Mine community conetnt to exrtract insights to enhance business Focused on in the moment tasks and decisions Delivering in an individual’s personalized context Leverage social and cloud technologies Provide analyitics—driven experiences Enabled by smartphones, tables and smart products http://www.aiim.org/documents/content-management-future-history.pdf
  3. Goal: Get your customer talking and engage with them to identify their mobile initiatives. Some questions you can ask (if you don’t know already): -What mobile initiatives do you have now?-What impact is expected from your mobile initiatives? -How will mobile help your brand experience? This agenda section slides come directly from the MobileFirst Customer Facing Deck (with minor modifications): https://w3-connections.ibm.com/communities/service/html/communityview?communityUuid=a3898887-97b8-47ff-8809-0d088c8fa294#fullpageWidgetId=W8ab884149579_418d_809a_6d70de3638ac&amp;file=0e11ea15-a517-4a70-a57a-411cfac71a75 MAIN POINT: Mobile is a big opportunity SPEAKER NOTES: There is a lot of compelling data in the marketplace, but we have identified 5 key trends or observations – supported by market data and by customer successes – that we believe have strong implications for the future of mobile. Mobile is about transacting. Whether shopping, purchasing, searching for or providing information, collaborating or seeking service, mobile enabled people and objects are seeking not simply to connect, but to complete tasks when, where and how they wish. As they transact they are creating vast streams of data that, with the right analytics, can teach us things about their behavior and their preferences that we could not learn in any other way. Mobile is the universal sensor. It is with most of us 100% of the time and is the primary means we use to interact with our employers, our customers, our family and our friends. But at the same time, the mobile experience must transcend any single device to accommodate multiple screens and touchpoints. The experience has to be consistent across channels, touchpoints and time. Finally, as we think about mobile, we can’t confine our thinking to devices like phones and tablets. The ability to tag things, sense things, power things and shrink things has extended mobility beyond people to nearly every other type of object on the planet. As we have said since the start of smarter planet things are becoming more instrumented, interconnected and intelligent than every before, and mobile is right at the center of that story. and will fundamentally change the way the world works. Sources: 1. Source: “China Mobile 50k survey”; Morgan Stanley Research; 2011 2. JiWire Mobile Audience Insights Report Q42011 3.IBM Coremetrics Retail Data – as published in 11/24/12 IBM Press Release 4. Time, Inc. 2012 5. GSMA, Machina Research
  4. MAIN POINT: There is a lot of compelling data in the marketplace, but we have identified five key trends or observations – supported by market data and by customer successes – that we believe have strong implications for the future of mobile.   SPEAKER NOTES: [1] Mobile is the universal sensor. It is with most of us 100% of the time and is the primary means we use to interact with our employers, our customers, our family and our friends. [2] As they interact they are creating vast streams of data that, with the right analytics, can teach us things about their behavior and their preferences that we could not learn in any other way. [3] These interactions inherently become transactions. Whether shopping, purchasing, searching for or providing information, collaborating or seeking service, mobile enabled people and objects are seeking not simply to connect, but to complete tasks when, where and how they wish. [4] Thus, the mobile experience must transcend any single device to accommodate multiple screens and touchpoints. [5] Finally, as we think about mobile, we can’t confine our thinking to devices like phones and tablets. The ability to tag things, sense things, power things and shrink things has extended mobility beyond people to nearly every other type of object on the planet. As we have said since the start of smarter planet things are becoming more instrumented, interconnected and intelligent than ever before, and mobile is right at the center of that story and will fundamentally change the way the world works.   I just highlighted five key mobile trends that drive IBM’s strategy of the mobile enterprise market. Each trend brings with it an opportunity that I want to highlight here. Trend  Opportunity 1. Mobile is primary  Transform the value chain 2. Insights from mobile data provide new opportunities  Deliver contextually relevant experience 3. Mobile is about transacting  Drive revenue and productivity 4. Mobile must create a continuous brand experience  Deepen engagement 5. Mobile enables the Internet of Things  Leverage industry transformations Let’s begin with the first key trend, that mobile is about transacting and all of the notions that make up a “transaction”. Let’s flesh that out a bit further, because with each trend comes opportunities that your enterprise should leverage. With mobile transactions, the opportunity is to drive new and additional revenue and productivity through mobile. This requires businesses to re-imagine every interaction in a Mobile First world. Moving to the second trend you highlighted around mobile insights – this brings with it an opportunity to deliver a contextually relevant experience to your employees, partners and customers. This enables you to harness deep insights to inform new mobile innovations. Thirdly, mobile is primary. We all know that already. So what does it mean to you and your business? Simply put, you deliver mobile apps that transform the value chain because you recognize the importance of prioritizing ‘mobile first’ since it is the way of the future. Moving along, let’s focus on this requirement that a user’s experience must be consistent across all channels. We must prioritize and leverage user imperatives to benefit the enterprise, meaning you can deepen relationships with consistent brand experience by integrating your front-end presence regardless of hardware or operating system it is presented on with your back-end, regardless if its locally or remotely hosted infrastructure. The ‘how’ doesn’t matter anymore – people expect it to work seamlessly. Lastly, let’s move beyond phones. Because ‘mobile’ really isn’t just about a phone, or a tablet. By broadening our scope of what we consider ‘mobile’ we capitalize on other opportunities for your business. Machine-to-machine is HUGE. Thus, why not leverage industry transformations driven by M2M through cloud technologies and whatever comes along next in order to capitalize on this 18 billion opportunity expected by the end of 2022.
  5. Goal: Get your customer talking and engage with them to identify their mobile challenges. MAIN POINT: User expectations of mobile is high…. yet those expectations are not being met Source: Harris Interactive Survey of Mobile User Experience March 2011
  6. Goal: Get your customer talking and engage with them to identify their mobile challenges. MAIN POINT: Quality and time are two factors in the “software paradox” and many organizations face these same challenges. Source: SD Times: “More than half of organizations are building mobile applications” http://www.sdtimes.com/link/36553
  7. MAIN POINT: Mobile poses unique challenges that separate it from traditional IT projects. Let’s look at a few of them. SPEAKER NOTES: First of all the apps themselves are different. Not just smaller in footprint, but more strategic, and delivering more user and context-awareness. Unlike traditional apps, mobile apps are intended to run on unstable networks. Interruption in service is the norm, not the exception. Development is different. The app development lifecycle is more complicated. In addition to being faster and more iterative, you have to deal with multiple device platforms and development styles. You have to securely integrate into back-end enterprise services and cloud and be ready to scale appropriately – even when demand occurs in less predictable patterns. On top of all that you have unique mobile requirements like a user interface that has significant restrictions in terms of real-estate. Then there are questions about how do you effectively take advantage of unique capabilities mobile has to offer. Things like geo-location, for instance. Management is different. Managing app distribution and governance means working with as many as four different AppStores – each with their own approach and challenges for managing B2C apps. And, because the devices they run on are outside of IT control, mobile apps pose greater challenges associated with app governance, distribution, and version management. Finally, security is different with greater risks of exposing applications and data on small, light, and always on portable devices. You need to figure out how to protect your confidential information and the privacy of the participants – all while you are enabling connection through devices owned privately by the participants themselves and not controlled by the enterprise.
  8. MAIN POINT: These differences translate into unique development challenges. Let’s look at at a few of the most common concerns. SPEAKER NOTES: How do I develop and deliver across platforms? Organizations are struggling with the number of platforms they need to support, and the high velocity of change within those platforms. In BtoC apps, clients typically support four or more mobile platforms -- iOS (Apple), Android, Blackberry and Windows 8. Each mobile OS comes with its own native development tool stack, its own branded app store, and its own native SDK and development language. So for organizations that support four different platforms, that’s four development stacks to maintain for each application. How do I test and manage the lifecycle of the app? Once the app is developed, it must work flawlessly on multiple device Operating Systems and hundreds of devices in market at any time. These devices each have their own form factor and device-specific features. And at any time, dozens of new model upgrades are being introduced to the mobile arena. So formulating an automated testing strategy is essential for quality mobile development. How do I integrate into existing systems? Finally, organizations are struggling with the need to integrate into existing systems in a consistent and secure manner that ensures that the content is delivered in context, to only authorized users, in a secure manner with end-to-end encryption.
  9. MAIN POINT: IBM launched a new IBM Mobile offering portfolio SPEAKER NOTES: Today IBM we are re-launching our mobile offering portfolio to provide customers with an end to end set of offerings to help them embrace mobile first. We will approach the marketplace with a series of solutions led by GBS that are industry oriented. We have agreement with GBS on the three most important usecases in each industry, which we will discuss in greater detail on the next chart. GBS will lead the dialogue around the transformation and we will the offer a range of HW and SW mobile enabled solutions to support the transformation. Today on the app store there are over 200 IBM Software packages that have mobile enabled clients. We also have mobile enabled services that you can get from the smart cloud. Across the bottom of the chart, you will see how we will broaden the concept around the IBM MobileFirst Platform. When we launch the new brand it will include the mobile application development platform. Today that is known as Worklight. We will have mobile analytics which is known as Tealeaf today. We have mobile security – which is managed today by app scan, ISAM and other products in the security portfolio. And we have mobile management – which today is mobile endpoint manager. These products will integrate to provide a seamless suit of capabilities. In addition, on the left, bottom and right hand side you see a set of strategy &amp; design services, cloud &amp; managed services, and development &amp;integration services. Our colleagues in GTS and GBS have a set of services around mobile management, mobile application development and lifecycle management among others. And all of this will run on the cloud operating environment which enables customer to consume the solutions either on premise or in the cloud.
  10. MAIN POINT: Worklight helps address many different mobile app approaches. SPEAKER NOTES: There are a number of mobile app development approaches / styles that can be utilized to develop apps. You may find yourself using more than 1 style across your portfolio of internal and external apps. Web – user simply accesses your existing web sites from their mobile browser. UI is not mobile-optimized. Mobile web – apps accessed from a mobile browser (like a regular web app), but UIs have been mobile optimized (probably using a JavaScript framework like Dojo, jQuery Mobile, or Sencha Touch). Typically the URLs for these apps start with “m.” – for example “m.cnn.com”. Hybrid – installed and run like a native app, but the core of the app is written in HTML, JS, and CSS, enabling it to run across all major device platforms. This style supports writing native-specific extensions (in the native language), but if this logic is needed across all supported platforms, it will need to be written in multiple languages. Native– building the rich interfaces to mobile applications – embracing the ecosystems of the native vendors… The choices become daunting to consumers (both in understanding skills, resources required, best practices etc..) Richness of the UI increases as you move towards Native. Portability increases as you move away from Native Maintenance increase as you move towards Native, as you are typically needing to maintain separate code bases, tools, and infrastructures. Capabilities available in the various styles: Web and mobile web - almost all modern smartphone/tablet browsers support Geolocation (so, getting the user&amp;apos;s location) and ability to store information needed by the app/site locally (but no access is provided to the phone&amp;apos;s file storage area) Hybrid - same capabilities as web/mobile web, plus the following (primarily provided via PhoneGap): Accelerometer (captures device motion) - useful for apps where the way the phone is held/moved is important Camera - take a picture or access photos previously taken with the phone Capture - Provides access to the audio, image, and video capture capabilities of the device. Compass - detects the direction or heading that the device is pointed Contacts - create new contacts and access contacts stored on the phone File access - read/write files on the device storage Media - play and record audio files Network / connection info - provides info about the device&amp;apos;s network connectivity (wifi, 3G, etc) Notifications - visual, audible, and tactile device notifications (alerts, sounds, vibrations) Native - everything above, plus access to all APIs and capabilities provided via native SDKs (primarily you&amp;apos;d go with Native if you wanted to use native UI widgets and controls vs. web widgets)
  11. New! Embedded functional testing The accelerated delivery cycles of mobile applications requires fast and effective test cycles. Whether you are developing native, or hybrid applications, you need to validate that mobile apps work as expected across multiple platforms and hundreds of devices in market at any time – each with its own form factor. Until now, accomplishing this task required teams to undertake tedious and time-consuming manual test processes on every target platform and device. This typically involved creating a list of user actions and expected responses, codifying these test cases in spreadsheets or text documents, and laboriously (and manually) running the test scenarios on all target platforms and devices, one test and one device at a time. Often companies lack the time to properly test their apps, with mobile’s accelerated pace of change – ultimately leading to lack of testing, poorly performing software and inevitably, customer frustration and lack of confidence. Five app stars can become one star apps overnight when poorly performing software erodes consumer confidence. With IBM Worklight 6.0, we have replaced much of this tedious and time-consuming testing by providing the industry’s first integrated, cross-platform mobile app testing capability. Here’s how it works. Either developers or testers can simply press a button to record a sequence of actions on a mobile device. Once the recording has been captured, it becomes the basis of an intelligent, resilient and code-less test case that can be played back on demand on any iOS or Android device within the same OS family – and even on simulated devices. This capability allows organizations to test faster, at lower cost, and more methodically – leading to higher quality apps, delivered to consumers faster, and at lower cost. This embedded functional testing capability is not an upsell, but an integrated component within IBM Worklight 6.0. IBM Worklight 6.0 provides exceptional value on a standalone basis – and can be upgraded to Rational Test Workbench to gain the added advantages of service virtualization, multi-tier testing and automated batch and regression testing. Integration with the IBM Mobile Development Lifecycle Solution provides traceability across requirements and defects for full visibility and control of the software delivery lifecycle. &amp;lt;number&amp;gt;
  12. &amp;lt;number&amp;gt;
  13. 1 – Dispatching notifications by polling back-end apps or receiving back-end-originated events 2 – Uniform server-side API for pushing notifications via Apple, Android, BlackBerry and SMS 3 – Maintaining push state of each user and device details 4 – Dispatching the notification via the appropriate notification service 5 – Uniform client-side API for subscribing to notifications and handling them on the device 6 – Monitoring and controlling notification delivery; Statistics of notification delivery
  14. - html5/javascript -&amp;gt; worklight adapters -&amp;gt; jax-rs -&amp;gt; JPA (skipping EJBs): for business backends based on relational databases - html5/javascript -&amp;gt; worklight adapters -&amp;gt; jax-ws -&amp;gt; EJB: for business logic written as EJBs, can use RAD to easily turn it into a jax-ws web service - html5/javascript -&amp;gt; worklight adapters -&amp;gt; jax-rs -&amp;gt; EJB
  15. Relational databases support a powerful and general model of tables of tuples. The database does not know which tuples or columns are accessed together and provides acid transactions across the entire database.
  16. Part of the reason for the design of traditional databases is to allows uncoordinated activity from multiple applications but the trend these days is to hide databases behind services.
  17. There are problems with relational databases. Applications store complex objects which have to be mapped to the simple relational model. There are a surge of new graph type problems which are not handled well. And the biggest problem of all is scaling.
  18. Nosql databases make some tradeoffs to achieve scaling Eventual Consistency relaxes the rule that says that a database is consistent after each transaction. We can limit the scope of a transaction We can bake into the data model which data is accessed together. This allows nosql databases to scale out.
  19. Nosql databases use either an aggregate or a graph data model. Within the aggregate model there are 3 distinct subtypes Key Value, Document and Column Store.
  20. In a key value store like reddis or voldemort , data is looked up by key and the value is some blob of data about which the database knows nothing. Distinction can be blurred eg Reddis allows the aggregate to be structured as lists and sets
  21. In a document database like MongoDB the database knows some internal structure and you can use this in interactions with the database.
  22. In a column family store Like cassandra, bigtable or hbase, the aggregate is the column family, so the column is the unit of access and ACIDITY. Column families will usually be accessed together.
  23. A graph database like Neo4J is optimised for storing data which is composed of arbitrary nodes and edges. Storing and querying this sort of data in a relational database involves calculating transitive closures using recursive SQL. (very slow) Graph databases are useful for social networks.
  24. Credit to Nathan Hurst So we can now further classify databases based on their data model. Within the nosql CP and AP categories we see that there are examples of Key Value, Column Oriented or Document Oriented.
  25. A look to the future Each year IBM research create a global technology outlook (GTO) looking at what the future might look like in 5 years time. One of the themes in the recent GTO was the Internet of Things (Note IoT Is not unique to IBM) A view as to what the next revision of the internet will look like. Everyone is familiar with pointing there web browser at web servers and locating information / data, internet shopping and banking…. With the proliferation of devices the internet will evolve Imagine, in future you will be able to point your browser at a person and get information about the person including health status – blood pressure, heart rate…. or point at a house and get the status of devices in the home from the security system, heating and media and just as important will be able to control them. The IOT goes beyond this, it will not just be people interacting with devices but the devices interacting with each other. Imagine devices that consume a lot of energy, listening for changes in the price of energy and turning on when the rate is cheap and off when the price goes up enabling efficient use of the grid. Imagine an intelligent alarm clock that looks at your calendar and understands where you need to travel to first thing the next day, it monitors traffic and weather conditions and wakes you up at the right time to ensure you get to you first appointment on time Imagine emergency services drawing up at a building that is on fire and using an augmented reality display to determine where hazzardous chemicals are located on site, where people are located and what there health condition is. We are already on the road to the internet of things, this presentation discusses what is possible today!
  26. Why MQTT? It was invented to make it simple to connect m2m world to traditional IT world To optimize connectivity for low bandwidth, high latency, unreliable and high cost networks Minimize on the wire footprint To support large # of devices Simple API for client application development To be industry agnostic
  27. MAIN POINT: Introduce these Solutions to Improve ROI. SPEAKER NOTES: There are several “dimensions” to testing: User Interface functionality and usability, performance testing, Solutions to improve ROI: Automate UI and Performance tests for mobile apps (new capability introduced at Innovate2013) Virtualize back-end services to maintain agility Improve manual test case management and optimize execution across multiple mobile devices Extend Worklight with automated testing
  28. MAIN POINT: The IBM MobileFirst Platform includes the Rational Test Workbench family, now in Beta, for fast and efficient test automation of mobile and multi-tiered application environments. The design principal for this product is – how can we provide an end-to-end continuous testing capability for mobile and multi-tiered application environments? The solution is a comprehensive test solution that combines enhanced functional GUI integration, performance testing, and service virtualization features. And we provide these capabilities in a way that is automated, in most cases using code-less test scripts and visual editing. There are two capabilities in particular that I want to call out about this solution, powered by IBM Rational Test Workbench. The first is service virtualization. This is the ability to virtualize middle-tier and back-end systems throughout the application lifecycle, so that testing is no longer dependent on the availability of back-end systems, and can happen earlier in the life cycle, when defects are cheaper to fix. The second is visual test authoring, execution, and reporting. This gives your non-programmer testing experts the ability to create and run editable test scripts simply by recording actions on a mobile device. Those actions are captured and turned into an editable test script that is easy to maintain and that can be exercised either on demand or as part of an automated test suite. The accelerated delivery cycles of mobile applications requires fast and effective test cycles. Rational Test Workbench streamlines collaboration between your development experts and test experts to identify, create, and manage the most effective set of test scenarios for your project. Additional Background IBM Rational is announcing the launch of the Rational Test Workbench family, now in Beta, featuring support for mobile test automation. Combined with enhanced functional GUI, integration, performance testing, and service virtualization features, Rational Test Workbench delivers an end-to-end continuous testing capability leveraging test automation for your mobile, multi-tiered and multichannel application environments. The accelerated delivery cycles of mobile applications requires fast and effective test cycles. Whether you are developing native, or hybrid applications Rational Test Workbench simplifies the development of mobile tests with code-less tests scripts and visual editing. Our integrated test and quality management solution enables the collaboration between your application/process SMEs and test automation experts to identify, create, and manage the most effective set of test scenarios for your development iterations. Leveraging the power of Eclipse, teams will be able to quickly move from the creation of a Worklight application, to testing within Rational Test Workbench. Integration with the IBM Mobile Development Lifecycle Solution provides traceability across requirements and defects for full visibility and control of the software delivery lifecycle.