Where is Mobile in Your DevOps Toolchain?
-
Upload
ranger4-limited -
Category
Technology
-
view
354 -
download
1
description
Transcript of Where is Mobile in Your DevOps Toolchain?
Where is Mobile in Your
DevOps Toolchain?
Jonathan Marshall, WebSphere and Mobile Technical Specialist, IBM
Mobile development… the moving target
Fragmentation - Which OS?
Which handset?
85% of users expect better experience
on mobile than desktop
Source:Harris Interactive Survey of User Experience
New features, fortnightly
releases
Ever-changing security
minefield
The IBM Mobile Development Lifecycle
Scan & Certify
Instrument
Test
Integrate Obtain Insight
Manage
Deploy
Design &
Develop
Build Functional
Test Deploy
Acceptance Test
App Store
The IBM Mobile Development Lifecycle
Scan & Certify
Instrument
Test
Integrate Obtain Insight
Manage
Deploy
Design &
Develop
Build Functional
Test Deploy
Acceptance Test
App Store
Introducing the new IBM Worklight Platform Integrated mobile app development with continuous delivery
Application Center
Quality Assurance Application
Scanning
Development Continuous Delivery
Studio Console
Server Runtime
Application Scanning Detect code vulnerabilities at the
time of development
Quality Assurance Collect beta test feedback, crashes
and analyze user sentiment
Foundation Development, Runtime, Operations
Console & Private Store
Developing for mobile – Consider cross-platform
iOS
Android
Windows Phone
Responsive web design
• Standards
• HTML5, CSS3, JavaScript
• Apache Cordova
• Progressive enhancement
• Your favourite JavaScript framework –
Dojo, JQuery, Sencha, etc
• Reuse of core logic, integration,
security and look and feel
Platform optimisation
• Platform-specific behaviour
• Native integration
• Separate deliverables
Optimize while facilitating code reuse
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
HTML files from an
environment folder will
override files in the common
folder images from an environment folder will override files in the common folder
Mobile OS specific and
optimization code maintained in
branches
Spectrum of mobile app development approaches
Web-native continuum
• HTML5, JS,
and CSS3 (full
site or m.site)
• Quicker and
cheaper way to
mobile
• Sub-optimal
experience
• HTML5, JS,
and CSS
• Usually
leverages
Cordova
• Downloadable,
app store
presence, push
capabilities
• Can use native
APIs
• As previous
• + more
responsive,
available offline
• Web + native
code
• Optimized user
experience with
native screens,
controls, and
navigation
• App fully
adjusted to OS
• Some screens
are multi-
platform when
makes sense
• App fully
adjusted to OS
• Best attainable
user
experience
• Unique
development
effort per OS,
costly to
maintain
Hybrid Pure web Pure native
Mobile
web site
(browser
access)
Native
shell
enclosing
external
m.site
Pre-
package
d HTML5
resources
HTML5 +
native UI
Mostly
native,
some
HTML5
screens
Pure
native
Test early with Mobile Browser Simulator
• Device specific tests early during development.
• Change device types, orientation, device settings (GPS, accelerometer, etc…)
• Supports Cordova and Worklight client API
The IBM Mobile Development Lifecycle
Scan & Certify
Instrument
Test
Integrate Obtain Insight
Manage
Deploy
Design &
Develop
Build Functional
Test Deploy
Acceptance Test
App Store
Mobile apps
Challenges of integration
Enterprise Services
Speed of change
Mobile apps
Worklight adapters speed up integration
Enterprise Services
Worklight Server
Integration
Push notification
• Mobile-specific content optimises number of calls and amount of data
• Application-specific content can offload processing and caching requirements
to the server-side
• Shares common skills with the client-side, namely JavaScript. Adapters have
out of the box integration with REST, Web Services, JMS, DB, SAP
• Focus point for security, management and monitoring of interfaces
Enforce security
The IBM Mobile Development Lifecycle
Scan & Certify
Instrument
Test
Integrate Obtain Insight
Manage
Deploy
Design &
Develop
Build Functional
Test Deploy
Acceptance Test
App Store
Mobile Functional Test Tools Comprehensive, complete, resilient functional testing
Android and iOS, native and hybrid
HTML and JQuery
Record, edit, and run on mobile devices or emulator
Same test runs across multiple devices in the platform family
Natural language scripts can be used by developers and non-
developers alike
Simple process
1. Record
2. Author
3. Playback
4. Report
Evidence-based prioritization – enable business
and IT to collaborate on mobile strategy and user
experience
Over the air app distribution – get the latest in the
hands of testers as soon as it is available
Frictionless bug reporting – spend every minute on
testing latest and greatest builds, not the hassles
In-app crash reporting – rapid understanding of
why an app fails
Sentiment analysis – mine app ratings and reviews
to extract actionable feedback before they go viral
Introducing IBM Worklight Quality Assurance
Delivers mobile app quality across a fragmented environment with end user
feedback and quality metrics available at every stage of development.
Quality
Assurance
User Feedback
Crash logs Bugs
NEW!
Introducing IBM Worklight Application Scanning Based on AppScan v9.0
• A single Eclipse Integrated Development
Environment (IDE). Scan existing code
projects or Worklight Studio projects
• Native and hybrid mobile applications support
• Enhanced JavaScript analysis, which includes
improved performance and additional
framework support
• Optionally connect to IBM Security AppScan
Enterprise Server to share scan
configurations, filters, and custom rules across
all projects
Application
Scanning
Detect vulnerabilities at the time of code change to reduce risk of data leakage and breaches
NEW!
The IBM Mobile Development Lifecycle
Scan & Certify
Instrument
Test
Integrate Obtain Insight
Manage
Deploy
Design &
Develop
Build Functional
Test Deploy
Acceptance Test
App Store
Mobile apps
Worklight deployment artifacts
Worklight Server
Worklight Studio
Apps Adapters
Integration
Management
App Center
Adapters Apps
.wlapp .adapter
Binary
(IPA/APK)
Mobile continuous delivery process
At a high level, the mobile development process has the following phases:
• Develop the application.
• Deliver changes to the Source Code Management (SCM) system.
• Build the application.
• Deploy the artifacts created by the build.
• Install and use the mobile application.
Centralize and Automate Mobile App Builds 1. Create an Worklight project and application in Eclipse via
Worklight Studio
2. Add a mobile environment of your choosing
3. Add app content
4. Build and deploy it to the Worklight Server
5. Use the specific environment tools to deploy to the device • Eclipse for Android • Xcode for iOS • Visual Studio for Windows Phone • Ripple for BlackBerry
Worklight Build System
Source
Code
Repository
Worklight
Application
Center
Mobile continuous delivery process
At a high level, the mobile development process has the following phases:
• Develop the application.
• Deliver changes to the Source Code Management (SCM) system.
• Build the application.
• Deploy the artifacts created by the build.
• Install and use the mobile application.
IBM UrbanCode Deploy V6.0 integration with Worklight
SC
M
Build
UrbanCode
Deploy
CodeStation
Worklight
Application
Center
Console Process
.wlapp
adapter Binary
(IPA/APK)
Install/update
app
runtime
calls
The new plugin enables automated deployment to Worklight Console and Application Center • Supports Worklight Apps targeting iOS and Android
App Server, Database and other plugins used to configure environments and Worklight projects
Mobile deployment process
• Automated from code
check-in, build and
deploy to test
environment.
• Repeatable
• Environment-aware
pick up environment
properties
• Integrated testing
• Sign-off and release
www.ibm.com/developerworks/rational/library/worklight-mobile-devops/
Worklight App Center
Direct Update for mobile apps on the device
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 confirmation or silently
Worklight Server
Native Shell
Pre-packaged resources
Download
Update web resource
App Store
Web resources
Cached resources
Transfer
Check for updates
1
2
3
4
Enhanced!
1 Download the free IBM Worklight Developer
Edition:
ibm.com/developerworks/mobile/worklight
Learn more: ibm.com/mobilefirst
2
3
Learn more about UrbanCode Deploy
www.ibmdw.net/urbancode/ and using it with
Worklight
www.ibm.com/developerworks/rational/library
/worklight-mobile-devops/
Three Ways to Get Started with IBM
© 2014 IBM Corporation 27 Confidential