® Copyright 2008 Adobe Systems Incorporated. All rights reserved. Core Saas Design and Architecture Patterns Duane Nickull Sr. Technology Evangelist Adobe Systems
Oct 19, 2014
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Core Saas Design and Architecture Patterns
Duane Nickull
Sr. Technology Evangelist
Adobe Systems
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Ich bin?
Chair - OASIS SOA Reference Model Technical Committee (OASIS Standard as of 2006)
Community Member (Planning Committee) - Ontolog Forum
Contributor - OASIS SOA Reference Architecture Technical Committee
Contributor - OASIS Service Component Architecture Technical Committee
Contributor/architect - W3C Web Services Architecture
Chief Architect/Chair - United Nations CEFACT Technical Architecture (SOA)
Chair - OASIS eBusiness SOA Technical Committee Chief Architect - ebXML Technical Architecture (first
major SOA)
Co-inventor - GoXML Contextual XML Search (51 unique patent points)
Co-Inventor - XML Commerce Pro (1997) first fully XML commerce engine
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Agenda
A real hard look at SOA
SaaS Parents -> MVC and SOA.
SaaS on one machine vs ASP/Cloud Models
Business advantages of SaaS
Changes to architecture
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Evolution enabling SaaS
Monolithic spaghetti beasts
Structured Monoliths Client - Server
3 tier
Services
N tier Distributed Objects
Components Things that use Services
BPM Mashups SaaS RIA SCA Aggregate Apps
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Fragen - SOA, Services or SaaS…
Ganz Fragen!
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
1996 –remember this slide
THING ONE THING TWO
THING THREE
The Internet
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
1998…
THING ONE THING TWO
THING THREE
XML
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
2001…
THING ONE THING TWO
THING THREE
Web Services
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
2003…
THING ONE THING TWO
THING THREE
SOA
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
2005…
THING ONE THING TWO
THING THREE
SaaS
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
2008 (The marketers got lazy perhaps??)
Now it’s just the cloud
THING ONE THING TWO
THING THREE
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved. 12
Pragmatics: How do architects capture knowledge?
Web Services live here.
SOA FIRST!
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
So what is SOA exactly?
An Architectural Paradigm for organizing and using distributed capabilities that may be under the control of different ownership domains.
A framework for matching needs and capabilities.
A view of architecture focusing on “Services” as a mechanism to allows interactions between those with needs and capabilities.
A way of thinking about problems
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Core Model for SOA
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Service Interaction -> Behavior & Information Models
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Real World Effect
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Service as an action Boundary
Service
Capabilities
Needs
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Agenda
A real hard look at SOA
SaaS Parents -> MVC and SOA.
SaaS on one machine vs ASP/Cloud Models
Business advantages of SaaS
Changes to architecture
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
MVC – early ancestor of SaaS?
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
MVC – early ancestor of SaaS?
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Agenda
A real hard look at SOA
SaaS Parents -> MVC and SOA.
SaaS on one machine vs ASP/Cloud Models
Business advantages of SaaS
Changes to architecture
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
MVC – early ancestor of SaaS?
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Pattern of SaaS – different domains of ownership
23
Transparency horizon Ownership horizon
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Use of SaaS with Virtualization
24
The Cloud
Virtualization – Logical and Physical no longer map 1:1
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Agenda
A real hard look at SOA
SaaS Parents -> MVC and SOA.
SaaS on one machine vs ASP/Cloud Models
Business advantages of SaaS
Changes to architecture
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
SaaS early innovation
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Effect
Software that gets better the more people use it!
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Software that gets better the more people use it?
Gmail – why?
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
How it works
29
Pattern Recognition
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Software that gets better the more that people use it 2
Google Search – Why?
30
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Agenda
A real hard look at SOA
SaaS Parents -> MVC and SOA.
SaaS on one machine vs ASP/Cloud Models
Business advantages of SaaS
Changes to architecture
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved. 32
Model for the Old Web -> Client Server
Server
Client
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved. 33
Abstract Model for Web 2.0
Abstract Model for connecting and integrating capabilities and users
Patterns of interaction
“Don't treat software as an artifact, but as a process of engagement with your users. “
- Tim O’Reilly
Users
Services
Capabilities
Client Applications/Runtimes
Connectivity/Reachability
SOA
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved. 34
Web 2.0 Reference Architecture
Controller
Data/State Management
Communication Services
Design, Development & Governance Tools
Client Application Tier
Security Container/Model
Virtual Machine
Rendering & Media
Service Tier
Registry- Repository
Service Invocation Layer
Service Provider Interface
Service Container Core Services Business Rules/ Workflow
Resource Tier EIS Databases Directories ECM Repository
Message Queues
Legacy Systems
• Consistent object & event models • Consistent architectural models
Standard Technologies & Protocols
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
App Server
Communication Tier
Business
Tier
Integration Tier
Resource Tier
DBMS LDAP CRM/ ERP/CM
Etc..
Synchronization Service
Business and Transaction Logic
Connectors to Data and Legacy Systems
data
data
data
Example applications:
• Business analytics
• Order processing systems
• Call-centre management applications
Customers looking to manage data which needs to be synchronised across tiers and enterprise integration to existing systems and infrastructure
push() subscribe()
Pattern: Synchronized Web
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
App Server
Communication Tier
Business
Tier
Integration Tier
Resource Tier
DBMS LDAP CRM/ ERP/CM
Etc..
Synchronization Service
Business and Transaction Logic
Connectors to Data and Legacy Systems
data
data
data
Example applications:
• Business analytics
• Order processing systems
• Call-centre management applications
Customers looking to manage data which needs to be synchronised across tiers and enterprise integration to existing systems and infrastructure
push() subscribe()
Pattern: Synchronized Web
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
App Server
Communication Tier
Business Tier
Integration Tier
Resource Tier
DBMS LDAP CRM/ ERP/CM
Etc.
Synchronization Services
Business and Transaction Logic
Connectors to Data and Legacy Systems
Example applications:
• Real-time stock monitor
• Real-time news feed applications
Customers looking to integrate real-time third-party data feeds with no screen refresh and no client/server polling External
App
Pattern: Synchronized Web
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Adobe use of WS and SAML in LC Rights Management
®
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
Thank you!
Q&A Duane’s World TV
”Wer nicht fragt, bleibt dumm!”