jerry romanek series mobile development 2012 year end review
DESCRIPTION
TRANSCRIPT
IBM Rational WebCast
Mobile App Development Series2012 Year End Review
December 2012
Leigh Williamson
Mobile is a significant component of the
evolution of computing
Consumer experience and “bring your own device” are driving much new enterprise use.
Fundamentally changing industries
DistributionRetail Financial Services
Mobile banking will be the most widely used banking channel by 2020, if not sooner
Source: Mobile banking: A catalyst for improving bank performance, Deloitte, 2010
Augmented Reality, driven by
mobile devices
360°°°° experiences aren't just about retail
and media…
Sanofi Aventis
iBG Star Blood Glucose Meter
Rational Mobile Software Strategy
Rational’s goal is to offer value to teams that are developing mobile applications & software, regardless of the application architecture.
Web Programming Model
Hybrid Programming Model
Cross-Platform Native Programming Model
Single-Platform Native Programming Model
SMS and Feature Phone Software
Rational’s value spans the entire software development and delivery lifecycle. It leverages an integrated set of products that provide collaboration, linkage, and transparency across:
Requirements
Modeling & design
Code development
Build & packaging
Testing & quality management
Software delivery
Worklight : a privately held company based in Tel Aviv and New York that provides a leading open standards based mobile application platform for smartphones and tablets letting you build and iterate mobile apps quickly
IBM and Worklight Together: With the combination of existing portfolio capabilities in Mobile Device Management, Mobile Web ApplicationDevelopment, Integration, Collaborative Tools and Mobile strategy, planning, implementation, and hosting services, with the acquisition of Worklight, IBM can now offer a complete end-to-end solution to enterprises looking to capitalize on the rapidly expanding mobile market.
IBM announces the intent to acquire
Worklight to extend our enterprise mobile
capabilities
Worklight ServerUnified notifications, runtime skinning, version management,
security, integration and delivery
Worklight ConsoleA web-based console for real-time analytics and control of
your mobile apps and infrastructure
Worklight StudioThe most complete, extensible environment with maximum
code reuse and per-device optimization
Worklight Overview
Worklight Runtime ComponentsExtensive libraries and client APIs that expose and interface
with native device functionality←
Build mobile applications
Connect to, and runbackend systems in support of mobile
Manage mobile devices, services and applications
Secure my mobile business
Manage & Secure
Build & ConnectExtend & Transform
Extend existing business capabilities to mobile devices
Transform the business by creating new opportunities
IBM’s strategy addresses full range of mobile enterprise needs
Manage deviceRegister; Set appropriate
security policies; compliance; wipe; lock.
Secure DataData separation; Encryption.
Secure ApplicationApp security policies; application level controls
IBM Has Extensive Approach to Mobile Security
Secure AccessProperly identify mobile users & devices; allow or deny access.
Connectivity.
Protect from threatsProtect from mobile and web
threats
Monitor accessLog network access, events. Monitor & gain intelligence
Develop Secure AppDevelop secure apps;
Utilize secure coding practices.
Test for VulnerabilitiesTest and Identify application
vulnerabilities
Integrate SecurelySecure connectivity to enterprise applications and services
At the DeviceOver the Network &
EnterpriseFor the Mobile App
Corporate Intranet
Internet
� Safe usage of smartphones and tablets in the enterprise
� Secure access to corporate data and supporting privacy
� Visibility and security of enterprise mobile platform
IBM Mobile Security Strategy
Tealeaf CX Mobile: Mobile dashboard
Discover what’s working and what isn’t – and WHY
In screen visibility (orientation, swipe, form entry, clicks) to track usability issues
Complete experience capture: user actions, application, environmental and network data
Automatic detection of mobile customer struggle
Cross channel analytics: web, app, mobile site
In screen visibility (orientation, swipe, form entry, clicks) to track usability issues
Complete experience capture: user actions, application, environmental and network data
IBM Worklight Studio
Create Project
Construct UI
Test in simulatoror device
Build App
Code Business
Logic
Preview in
browser
Debug in browser
New
Worklight
Native SDK
Preview Build
In Studio
In RTC
Unique mobile development project
challenges
� Highly fragmented set of platforms,
devices, languages, and tools increases cost and complexity of development and test
� Choosing not to support one or more
platforms reduces the reach of an application
Developing for multiple mobile platformsDelivering high quality apps that engage users
and meet business objectives
� Poor quality can negatively impact brand image
� Bad ratings and comments
can cause other users to avoid trying an app
� Recreating instead of leveraging
existing business logic increases maintenance costs and risk of inconsistent behavior
� Lack of ready back-end services
slows front-end development and increases potential for last minute integration issues
Integrating with enterprise systems Meeting accelerated time to market requirements
� Hand-off errors and delays
between teams slows progress and responsiveness to features and fixes
� Misalignment of stakeholders
results in late rework and increased cycle times
Mobile software development is a team
sport� Software development involves a team of people
with diverse skills using different tools
– Design, development, test, operations, etc.
� Tools can make or break collaboration
– Fragmented tools create silos
– Integrated tools break down barriers
� Effective development depends on …
– Defined goals
– Transparency of progress and quality trends
– Aligning teams across the entire application
development lifecycle
For any team, silos create barriers to
effective software delivery
2. Development
1. Business
3. Operations*
Application lifecycle management (ALM) is the
discipline of overcoming these silos to realize
a whole-team, whole-view approach to the
software delivery cycle.
1. Business
2. Development 3. Operations*
ALM manages the flow of:
People
Process
Information
Mobile development requires the adoption of Agile practices to keep up with demand for frequent releases
IBM Mobile Development Lifecycle Solution V4.0a collaborative, multi-platform mobile development lifecycle
Design
Mobile TestingApp Design and Construction
SCM and Mobile Builds
IBM Worklight
A comprehensive mobile development
solution combining:
�Enterprise-grade, standard-based mobile application platform, supporting native, hybrid and mobile web programming models
�Best-of-class collaborative mobile application development lifecycle capabilities
�Distributed team build and test integrations with the IBM Mobile Platform
�“Mobile device-cloud” service integration for on-device testing
�Support for Agile methodologies for dealing with fast-paced development for mobile
�Mobile development best practice
IBM Rational Collaborative Lifecycle Management
Agile ALM Usage Scenarios for Mobile
development teamsEnd-to-end process; highlighting capabilities relevant to mobile development and delivery
1
8
Elaborate requirement and review• Review seeded artifacts; focus on
linkage and UI sketching/storyboard
• Perform final approval to close out a
reviewConstruct and simulate • Review design from the IDE
• Code using visual editor
• Preview using mobile simulator
• Check in and deliver code
Manual testing• Launch emulator / device and
perform manual integration test Fix bug and simulate• Find problem and fix
• Preview using mobile simulator• Check in and deliver code
Deploy to Dev and Test environment• Build deploys to the mobile app
server-side, and ‘app store’
• Device under test retrieves appAdd requirement to the plan• Add item to sprint plan
• Update test plan
Build and package for test• Build the app based on integrated
changes from the team
• Build for each target platform
Lifecycle techniques to help optimize user
experienceImprove collaboration and communications between line-of-business
stakeholders and development team
Ensure that development understands and will deliver an app that meets
business objectives
Engage non-technical stakeholders
Improve collaboration to find a cheaper yet satisfying solution
Put more focus on the application design and conceptualization phase
Iterate during the phase of the lifecycle when it is cheapest to make changes, not
when the code is done and changes require drastic re-architecture
Use UI sketching, storyboarding, and business process diagrams
Improves communications – “a picture is worth a thousand words”
Avoid over-elaboration with sketches; focus on high-level, big-picture issues
Ensure proper application flow and interactions with business process diagrams
Communicate an outside-in user
experience spec
� Collaborate as a team
using comments and
annotations
� Get feedback from non-
technical stakeholders
Middle Tier ServerClient Tier Devices Back-end Data & Services
Testing involves much more than just the mobile front-end
Testing the end-to-end mobile
solution
RTW supports isolating tiers of the app for
focused mobile testing
Rational Test WorkbenchTest Virtualization
support for isolating mobile client tier
For focused automated mobile client tier functional testing, use RTW Test Virtualization to simulate the mobile middle tier and back office systems.
23
Application instrumentation libraries provide a transparent overlay for user interaction with the mobile app.Architecture adheres to adapter model followed by other Rational quality management products.
iPhoneExtn
AndroidExtn
Recorder Service
Player Service
Keyboard Service
Communication Layer
Logging Debugging
Instrument
Componentized View of Extension
Architecturally, our approach is to have an adapter that deals with all mobile devices. An extension specific to the mobile platform resides on the device. Event capture and playback services together with UI elements constitute each extension.
� Dynamic Instrumentation of Android Mobile Applications (without requiring source/static enablement)
� Adapter model with specific extensions for multiple mobile platforms
� Capture with high-fidelity replay of multi-touch events
Key Goals for Mobile Test Automation
Deep Application Instrumentation for Mobile Function TestMobile Testing Tech Preview
IBM CONFIDENTIAL
Integrating with existing
systems
• Mobile applications need to connect to enterprise back-end data and services
• Existing programs and services may need to be modified for the mobile app
• Multiple skills will be involved, responsible for different parts of the mobile
application
Rational IDEs with IBM WorklightDesign, code, build, test, and deploy mobile apps that run on a
wide variety of mobile platforms; extend existing back-end
services and data to mobile apps
Integrated multi-platform development environments
Construct, debug, and test mobile UIs
Refactor and extend existing logic on enterprise platforms (System z, Power)
as mobile-consumable services
� Rational Developer for zEnterprise v8.5
� Rational Developer for Power Systems v8.5
� Rational Application Developer v8.5
� Rational Software Architect v8.5
IBM Worklight 5.0 is now included in the following IDEs (for development purposes only):
Model RESTFul Service in RSA
1
Generate Worklight Client Stub *
5
Generate WorklightAdapter *
4
* new transformation in RSA
Deployed on Websphere
Application Server
Deployed on Worklight
Server
Deployed on Mobile
Device (WorklightDevice Runtime)
Rational Software Architect v8.5.1
Worklight Support
Generate JAXB classes from Data Model*
3
Generate JAX-RS based Web Service
2
Solve mobile development challenges
with IBM Mobile Development Lifecycle
Solution V4.0
� Cross-platform mobile web and
hybrid app development, test, and build
� Manage plans, tasks, code, builds from a common development
workbench
� Agile planning
Developing for multiple mobile platformsDelivering high quality apps that engage
users and meet business objectives
� Linkage and traceability across
all phases of development
� UI sketching and storyboarding
� Test plan optimization and
management and integration
with mobile “Device-clouds”
� Portfolio management
� Integrate Worklight Studio with the
Rational IDEs to create a comprehensive IDE for all parts of
the app (UI, mid tier, back-end)
� Extend enterprise assets as
mobile-consumable services and connect via Worklight adapters
Integrating with enterprise systemsMeeting accelerated time to market
requirements
� Automate and manage
continuous, end-to-end build and deployment process with RTC
� Deploy to private dev/test app
� Reduce cycle times by aligning
dev and operations teams
http://bit.ly/IMDLS_Overview
IBM Mobile Development Lifecycle
Solution Video
http://bit.ly/ibmmobile-frontier-blog
IBM Mobile Development ResourcesExternal developerWorks Mobile Frontier blog