teched preconference

Post on 08-May-2015

6.783 Views

Category:

Business

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

2

An Architectural Overview ofSoftware + Services

Simon GuestSenior DirectorPlatform Architecture TeamMicrosoft Corporation

Industry Trends

Industry Trends

Trend 1: Service Oriented Architecture (SOA)

Industry Trends

Industry Trends

Trend 2: Software as a Service (SaaS)

Industry Trends

Industry Trends

Trend 3: Web 2.0

Industry Trends

Industry Trends

Trend 4: Rich Internet Applications (RIA)

Industry Trends

Industry Trends

Trend 5: Cloud Computing

Industry Trends

Industry Trends

SOA: Service Oriented Architecture

Service Composition

Web 2.0

Network Effect

SaaS: Software as a Service

Service Delivery

RIA: Rich Internet Applications

Experience

Software + Services

Cloud Computing

Service Utility

Industry Trends

Is this just a Microsoft thing?

Industry 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

Industry 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.

Taking Advantage of these Trends

Taking Advantage of these Trends

How do these industry trends map to

architectural patterns?

What kind of applications are possible using

the Software + Services paradigm?

Can Software + Services take advantage of

existing investments?

Taking Advantage of these Trends

A set of architectural principles for understanding

the Software + Services paradigm

Foundation

Foundation

Physical, DedicatedSingle service on a dedicated hardware

Physical, SharedMultiple services on a dedicated hardware

Physical, HPCPhysical hardware supporting HPC scenario

Virtual, SingleSingle instance virtual image

Virtual, SharedMultiple instance virtual image

Self-Hosted vs. Vendor Hosted

Self-Hosted vs. Vendor Hosted

Self-HostedYou manage and pay for your

own datacenter

Vendor HostedYou pay for a vendor to host

your applications

Self-Hosted vs. Vendor Hosted

Vendor InvestmentsVendors investing heavily in multi-site datacenters

Self-Hosted vs. Vendor Hosted

Microsoft Data Center (Chicago, IL)$500m investment, 500,000 sq ft, container based

Self-Hosted vs. Vendor Hosted

CostInitial investment, maintenance, and

depreciation

Self-Hosted vs. Vendor Hosted

Power ConsiderationsRising energy costs and sustainability

considerations

Self-Hosted vs. Vendor Hosted

Operational RequirementsHelpdesk, backups, networking, upgrades

Self-Hosted vs. Vendor Hosted

Security and Data ProtectionStorage, transmission, identity, and

regulatory issues

Self-Hosted vs. Vendor Hosted

Hardware AdvancementsVirtualization, Multicore, Performance

Tuning

Architectural Principles for Software + Services

Foundation

Self Hosted Vendor Hosted

Compute

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

Infrastructure Services

Infrastructure Services

Identity and Access

Directory Based AuthenticationUsername / Password based

Claims Based AuthenticationSecure token or other claims based

Role Based AuthorizationRole-checking and authorization

Infrastructure Services

Messaging

Service BusAsynchronous, reliable messaging,

publish/subscribe model

Peer to PeerNode registration, directory, presence

awareness

Infrastructure Services

Storage

TraditionalFileshare, flat, page-based

RelationalHosted relational database, familiar,

transactional, finite

UnstructuredKey/value Pair, no atomicity, infinitely scalable

Infrastructure Services

Workflow

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

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

confirmations)

Architectural Principles for Software + Services

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

Application Services

Application Services

Collaboration

SearchText Search, Image Search, Indexing

SocialSocial Graphs, Profiles

ContentIndexing, Retrieval, Conflict Management

Application Services

Monetization

TransactionPay for each transaction

SubscriptionPay per month/period

LicensingPay per user/machine

AdvertisingAdvert funded model

Application Services

Composition

Service CompositionComposition, brokering results, aggregation

LOB IntegrationService wrapping of mainframe and other LOB

applications

Application Services

Business Intelligence

DashboardExposed, pre-defined KPIs

ReportingCustom queries and reports

Architectural Principles for Software + Services

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

Application Services

Application

Business Logic (Rules)

Entities (Schema)

Workflow (Process)

Architectural Principles for Software + Services

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

Workflow (Processes)

Application Services

Web Presentation

StaticStatic content, HTML etc

DynamicAsynchronous interaction, AJAX etc.

RichRich Internet Applications, high visuals, limited offline

support

StreamingOptimized for content delivery, videos etc.

Architectural Principles for Software + Services

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Web Delivery

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

Workflow (Processes)

Application Services

Programmatic Access

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

RESTCRUD access to services via HTML

RSSSyndication services for subscriptions

Application Services

Programmatic Access

VoiceXMLMobile Application Speech API

SIPSession Initiation Protocol – IM Clients

SMTPEmail inbound and outbound delivery

SMSMobile inbound and outbound text messaging

Architectural Principles for Software + Services

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Exposed APIs

Web Services REST RSS VoiceXML

Web Delivery

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Client Software

Client Software

Web BasedConsumer of web based content, HTML etc

RIAConsumer of Rich Content through Browser

Add-In

Browser Based

Client Software

Mobile Client

Web BasedMobile consumer of web based content, HTML

etc

RIAMobile consumer of Rich Content through

Browser Add-In

Client ApplicationLocally installed and run applications

Client Software

Mobile Client

OfficeMobile based Email and Office Applications

SMS / IMText messaging and IM using Mobile Device

SpeechSpeech enabled interface

Client Software

OfficeOffice Suite, including Email and RSS reader

capability

Client ApplicationRich (Smart) client applications installed locally

on machine

Client PC

Client Software

GadgetsLocally installed, desktop based

Instant MessagingLocally installed Instant Messaging client

Client PC

Client Software

DevicesDedicated devices

ConsolesGames Consoles

Embedded

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Architectural Principles for Software + Services

Architectural Principles for Software + Services

Architectural Principles for Software + Services

Now that I understand the principles, how should

I think about my own architectural designs?

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Simple Web Site

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Simple Blog

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Simple Wiki

Architectural Principles for Software + Services

How about the trends you mentioned earlier?

Architectural Principles for Software + Services

Trend 1: Service Oriented Architecture (SOA)

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 1: SOA) – Self Hosted Services

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 1: SOA) – Integrating LOB Applications

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 1: SOA) – Expanding using OBA

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 1: SOA) – Self Hosted Services

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 1: SOA) – Self Hosted Services using ESB

Architectural Principles for Software + Services

Internet Service Bus

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 1: SOA) – Self Hosted Services using ISB

Architectural Principles for Software + Services

Trend 2: Software as a Service (SaaS)

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 2: SaaS) – Web Based SaaS Provider

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 2: SaaS) – Web Based SaaS Provider w/ API

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 2: SaaS) – Web Based SaaS Provider w/ Offline

Architectural Principles for Software + Services

Trend 3: Web 2.0

Nico Nico Douga

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 3: Web 2.0) – Nico Nico Douga

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 3: Web 2.0) – Nico Nico Douga

Architectural Principles for Software + Services

Trend 4: Rich Internet Applications

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 4: RIA) - Purchasing Capability

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 4: RIA) - Purchasing Capability + RIA

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

(Trend 4: RIA) - Purchasing Capability + Mobile RIA

Architectural Principles for Software + Services

How about Microsoft’s own products?

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Exchange Lifecycle (Exchange 4.0, Outlook 97)

JET Database

RPC

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Exchange Lifecycle (Exchange 5.0, Outlook XP)

RPC

Active Directory JET Database

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Exchange Lifecycle (Exchange 2003, Outlook 2003)

RPC over HTTPs

Active Directory JET Database

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Exchange Lifecycle (Exchange 2003, Outlook 2003)

RPC over HTTPs

Active Directory JET Database

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Exchange Lifecycle (Exchange 2007, Outlook 2007)

RPC over HTTPs

Active Directory JET Database

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Exchange Lifecycle (Hosted Exchange, Outlook 2007)

RPC over HTTPs

Active Directory JET Database

Architectural Principles for Software + Services

A “middle out” architecture

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Architectural Principles for Software + Services

A “middle out” architecture

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Architectural Principles for Software + Services

A “middle out” architecture

Contracts and SLAs

Contracts and SLAs

What kind of contracts and SLAs do you

need to be thinking about?

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Simple Web Site

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Simple Web Site (Internal Contract and SLA)

Co

ntr

act

s an

d S

LA

s

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Co

ntr

act

s an

d S

LA

s

Simple Web Site (External Contract and SLA)

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Co

ntr

act

s an

d S

LA

s

Using ISB (Mixed Contract and SLA)

Provisioning

Provisioning

What is important from a provisioning

perspective?

Provisioning

How are you going to manage your application

“as one” in a mixed hosted environment?

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Co

ntr

act

s an

d S

LA

sP

rovisio

nin

g, M

an

ag

em

en

t&

Mo

nito

ring

Using ISB (Provisioning Considerations)

Implementing Software + Services

Implementing Software + Services

Three steps for implementing Software + Services

using the principles and patterns introduced in

this deck

Implementing Software + Services

Step 1: Get the right people involved

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Implementing Software + Services

Co

ntr

act

s an

d S

LA

sP

rovisio

nin

g, M

an

ag

em

en

t&

Mo

nito

ring

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Co

ntr

act

s an

d S

LA

sP

rovisio

nin

g, M

an

ag

em

en

t&

Mo

nito

ring

Implementing Software + Services

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)

En

terp

rise

Arc

hit

ect

an

d C

IO Data

Cen

ter O

pera

tion

s

Implementing Software + Services

Step 2: Map to technologies

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Implementing Software + Services

IE8 Silverlight Windows Mobile 6Live

Msgr

Windows

CEXBOX 360

IIS 7 SL Streaming WCF

.NET Framework

MOSS 2007BTS Adapters

MOSS 2007 BDC

AD /

ADFS

SQL Server Reporting

ServicesAd

Center

.NET Framework 3rd

Party

BizTalk 2006

R2

Vista

ILMCardSpa

ceBizTalk /

BizTalk.Net

Peer

FxIIS 7

SQL

ServerSSDS

Windows WF

MOSS 2007

Windows WF

BizTalk Server 2006

Windows Server 2008 WS 2008 HPC Windows Server 2008 Hyper-V

OfficeWPF

Implementing Software + Services

Step 3: If you are dealing with repeatable

architectural designs, build assets using Software

Factories approach

Infrastructure Services

Foundation

Self Hosted Vendor Hosted

Application Services

Browser

Client Software

HTML RIA

Mobile

Web RIA Client SMS Speech

Client PC

Client Office Gadgets IM

Embedded

Devices Consoles

Programmatic Access

Web Services REST RSS VoiceXML

Web Presentation

Static Dynamic Rich Streaming

Application

Entities (Schema)Business Logic (Rules)

Collaboration

Search ContentSocial

Monetization

Tx Subs License Advert

Composition

Service Int LOB Int

Business Intelligence

Dashboards Reporting

Identity & Access

Directory RBAC

Messaging

Service Bus P2P

Storage

Traditional UnstructuredRelational

Workflow

Event based High Throughput

Compute

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

Claims

SMTP SMSSIP

Workflow (Processes)

Implementing Software + Services

Implementing Software + Services

Implementing Software + Services

Purchasing Site 1 Purchasing Site 2

Purchasing Site 3 Purchasing Site 4

123

© 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.

simon.guest@microsoft.com

top related