Top Banner
® Copyright 2008 Adobe Systems Incorporated. All rights reserved. Core Saas Design and Architecture Patterns Duane Nickull Sr. Technology Evangelist Adobe Systems
39

Core Saas Design and Architecture Patterns

Oct 19, 2014

Download

Documents

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Core Saas Design and Architecture Patterns

Duane Nickull

Sr. Technology Evangelist

Adobe Systems

Page 2: Core Saas Design and Architecture Patterns

®

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

Page 3: Core Saas Design and Architecture Patterns

®

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

Page 4: Core Saas Design and Architecture Patterns

®

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

Page 5: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Fragen - SOA, Services or SaaS…

  Ganz Fragen!

Page 6: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

1996 –remember this slide

THING ONE THING TWO

THING THREE

The Internet

Page 7: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

1998…

THING ONE THING TWO

THING THREE

XML

Page 8: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

2001…

THING ONE THING TWO

THING THREE

Web Services

Page 9: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

2003…

THING ONE THING TWO

THING THREE

SOA

Page 10: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

2005…

THING ONE THING TWO

THING THREE

SaaS

Page 11: Core Saas Design and Architecture Patterns

®

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

Page 12: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved. 12

Pragmatics: How do architects capture knowledge?

Web Services live here.

SOA FIRST!

Page 13: Core Saas Design and Architecture Patterns

®

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

Page 14: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Core Model for SOA

Page 15: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Service Interaction -> Behavior & Information Models

Page 16: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Real World Effect

Page 17: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Service as an action Boundary

Service

Capabilities

Needs

Page 18: Core Saas Design and Architecture Patterns

®

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

Page 19: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

MVC – early ancestor of SaaS?

Page 20: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

MVC – early ancestor of SaaS?

Page 21: Core Saas Design and Architecture Patterns

®

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

Page 22: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

MVC – early ancestor of SaaS?

Page 23: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Pattern of SaaS – different domains of ownership

23

Transparency horizon Ownership horizon

Page 24: Core Saas Design and Architecture Patterns

®

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

Page 25: Core Saas Design and Architecture Patterns

®

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

Page 26: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

SaaS early innovation

Page 27: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Effect

  Software that gets better the more people use it!

Page 28: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Software that gets better the more people use it?

  Gmail – why?

Page 29: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

How it works

29

Pattern Recognition

Page 30: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Software that gets better the more that people use it 2

  Google Search – Why?

30

Page 31: Core Saas Design and Architecture Patterns

®

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

Page 32: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved. 32

Model for the Old Web -> Client Server

Server

Client

Page 33: Core Saas Design and Architecture Patterns

®

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

Page 34: Core Saas Design and Architecture Patterns

®

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

Page 35: Core Saas Design and Architecture Patterns

®

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

Page 36: Core Saas Design and Architecture Patterns

®

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

Page 37: Core Saas Design and Architecture Patterns

®

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

Page 38: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Adobe use of WS and SAML in LC Rights Management

Page 39: Core Saas Design and Architecture Patterns

®

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

Thank you!

Q&A Duane’s World TV

”Wer nicht fragt, bleibt dumm!”