Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)
Mobile Apps on IBM i with IBM MobileFirst &...
Transcript of Mobile Apps on IBM i with IBM MobileFirst &...
Mobile Apps on IBM i with IBM MobileFirst & Bluemix
Demonstration
v1.0 – June 2017
Benoit MAROLLEAU - Architect
IBM Client Center Montpellier, [email protected]
linkedin.com/in/bmarolleau @MarolleauBenoit
© IBM 2017
Content
• Demonstration
• Behind the scenes
− IBM MobileFirst Platform
− MobileFirst Adapters / API
− IBM i & Cloud Services Integration: Interact with users from IBM i using Mobile Push
− Solution Deployment on POWER8
• How to get Started? IBM Bluemix, MobileFirst & IBM i
• Useful Resources & Links
2
© IBM 2017
Introduction
Be proactive & bring innovation, solutions to the Line of Business IBM i critical business data & applications are valuable assets for the enterprise, easily exposable through API’s.
Cloud API’s can enrich your IBM i apps in a few lines of code.
Take benefits of the best of Open Source with 5733OPS on IBM i, explore infinite innovation capabilities of Linux on
Power (Open Power, Cognitive/Machine Learning, IoT, MobileFirst,…) integrated with IBM i.
Use modern tools to build modern apps Rational Developer for i (ILE Dev, Bluemix Plugin, MobileFirst Plugin), ACS (SQL Editor, Visual Explain, emulator…),
IBM Bluemix (for dev, or value-added services invocation), git /github, etc.
+ excellent third party IDE/DevOps tools available for i.
IBM MobileFirst: a complete solution for Mobile dev, app & device management Leader on the market, Easy to create adapters to IBM i
Develop your app with IBM i Modernization/Mobile solutions (for ILE developers) & deploy in MobileFirst
3
© IBM 2017
What’s next?
IBM MobileFirst Foundation Developer Center
New to Open Source on IBM i & 5733OPS? The reference wiki is here
Become a Watson master with the “Bluemix & Watson Day Labs” , Self-paced labs.
Demo source code on soon on Github & on our Demo Portal (IBM ID – live demo + materials)
© IBM 20175
Demonstratio n
© IBM 2017
Develop Mobile Services on IBM i with MobileFirst PlatformAcme Airlines Digital Transformation
MobileFirst
Mobile Foundation
DMZ
Push Notifications
Browser
Mobile
RPG
IAS / IWSJava
Web Services Business Layer
Secure
Gateway Client
Secure
Gateway Service
MobileFirst
Mobile Foundation
Demonstrated Solutions• Develop & Deploy Mobile Apps with the State of the art IBM
MobileFirst Platform solution.
Get Started quickly in Bluemix, or on premise.
• IBM i Integration with REST & MobileFirst Adapters.
Easy & Secure.
• Propose new services & enrich your IBM i Applications with
Cloud Services: interact with mobile end-users with Mobile
Push services. Simple with Open Source features on IBM i
Cordova
IBM Bluemix
POWER8
Push Message
HTML5 +
JavascriptInvoke
Adapters (REST)
HTML5 +
Javascript
Invoke
Adapters (REST)
Push Notifications
Find FlightBrowse Flight
Book FlightView Profile
Find FlightBrowse Flight
Book FlightView Profile
Booking /Cancellation ConfirmationDestination weather forecast
Booking /Cancellation ConfirmationDestination Weather forecast
© IBM 20177
Behind the scenes:
MobileFirst Platform Foundation
© 2016 IBM Corporation 8Foundation
Why MobileFirst for App Development ?2016 Gartner Magic Quadrant
This graphic was published by Gartner, Inc. as part of a larger research document and should be evaluated in the context of the entire document. The Gartner document is available upon request
from IBM. Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings
or other designation. Gartner research publications consist of the opinions of Gartner's research organization and should not be construed as statements of fact. Gartner disclaims all warranties,
expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.
*Source: Gartner “Magic Quadrant for Mobile App Development Platforms”,
Richard Marshall, Van L. Baker, Joachim Herschmann, Jason Wong,
Adrian Leow, 15 June, 2016
IBM is positioned as a Leader in the 2016Gartner Magic Quadrant for Mobile AppDevelopment Platforms, for its ability toexecute and completeness of vision.
IBM is positioned highest in executionwithin the Leaders Quadrant*
This was the fourth consecutive year forIBM to be recognized as a leader in thisreport.
© 2016 IBM Corporation 9Foundation
MobileFirst Platform Dev
Add MobileFirst Foundation SDK to new or
existing apps, no matter which front-end
framework, codebase or tools you choose
Platform
SDKs
IDE & Tools
Mobile
App Builder
MobileFirst
Studio
Bring-
your-own
Develop in native,
Cordova or Xamarin
and integrate any
front-end framework
Build with any
development tools,
including Xcode,
Android Studio and
MobileFirst Studio
Comprehensive
Security
App Lifecycle
Management
Mobile
Analytics
Backend Logic
Engine
Push &
Offline Sync
Hybrid Cloud
AP
I
© 2016 IBM Corporation 10Foundation
MobileFirst Platform in a nutshell
Feature Benefit
IBM Mobile App Builder Get the business to show you exactly what they want, auto-generate code according to
their requirements, then work your magic to make it come to life.
Instant Cloud Provisioning &
Simpler ArchitectureGet dev and test environments up and running in minutes meaning you get unleash
your creativity sooner and show those luddite business users what you can do.
The Most Comprehensive App
Security FrameworkGet started with samples, and use a configuration-based approach to adding
comprehensive OAUTH based security to your app, including step-up authentication,
app authenticity checks, and multi-factor authentication.
Live Update, Incremental Updates
& Improved Problem
Determination
Empower admin to make changes to backend settings and configuration without you so
you can concentrate on your app. Use the Live Update framework to A/B test your app,
toggle features Live, and dynamically segment content to the user profile all without re-
build, re-deploy and re-submit.
Mobile Analytics Out-of-the-Box Collect dozens of app, network and infrastructure metrics out of the box to help you
troubleshoot problems. Drill down to individual devices to grab logs to diagnose issues.
API Creation and Management Create Node or Java microservice APIs with the Loopback framework and manage
them with IBM API Connect.
Improved Push Notifications A single push notification solution to send messages directly to devices or using publish
subscribe to broadcast.
Support Latest Mobile OS We take care of adding support for all the latest OSes so you can concentrate on
something else.
© IBM 2017
Get Started Quickly with Bluemix
11
MobileFirst FoundationGet Started Quickly with your Mobile Dev
with the ability to deploy your production
on Power Systems (Linux)
Secure GatewayFor Bluemix to IBM i connection (Invoke
HTTP Adapters
Mobile Push Notificationfrom IBM i to Mobile Apps (Optional as
also included in Mobile Foundation)
Bluemix Project
Dashboard
© IBM 201712
Demo – Behind the scenes
MobileFirst Adapters & IBM i
© IBM 2017
MobileFirst Integration with Adapters
13
MFP Adapters are used perform any necessary server-side logic, and to transfer and
retrieve information from back-end systems to client applications (ex: Mobile) and cloud
services.
Adapters can be written in Java or Javascript (HTTP or SQL Adapters)
Fast development, Security (Authentication), Transparency (abstraction layer)
SOAP/REST Web Services
• Integrated WS Server
(RPG/Cobol Web Services)
• Integrated Application Server
(Java + jtopen)
Direct DB2 Access
• Jtopen jdbc driver
In this demonstration: HTTP Adapters & REST API created in RPG & Java. IBM i is never directly
exposed to the internet. REST/SOAP choice for exposing IBM i services to external apps
Access Control (IBM i)Access
Control (MobileFirst)
© IBM 201714Page© 2016 IBM Corporation
Demo – Cordova Project
MobileFirst Adapters
• Javascript adapters pointing
to Web Services running on IBM I
• To be Deployed on the MFP Server (Linux on
Power or Bluemix)
Cordova Plugins
• Standard Mobile Web Development in
HTML/JavaScript/CSS
• Install MFP plugins “cordova-plugin-mfp”
to use the MFP features in the app.
• Install Bluemix push plugin “bms-push” to
use the Mobile Push Service
Web Content
• HTML / Javascript / CSS
Invoke REST API on
Client side (Mobile) content
© IBM 2017
viewProfile(userid) https://10.3.54.76:10443/web/services/userinfoRPG/byid/[email protected]
{"username":"[email protected]",
"status":"GOLD",
"total_miles":1000000,
"miles_ytd":1000,a
"phoneNumber":"919-123-4567",
"phoneNumberType":"BUSINESS",
"address":
{"streetAddress1":"IBMClientCenter RPG!",
"streetAddress2":"Montpellier",
"city":"Anytown",
"stateProvince":"27617",
"country":"USA",
"postalCode":"27617"}
}}
HTTP Adapter
IBM i Apache+ AppServer
Mobile App
function showCustomerProfileRPG() { var invocationData = {adapter : 'getUserInfoRPG', procedure : 'viewProfile',
parameters : [ $("#username").val()] };
Integrated Web Service ‘userInfoRPG’ input param:[email protected]
CALL PGM(ACMERPG/DSPUSRJSON) PARM('[email protected]' '')
IBM i ILE Programs
Database
Native I/O or SQL
MobileFirst Integration with Adapters
Component Diagram – View User Info
RPG-based REST service created with IBM Rational Developer for i
© IBM 201716
Demo – Behind the scenes
Interact with Mobile users from IBM i
© IBM 2017
Interact with Mobile users from IBM i
Node.js Core
DB2 for iAccess Library
Node.js ToolkitFor IBM i
Built-inModules
IBM i
DB2 for i CLI XMLServices
acme-mobile.js
Push Notifications
Bluemix Push Service
Or
MobileFirst Push Service
REST
Events table populated by any program on IBM iEx: DB2 Trigger inserts a line when a user is booking
Micro-Service Approach
using Node.JS & API calls
Invoke API & enrich data &
applications running on IBM i.
Easy & Secure.
Use Cases: Weather API,
Watson API, Mobile
API….innovation without limits
Check every 30 seconds
HTTPS
© IBM 2017
pushMessage.js
Usage: node pushMessage.js <userID> <message>
Prereqs: userID as to be registred with a device. Dependencies: install node-rest-client (npm install –g node-rest-client)
20 lines of code can make the difference…pushing customized information to your end-users…
For ACME Air: booking & cancellation confirmations, destination weather (API) information, sales
campaigns (broadcast or to particular users) , etc.
© IBM 201719Page© 2016 IBM Corporation
Demo – Push API Call from IBM i….
from QSH/cURL
from bash/Node.JS
from CL/ call PGM
© IBM 201720
Demo – Behind the scenes
Solution Deployment on POWER8
© IBM 2017
Mobile First Server
MobileFoundation
Direct UpdateMobile
Application
HTTP Adapters
Application Server & Database
Browser
Mobile
BluemixSecure Gateway
Mobile Solution : MobileFirst Platform & IBM iGet started quickly with MobileFirst Foundation in Bluemix integrated with IBM i
HTTPS
REST HTTPS
HTTPSRest API
Cloud
IntegratedWeb Server
Web ServicesJAX –RS
Find FlightBrowse FlightBooking Flight
….
Web App
(Liberty Based)
viewProfile
Integrated Web Service Server
Web Services
(Liberty Based)
ILEProgramObjects
RPG ILE
Native I/O
Jtopen/jdbcSQL
IBMHTTP
Server
HTTPSBasic Auth
Power Systems POWER8Notes: This hybrid cloud topology can be a good starting point for Dev & Test or a Proof of concept. No linux or MobileFirst installation
required at this step. This scenario is part of the demonstration and explains what Bluemix is and how to get started
Good Starting point for “Dev & Test” or Proof of concept.
No linux or MFP installation & setup required.
DB2 Trigger+DB2 for i lib
PushMessage.js
ACMERPG libDSPUSRINFO*PGM
© IBM 2017
Mobile First Server
MobileFirstApp Server
Direct UpdateMobile
Application
HTTP Adapters
Application Server & Database
Browser
Mobile
Mobile Solution : MobileFirst Platform & IBM iArchitecture Overview
HTTPS
REST
HTTPSRest API
IntegratedWeb Server
Web ServicesJAX –RS
Find FlightBrowse FlightBooking Flight
….
Web App
(Liberty Based)
viewProfile
Integrated Web Service Server
Web Services
(Liberty Based)
ILEProgramObjects
RPG ILE
Native I/O
Jtopen/jdbcSQL
IBMHTTP
ServerHTTPS
Basic Auth
Power Systems POWER8
ACMERPG libDSPUSRINFO*PGM
ACMEAIR DB
Clusterizable
Clusterizable (WAS)
Notes: HA – Scalability – Performance: Evolutive solutions with WAS clusters (MobileFirst & WAS on i).
A simple configuration only requires a linux partition, MobileFirst and Tomcat / WAS on Linux (Liberty or full).
Security: MobileFirst Security for apps & devices, HTTPS encryption, IBM i security.
Complex cases: Governance / API Management between MFP & IBM i. Datapower, API Connect, IIB…
DB2 Trigger+DB2 for i lib
PushMessage.js
© IBM 201723
IBM MobileFirst & IBM i
How to get started?
© IBM 2017
Demo Cook book
Core Components Role in the demo Remarks
IBM i 7.x (5770SS1) IBM i 7.2+ on POWER8
HTTP Server (5770DG1) Used: IHS/IWS/IAS (liberty) Create Web Services easily
Linux on Power RHEL 6.7 on POWER8 (PowerVM)
• RHEL, SLES, Ubuntu …MobileFirst Server is supported on Linux & AIX, Windows
• Optimal Performance per core on Power + low PVU for IBM Products Licensing
=> Reduce licensing & TCO
MobileFirst Platform Foundation (5725-I43) MFP on Linux on POWER8
Deployment: Tomcat/WAS/WAS ND/ LibertyHA Mode: Standalone/ND/Farm
Edition Consumer 10K Addressable DevicesEdition Enterprise 200 Addressable Devices
IBM i App Development
Open Source (5733OPS)Java (5770JV1)
ILE Compiler (5770WDS) + SEU/PDMOnly Java Dev & ILE Dev
5733OPS for Node.JS/Python/Ruby development on IBM i
Rational Developer for i RDi Used for RPG ILE dev Develop RPG Free Form with a real IDE
Mobile App Development
IBM Bluemix Platform OptionalUsed for Dev/Test & PoC as an alternative
to MFP on Power Systems
- MFP Foundation- Integration: Secure Gateway
- Use Mobile Services from your IBM I
MobileFirst Studio Free. Used for Mobile App Dev Eclipse Plugin. MFP dev is a leader on the market
Integration / API Mgmt / Governance
IBM Datapower (including APIm), StrongLoop… Optional Not used for this simple environmentSecurity, API Management, Governance
Oauth2 token auth can be implemented in MFP or with Datapower
Staff:
Mobile App: 1 Web / Mobile Developer (Cordova OR Android/iOS dev)
Back-end : 1 RPG/COBOL/Java Developer
© IBM 2017
Mobile Solutions – How to get started?
Download MobileFirst Studio in 5 minutes, it is free.
Eclipse / Rational developer for i plugin.
Installed in 10 minutes from the Eclipse Marketplace
Mobile Native of Hybrid can be done externally and imported in Eclipse or any IDE for integration
with MobileFirst afterwards…
Since MFP 8 (Mid 2016), you can use any IDE, and use the MobileFirst SDK to take benefits of the
MobileFirst features
© IBM 2017
IBM MobileFirst in IBM Bluemix
Get Started Quickly, deliver & Iterate.
For Production, easy integration with existing Traditional IT.
https://new-console.eu-gb.bluemix.net/catalog/?category=mobile
© IBM 2017
MobileFirst “Mobile Foundation” in Bluemix
1. Getting Started - Developer & Developer Pro
• Deploys MobileFirst Server & Operational
Analytics in < 5 minutes
• Sample App can be downloaded, built and
deployed to run against live backend
• Self-service, targeted for users with little to
no experience with Foundation
2. Full Product- Professional Per Capacity / 1 App
https://new-console.eu-gb.bluemix.net/catalog/services/mobile-foundation/
© IBM 201728Page© 2016 IBM Corporation
Develop in Bluemix, Deploy & Run on Power Systems.
Bluemix Runtimes (Cloud Foundry Build packs) are all supported on Power Systems!
Consume Bluemix Service (Watson,…) from IBM i easily using REST calls.
© 2016 IBM Corporation 29Foundation
Cognitive mobile services
Personality insightsDerive insights from transactional
and social media data
Tradeoff analyticsMake better choices, taking into
account multiple conflicting goals
Concept insightsBeyond traditional text
matching, explore information
based on concepts
Concept expansionAnalyze text and learn similar
terms based on context
Embed human intuition and expertise into your app
Natural language classifierRecognize concepts
from natural language
Speech to textConvert the human voice
into the written word
Text to speechProcess text and natural
language to generate
synthesized audio
Language translatorDynamically translate content
instantly into multiple languages
DialogDesign application interactions
through a conversational interface
Interact with users as a human would: using natural language
© IBM 201730
Useful Docs & Links
Educate• Briefing
• Demonstration
Design• IBM Design
Thinking
• Workshop
Prove• Proof Of
Technology
• Proof of Concept
Accelerate• Performance
Benchmark
Compare• IT Economics
Evaluate• New
Technology Introduction
Contact: Benoit Marolleau Power Systems Design [email protected]+33 4 9958 0614 (Office)
BRIEFINGS
MULTI-CLIENT EVENTS
HANDS-ON LABS
ENABLEMENT
POC/POT& DEMOS
Personalized workshops, all focused
on IBM i solutions
demonstrations, design sessions,
benchmarking, testing & hands-on
capabilities.
Experience & Expertise from the
Benchmark & Design Center.
Innovation & hot topics around Digital
Transformation: IBM i & Cloud,
Analytics, Mobility…
Always be at the edge of IBM latest
technology.
Focal point for ISVs and IBM Partners
on IBM i.
Any questions ? Contact us!
© IBM 2017
Follow us!
Website: ibm.com/ibm/clientcenter/montpellier/
Twitter: @IBMCCMPL
YouTube: IBM Client Center Montpellier
Pinterest: ibm-client-center-Montpellier
IBM connections:
w3-connections.ibm.com/communities/community/ibmccmpl
Thank you
© IBM 201733
Backup Slides
© IBM 201739Page© 2016 IBM Corporation
Secure Gateway
Description Destination ID Destination Host:Port Cloud Host:Port
MyDestination 9Kw0MhRlQHd_1yM Hostname:Port caplonsgprd-1.integration.ibmcloud.com:15013
On Premise Bluemix
Hostname:Port
caplonsgprd-1.integration
.ibmcloud.com:15013
Destination
Secure Gateway
(Docker, SW)
Secure Gateway
App
App
DataPower
FW
FW
© 2016 IBM Corporation 40Foundation
Complement your mobile strategy with
multi-channel API creation and
management - Combine with IBM API Connect to add automated,
visual and coding options for creating Node.js and
Java microservice APIs
- Employ enterprise-grade clustering, management and
security of APIs
- Add access control and policy enforcement
over APIs, then publish to self-service developer portal
- Complement Foundation mobile analytics with
advanced API usage analytics for end-to-end visibility
- Enforce API and mobile security together with market-
leading IBM DataPower Gateway
Cloud
Interaction Tier
SDK SDK
Systems of Record
Create Run
ManageSecure
MobileFirstFoundation
APIConnect
DataPower Gateway
www