123
Architecting Modern Distributed Applications Clint Edmonson Architect Evangelist Microsoft Email: [email protected] Web: http://www.notsotrivial. Twitter: @clinted

DevLink - Architecting Modern Distributed Applications

Embed Size (px)

DESCRIPTION

In this session, we will survey the modern architecture landscape from the ground up, including infrastructure, application, and client solution choices. We'll discuss how current industry trends are shaping our architectures and present an innovative architecture mapping technique for analyzing our customer's needs and aligning them to today's technologies and solution patterns.

Citation preview

Page 1: DevLink - Architecting Modern Distributed Applications

Architecting Modern Distributed Applications

Clint EdmonsonArchitect EvangelistMicrosoft

Email: [email protected]: http://www.notsotrivial.netTwitter: @clinted

Page 2: DevLink - Architecting Modern Distributed Applications

Industry Trends

Page 3: DevLink - Architecting Modern Distributed Applications

Industry Trends

Trend 1: Service Oriented Architecture (SOA)

Page 4: DevLink - Architecting Modern Distributed Applications

Industry Trends

Page 5: DevLink - Architecting Modern Distributed Applications

Industry Trends

Trend 2: Software as a Service (SaaS)

Page 6: DevLink - Architecting Modern Distributed Applications

Industry Trends

Page 7: DevLink - Architecting Modern Distributed Applications

Industry Trends

Trend 3: Web 2.0

Page 8: DevLink - Architecting Modern Distributed Applications

Industry Trends

Page 9: DevLink - Architecting Modern Distributed Applications

Industry Trends

Trend 4: Rich Internet Applications (RIA)

Page 10: DevLink - Architecting Modern Distributed Applications

Industry Trends

Page 11: DevLink - Architecting Modern Distributed Applications

Industry Trends

Trend 5: Cloud Computing

Page 12: DevLink - Architecting Modern Distributed Applications

Industry Trends

Page 13: DevLink - Architecting Modern Distributed Applications

Industry Trends

SOA: Service Oriented Architecture Interop, Reuse and Agility

Web 2.0SocialNetwork Effect

SaaS: Software as a Service Flexible pricing and delivery

RIA: Rich Internet ApplicationsUser Experience

Software + Services

Cloud ComputingService Utility & Scale

Page 14: DevLink - Architecting Modern Distributed Applications

Heads in the Cloud, Feet on the Ground

Page 15: DevLink - Architecting Modern Distributed Applications

Heads in the Cloud, Feet on the Ground

Economy of ScaleLow High

ControlHigh Low

When it comes to running applications, organizations today face a tension between

control and economy of scale

Page 16: DevLink - Architecting Modern Distributed Applications

Application runs on-premise

Buy my own hardware, and

manage my own data center

Heads in the Cloud, Feet on the Ground

Economy of ScaleLow High

Application runs at a hoster

Pay someone to host my

application using hardware

that I specify

Application runs using cloud

platform

Pay someone to host my

application without

specifying the hardware (they promise to be

“infinitely” scalable)

Application is supplied by a

vendor

Pay for someone’s

hosted application. Don’t care about the

hardware, as long as it works.

ControlHigh Low

Page 17: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

Heads in the Cloud, Feet on the Ground

Tension between build vs. buy

Build

vs.

Buy

Build

Buy

Page 18: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

An application that I buy “off the

shelf” and run myself

“Home Built”Application

An application that I develop and

run myself

Heads in the Cloud, Feet on the GroundBu

ild v

s. B

uyBu

ildBu

y

Hosted “Home Built”

An application that I develop

myself, but run at a hoster

Hosted “Packaged”

An application that I buy “off the shelf” and then run at a hoster

“Home Built”using cloud

An application that I develop myself, that is hosted using

cloud platform

“Packaged”using cloud

An application that I buy “off the

shelf”, that is hosted using

cloud platform

“Software as a Service”

A hosted application that I

buy from a vendor

“Platform as a Service”

A vendor hosted development and

runtime environment

Page 19: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical Example

Hosted “Home Built”

Hosted “Packaged”

“Home Built”using cloud

“Packaged”using cloud

“Software as a Service”

“Platform as a Service”

Clinical Trial

Molecule Research

HR System

Email

CRM

ERP

“Too costly to run this myself, but I’ve made too many customizations”

Page 20: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical Example

Hosted “Home Built”

Hosted “Packaged”

“Home Built”using cloud

“Packaged”using cloud

“Software as a Service”

“Platform as a Service”

Clinical Trial

Molecule Research

HR System

Email

CRM

ERP

“CRM and Email are commodity services – They have no customizations, and it’s cheaper for someone else to run these”

Page 21: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical Example

Hosted “Home Built”

Hosted “Packaged”

“Home Built”using cloud

“Packaged”using cloud

“Software as a Service”

“Platform as a Service”

Clinical Trial

Molecule Research

HR System

Email

CRM

ERP

“I can’t afford to maintain this old HR application written in VB – it’s driving me mad!”

“…but due to regulatory issues, I cannot store my HR data off-premise”

Page 22: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical Example

Hosted “Home Built”

Hosted “Packaged”

“Home Built”using cloud

“Packaged”using cloud

“Software as a Service”

“Platform as a Service”

Clinical Trial

Molecule Research

Email

CRM

ERP

HR System

“I wish I had access to cheaper compute and storage when I need it”

Page 23: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical Example

Hosted “Home Built”

Hosted “Packaged”

“Home Built”using cloud

“Packaged”using cloud

“Software as a Service”

“Platform as a Service”

Clinical Trial

Molecule Research

Email

CRM

ERP

HR System

“THIS is where I want to spend my IT resources – I’m going to double down on this application!”

Page 24: DevLink - Architecting Modern Distributed Applications

Architectural Blueprints

Page 25: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

Architectural Blueprints

Page 26: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Architectural Blueprints

Physical, DedicatedSingle service on dedicated hardware

Physical, SharedMultiple services sharing same hardware

Physical, HPCPhysical hardware supporting HPC scenario

Virtual, SingleSingle instance virtual image

Virtual, SharedMultiple instance virtual image

Page 27: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Architectural Blueprints

Page 28: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Architectural Blueprints

Page 29: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Storage

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Architectural Blueprints

FileFileshare, flat, page-based

RelationalHosted relational database, familiar, transactional, finite

UnstructuredKey/value Pair, no atomicity, infinitely scalable

Page 30: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Storage

UnstructuredRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Architectural Blueprints

Page 31: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

MessagingStorage

UnstructuredRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Architectural Blueprints

Service BusAsynchronous, reliable messaging, publish/subscribe model

Peer to PeerNode registration, directory, presence awareness

Page 32: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

MessagingStorage

Service Bus Peer to PeerUnstructuredRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Architectural Blueprints

Page 33: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage

Service Bus Peer to PeerUnstructuredRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Architectural Blueprints

AuthenticationUsername / Password or claims based

Role Based AuthorizationRole-checking and authorization

Page 34: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage

Service Bus Peer to PeerUnstructuredRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 35: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructuredRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Event BasedTriggered based on events (e.g. document upload)

High ThroughputLow latency, high volume (e.g. trading confirmations)

Page 36: DevLink - Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 37: DevLink - Architecting Modern Distributed Applications

Application Services

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 38: DevLink - Architecting Modern Distributed Applications

Application Services

Collaboration

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

SearchText Search, Image Search, Indexing

SocialSocial Graphs, Profiles

Content ManagementIndexing, Retrieval, Conflict Management

Page 39: DevLink - Architecting Modern Distributed Applications

Application Services

Collaboration

Search SocialContent Mgt

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 40: DevLink - Architecting Modern Distributed Applications

Application Services

Collaboration

Search SocialContent Mgt

Monetization

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

TransactionPay for each transaction

SubscriptionPay per month/period

LicensingPay per user/machine

AdvertisingAdvert funded model

Page 41: DevLink - Architecting Modern Distributed Applications

Application Services

Collaboration

Search SocialContent Mgt

Monetization

Subscribe AdvertLicensePer Trans

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 42: DevLink - Architecting Modern Distributed Applications

Application Services

Collaboration

Search SocialContent Mgt

Monetization Composition

Subscribe AdvertLicensePer Trans

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Service CompositionComposition, brokering results, aggregation

Line of Business IntegrationService wrapping of mainframe and other LOB applications

Page 43: DevLink - Architecting Modern Distributed Applications

Application Services

Collaboration

Search SocialContent Mgt

Monetization Composition

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 44: DevLink - Architecting Modern Distributed Applications

Application Services

Application

Collaboration

Search SocialContent Mgt

Monetization Composition

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Business Logic (Rules)

Entities (Schema)

Workflow (Process)

Page 45: DevLink - Architecting Modern Distributed Applications

Application Services

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

Workflow (Processes)

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 46: DevLink - Architecting Modern Distributed Applications

Application ServicesWeb Presentation

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

Workflow (Processes)

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

StaticStatic content, HTML etc

DynamicAsynchronous interaction, AJAX etc.

RIARich Internet Applications, high visuals, limited offline support

StreamingOptimized for content delivery, videos etc.

Page 47: DevLink - Architecting Modern Distributed Applications

Application ServicesWeb Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

Workflow (Processes)

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 48: DevLink - Architecting Modern Distributed Applications

Application ServicesProgrammatic AccessWeb Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

Workflow (Processes)

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Web ServicesSOAP based, WS-I compliant, WS-*

RESTCRUD access to services via HTML

RSSSyndication services for subscriptions

Page 49: DevLink - Architecting Modern Distributed Applications

Application ServicesProgrammatic AccessWeb Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

Workflow (Processes)

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

VoiceXMLMobile Application Speech API

SIPSession Initiation Protocol – IM Clients

SMTPEmail inbound and outbound delivery

SMSMobile inbound and outbound text messaging

Page 50: DevLink - Architecting Modern Distributed Applications

Application ServicesProgrammatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 51: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 52: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural BlueprintsBrowserConsumer of web based content, HTML etc., including RIA plug in

OfficeOffice Suite, including Email and RSS reader capability

Client ApplicationRich (Smart) client applications installed locally on machine

GadgetsLocally installed, desktop based

Instant MessagingLocally installed Instant Messaging client

Page 53: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 54: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

BrowserConsumer of web based content, HTML etc., including RIA plug in

OfficeOffice Suite, including Email and RSS reader capability

Client ApplicationRich (Smart) client applications installed locally on machine

SMS / IMText messaging and IM using Mobile Device

SpeechSpeech enabled interface

Page 55: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 56: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

DevicesDedicated devices

ConsolesGames Consoles

Page 57: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints

Page 58: DevLink - Architecting Modern Distributed Applications

Architectural Trends

Page 59: DevLink - Architecting Modern Distributed Applications

Architectural Trends

How can we analyze our architectures using these layers and components?

Page 60: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Static Web Site, On Premise

Page 61: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Static Web Site, On Premise (Add Content Mgt)

Page 62: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Static Web Site, On Premise (Add Search/Social)

Page 63: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Static Web Site, On Premise (Add Ad Service)

Page 64: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Static Web Site, On Premise (Move to Hoster)

Page 65: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Static Web Site, On Premise (Add AJAX)

Page 66: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Static Web Site, On Premise (Add Mobile RSS)

Page 67: DevLink - Architecting Modern Distributed Applications

Architectural Trends

How about the trends we talked about earlier?

Page 68: DevLink - Architecting Modern Distributed Applications

Architectural Trends

Trend 1: Service Oriented Architecture (SOA)

Page 69: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 1: SOA - Single Service, On Premise

Page 70: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 1: SOA - Single Service, On Premise

Page 71: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 1: SOA - Single Service, On Premise

Page 72: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 1: SOA - Single Service, On Premise

Page 73: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 1: SOA - Single Service, On Premise

Page 74: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 1: SOA - Single Service, On Premise

Page 75: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 1: SOA - Single Service, On Premise

Page 76: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 1: SOA - Single Service, On Premise

Page 77: DevLink - Architecting Modern Distributed Applications

Architectural Trends

Trend 2: Software as a Service (SaaS)

Page 78: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 2: SaaS – Web Based SaaS Provider

Page 79: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 2: SaaS – Web Based SaaS Provider

Page 80: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 2: SaaS – Web Based SaaS Provider

Page 81: DevLink - Architecting Modern Distributed Applications

Architectural Trends

Trend 3: Web 2.0

Page 82: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 3: Web 2.0 – Social Networking Site

Page 83: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 3: Web 2.0 – Social Networking Site

Page 84: DevLink - Architecting Modern Distributed Applications

Architectural Trends

Trend 4: Rich Internet Applications

Page 85: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 4: RIA – eCommerce Site

Page 86: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 4: RIA – eCommerce Site

Page 87: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 4: RIA – eCommerce Site

Page 88: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 4: RIA – eCommerce Site

Page 89: DevLink - Architecting Modern Distributed Applications

Architectural Trends

Trend 5: Cloud Computing

Page 90: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 5: Cloud Computing – Backup Provider

Page 91: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 5: Cloud Computing – Backup Provider

Page 92: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Trend 5: Cloud Computing – Backup Provider

Page 93: DevLink - Architecting Modern Distributed Applications

Architectural Trends

How about Microsoft’s own products?

Page 94: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Windows Live Mesh CTP (Current, Primary)

Page 95: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Exchange Lifecycle (Exchange 4.0, Outlook 97)

JET Database

RPC

Page 96: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Exchange Lifecycle (Exchange 5.0, Outlook 97)

JET Database

RPC

Active Directory

Page 97: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Exchange Lifecycle (Exchange 5.0 SP1, Outlook XP)

JET Database

Active Directory

OWA

RPC

Page 98: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Exchange Lifecycle (Exchange 2003, Outlook 2003)

JET Database

RPC over HTTPS

Active Directory

OWA

Page 99: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Exchange Lifecycle (Exchange 2007, Outlook 2007)

JET Database

Active Directory

OWA

Page 100: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Exchange Lifecycle (Hosted Exchange, Outlook 2007)

JET Database

Active Directory

OWA

Page 101: DevLink - Architecting Modern Distributed Applications

Architectural Challenges

Page 102: DevLink - Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical Example

Hosted “Home Built”

Hosted “Packaged”

“Home Built”using cloud

“Packaged”using cloud

“Software as a Service”

“Platform as a Service”

Clinical Trial

Molecule Research

Email

CRM

ERP

HR System

Page 103: DevLink - Architecting Modern Distributed Applications

Architectural Challenges

Challenge 1 - Identity

Page 104: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Challenge 1 - Identity

Page 105: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Challenge 1 - Identity

Page 106: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Challenge 1 - Identity

• Accessing Hosted Assets with Internal Credentials• AuthN and AuthZ across FW• Credential Storage

Page 107: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Challenge 1 - Identity

STS-RSTS-I

• Issuing Authority• Relying Party• Authentication Assurance

Page 108: DevLink - Architecting Modern Distributed Applications

Architectural Challenges

Challenge 2 – Data

Page 109: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Challenge 2 - Data

Page 110: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Challenge 2 - Data

• Import and Export of Data• Privacy of External Data• Reporting and Analytics• Database of Record

Page 111: DevLink - Architecting Modern Distributed Applications

Architectural Challenges

Challenge 3 – Management

Page 112: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Challenge 3 - Management

Page 113: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Challenge 3 - Management

• Holistic View of Application?• Integration into existing System Management solutions?• Contracts and SLAs

Page 114: DevLink - Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Page 115: DevLink - Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Step 1 – Use the “blueprints” to decompose and recompose existing applications

Page 116: DevLink - Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Step 2 – Get the right people involved

Page 117: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints – Next Steps

Infrastructure Architect / Data Center Operations

Solutions and Infrastructure Architect

Solutions Architect and Development Team

Solutions Architect and Development Team (inc. Web Design)

Solutions Architect and Development Team (inc. Designer)

Ente

rpri

se A

rchit

ect

and C

IO Data

Cente

r Opera

tions

Page 118: DevLink - Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Step 3 – Understand the Technology Mappings

Page 119: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints – Next Steps

IE Windows Mobile XBOX 360

IIS SL Streaming WCF

.NET Framework

MOSSBTS Adapters

MOSS BDC

AD / ADFS

AdCent

er

.NET Framework 3rd Party

BizTalk

ILMBizTalk / BizTalk.Net Mesh CTPIIS

SQL Server SSDS Windows WF

MOSSWindows WF

BizTalk Server

Windows Server WS HPC Windows Server Hyper-V

Office

WPF Windows OCWin

Embed.NET CF

Page 120: DevLink - Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Step 4 – Document repeatable patterns

Page 121: DevLink - Architecting Modern Distributed Applications

Application Services

Client Software

PC

Browser

Programmatic Access

RSS REST Web Services VoiceXML

Web Presentation

Static Dynamic RIA Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search SocialContent Mgt

Monetization Composition

SMTP SMSSIP

Workflow (Processes)

Office Client Gadgets IM

Mobile

Speech SMS/IM Browser Office Client

Embedded

Devices Consoles

Subscribe AdvertLicensePer Trans Service Orchestration Line of Business

Infrastructure

On Premise Hoster Cloud Vendor

Infrastructure Services

Identity & AccessMessagingStorage Workflow

Service Bus Peer to PeerUnstructured Event Based High ThroughputRelationalFile

Compute

Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable

Authentication Authorization

Architectural Blueprints – Next Steps

Page 122: DevLink - Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Page 123: DevLink - Architecting Modern Distributed Applications

Thank you!

Clint EdmonsonArchitect EvangelistMicrosoft

Email: [email protected]: http://www.notsotrivial.netTwitter: @clinted