Titelfolie: • Damit beginnt ein Vortrag. • Haupttitel: 1zeilig! • Untertitel: max 2. Zeilen • Referent: Name, Funktion,
OC Niederlassung • Logo: Optional.
Entweder ein Kunden/ oder themenbezogenes Logo verwenden. Ideal quadratisch, 3 Raster breit.
• Fusszeile mit Haupttitel füllen.
Guido Schmutz
Trivadis
Torsten Winterberg
OPITZ CONSULTING Deutschland GmbH
BPM and SOA Are Going Mobile
DOAG, November 2013
An Architectural Perspective
The Team: Masons-of-SOA
Bernd Trops (Talend): [email protected]
Clemens Utschig-Utschig (Boehringer-Ingelheim): [email protected]
Berthold Maier (T-Systems): [email protected]
Hajo Normann (Accenture): [email protected]
Torsten Winterberg (OPITZ CONSULTING): [email protected]
Jürgen Kress (Oracle Corp.) [email protected]
Guido Schmutz (Trivadis): [email protected]
Danilo Schmiedel (OPITZ CONSULTING): [email protected]
www.soa-community.com
Mobile Development
What does this mean today?
An architectural point of view
We need an iPhone App! 2008
Cloud-Services become more and more important
Dropbox, Evernote, …
We need an Android App! 2010
Market share mobile OS
Design: • Das Farbschema ist im Design
als „OC 2009“ hinterlegt. • Ebenso sind die Schriftarten als
„OC 2009“ hinterlegt. • Die Standardfarben sind:
Acceptance of Android Versions
Design: • Das Farbschema ist im Design
als „OC 2009“ hinterlegt. • Ebenso sind die Schriftarten als
„OC 2009“ hinterlegt. • Die Standardfarben sind:
http://www.iphoneblog.de/2012/10/08/android-in-welcher-version/
The Web: Cross-Plattform Write Once, run everywhere
Browsers
Design: • Das Farbschema ist im Design
als „OC 2009“ hinterlegt. • Ebenso sind die Schriftarten als
„OC 2009“ hinterlegt. • Die Standardfarben sind:
HTML5
HTML elements JavaScript CSS
HTML5 is the evolution of web development
Business Logic
User Interface
Request
Backend Frontend
Classical Architecture
Response Storage
Rendering
User Interface
Storage
REST Calls
Local Storage
Presentation Logic REST Backend
Single Page Web-Apps
Backend Frontend
SOFEA / Webapps
Source: Life above the Service Tier, How to Build Application Front-ends in a Service-Oriented World
Hybrid Apps
Design: • Das Farbschema ist im Design
als „OC 2009“ hinterlegt. • Ebenso sind die Schriftarten als
„OC 2009“ hinterlegt. • Die Standardfarben sind:
Native App
HTLM CSS
JavaScript
WebView
Native App
1 2 3 4
Start process from mobile device
Start process for insurance immediately
Mobile Tasklist
Mobile Dashboards
Mobile Processdesign
Mobile process documentation
Mobile Alarm / Monitoring
Warning: Avoid the Many-cheap-Apps-Architecture-Maintenance-Hell
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)
SOAP Style
34
Mobile Integration Patterns
REST Style
REST API Schema
Aktion 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"
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
37
REST: URI addressing and data representation
Mobile Integration Patterns
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",
...
}
Titel und 2 Inhalte mit Überschriften • Layout für 2 spaltige Listen
mit Überschriften • Titel: 1-2zeilen • Überschriften 1zeilig • Inhalt: • 3-5 Punkte o 2-3
Hauptpunkte mit Unterpunkten
• Max bis zur 3. Ebene • Achtung: Sofern Text 1. Spalte
zu Dicht an 2. Spalte, korrigiere Textboxbreite!
old new
The Web is evolving…
Documents
Declarative HTML
Templates
Request/Response
Thin Client
Applications
Programmatic DOM
APIs
Synchronization
Thick Client
Digital Natives
Back to terminator vision
Google Glasses
Google Glasses
© http://www.flickr.com/photos/azugaldia/7457645618
Internet of Things
http://blog.trentonsystems.com/machine-to-machine-technology-efficient-economy
A high-level M2M system architecture
Data Driven Applications as new breed
“It’s about using data to make our customer touch points more engaging, more interactive, more data-driven.”
Central vs. Application Databases
48
• 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
Relational vs. Aggregate Data Models
49
• 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
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
Polyglot Persistence
Defines 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 Cart
Service Order Service
Product Catalog
Service
Recomendation
Service
E-commerce Application
Shopping cart data User Sessions Product Catalog RecomendationsCompleted Order
Key-ValueRDMBS Document Graph
Unified (Mobile) Architecture
53 Enterprise Applications
SOAP
JMS
REST RDMBS
Internet of Things
Mobile Apps
Loca
l ESB
External Cloud Service
Providers
Ente
rpri
se S
ervi
ce B
us
(ESB
)
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
SOAP DB
LDAP / Enterprise IDM
(Big) Data Analytics
Business Logic
NoSQL
Web Apps
DB
Analytical Applications
Data Warehouse
Data Integration
RDMBS
Ora
cle
Serv
ice
Bu
s (O
SB)
Oracle WebLogic Server
Oracle SOA Suite
Oracle BPM Suite
Oracle ADF
Oracle Event Processing (OEP)
Oracle NoSQL Database
Oracle BigData
Appliance (BDA)
Oracle ADF Mobile
Ora
cle
Dat
a In
tegr
ato
r (O
DI)
Oracle ADF
Oracle WebLogic Server
Java Embedded
Oracle Database Mobile Server
Web Sockets
OEP Embedded Oracle Business Intelligence Foundation Suite
Oracle Business Activity Monitoring (BAM)
Ora
cle
Go
lden
Gat
e
Oracle NoSQL DB
Oracle RDBMS
Oracle Database Mobile Server
Oracle IDM Ora
cle
AP
I Gat
eway
(O
AG
)
Conclusion
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
Oracle products fitting in this architecture
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
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
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
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)
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
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
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
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
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
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
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
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
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
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
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
Contact
© OPITZ CONSULTING GmbH 2011 Seite 73 Mobile Lösungen und BPM
Konstruktionsraster 20mm 4mm
OPITZ CONSULTING Vorlage Powerpoint 2010; Version 1.11; 10.02.2010; TGA, MVI, JWI
Kontakt 1. fach: • Diese Folie wird als vorletzte
Folie genutzt, um den
individuellen Bezug zum
Referenten herzustellen.
• Als Foto muss ein
quadratisches Foto des
Referenten in qualitativ
hochwertiger Form vorliegen.
• Das Foto geht über 3
Rasterbreiten.
• Die Daten der Adresse sollten
vollst. eingegeben werden
Contact
Torsten Winterberg Business Development & Innovation OPITZ CONSULTING Deutschland GmbH Kirchstr. 6, 51647 Gummersbach, Germany Phone: +49 173 54 79 302 [email protected] @t_winterberg
© OPITZ CONSULTING GmbH 2011 Seite 74 Mobile Lösungen und BPM
Konstruktionsraster 20mm 4mm
OPITZ CONSULTING Vorlage Powerpoint 2010; Version 1.11; 10.02.2010; TGA, MVI, JWI
Kontakt 1. fach: • Diese Folie wird als vorletzte
Folie genutzt, um den
individuellen Bezug zum
Referenten herzustellen.
• Als Foto muss ein
quadratisches Foto des
Referenten in qualitativ
hochwertiger Form vorliegen.
• Das Foto geht über 3
Rasterbreiten.
• Die Daten der Adresse sollten
vollst. eingegeben werden
Contact
Guido Schmutz Technology Manager Trivadis AG Europa-Strasse 5, 8152 Glattbrugg, Schweiz Phone: +49 173 54 79 302 [email protected]
@gschmutz