SOA Design Patterns and Mobile 2014 IBM SOA Architect Summit Steve Mirman IBM Software Group Mobility Expert [email protected] Agenda Mobile Application Trends Mobile Application Architecture Pattern Based Engineering and Common Mobile Application Patterns How to get started 2 Mobile application development is a top priority for businesses 35% of developers are currently 29% of mobile developers currently targeting tablets, with more than 90% plan to develop for tablets in the near future. focus on Hybrid app development with another 49% expected to focus on it in the next year. Nearly 90% of developers are currently extending enterprise apps to mobile or plan to in the near future. More than 100M people upgraded to iOS6 in the first week (September, 2012) In the next 12 months 77% of developers will be focused on Hybrid application development. 25+ Almost all expect to deploy more than 25 mobility applications in the next two years Source: Evans Data Mobile Developer Survey Mobile Development Report 2012 Volume Source: Business Insider (September 2012) Mobile application development is a top priority for businesses 1 2 3 4 5 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 message 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 Mobile is a significant evolution of enterprise computing Mobile/Wireless/Cloud Web/Desktop Client/Server Host/Mainframe Mobile is different: • Transformational business models Agile • Faster lifecycles • More iterative • Requires open standards Mobile is a significant evolution of enterprise computing Mobile apps are different. • They are more strategic – Greater urgency urgency and immediacy of engagement • 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 Management is different. • Smaller screens pulling content from more sources: need to choreograph content from multiple repositories and applications , both on premises and in the cloud • Greater challenges of application governance, distribution, and version management • AppStore Terms of Service present challenges for managing B2C apps Development is different. • Faster development cycles • 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 Security is different. • Greater risks of exposing applications and data on small, light and always on portable devices • Greater authentication challenges associated with content mashups • AppStore Terms of Service can limit security options But also brings business and IT challenges Enterprise Business Model Changes • New business opportunities based upon geo location • Anytime, anywhere business transactions • Importance of social business interactions App Development Lifecycle Complexity • Built for purpose, fast, “good enough”, strong involvement of users/stakeholders • Complexity of multiple device platforms with fragmented Web, native, and hybrid model landscape • Connecting the enterprise back-end services in a secure and scalable manner • Unique mobile requirements (user interface, connected/disconnected use, version upgrades, etc.) Mobile Security and Management • Protection of privacy and confidential information Top Mobile Adoption Concerns: 1. Security/privacy (53%) 2. Cost of developing for multiple mobile platforms (52%) 3. Integrating cloud services to mobile devices (51%) • Use of client-owned smartphones and tablets • Visibility, Security & Management of mobile platform requirements Source: 2011 IBM Tech Trends Report https://www.ibm.com/developerworks/mydeveloperworks/blogs/techtrends/entry/home?lang=en A Mobile Application Platform leverages your existing investments so that you can extend (not reinvent) your enterprise to mobile Good SOA execution makes mobile "just another channel” Essential development, runtime and client device services Messaging Appliance Open standards-based development environment with mobile-specific Application Lifecycle Management (ALM) Mobile application server provides mobile-specific notifications, analytics, security. Messaging appliance scales to millions of connections and messages. Client device layer enables client-side security, enforces app upgrades, secures local storage and allows access to device features. Agenda Mobile Application Trends Mobile Application Architecture Pattern Based Engineering and Common Mobile Application Patterns How to get started 9 Go to 'View > Header and Footer' to change this footer text to the event title Classic Web vs Web 2.0 Architecture Characteristics Mobile and Web Application Development Types Web Application Mobile Web Application Hybrid/Hybrid Mix Mobile Application Desktop and mobile using open web (HTML, JavaScript) client programming models Mobile only using open web (HTML5, JavaScript) client programming models Mobile only, app runs on the device, but leverages open web (HTML5, JS) via JavaScript bridge Off-line capabilities* Limited to no devicespecific functionality Native device capabilities (GPS, camera, contacts) Mimic native appearance Hybrid mix can have web code with native for things like navigation for maximizing user experience Traditional Trade-offs (without MEAP/MAP) Mobile Browser Execution Native Mobile Application Mobile only, developed using native languages or transcode to native via MAP tools Native appearance and device capabilities, performance AppStore download and install Richness of Mobile Presentation / Services Portability (cross-device reuse) Maintenance Cost (TCO) IBM MobileFirst Platform For clients that need to: Available Today! Quickly develop and deploy high quality mobile apps across multiple platforms • Automated testing for high quality mobile apps Seamlessly connect rich mobile applications to enterprise data and services • Streamlined deployment for private clouds on PureApplication System IBM MobileFirst Platform offers: Native, web, or hybrid app development Tools to build & test high quality apps for many devices • Single sign-on across multiple apps on a device • Latest versions of all major mobile OS’s (iOS, Android, Windows, and BlackBerry) Management, security, continuous delivery & distribution of apps Easy connectivity to existing data & services for mobile usage On-premises or managed service delivery IBM Worklight + Development Lifecycle Solution IBM Rational Test Workbench IBM Mobile Application Platform Management IBM Worklight Architecture iOS Worklight Studio Android HTML5, Hybrid, and Native Coding Integrated Device SDKs 3rd Party Library Integration Blackberry Build Engine Optimization Framework Worklight Application Center Development Team Provisioning Windows Phone Enterprise App Provisioning and Governance Windows 8 App Feedback Management Public App Stores Mobile Web Functional Testing Desktop Web JSON Translation Geolocation Services Adapter Library for Backend Connectivity Stats and Logs Aggregation Mashups and Service Composition 3 Device Runtime Cross-Platform Compatibility Layer Server Integration Framework Encrypted and Syncable Storage Location-based Reporting for Statistics event handling and Diagnostics Enhanced crash & platform-level exception capture 4 Worklight Server User Authentication and Mobile Trust 2 Runtime Skins Java ME WYSIWG Editor and Simulator Enterprise Backend Systems & Cloud Services 1 Application Code SDKs 5 Client-Side App Resources Worklight Console Direct Update Unified Push and SMS Notification Mobile Web Apps Unified Push Notifications Development and Operational Analytics App Version Management Cross-platform code base Common elements stored in the common folder – HTML, Javascript, CSS – Worklight API usage – 3rd party tools usage Named Environment directories (android, blackberry, iphone, etc…) – Generated as Environments are added to the project – Platform-specific code Environment-specific user optimizations – Over-ride default behaviors & styles – Behavior and branding changes 14 Agenda Mobile Application Trends Mobile Application Architecture Pattern Based Engineering and Common Mobile Application Patterns How to get started 15 Go to 'View > Header and Footer' to change this footer text to the event title Simple topology of a hybrid mobile application with Worklight Mobile Application Deployment Architecture A – Mobile App D – Mobile Device WL – WorkLight Server N – Network EBE – Existing Back End I/i – Internet/intranet I – Internet Service Server Side Mobile UI Adapter SOA Reference Architecture Services applied to Mobile Architecture DataPower Gateway Pattern: Reverse proxies typically front Worklight runtimes and follow the gateway pattern Purpose: Protecting WL from the Internet, XML firewall, terminate SSL, AAA (authentication, authorization and accounting) services, PEP (policy enforcement point) Product Mapping: DataPower®, or IBM Security Access Manager Roles and Tools: Administrators configure QoS Gateway AAA (Authentication, Authorization and Accounting) Services GW requires flexible and fast security processor Worklight Server – Adapters Lightweight server-side logic to expose systems of records in a mobile-friendly way • Automatic JSONification of enterprise data for quick transport and ease of consumption by mobile developer • Server-side service composition to reduce number of requests over slow mobile network • XSLT to reduce fat SOAP responses Query Response 3 2 Security Update data • Automatic enablement of server-side authentication control and audit Analytics SQL • Automatic collection of user actions and device and app properties Data sync • Enables synchronization with on-device JSON Store Mobile user engagement • Push notifications and geo-based event management For the server developer JS anywhere: Simple APIs for server-side JavaScript development Extensibility: Java API for custom adapters For the client developer Easy-to-use, consistent client-side API to call any back-end system JMS Node SOAP CAST IRON REST WSDL Worklight 1 Invoke adapter procedure Data/Result as JSON 4 Cloud Integration via Cast Iron Pattern – Enterprise Service Bus, elastic cloud Purpose: “elastic client” apps integrate with location transparency - on premise or in “elastic” public or private clouds Product mapping: The Cast Iron adapter provides OOTB integration with all cloudbased, hardware appliance or hypervisor editions of IBM WebSphere Cast Iron. Roles and tools: Integration developers build integration flows in WebSphere Cast Iron Studio, with orchestrations mad up of a number of configurable activities Worklight Cast Iron Adapter Enterprise Integration via Message Broker Pattern – Enterprise Service Bus, Pattern Based Engineering Purpose: integrate applications using a variety of common patterns Product mapping: WebSphere Message Broker provides OOTB pattern integration toolkit for rapid application development. Roles and tools: Integration developers instantiates integration patterns in WMB Studio. It generates adapters, and integration flows made up of a number of configurable nodes Mobile Service Enablement Pattern Easily mobile-enable a message broker service! Creates a mobile-ready interface around a Message Broker service – Services are a first class artifact in Message Broker alongside applications and libraries – Builds an adapter to integrate Worklight and Message Broker services – Inbound data from the mobile application is sent to Worklight as JSON/HTTP – Makes it very simple to mobile enable a Message Broker service! – The adapter passes the inbound request straight through to the service – Pattern adds an HTTP/JSON message flow (binding) to the service project 24 Resource Oriented Architecture requires security Create – POST /MyRESTService/ -- create a new item Read – GET /MyRESTService/ -- list all items – GET /MyRESTService/count -- get number of items – GET /MyRESTService/# -- get item by # Update – PUT /MyRESTService/# -- update an item by # Delete – DELETE /MyRESTService/ -- delete all items – DELETE /MyRESTService/# -- delete item by # Resource Handler Pattern Resource oriented architecture is a well known implementation pattern – Provides a common set of functions (CRUD – Create Read Update and Delete) – This pattern provides an adapter which implements CRUD operations – A Message Broker service is generated with subflows for each operation – The service integrates security authorization and authentication (LDAP) – Operations optionally integrate with the Message Broker Global Cache (WXS) 26 Extending Pub/Sub with Push Notification Services Worklight supports asynchronous push notifications to mobile applications – Push notifications have a measurable impact on the success of mobile applications – There are many IT challenges in supporting push notifications (devices, delivery etc) – Push notifications are applicable across many industry verticals – Healthcare, retail, travel, transportation, government, insurance and more! – All the major mobile platforms support push notification services – Apple iOS 3+, Google Android 2.2+, RIM Blackberry 5+ and Windows Phone 7+ –Pending notifications are written to a WebSphere MQ queue by a provider application – Need to subscribe to the notifications and arrange delivery to the mobile notification server 27 Worklight Push Notification from WebSphere MQ Creates a push notification adapter from a WebSphere MQ queue – Generates a web service implementation which is deployed to Message Broker – Builds a Worklight integration adapter which polls for pending notifications – Pending notifications are written to a WebSphere MQ queue by a provider application – The adapter converts the notifications into JSON and arranges delivery to the device 28 Extending desktop social collaboration to mobile devices A comprehensive suite of mobile solutions for social business - with device-appropriate interfaces for Smartphones and tablets including: Apple®, Android, Research In Motion® BlackBerry®, Nokia In 2011: 44 collaboration software releases • IBM Lotus Notes Traveler -- push email, calendar, contacts • Real-time collaboration – IBM Sametime IM chat and online meetings or via IBM SmartCloud for Social Business • IBM Connections social software for access to your professional network • IBM Lotus Symphony Viewers for viewing business documents • App dev software for HTML-based mobile apps and sites – IBM Lotus Domino XPages and IBM WebSphere Portal Mobile Experience Integration w/ Portal Server WebSphere Portal supports – HTML5, CSS and JavaScript – Integration w/ applications, content, authentication, roles, personalization – Multi-channel experience support A natural choice to integrate with the capabilities that Worklight provides Portal/Worklight Mobile App Mobile experiences that are built using both native code and web technologies Native Container Native Container Web Content Device Cap IBM Worklight Access to devices capabilities (camera, contacts,etc...) App Store Presence Application management (validity, updates, etc.) Mobile Notifications WebSphere Portal UI, application(s), content, Portal services (roles, personalization, customization, navigation), back-end access Enterprise applications and services (including IBM Connections and social services) Web Content Device Capabilities Extending BPM to Mobile via Web APIs IBM BPM v8 key use case: mobile task management – Users can launch, view, and complete business process tasks Extensive REST APIs & examples enable customized integration of IBM BPM content into your own mobile experiences – Expanded REST/JSON API for mobile application development – Both Process Portal and Mobile App use this API Device Management with IBM Endpoint Manager and Fiberlink For devices that must be managed as enterprise assets or must be controlled across applications, IBM provides: Safeguard of enterprise data Flexible management Maintained compliance Unified infrastructure App Development Team IT Device Management Team Worklight IEM / Fiberlink Application Development Application Security Deploy Apps Upgrade Apps Device Security Device Management Application Management Fiberlink – Total Enterprise Mobility Management Experts in delivering mobile management and security as a service Mobile Device Management • Broad range of mobile OS support Mobile Application Management • SDK and App-Wrapping Dual Persona – Container Support Secure Productivity Suite • Secure Mail • Secure Browser Secure Document Sharing Over 3500 existing customers Enterprise App Catalog SaaS Offering Recognized Market Leadership Recognized as a market leader by Gartner 2013 MDM Magic Quadrant Agenda Mobile Application Trends Mobile Application Architecture Pattern Based Engineering and Common Mobile Application Patterns How to get started 36 Go to 'View > Header and Footer' to change this footer text to the event title The IBM Mobile Platform and SOA SOA design principles in mobile application architecture leverage the combined power of the IBM Mobile Platform and SOA Foundation (i.e., what you need to build and effectively incorporate mobile apps with your SOA) Security Gateway Worklight Mobile IBM Mobile Development Platform Lifecycle Solution (Rational) Mobile Device Management Elastic Caching IBM Mobile Platform Tivoli Security SOA & Connectivity Portal Analytics Analytics Decision Management Enterprise Apps 37 Business Process Management Connectivity MQTT, Broker, CastIron Mobile AppDev demands “Agile, Responsive & Continuous Delivery” IBM Confidential IBM delivers a comprehensive end-to-end mobile solution Mobile is an enterprise priority that helps transform your business and is driving key client initiatives (www.ibm.com/MobileFirst) IBM has extensive capabilities in this space with additional new and enhanced offerings including: • Worklight: an open, complete, and advanced mobile application platform for HTML, hybrid, and native applications (part of IBM Mobile Development Lifecycle Solution) • FiberLink for Mobile Devices: unified endpoint management, with integrated mobile security • Tie in to your SOA : security gateway, ESB integration, elastic cloud, REST and WEB API pattern 39 Благодаря Bulgarian Teşekkür ederim Turkish Hindi Traditional Chinese Gracias Spanish Russian Thank You Obrigado Portuguese English Arabic Danke Grazie Merci German Italian French Multumesc Romanian Simplified Chinese Korean Japanese IBM MobileFirst Management Available Today! For Clients That Need To: Implement BYOD with confidence Manage secure sensitive data, regardless of the device Handle multi-platform complexities with ease IBM MobileFirst Management Offers: Unified management across devices Option to wipe corporate data Configuration & enforcement of password policies, encryption, VPN access & camera use Streamlined workflow between development & operations with an integrated Enterprise App Store On-premises or managed service delivery *Planned availability in 1Q 2013 • Latest versions of all major mobile OS’s (iOS, Android, Windows, and BlackBerry) • Defense-grade encryption thru FIPS 140-2 compliance* • Automatically grant or deny email access based on device compliance • Ease admin by setting and reporting IBM Notes Traveler security policies IBM Endpoint Manager for Mobile Devices IBM Enterprise Services Managed Mobility IBM Mobile and Wireless Network Management Services to support your Mobile Adoption 1. Discover IBM’s mobile capabilities, the use cases our capabilities solve, and jointly explore how a deeper dive could drive value for you: • On Ramp to Mobile Workshop (1 day) 2. If you are just starting your mobile adoption: • Mobile Discovery Workshop (1-3 days) • • Review specific business pains and trends to create mobile strategy & plan for next steps Mobile Quick Win Pilot (3-10 weeks) • Build a first instance of a mobile application to experience business value and create organizational buy-in 3. When you are ready to scale within a LoB or across the enterprise: • • IBM Mobile Strategy Accelerator (Multi-week engagement) • Understand how to most effectively integrate mobile capabilities. • Results in a roadmap that optimizes mobile transformation opportunities and accelerates time to market. Mobile Infrastructure Strategy & Planning (Multi-week engagement) • • Assess current environment, define infrastructure strategy and build technology and services roadmap Managed Mobile: Endpoint and Application Platform Management (ongoing) • Provide managed services to secure your mobile endpoints and for your mobile application platform environment
© Copyright 2024