arcready - architecting modern distributed applications

195
Architecting Modern Distributed Applications ArcReady:

Upload: microsoft-arcready

Post on 28-Jan-2015

108 views

Category:

Technology


1 download

DESCRIPTION

Nearly every application we build today has dependencies to other systems. How do we design them to work together to meet our goals? How do we decide what to build and what to buy? Do we host it ourselves or in the cloud? With a bewildering array of choices, the biggest challenge we face today is how to architect robust applications with the right technologies to meet our user’s needs and integrate nicely into our existing IT ecosystems. Join our Central Region Architect Evangelists for a great discussion on architecting distributed applications using all the latest technologies and best practices. Session 1: Blueprints for Success. 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. Session 2: Making It Real. In this session, we’ll take a look at several case studies to learn how to apply the mapping technique from Session 1 to architect real world solutions that add true business value. We’ll examine applications we use every day and take a walk through a Microsoft reference architecture that explores many of the decisions we face when building modern distributed applications.

TRANSCRIPT

Page 1: ArcReady -  Architecting Modern Distributed Applications

Architecting Modern Distributed Applications

ArcReady:

Page 2: ArcReady -  Architecting Modern Distributed Applications

About ArcReady…About ArcReady…

A A forumforum for aspiring and practicing for aspiring and practicing architects to discuss industry trends architects to discuss industry trends

An overview of Microsoft’sAn overview of Microsoft’s roadmaproadmap as as it relates to software architectureit relates to software architecture

A mechanism to solicit your A mechanism to solicit your feedback feedback

An opportunity to An opportunity to showcaseshowcase the work the work you do!you do!

Page 3: ArcReady -  Architecting Modern Distributed Applications

About your presenter(s)…About your presenter(s)…

Clint EdmonsonArchitect EvangelistMicrosoft [email protected]

Brian PrinceArchitect EvangelistMicrosoft [email protected]

Larry ClarkinArchitect EvangelistMicrosoft [email protected]

Phil WheatArchitect EvangelistMicrosoft [email protected]

Page 4: ArcReady -  Architecting Modern Distributed Applications

AgendaAgenda

Session 1: Blueprints for SuccessSession 1: Blueprints for Success

BreakBreak

Session 2: Making It RealSession 2: Making It Real

Drawing for prizesDrawing for prizes

Page 5: ArcReady -  Architecting Modern Distributed Applications

Session 1Session 1

Blueprints for SuccessBlueprints for Success

Page 6: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Page 7: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Trend 1: Service Oriented Architecture (SOA)

Page 8: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Page 9: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Trend 2: Software as a Service (SaaS)Trend 2: Software as a Service (SaaS)

Page 10: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Page 11: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Trend 3: Web 2.0 Trend 3: Web 2.0

Page 12: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Page 13: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Trend 4: Rich Internet Applications (RIA)Trend 4: Rich Internet Applications (RIA)

Page 14: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Page 15: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Trend 5: Cloud ComputingTrend 5: Cloud Computing

Page 16: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Page 17: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

SOA: Service Oriented Architecture Reuse and Agility

Web 2.0Network Effect

SaaS: Software as a Service Flexible pricing and delivery

RIA: Rich Internet ApplicationsExperience

Software + ServicesSoftware + Services

Cloud ComputingService Utility

Page 18: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

Is this just a Microsoft thing?Is this just a Microsoft thing?

Page 19: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

“Let me just say it: We want native third-party applications on the iPhone, and we plan to have an SDK in developers' hands in February” - Steve Jobs

Apple Reverses on Third-Party iPhone Apps

“But Google's offline approach also is a recognition that Microsoft's right in insisting that not all computing will take place in the Internet cloud. Microsoft's been touting a vision of "software plus services" that relies on Internet-connected desktop apps, and more enterprise software-as-a-service companies, such as CRM vendor RightNow, recognize the need for some client software.”

Google CEO Says Software

to Play a Bigger Role

Simon Guest
Single slide of quotes may be enough for TR audience
Page 20: ArcReady -  Architecting Modern Distributed Applications

Industry TrendsIndustry Trends

IBM also introduced Bluehouse, the code name for services … designed to help business partners share contacts, files, project and interact via chat and Web meeting. The model is similar to what Microsoft has been pushing with its software-plus-services strategy developed by Microsoft CTO Ray Ozzie, who created the Notes platform.

Microsoft is trying to define a new category with software plus services…it turns out that Microsoft may have a point and, while Salesforce.com would be unlikely to concede this, in fact it provides some supporting evidence. A few years ago Salesforce.com released its Off-line Edition for its popular customer relationship management (CRM) product.

Page 21: ArcReady -  Architecting Modern Distributed Applications

Heads in the Cloud, Feet on the GroundHeads in the Cloud, Feet on the Ground

Page 22: ArcReady -  Architecting Modern Distributed Applications

Heads in the Cloud, Feet on the GroundHeads 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 23: ArcReady -  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 GroundHeads 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 24: ArcReady -  Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

Heads in the Cloud, Feet on the GroundHeads in the Cloud, Feet on the Ground

Tension between build vs. buy

Build

vs.

Buy

Build

Buy

Page 25: ArcReady -  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 GroundHeads 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 26: ArcReady -  Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical ExampleBig 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”

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

Page 27: ArcReady -  Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical ExampleBig 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”

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

Page 28: ArcReady -  Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical ExampleBig 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!”

“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”

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

Page 29: ArcReady -  Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical ExampleBig 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”

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

Page 30: ArcReady -  Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

“Packaged”Application

“Home Built”Application

Big Pharmaceutical ExampleBig 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!”

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

Page 31: ArcReady -  Architecting Modern Distributed Applications

Architectural Blueprints

Page 32: ArcReady -  Architecting Modern Distributed Applications

On Premise Hoster Cloud Vendor

Architectural Blueprints

Page 33: ArcReady -  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 34: ArcReady -  Architecting Modern Distributed Applications

Infrastructure

On Premise Hoster Cloud Vendor

Compute

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

Architectural Blueprints

Page 35: ArcReady -  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 36: ArcReady -  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 37: ArcReady -  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 38: ArcReady -  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 39: ArcReady -  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 40: ArcReady -  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 41: ArcReady -  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 42: ArcReady -  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 43: ArcReady -  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 44: ArcReady -  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 45: ArcReady -  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 46: ArcReady -  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 47: ArcReady -  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 48: ArcReady -  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 49: ArcReady -  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 50: ArcReady -  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 51: ArcReady -  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 52: ArcReady -  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 53: ArcReady -  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 54: ArcReady -  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 55: ArcReady -  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 56: ArcReady -  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 57: ArcReady -  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 58: ArcReady -  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 59: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 60: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 61: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 62: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 63: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 64: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 65: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

Page 66: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

How can we analyze our architectures using these blueprints?

Page 67: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 68: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 69: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 70: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 71: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 72: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 73: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 74: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

How about the trends we talked about earlier?

Page 75: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

Trend 1: Service Oriented Architecture (SOA)

Page 76: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 78: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 79: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 80: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 81: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 82: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 83: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 84: ArcReady -  Architecting Modern Distributed Applications
Page 85: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

Trend 2: Software as a Service (SaaS)

Page 86: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 87: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 88: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 89: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

Trend 3: Web 2.0

Page 90: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 91: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 92: ArcReady -  Architecting Modern Distributed Applications
Page 93: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

Trend 4: Rich Internet Applications

Page 94: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 95: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 96: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 97: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 98: ArcReady -  Architecting Modern Distributed Applications
Page 99: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

Trend 5: Cloud Computing

Page 100: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 101: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 102: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 103: ArcReady -  Architecting Modern Distributed Applications

Architectural Trends

How about Microsoft’s own products?

Page 104: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 105: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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)

Page 106: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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)

Page 107: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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)

Page 108: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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)

Page 109: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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)

Page 110: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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)

Page 111: ArcReady -  Architecting Modern Distributed Applications

Architectural Challenges

Page 112: ArcReady -  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 113: ArcReady -  Architecting Modern Distributed Applications

Architectural Challenges

Challenge 1 - Identity

Page 114: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 115: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 116: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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

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

Page 117: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 118: ArcReady -  Architecting Modern Distributed Applications

Architectural Challenges

Challenge 2 – Data

Page 119: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 120: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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

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

Page 121: ArcReady -  Architecting Modern Distributed Applications

Architectural Challenges

Challenge 3 – Management

Page 122: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 123: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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

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

Page 124: ArcReady -  Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Page 125: ArcReady -  Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

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

Page 126: ArcReady -  Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Step 2 – Get the right people involved

Page 127: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 128: ArcReady -  Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Step 3 – Understand the Technology Mappings

Page 129: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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

IE8 Windows Mobile 7XBOX 360

IIS 7 SL Streaming WCF

.NET Framework

MOSS 2007 BTS AdaptersMOSS 2007 BDC

AD / ADFS

AdCent

er

.NET Framework 3rd Party

BizTalk 2006 R2

ILMBizTalk / BizTalk.Net Mesh CTP

IIS 7

SQL Server SSDS Windows WF

MOSS 2007Windows WF

BizTalk Server

Windows Server 2008WS 2008

HPCWindows Server 2008 Hyper-

V

Office

WPF Vista OCWin

Embed.NET CF

Page 130: ArcReady -  Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Step 4 – Document repeatable patterns

Page 131: ArcReady -  Architecting Modern Distributed Applications

Application Services

Client SoftwarePC

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 132: ArcReady -  Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Page 133: ArcReady -  Architecting Modern Distributed Applications

Architectural Blueprints – Next Steps

Step 5 –Resources

Page 134: ArcReady -  Architecting Modern Distributed Applications

BreakBreak

Please complete an EvalPlease complete an Eval

Page 135: ArcReady -  Architecting Modern Distributed Applications

Session 2Session 2

Making it RealMaking it Real

Page 136: ArcReady -  Architecting Modern Distributed Applications

Look at IdentityLook at Identity

Page 137: ArcReady -  Architecting Modern Distributed Applications

Look at IdentityLook at Identity

Authentication Authentication ŸŸ Authorization Authorization

Page 138: ArcReady -  Architecting Modern Distributed Applications

Look at IdentityLook at Identity

Role Based Access ControlRole Based Access Control

Roles -> Rights -> Resources Roles -> Rights -> Resources

Page 139: ArcReady -  Architecting Modern Distributed Applications

Rights represent actions in the system

Page 140: ArcReady -  Architecting Modern Distributed Applications

Rights are grouped into roles

Page 141: ArcReady -  Architecting Modern Distributed Applications

Roles are assigned to users

Page 142: ArcReady -  Architecting Modern Distributed Applications

User authenticates

User ApplicationUsername, Pwd

Page 143: ArcReady -  Architecting Modern Distributed Applications

System finds all of the users roles, calculates the effective

rights

User Application

RightsStorage

Username, Pwd

Roles: Operator, ManagerRights: vDash, vOrders, …

Page 144: ArcReady -  Architecting Modern Distributed Applications

Attach Principal/Identity to Thread

User Application

RightsStorage

Username, Pwd

Roles: Operator, ManagerRights: vDash, vOrders, …

P Principal & IdentityI

Page 145: ArcReady -  Architecting Modern Distributed Applications

Code Checks for Permission

Defense in Depth!

Page 146: ArcReady -  Architecting Modern Distributed Applications

Evolution of Security Manager

Page 147: ArcReady -  Architecting Modern Distributed Applications

Problems with this Problems with this approach?approach?

Page 148: ArcReady -  Architecting Modern Distributed Applications

Companies have lots of applications

Page 149: ArcReady -  Architecting Modern Distributed Applications

Each with their own silo of identity Each with their own silo of identity datadata

Page 150: ArcReady -  Architecting Modern Distributed Applications

Each system is hardcoded for Each system is hardcoded for Az/AnAz/An

Page 151: ArcReady -  Architecting Modern Distributed Applications

Duplicated Code

Page 152: ArcReady -  Architecting Modern Distributed Applications

Tedious to implement every Tedious to implement every timetime

Page 153: ArcReady -  Architecting Modern Distributed Applications

Leads to greater risk as well

Page 154: ArcReady -  Architecting Modern Distributed Applications

Many companies have 0 or n directories

Page 155: ArcReady -  Architecting Modern Distributed Applications

Username & Password just isn’t enough anymore

Page 156: ArcReady -  Architecting Modern Distributed Applications

An array of accounts for users

Page 157: ArcReady -  Architecting Modern Distributed Applications

Intracompany?

Page 158: ArcReady -  Architecting Modern Distributed Applications

Doesn’t work in the cloudDoesn’t work in the cloud

Page 159: ArcReady -  Architecting Modern Distributed Applications

Hard for calling services

Page 160: ArcReady -  Architecting Modern Distributed Applications

Single hop and Impersonation

Page 161: ArcReady -  Architecting Modern Distributed Applications

ZermattZermatt

Page 162: ArcReady -  Architecting Modern Distributed Applications

Framework for Claims Based Identity

Page 163: ArcReady -  Architecting Modern Distributed Applications

Three geeks walk into a

bar…

Page 164: ArcReady -  Architecting Modern Distributed Applications

What is a Claim?

Web Application/ServiceWeb Application/Service

Username: BrianRoles: Manager, SalesEmail: [email protected]: True

Page 165: ArcReady -  Architecting Modern Distributed Applications

Your app is no longer concerned withYour app is no longer concerned with

• AuthenticationAuthentication• Storing and securing usernames and pwdsStoring and securing usernames and pwds• Connecting to directoriesConnecting to directories• Managing roles/rights/claimsManaging roles/rights/claims

Page 166: ArcReady -  Architecting Modern Distributed Applications

Allows for FederationAllows for Federation

Page 167: ArcReady -  Architecting Modern Distributed Applications

Cloud Storage

(new molecule research in purple)

Cloud Platform

Cloud Compute

•Big Pharma deploys software to cloud

The “Cloud”

employees

Clinical trialsoftware

Firewall

Big Pharma “on premise”

Management

IT

DirectorySTS

InternetService Bus(Identity)

STS

•Employees access cloud software

“A Cloudy World” Example

Page 168: ArcReady -  Architecting Modern Distributed Applications

The “Cloud”

employees

Clinical trialsoftware

Firewall

Big Pharma “on premise”

Management

IT

DirectorySTS

(big pharma data in purple)

“cloud” CRM

•Employees use “cloud” CRM•IT Manages “cloud” CRM

“A Cloudy World” Example

Page 169: ArcReady -  Architecting Modern Distributed Applications

The “Cloud”

employees

Clinical trialsoftware

Clinical trial patients

Firewall

Big Pharma “on premise”

Management

IT

DirectorySTS

Cloud Platform

InternetService Bus

(Connectivity)

InternetService Bus(Identity)

STSRelay

•External Patients using Relay to access “on premise” clinical trial software

“A Cloudy World” Example

Page 170: ArcReady -  Architecting Modern Distributed Applications

The “Cloud”

employees

Clinical trialsoftware

(big pharma data in purple)

(big pharma instance in purple)

Clinical trial patients

Firewall

InternetService Bus

(Connectivity)

Big Pharma “on premise”

Cloud Storage

(new molecule research in purple)

InternetService Bus(Identity)

STSRelay Cloud Compute

Management

IT

Directory

Cloud Platform

CRM Online

Hosted ERP @ Hoster

STS

“A Cloudy World” Example

Page 171: ArcReady -  Architecting Modern Distributed Applications

Claim

• A piece of your identity• A property• Come from issuers. You only trust the

claim as much as the issuer

Page 172: ArcReady -  Architecting Modern Distributed Applications

Zermatt : Claim Object

Page 173: ArcReady -  Architecting Modern Distributed Applications

IdentityIdentity

A set of claims that describes a user A set of claims that describes a user or entityor entity

Page 174: ArcReady -  Architecting Modern Distributed Applications

IClaimsIdentity

Page 175: ArcReady -  Architecting Modern Distributed Applications

Security TokenSecurity Token

• A serialized set of claims that are signed by A serialized set of claims that are signed by the issuerthe issuer

• Presented when system access is requestedPresented when system access is requested• Found in the SOAP envelope for a web Found in the SOAP envelope for a web

service callservice call• Found in the HTTP POST in a web Found in the HTTP POST in a web

applicationapplication

Page 176: ArcReady -  Architecting Modern Distributed Applications

IClaimsPrincipal

Page 177: ArcReady -  Architecting Modern Distributed Applications

Easy Change

Page 178: ArcReady -  Architecting Modern Distributed Applications

Sample Code

Page 179: ArcReady -  Architecting Modern Distributed Applications

Issuing Authority

• Many types:– Kerberos tickets– Certificate authorities– X.509 certificates

• We want one that creates our security tokens.– Knows how to issue the right claims for the

right user– Interacts with AuthN systems, and

authenticates the user

Page 180: ArcReady -  Architecting Modern Distributed Applications

Security Token Service (STS)

• A type of Issuer• Uses standards

– WS-MEX– WS-Trust– Security

Assertion Markup Language (SAML)

Page 181: ArcReady -  Architecting Modern Distributed Applications

Relying Party (RP)

The system that relies on the claim tokensThe system that relies on the claim tokens

YOUR SYSTEMYOUR SYSTEM

Page 182: ArcReady -  Architecting Modern Distributed Applications

(WS-Trust)(WS-Trust)

Basic Scenario – Active Client

Relying Party(Web Service)Relying Party(Web Service)Smart ClientSmart Client

Trusted Authority(Web Service)

Trusted Authority(Web Service)

STS

1. Get Policy1. Get Policy

3. Send Claims3. Send Claims

2. G

et C

laim

s2.

Get

Cla

ims

Directory/Credential

Store

Directory/Credential

StoreBusiness

Rules

Page 183: ArcReady -  Architecting Modern Distributed Applications

Basic Scenario – Passive Client

(WS-Federation)(WS-Federation)

Relying Party(Web App)

Relying Party(Web App)BrowserBrowser

Trusted Authority(Web App)

Trusted Authority(Web App)

STS

1. HTTP GET1. HTTP GET

3. HTTP POST3. HTTP POST

2. R

edire

ct2.

Red

irect

Directory/Credential

Store

Directory/Credential

StoreBusiness

Rules

Page 184: ArcReady -  Architecting Modern Distributed Applications

Federated Scenario

Relying Party(Web Service)Relying Party(Web Service)Smart ClientSmart Client

Trusted Authority(Web Service)

Trusted Authority(Web Service)

STS Business Rules

InternetInternet

Trusted Authority(Web Service)

Trusted Authority(Web Service)

STS Business Rules

11

22

33

(Java?) (.NET?)

Page 185: ArcReady -  Architecting Modern Distributed Applications

Federated Authentication

Module

Page 186: ArcReady -  Architecting Modern Distributed Applications

Zermatt ASP.NET Controls

Page 187: ArcReady -  Architecting Modern Distributed Applications

Wiring Zermatt up to ASP.NET

Page 188: ArcReady -  Architecting Modern Distributed Applications

Calling a Claims Aware Service

Client side WCF already has everything it needs

Page 189: ArcReady -  Architecting Modern Distributed Applications

Wiring Zermatt up to a Service

• WCF handles SAML tokens out of the box

• Needs to be configured with a custom binding

• Zermatt wires in custom behaviors into the WCF config

• This lets you use the simplified Zermatt claims model instead of the normal WCF model

Page 190: ArcReady -  Architecting Modern Distributed Applications

Service IdentityClient / UXClient / UX

ServiceService

Domain ObjectsDomain Objects

Persistence LayerPersistence Layer

Data StoreData Store

User User

Service Account

SSRSSSRS

Page 191: ArcReady -  Architecting Modern Distributed Applications

Delegation and ActAs

Web Front EndWeb Front End

Trusted AuthorityTrusted Authority

STS

3. Get Claims for 3. Get Claims for svcInv ActAs svcInv ActAs

DieterDieter

2. Dieter2. Dieter

1. G

et C

laim

s fo

r Die

ter

1. G

et C

laim

s fo

r Die

ter

Directory/Credential

Store

Directory/Credential

StoreBusiness

Rules

Dieter’sBrowserDieter’sBrowser

ID: DieterID: Dieter ID: svcInvID: svcInv

Back EndWeb Service

Back EndWeb Service

ID: DieterID: Dieter

4. svcInv ActAs 4. svcInv ActAs DieterDieter

Page 192: ArcReady -  Architecting Modern Distributed Applications

Authentication Assurance

Page 193: ArcReady -  Architecting Modern Distributed Applications

Zermatt ResourcesZermatt Resources

http://connect.microsoft.com/site/http://connect.microsoft.com/site/sitehome.aspx?SiteID=642sitehome.aspx?SiteID=642– Download the whitepaper, bits, and samplesDownload the whitepaper, bits, and samples

Page 194: ArcReady -  Architecting Modern Distributed Applications

Resources…Resources…Slide deck:www.slideshare.net/ArcReady

Page 195: ArcReady -  Architecting Modern Distributed Applications

© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after

the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.