bpm und soa machen mobil - ein architekturüberblick

69
Guido Schmutz Trivadis Torsten Winterberg OPITZ CONSULTING Deutschland GmbH BPM and SOA Are Going Mobile DOAG, November 2013 An Architectural Perspective

Upload: opitz-consulting

Post on 01-Jul-2015

898 views

Category:

Technology


6 download

DESCRIPTION

http://www.opitz-consulting.com/go/3-5-898 Smartphones haben unsere Welt im Schnellgang erobert. Die Tablets folgen nicht minder schnell nach. Was fasziniert uns so daran? Welche neuen Möglichkeiten bieten sich für das Business? Welchen Einfluss wird das allgegenwärtige HTML5 haben? Wie bekomme ich mobile Lösungen architektonisch optimal in meine SOA-Landschaft integriert, und welche Vorteile gewinne ich bei der Prozessautomatisierung? Diese Session liefert sowohl einen Überblick als auch Antworten für eine neue Klasse von Architekturfragen. Die SOA-Experten Torsten Winterberg und Guido Schmutz hielten diesen Fachvortrag bei der DOAG Konferenz und Ausstellung am 20.11.2013 in Nürnberg. -- Über uns: Als führender Projektspezialist für ganzheitliche IT-Lösungen tragen wir zur Wertsteigerung der Organisationen unserer Kunden bei und bringen IT und Business in Einklang. Mit OPITZ CONSULTING als zuverlässigem Partner können sich unsere Kunden auf ihr Kerngeschäft konzentrieren und ihre Wettbewerbsvorteile nachhaltig absichern und ausbauen. Über unsere IT-Beratung: http://www.opitz-consulting.com/go/3-8-10 Unser Leistungsangebot: http://www.opitz-consulting.com/go/3-8-874 Karriere bei OPITZ CONSULTING: http://www.opitz-consulting.com/go/3-8-5

TRANSCRIPT

Page 1: BPM und SOA machen mobil - Ein Architekturüberblick

Guido SchmutzTrivadisTorsten WinterbergOPITZ CONSULTING Deutschland GmbH

BPM and SOA Are Going Mobile

DOAG, November 2013

An Architectural Perspective

Page 2: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile DevelopmentWhat does this mean today?

An architectural point of view

Page 3: BPM und SOA machen mobil - Ein Architekturüberblick

We need an iPhone App! 2008

Page 4: BPM und SOA machen mobil - Ein Architekturüberblick
Page 5: BPM und SOA machen mobil - Ein Architekturüberblick
Page 6: BPM und SOA machen mobil - Ein Architekturüberblick

Cloud-Services become more and more important

Dropbox, Evernote, …

Page 7: BPM und SOA machen mobil - Ein Architekturüberblick

We need an Android App! 2010

Page 8: BPM und SOA machen mobil - Ein Architekturüberblick
Page 9: BPM und SOA machen mobil - Ein Architekturüberblick
Page 10: BPM und SOA machen mobil - Ein Architekturüberblick

Market share mobile OS

Page 11: BPM und SOA machen mobil - Ein Architekturüberblick
Page 12: BPM und SOA machen mobil - Ein Architekturüberblick

Acceptance of Android Versions

http://www.iphoneblog.de/2012/10/08/android-in-welcher-version/

Page 13: BPM und SOA machen mobil - Ein Architekturüberblick
Page 14: BPM und SOA machen mobil - Ein Architekturüberblick
Page 15: BPM und SOA machen mobil - Ein Architekturüberblick

The Web: Cross-PlattformWrite Once, run everywhere

Page 16: BPM und SOA machen mobil - Ein Architekturüberblick

HTML5

HTML elements JavaScript CSS

HTML5 is the evolution of web development

Page 17: BPM und SOA machen mobil - Ein Architekturüberblick
Page 18: BPM und SOA machen mobil - Ein Architekturüberblick
Page 19: BPM und SOA machen mobil - Ein Architekturüberblick
Page 20: BPM und SOA machen mobil - Ein Architekturüberblick

Business Logic

User InterfaceRequest

BackendFrontend

Classical Architecture

ResponseStorage

Rendering

Page 21: BPM und SOA machen mobil - Ein Architekturüberblick

User Interface

Storage

REST Calls

Local Storage

Presentation LogicREST Backend

Single Page Web-Apps

BackendFrontend

Page 22: BPM und SOA machen mobil - Ein Architekturüberblick

Hybrid Apps

Native App

HTLMCSS

JavaScript

WebView

Native App

Page 24: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile Tasklist

Page 25: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile Dashboards

Page 26: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile Processdesign

Page 27: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile process documentation

Page 28: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile Alarm / Monitoring

Page 29: BPM und SOA machen mobil - Ein Architekturüberblick

Warning:Avoid the Many-cheap-Apps-Architecture-Maintenance-Hell

Page 30: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile Integration Technologies

SOAP• Has a reputation for being

complex and heavyweight• Has a formal contract

language to define message formats

• Supports standardized security approaches and tools

• Supports XML and Binary

REST• Has a reputation for being

simple and lightweight• No formal contract language

to define message formats• Security is a major challenge

due to lack of standardization

• Supports multiple data types (JSON, Text, XML, Binary)

Page 31: BPM und SOA machen mobil - Ein Architekturüberblick

SOAP Style

34

Mobile Integration Patterns

REST Style

Page 32: BPM und SOA machen mobil - Ein Architekturüberblick

REST API SchemaAktion Typ URI Schema

customerByUsername GET /api/customers?username=fred

rentalsByCustomerId GET /api/rentals?customerId=7

carTypes GET /api/cartypes

cities GET /api/cities

availableCars GET /api/availableCars?cityId=1 &startDate=2011-10-28-… &endDate=2011-10-30-… &maxPrice=90

rentCar POST /rental/ Body: {carId=...,startDate=...,endDate=...}

Date format: "yyyy-MM-ddTHH:mm:ss.SSSZ"

Page 33: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile Integration Technologies

XML• “Native” format for

enterprise data exchange• Highly formal structure• Content CAN be validated• Formats can change only

when all parties agree• Supports multiple data

types (Text, Binary)

JSON• “Native” format for

web pages• No formal structure• Content cannot be

validated• Easy to change• Text only

Page 34: BPM und SOA machen mobil - Ein Architekturüberblick

37

REST: URI addressing and data representation

Mobile Integration Patterns

Page 35: BPM und SOA machen mobil - Ein Architekturüberblick

JSON as exchange format for data

Request:$ curl --user fred:pass http://localhost:8484/...

.../rylc-html5/backend/api/customers?username=fred

Response:{

"city":"Steintal","email":"[email protected]","enabled":true,"id":1,"name":"Fred Feuerstein",...

}

Page 36: BPM und SOA machen mobil - Ein Architekturüberblick

old new

The Web is evolving…

Documents Declarative HTML

TemplatesRequest/Response

Thin Client

ApplicationsProgrammatic DOM

APIsSynchronization

Thick Client

Page 37: BPM und SOA machen mobil - Ein Architekturüberblick

Digital Natives

Page 38: BPM und SOA machen mobil - Ein Architekturüberblick

Back to terminator vision

Page 39: BPM und SOA machen mobil - Ein Architekturüberblick

Google Glasses

Google Glasses

© http://www.flickr.com/photos/azugaldia/7457645618

Page 40: BPM und SOA machen mobil - Ein Architekturüberblick

Internet of Things

Page 42: BPM und SOA machen mobil - Ein Architekturüberblick
Page 43: BPM und SOA machen mobil - Ein Architekturüberblick

Data Driven Applications as new breed

“It’s about using data to make our customer touch points more engaging, more interactive, more data-driven.”

Page 44: BPM und SOA machen mobil - Ein Architekturüberblick

48

Central vs. Application Databases• Application Database

• Only accessed by a single application• Only the application using the database

needs to know about the structure• Easier to maintain and evolve the schema• More freedom to choose the database• Applicable to SOA (i.e. Data Service/Entity

Service) with good Service Autonomy• Ready for the cloud

• Central Database

• Using SQL as the integration mechanism between applications

• applications store data in common DB• Improves communication, all

applications operate on consistent set of data

• Structure ends up to be more complex• Changes need to be coordinated with all

other applications using the database• Side-effects (i.e. adding database index)

DB

Application 1 Application 2 Application 3

DB

Application 1 Application 2 Application 3

DB DB

Page 45: BPM und SOA machen mobil - Ein Architekturüberblick

49

Relational vs. Aggregate Data Models• Aggregate is a term that comes

from Domain-Driven Design (Evans)• An aggregate is a collection of

related objects, that should be treated as a unit– Unit for data manipulation and

management of consistency

• The relational model takes the information and divides it into tuples (rows)

• A tuple is a limited data structure– no nesting of tuples – no list of values

Page 46: BPM und SOA machen mobil - Ein Architekturüberblick

NoSQL Databases

Big Data frameworks are often associated with the term NoSQL• Not only SQL• The power of SQL is not needed for all problems• Specialized solutions may be faster or more scalable• Bring the ability to handle semi-structured and unstructured data• NoSQL complements RDBMS • Different types of NoSQL today:

• Key-value, Column-Family, Document, Graph

Big Data frameworks and NoSQL are related but not necessarily the same• Some big data problems may be solved relationally

Page 47: BPM und SOA machen mobil - Ein Architekturüberblick

Polyglot PersistenceDefines a hybrid approach to persistence• Using multiple data storage technologies• Selected based on the way the data is used by an application

Decisions• Have to decide what data storage technology to use (Relational or NoSQL)• Today it‘s easier to go with relational

New Data Access APIs• Each data store has its

own mechanisms for accessing the data

Solution• Wrap data access

code into services (Data/Entity Service) exposed to applications

51

Service-Oriented Polygot Persistence Model

User Session Service

Shopping CartService Order Service

Product CatalogService

Recomendation Service

E-commerce Application

Shopping cart data User Sessions Product Catalog RecomendationsCompleted Order

Key-Value RDMBS Document Graph

Page 48: BPM und SOA machen mobil - Ein Architekturüberblick

Unified (Mobile) Architecture

53Enterprise Applications

SOAP

JMS

REST RDMBS

Internet of Things

Mobile Apps

Loca

l ESB

External Cloud Service

Providers

Ente

rpris

e Se

rvic

e Bu

s (E

SB)

EJB

Cloud to Device Messaging (C2DM)

Serv

ice

Gat

eway

CEP

HTTP/JSON Application

Server

Complex Event Processing (CEP) / Fast Data

NoSQL/ Big Data

BPM und SOA Platform

REST

SOAPDB

LDAP / Enterprise IDM

(Big) Data Analytics

BusinessLogic

NoSQL

Web Apps

DB

Analytical Applications

Data Warehouse

Data Integration

RDMBS

Ora

cle

Serv

ice

Bus

(OSB

)

Oracle WebLogic Server

Oracle SOA Suite

Oracle BPM Suite

Oracle ADF

Oracle Event Processing (OEP)

Oracle NoSQLDatabase

Oracle BigData Appliance (BDA)

Oracle ADFMobile

Ora

cle

Dat

a In

tegr

ator

(OD

I)

Oracle ADF

Oracle WebLogic Server

Java Embedded

Oracle Database Mobile Server

Web Sockets

OEP EmbeddedOracle Business Intelligence Foundation Suite

Oracle Business Activity Monitoring (BAM)

Ora

cle

Gol

denG

ate

Oracle NoSQL DB

Oracle RDBMS

Oracle Database Mobile Server

Oracle IDMOra

cle

API G

atew

ay (O

AG)

Page 49: BPM und SOA machen mobil - Ein Architekturüberblick

Conclusion

Page 50: BPM und SOA machen mobil - Ein Architekturüberblick

Mobile Apps today Think in new architecture pattern

Native Apps, mobile Web-Apps, Hybride Apps HTML5, Single-Page-Apps, Many-Cheap-Apps-Hell,…

Mobile Apps tomorrow Not only B2C and B2B, but M2M Explosion of

Number of Devices Data / Events Need for Integration

Combination of Cloud, Big Data, Fast Data / Event Processing, Mobile, IoT is the future

Page 51: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle products fitting in this architecture

Page 52: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle ADF Mobile

• Enables Customers to mobile-enable enterprise applications– One common platform for desktop and

mobile applications (Android & iOS)– Handle multiple channels and network:

browser, native, and hybrid applications

• Technology foundation for future Oracle applications mobile development

Page 53: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle ADF• End-to-end development

framework for Java EE• Based on industry standards• Full model-view-controller

implementation• Rich web, mobile and desktop UI• Focus on reusability• Visual and declarative

development• Integrated security and

customization

Page 54: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle Database Mobile Server• Secure, efficient, resilient mobile

data synchronization with Oracle Database

• Remote application, user and device management

• Standards-based encryption for remote data, in both storage and transit

• Robust and reliable mobile data synchronization over unreliable networks

• Highly scalable server configuration, supporting large and growing mobile or remote deployments

• Integration with ADF Mobile

Page 55: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle API Gateway (OAG)

• Serves REST APIs and SOAP Web Services to clients

– Converts REST to SOAP– Converts XML to JSON

• Supports other protocols also– FTP, SFTP, FTPS– TIBCO Rendezvous and EMS– JMS (to IBM WebSphere MQ, ActiveMQ, JBOSS

Messaging, etc)• Applies security rules

– Authentication: OAuth, HTTP Auth, Certificate Auth, WS-Security

– Content Filtering: Detection of SQL Injection, XSS, Viruses

• Monitoring of API and Service usage• Caching and Traffic Management (routing,

throttling)

Page 56: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle Service Bus (OSB) – Message & Service Integration

• Embedded access to service result caching

• Intelligent content and identity based routing

• Rich set of transports/adapters• Data-oriented services and REST

support• Dynamic message transformation and

streaming• Built-in monitoring, management and

QoS• Configuration-driven message and

service integration• Optimized, pluggable, policy-driven

transport and message security

Page 57: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle Data Integrator (ODI) – Data Integration

• Out-of-the-box integration with databases, ERPs, CRMs, B2B systems, flat files, XML data, LDAP, JDBC, ODC

• Knowledge module framework for extensibility

• In-database transformations and data integrity controls on all databases

• Rich ETL for Oracle databases• Integrates with Oracle GoldenGate for

real-time data warehousing• Metadata-driven data lineage and

impact analysis• Integrates with Oracle Enterprise Data

Quality for advanced profiling, cleansing, matching and data governance needs

Page 58: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle Goldengate – Data Replication

• High performance data replication• Heterogeneous sources and

targets• Conflict detection and resolution• Real-time and deferred apply• Event marker infrastructure• Flexible topology support• Data encryption• ETL and JMS integration• Routing and • compensation• Initial load capability

Page 59: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle SOA Suite – Service Integration

• Unifies Oracle and 3rd party Cloud applications with on-premises

• Enables rapid delivery of existing applications into mobile channel

• Improves partner collaboration with better B2B and API Management

• Fast Data support with embeddable real-time event platform

• Optimized integration to Oracle Applications running on Oracle Exalogic

Page 60: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle BPM Suite – Business Process Management

• Business driven design, execution and improvement

• Common process model facilitates Business-IT collaboration

• Complete support for any type of process, including Adaptive Case Management

• Modernize and unify existing applications

• Time-to-value & packaged best practices with Process Accelerators

Page 61: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle Event Processing (OEP)

• Lightweight Java Application server

• Deployable stand-alone, integrated in SOA stack or lightweight on Embedded Java

• Continuous Query Language (CQL) based on SQL syntax

• Easy to use Development Environment

• Enterprise class High Availability, Scalability, Performance and Reliability

• Various Integration Opportunities using AQ, JMS and HTTP Publish/Subscribe Connectivity…

• Coherence Integration

Page 62: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle Business Activity Monitoring (BAM)

• Monitor business processes & services in real-time

– Key Performance Indicators (KPIs)– Service-Level Agreements (SLAs)

• Analyze events as they occur – Correlate events & KPIs– Identify trends as they emerge– Alert users to bottlenecks & solutions

• Act on current conditions– Event-driven alerts– Real-time dashboards– BPEL processes & web services

integration

Page 63: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle Big Data Appliance

• Massively scalable infrastructure to store and manage big data

• Big Data Connectors delivers load rates up to 12TB per hour between Data Applicance and Oracle RDMBS

• Based on Cloudera’s distribution• Integrated into Oracle Enterprise Manager• Advanced analytics with Oracle R on Hadoop

data• Handle low-latency unstructured workload

with the pre-installed Oracle NoSQL database• Infiniband connectivity between node and

across racks• Flexible configuration choices allowing flexible

growth for Haddop and Oracle NoSQL databases

Page 64: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle NoSQL Database• Simple Data Model

• Key-value pair with major+sub-key paradigm• Read/insert/update/delete operations

• Scalability• Dynamic data partitioning and distribution• Optimized data access via intelligent driver

• High availability• One or more replicas• Disaster recovery through location of replicas• Resilient to partition master failures• No single point of failure

• Transparent load balancing• Reads from master or replicas• Driver is network topology & latency aware

• Elastic• Online addition/removal of Storage Nodes • Automatic data redistribution

Page 65: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle WebLogic Server Java EE 6 application server

Java SE 6 and 7 certification

High Performance Platform for Mission Critical Cloud Applications

Deep Integration with Oracle Database 12c - Multitenant and RAC

Real-time data processing through GoldenGate HotCache & Live Events

Built-in support for HTML5 and WebSockets for rich mobile and cloud applications

Oracle Database 12c

Page 66: BPM und SOA machen mobil - Ein Architekturüberblick

Oracle Identity Management• Simplified Identity Governance

– Access Request Portal with Catalog and Shopping cart UI

– In product, durable customization of UIs, forms and work flows

– Privileged Account Management – leverage Identity connectors, workflows, audit

• Complete Access Management– Integrated SSO, Federation, API Management, Token

Management, Granular Authorization– Mobile application security with SSO, device finger

printing and step up authentication– Social identity log-in from popular social media sites– REST, OAuth, XACML

• Directories that Scale– OUD optimized on T4 hardware delivering 3x

performance gain and 15% of set up time

Page 67: BPM und SOA machen mobil - Ein Architekturüberblick

Contact

Page 68: BPM und SOA machen mobil - Ein Architekturüberblick

© OPITZ CONSULTING GmbH 2011 Seite 73Mobile Lösungen und BPM

Contact

Torsten WinterbergBusiness Development & Innovation

Bild durch Klicken auf Symbol hinzufügen

OPITZ CONSULTING Deutschland GmbHKirchstr. 6, 51647 Gummersbach, GermanyPhone: +49 173 54 79 [email protected]@t_winterberg

Page 69: BPM und SOA machen mobil - Ein Architekturüberblick

© OPITZ CONSULTING GmbH 2011 Seite 74Mobile Lösungen und BPM

Contact

Guido SchmutzTechnology Manager

Bild durch Klicken auf Symbol hinzufügen

Trivadis AGEuropa-Strasse 5, 8152 Glattbrugg, SchweizPhone: +49 173 54 79 [email protected]

@gschmutz