SlideShare una empresa de Scribd logo
1 de 136
An Architectural Overview of Software + Services David Solivan Architect Evangelist Microsoft Corporation [email_address] Twitter alias: mrbeaudreaux http://www.youtube.com/dsolivan Gamertag: MagicalSolly Blog: http://blogs.msdn.com/beaudreaux
Some Recent History
In the beginning… centralization .
Some Recent History
Some Recent History
Some Recent History Then we realized  distribution  was best.
Some Recent History
Some Recent History
Some Recent History The we saw that what we really needed was  centralization .
Some Recent History
Some Recent History
Why The Back and Forth??? Security & Privacy Customizability Visibility & Control Data accessibility  Global reach Ease of provisioning Business agility Deployability & manageability
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 Trend 6: Mobile 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.
Demo: FedEx QuickShip
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, Dedicated Single service on a dedicated hardware Physical, Shared Multiple services on a dedicated hardware Physical, HPC Physical hardware supporting HPC scenario Virtual, Single Single instance virtual image Virtual, Shared Multiple instance virtual image
Self-Hosted vs. Vendor Hosted
Self-Hosted vs. Vendor Hosted Self-Hosted You manage and pay for your own datacenter Vendor Hosted You pay for a vendor to host your applications
Self-Hosted vs. Vendor Hosted Vendor Investments Vendors 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 Cost Initial investment, maintenance, and depreciation
Self-Hosted vs. Vendor Hosted Power Considerations Rising energy costs and sustainability considerations
Self-Hosted vs. Vendor Hosted Operational Requirements Helpdesk, backups, networking, upgrades
Self-Hosted vs. Vendor Hosted Security and Data Protection Storage, transmission, identity, and regulatory issues
Self-Hosted vs. Vendor Hosted Hardware Advancements Virtualization, 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 Authentication Username / Password based Claims Based Authentication Secure token or other claims based Role Based Authorization Role-checking and authorization
Infrastructure Services Messaging Service Bus Asynchronous, reliable messaging, publish/subscribe model  Peer to Peer Node registration, directory, presence awareness
Infrastructure Services Storage Traditional Fileshare, flat, page-based  Relational Hosted relational database, familiar, transactional, finite  Unstructured Key/value Pair, no atomicity, infinitely scalable
Infrastructure Services Workflow Event Based Triggered based on events (e.g. document upload)  High Throughput Low 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 Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims
Application Services
Application Services Collaboration Search Text Search, Image Search, Indexing  Social Social Graphs, Profiles  Content Indexing, Retrieval, Conflict Management
Application Services Monetization Transaction Pay for each transaction  Subscription Pay per month/period  Licensing Pay per user/machine  Advertising Advert funded model
Application Services Composition Service Composition Composition, brokering results, aggregation  LOB Integration Service wrapping of mainframe and other LOB applications
Application Services Business Intelligence Dashboard Exposed, pre-defined KPIs  Reporting Custom queries and reports
Architectural Principles for Software + Services Infrastructure Services Foundation Application Services Self Hosted Vendor Hosted Collaboration Search Content Social Monetization Tx Subs License Advert Composition Service Int LOB Int Business Intelligence Dashboards Reporting Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational 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 Application Services Self Hosted Vendor Hosted Application Entities (Schema) Business Logic (Rules) Collaboration Search Content Social Monetization Tx Subs License Advert Composition Service Int LOB Int Business Intelligence Dashboards Reporting Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims Workflow (Processes)
Application Services Web Presentation Static Static content, HTML etc  Dynamic Asynchronous interaction, AJAX etc.  Rich Rich Internet Applications, high visuals, limited offline support  Streaming Optimized for content delivery, videos etc.
Architectural Principles for Software + Services Infrastructure Services Foundation Application Services Self Hosted Vendor Hosted Web Delivery Static Dynamic Rich Streaming Application Entities (Schema) Business Logic (Rules) Collaboration Search Content Social Monetization Tx Subs License Advert Composition Service Int LOB Int Business Intelligence Dashboards Reporting Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims Workflow (Processes)
Application Services Programmatic Access Web Services SOAP based, WS-I compliant, WS-*  REST CRUD access to services via HTML  RSS Syndication services for subscriptions
Application Services Programmatic Access VoiceXML Mobile Application Speech API SIP Session Initiation Protocol – IM Clients SMTP Email inbound and outbound delivery SMS Mobile inbound and outbound text messaging
Architectural Principles for Software + Services Infrastructure Services Foundation Application Services Self Hosted Vendor Hosted Exposed APIs Web Services REST RSS VoiceXML Web Delivery Static Dynamic Rich Streaming Application Entities (Schema) Business Logic (Rules) Collaboration Search Content Social Monetization Tx Subs License Advert Composition Service Int LOB Int Business Intelligence Dashboards Reporting Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims SMTP SMS SIP Workflow (Processes)
Client Software
Client Software Web Based Consumer of web based content, HTML etc  RIA Consumer of Rich Content through Browser Add-In Browser Based
Client Software Mobile Client Web Based Mobile consumer of web based content, HTML etc  RIA Mobile consumer of Rich Content through Browser Add-In Client Application Locally installed and run applications
Client Software Mobile Client Office Mobile based Email and Office Applications SMS / IM Text messaging and IM using Mobile Device Speech Speech enabled interface
Client Software Office Office Suite, including Email and RSS reader capability Client Application Rich (Smart) client applications installed locally on machine Client PC
Client Software Gadgets Locally installed, desktop based Instant Messaging Locally installed Instant Messaging client Client PC
Client Software Devices Dedicated devices Consoles Games Consoles Embedded
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?
Simple Web Site
Simple Blog
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)
(Trend 1: SOA) – Self Hosted Services
(Trend 1: SOA) – Integrating LOB Applications
(Trend 1: SOA) – Expanding using OBA
 
(Trend 1: SOA) – Self Hosted Services
(Trend 1: SOA) – Self Hosted Services using ESB
Architectural Principles for Software + Services Internet Service Bus
(Trend 1: SOA) – Self Hosted Services using ISB
 
Architectural Principles for Software + Services Trend 2: Software as a Service (SaaS)
(Trend 2: SaaS) – Web Based SaaS Provider
(Trend 2: SaaS) – Web Based SaaS Provider w/ API
(Trend 2: SaaS) – Web Based SaaS Provider w/ Offline
 
Architectural Principles for Software + Services Trend 3: Web 2.0
Nico Nico Douga
(Trend 3: Web 2.0) – Nico Nico Douga
(Trend 3: Web 2.0) – Nico Nico Douga
 
Architectural Principles for Software + Services Trend 4: Rich Internet Applications
(Trend 4: RIA) - Purchasing Capability
(Trend 4: RIA) - Purchasing Capability + RIA
(Trend 4: RIA) - Purchasing Capability + Mobile RIA
 
Architectural Principles for Software + Services How about Microsoft’s own products?
Exchange Lifecycle (Exchange 4.0, Outlook 97)
Exchange Lifecycle (Exchange 5.0, Outlook XP)
Exchange Lifecycle (Exchange 2003, Outlook 2003)
Exchange Lifecycle (Exchange 2003, Outlook 2003)
Exchange Lifecycle (Exchange 2007, Outlook 2007)
Exchange Lifecycle (Hosted Exchange, Outlook 2007)
Architectural Principles for Software + Services A “middle out” architecture
Architectural Principles for Software + Services A “middle out” architecture
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?
Simple Web Site
Simple Web Site (Internal Contract and SLA) Contracts and SLAs
Simple Web Site (External Contract and SLA) Contracts and SLAs
Using ISB (Mixed Contract and SLA) Contracts and SLAs
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?
Using ISB (Provisioning Considerations) Contracts and SLAs Provisioning, Management & Monitoring
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
Implementing Software + Services Contracts and SLAs Provisioning, Management & Monitoring
Implementing Software + Services Contracts and SLAs Provisioning, Management & Monitoring 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) Enterprise Architect and CIO Data Center Operations
Implementing Software + Services Step 2:  Map to technologies
Implementing Software + Services IE8 Silverlight Windows Mobile 6 Live Msgr Windows  CE XBOX 360 IIS 7 SL Streaming WCF .NET Framework MOSS 2007 BTS Adapters MOSS 2007 BDC AD / ADFS SQL Server Reporting Services Ad Center .NET Framework 3 rd  Party BizTalk 2006 R2 Vista ILM CardSpace BizTalk / BizTalk.Net Peer Fx IIS 7 SQL Server SSDS Windows WF MOSS 2007 Windows WF BizTalk Server 2006 Windows Server 2008 WS 2008 HPC Windows Server 2008 Hyper-V Office WPF
Implementing Software + Services Step 3:  If you are dealing with repeatable architectural designs, build assets using Software Factories approach
Implementing Software + Services
Implementing Software + Services
Implementing Software + Services Purchasing Site 1 Purchasing Site 2 Purchasing Site 3 Purchasing Site 4
© 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. davidsol@microsoft.com

Más contenido relacionado

La actualidad más candente

Creating Successful Extranets on SharePoint
Creating Successful Extranets on SharePointCreating Successful Extranets on SharePoint
Creating Successful Extranets on SharePointedynamic
 
Office Business Applications in Financial Services
Office Business Applications in Financial ServicesOffice Business Applications in Financial Services
Office Business Applications in Financial ServicesMike Walker
 
CIS13: Cloud, Identity Bridges, and ITSM: Three is Not a Crowd
CIS13: Cloud, Identity Bridges, and ITSM: Three is Not a CrowdCIS13: Cloud, Identity Bridges, and ITSM: Three is Not a Crowd
CIS13: Cloud, Identity Bridges, and ITSM: Three is Not a CrowdCloudIDSummit
 
Cloudforce Essentials 2012 - Understanding Force.com in 60 Minutes or Less
Cloudforce Essentials 2012 - Understanding Force.com  in 60 Minutes or LessCloudforce Essentials 2012 - Understanding Force.com  in 60 Minutes or Less
Cloudforce Essentials 2012 - Understanding Force.com in 60 Minutes or LessSalesforce_APAC
 
Strategic Enterprise Architecture Roadmap
Strategic Enterprise Architecture RoadmapStrategic Enterprise Architecture Roadmap
Strategic Enterprise Architecture RoadmapJoaquin Marques
 
Governing and managing hybrid SharePoint environments
Governing and managing hybrid SharePoint environmentsGoverning and managing hybrid SharePoint environments
Governing and managing hybrid SharePoint environmentsRandy Williams
 
Mobilizing Microsoft SharePoint Server: An MBaaS PErspective
Mobilizing Microsoft SharePoint Server: An MBaaS PErspectiveMobilizing Microsoft SharePoint Server: An MBaaS PErspective
Mobilizing Microsoft SharePoint Server: An MBaaS PErspectivekidozen
 
Con8836 leveraging the cloud to simplify your identity management implement...
Con8836   leveraging the cloud to simplify your identity management implement...Con8836   leveraging the cloud to simplify your identity management implement...
Con8836 leveraging the cloud to simplify your identity management implement...OracleIDM
 
Web 2.0 in the Enterprise
Web 2.0 in the EnterpriseWeb 2.0 in the Enterprise
Web 2.0 in the EnterpriseUfuk Kılıç
 
DEVNET-1132 Create B2B Exchanges with Cisco Connected Processes
DEVNET-1132	Create B2B Exchanges with Cisco Connected ProcessesDEVNET-1132	Create B2B Exchanges with Cisco Connected Processes
DEVNET-1132 Create B2B Exchanges with Cisco Connected ProcessesCisco DevNet
 
Pres Bbx Cloudstorm Antwerpen
Pres Bbx Cloudstorm AntwerpenPres Bbx Cloudstorm Antwerpen
Pres Bbx Cloudstorm AntwerpenAlex Schoone
 
Application Integration Architecture of Excellence - Answering to the Challenges
Application Integration Architecture of Excellence - Answering to the ChallengesApplication Integration Architecture of Excellence - Answering to the Challenges
Application Integration Architecture of Excellence - Answering to the ChallengesHenry Chandra
 
Top 10 tredning technologies to learn in 2021
Top 10 tredning technologies to learn in 2021Top 10 tredning technologies to learn in 2021
Top 10 tredning technologies to learn in 2021Lokesh Agarwal
 
For loop summit - cheating the developer experience
For loop summit - cheating the developer experienceFor loop summit - cheating the developer experience
For loop summit - cheating the developer experienceDara Oladapo
 
CIS14: Identity Management for the Cloud
CIS14: Identity Management for the CloudCIS14: Identity Management for the Cloud
CIS14: Identity Management for the CloudCloudIDSummit
 

La actualidad más candente (20)

Creating Successful Extranets on SharePoint
Creating Successful Extranets on SharePointCreating Successful Extranets on SharePoint
Creating Successful Extranets on SharePoint
 
Office Business Applications in Financial Services
Office Business Applications in Financial ServicesOffice Business Applications in Financial Services
Office Business Applications in Financial Services
 
CIS13: Cloud, Identity Bridges, and ITSM: Three is Not a Crowd
CIS13: Cloud, Identity Bridges, and ITSM: Three is Not a CrowdCIS13: Cloud, Identity Bridges, and ITSM: Three is Not a Crowd
CIS13: Cloud, Identity Bridges, and ITSM: Three is Not a Crowd
 
API Security with OAuth2.0.
API Security with OAuth2.0.API Security with OAuth2.0.
API Security with OAuth2.0.
 
Identity as a Service
Identity as a ServiceIdentity as a Service
Identity as a Service
 
Cloudforce Essentials 2012 - Understanding Force.com in 60 Minutes or Less
Cloudforce Essentials 2012 - Understanding Force.com  in 60 Minutes or LessCloudforce Essentials 2012 - Understanding Force.com  in 60 Minutes or Less
Cloudforce Essentials 2012 - Understanding Force.com in 60 Minutes or Less
 
Strategic Enterprise Architecture Roadmap
Strategic Enterprise Architecture RoadmapStrategic Enterprise Architecture Roadmap
Strategic Enterprise Architecture Roadmap
 
Document repositories-and-metadata
Document repositories-and-metadataDocument repositories-and-metadata
Document repositories-and-metadata
 
Governing and managing hybrid SharePoint environments
Governing and managing hybrid SharePoint environmentsGoverning and managing hybrid SharePoint environments
Governing and managing hybrid SharePoint environments
 
Keynote
KeynoteKeynote
Keynote
 
Mobilizing Microsoft SharePoint Server: An MBaaS PErspective
Mobilizing Microsoft SharePoint Server: An MBaaS PErspectiveMobilizing Microsoft SharePoint Server: An MBaaS PErspective
Mobilizing Microsoft SharePoint Server: An MBaaS PErspective
 
Con8836 leveraging the cloud to simplify your identity management implement...
Con8836   leveraging the cloud to simplify your identity management implement...Con8836   leveraging the cloud to simplify your identity management implement...
Con8836 leveraging the cloud to simplify your identity management implement...
 
Web 2.0 in the Enterprise
Web 2.0 in the EnterpriseWeb 2.0 in the Enterprise
Web 2.0 in the Enterprise
 
DEVNET-1132 Create B2B Exchanges with Cisco Connected Processes
DEVNET-1132	Create B2B Exchanges with Cisco Connected ProcessesDEVNET-1132	Create B2B Exchanges with Cisco Connected Processes
DEVNET-1132 Create B2B Exchanges with Cisco Connected Processes
 
Pres Bbx Cloudstorm Antwerpen
Pres Bbx Cloudstorm AntwerpenPres Bbx Cloudstorm Antwerpen
Pres Bbx Cloudstorm Antwerpen
 
Application Integration Architecture of Excellence - Answering to the Challenges
Application Integration Architecture of Excellence - Answering to the ChallengesApplication Integration Architecture of Excellence - Answering to the Challenges
Application Integration Architecture of Excellence - Answering to the Challenges
 
Top 10 tredning technologies to learn in 2021
Top 10 tredning technologies to learn in 2021Top 10 tredning technologies to learn in 2021
Top 10 tredning technologies to learn in 2021
 
For loop summit - cheating the developer experience
For loop summit - cheating the developer experienceFor loop summit - cheating the developer experience
For loop summit - cheating the developer experience
 
CIS14: Identity Management for the Cloud
CIS14: Identity Management for the CloudCIS14: Identity Management for the Cloud
CIS14: Identity Management for the Cloud
 
Office 365: Do’s and Don’ts, Lessons learned from the field
Office 365: Do’s and Don’ts, Lessons learned from the fieldOffice 365: Do’s and Don’ts, Lessons learned from the field
Office 365: Do’s and Don’ts, Lessons learned from the field
 

Destacado

Architectural Principles for Software + Services
Architectural Principles for Software + ServicesArchitectural Principles for Software + Services
Architectural Principles for Software + ServicesSimon Guest
 
OreDev 2008: Software + Services
OreDev 2008: Software + ServicesOreDev 2008: Software + Services
OreDev 2008: Software + Servicesukdpe
 
20080117 Iasa Software + Services
20080117   Iasa   Software + Services20080117   Iasa   Software + Services
20080117 Iasa Software + ServicesDavid Chou
 
Patterns For Moving To The Cloud
Patterns For Moving To The CloudPatterns For Moving To The Cloud
Patterns For Moving To The CloudSimon Guest
 
SAAS - Software as a Service
SAAS - Software as a ServiceSAAS - Software as a Service
SAAS - Software as a ServiceDev S Paul
 
Software architectural design patterns(MVC, MVP, MVVM, VIPER) for iOS
Software architectural design patterns(MVC, MVP, MVVM, VIPER) for iOSSoftware architectural design patterns(MVC, MVP, MVVM, VIPER) for iOS
Software architectural design patterns(MVC, MVP, MVVM, VIPER) for iOSJinkyu Kim
 
Software Architecture: Test Case Writing
Software Architecture: Test Case WritingSoftware Architecture: Test Case Writing
Software Architecture: Test Case WritingSitdhibong Laokok
 
History of Architecture
History of ArchitectureHistory of Architecture
History of ArchitectureRachaelVanDyke
 
A Software Architect's View On Diagramming
A Software Architect's View On DiagrammingA Software Architect's View On Diagramming
A Software Architect's View On Diagrammingmeghantaylor
 
Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...
Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...
Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...Svetlin Nakov
 

Destacado (13)

Architectural Principles for Software + Services
Architectural Principles for Software + ServicesArchitectural Principles for Software + Services
Architectural Principles for Software + Services
 
OreDev 2008: Software + Services
OreDev 2008: Software + ServicesOreDev 2008: Software + Services
OreDev 2008: Software + Services
 
20080117 Iasa Software + Services
20080117   Iasa   Software + Services20080117   Iasa   Software + Services
20080117 Iasa Software + Services
 
Patterns For Moving To The Cloud
Patterns For Moving To The CloudPatterns For Moving To The Cloud
Patterns For Moving To The Cloud
 
25 - SaaS Product Principles
25 - SaaS Product Principles25 - SaaS Product Principles
25 - SaaS Product Principles
 
SAAS - Software as a Service
SAAS - Software as a ServiceSAAS - Software as a Service
SAAS - Software as a Service
 
SaaS Maturity
SaaS MaturitySaaS Maturity
SaaS Maturity
 
Software architectural design patterns(MVC, MVP, MVVM, VIPER) for iOS
Software architectural design patterns(MVC, MVP, MVVM, VIPER) for iOSSoftware architectural design patterns(MVC, MVP, MVVM, VIPER) for iOS
Software architectural design patterns(MVC, MVP, MVVM, VIPER) for iOS
 
Software Architecture: Test Case Writing
Software Architecture: Test Case WritingSoftware Architecture: Test Case Writing
Software Architecture: Test Case Writing
 
History of Architecture
History of ArchitectureHistory of Architecture
History of Architecture
 
A Software Architect's View On Diagramming
A Software Architect's View On DiagrammingA Software Architect's View On Diagramming
A Software Architect's View On Diagramming
 
Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...
Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...
Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...
 
Layered Software Architecture
Layered Software ArchitectureLayered Software Architecture
Layered Software Architecture
 

Similar a S+S Architecture Overview

ArcReady - Architecting Modern Distributed Applications
ArcReady -  Architecting Modern Distributed ApplicationsArcReady -  Architecting Modern Distributed Applications
ArcReady - Architecting Modern Distributed ApplicationsMicrosoft ArcReady
 
DevLink - Architecting Modern Distributed Applications
DevLink - Architecting Modern Distributed ApplicationsDevLink - Architecting Modern Distributed Applications
DevLink - Architecting Modern Distributed ApplicationsClint Edmonson
 
DODN2009 - Architecting Modern Distributed Applications
DODN2009 - Architecting Modern Distributed ApplicationsDODN2009 - Architecting Modern Distributed Applications
DODN2009 - Architecting Modern Distributed ApplicationsClint Edmonson
 
Azure Services Platform_Partner_Briefing
Azure Services Platform_Partner_BriefingAzure Services Platform_Partner_Briefing
Azure Services Platform_Partner_BriefingWes Yanaga
 
Api management customer
Api management customerApi management customer
Api management customernick_garrod
 
Application platform and integration platform strategy and roadmap
Application platform and integration platform strategy and roadmapApplication platform and integration platform strategy and roadmap
Application platform and integration platform strategy and roadmapBizTalk360
 
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...Mike Walker
 
Microsoft cloud strategic_overview_vu
Microsoft cloud strategic_overview_vuMicrosoft cloud strategic_overview_vu
Microsoft cloud strategic_overview_vuPham Anh Vu
 
Malta soa infrastructure
Malta soa infrastructureMalta soa infrastructure
Malta soa infrastructureAngel Knight
 
The Middleware technology that connects the enterprise
The Middleware technology that connects the enterpriseThe Middleware technology that connects the enterprise
The Middleware technology that connects the enterprise Kasun Indrasiri
 
Financial Services Component Library
Financial Services Component LibraryFinancial Services Component Library
Financial Services Component LibraryMike Walker
 
A JBoss Enterprise Middleware Solution to Improving Business Execution
A JBoss Enterprise Middleware Solution to Improving Business ExecutionA JBoss Enterprise Middleware Solution to Improving Business Execution
A JBoss Enterprise Middleware Solution to Improving Business ExecutionCITYTECH, Inc.
 
Web 2.0 Tech Talk
Web 2.0 Tech TalkWeb 2.0 Tech Talk
Web 2.0 Tech Talkpooyad
 
Soa Overview
Soa OverviewSoa Overview
Soa OverviewTerry Cho
 
Spca2014 navigating clouds sp_con14_mackie
Spca2014 navigating clouds sp_con14_mackieSpca2014 navigating clouds sp_con14_mackie
Spca2014 navigating clouds sp_con14_mackieNCCOMMS
 
Steve Mills - Dispelling the Vapor Around Cloud Computing
Steve Mills - Dispelling the Vapor Around Cloud ComputingSteve Mills - Dispelling the Vapor Around Cloud Computing
Steve Mills - Dispelling the Vapor Around Cloud ComputingMauricio Godoy
 
TechNet Event: August 2011 Cloud Essentials
TechNet Event: August 2011 Cloud EssentialsTechNet Event: August 2011 Cloud Essentials
TechNet Event: August 2011 Cloud EssentialsHarold Wong
 

Similar a S+S Architecture Overview (20)

S+S Overview
S+S OverviewS+S Overview
S+S Overview
 
ArcReady - Architecting Modern Distributed Applications
ArcReady -  Architecting Modern Distributed ApplicationsArcReady -  Architecting Modern Distributed Applications
ArcReady - Architecting Modern Distributed Applications
 
DevLink - Architecting Modern Distributed Applications
DevLink - Architecting Modern Distributed ApplicationsDevLink - Architecting Modern Distributed Applications
DevLink - Architecting Modern Distributed Applications
 
DODN2009 - Architecting Modern Distributed Applications
DODN2009 - Architecting Modern Distributed ApplicationsDODN2009 - Architecting Modern Distributed Applications
DODN2009 - Architecting Modern Distributed Applications
 
Azure Services Platform_Partner_Briefing
Azure Services Platform_Partner_BriefingAzure Services Platform_Partner_Briefing
Azure Services Platform_Partner_Briefing
 
Api management customer
Api management customerApi management customer
Api management customer
 
Application platform and integration platform strategy and roadmap
Application platform and integration platform strategy and roadmapApplication platform and integration platform strategy and roadmap
Application platform and integration platform strategy and roadmap
 
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
 
Microsoft cloud strategic_overview_vu
Microsoft cloud strategic_overview_vuMicrosoft cloud strategic_overview_vu
Microsoft cloud strategic_overview_vu
 
Malta soa infrastructure
Malta soa infrastructureMalta soa infrastructure
Malta soa infrastructure
 
The Middleware technology that connects the enterprise
The Middleware technology that connects the enterpriseThe Middleware technology that connects the enterprise
The Middleware technology that connects the enterprise
 
Financial Services Component Library
Financial Services Component LibraryFinancial Services Component Library
Financial Services Component Library
 
A JBoss Enterprise Middleware Solution to Improving Business Execution
A JBoss Enterprise Middleware Solution to Improving Business ExecutionA JBoss Enterprise Middleware Solution to Improving Business Execution
A JBoss Enterprise Middleware Solution to Improving Business Execution
 
soa ppt v7.ppt
soa ppt v7.pptsoa ppt v7.ppt
soa ppt v7.ppt
 
Web 2.0 Tech Talk
Web 2.0 Tech TalkWeb 2.0 Tech Talk
Web 2.0 Tech Talk
 
Soa Overview
Soa OverviewSoa Overview
Soa Overview
 
Biz Talk Server
Biz Talk ServerBiz Talk Server
Biz Talk Server
 
Spca2014 navigating clouds sp_con14_mackie
Spca2014 navigating clouds sp_con14_mackieSpca2014 navigating clouds sp_con14_mackie
Spca2014 navigating clouds sp_con14_mackie
 
Steve Mills - Dispelling the Vapor Around Cloud Computing
Steve Mills - Dispelling the Vapor Around Cloud ComputingSteve Mills - Dispelling the Vapor Around Cloud Computing
Steve Mills - Dispelling the Vapor Around Cloud Computing
 
TechNet Event: August 2011 Cloud Essentials
TechNet Event: August 2011 Cloud EssentialsTechNet Event: August 2011 Cloud Essentials
TechNet Event: August 2011 Cloud Essentials
 

Último

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 

Último (20)

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 

S+S Architecture Overview

  • 1. An Architectural Overview of Software + Services David Solivan Architect Evangelist Microsoft Corporation [email_address] Twitter alias: mrbeaudreaux http://www.youtube.com/dsolivan Gamertag: MagicalSolly Blog: http://blogs.msdn.com/beaudreaux
  • 3. In the beginning… centralization .
  • 6. Some Recent History Then we realized distribution was best.
  • 9. Some Recent History The we saw that what we really needed was centralization .
  • 12. Why The Back and Forth??? Security & Privacy Customizability Visibility & Control Data accessibility Global reach Ease of provisioning Business agility Deployability & manageability
  • 14. Industry Trends Trend 1: Service Oriented Architecture (SOA)
  • 16. Industry Trends Trend 2: Software as a Service (SaaS)
  • 18. Industry Trends Trend 3: Web 2.0
  • 20. Industry Trends Trend 4: Rich Internet Applications (RIA)
  • 22. Industry Trends Trend 5: Cloud Computing
  • 24. Industry Trends Trend 6: Mobile Computing
  • 26. 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
  • 27. Industry Trends Is this just a Microsoft thing?
  • 28. 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
  • 29. 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.
  • 31. Taking Advantage of these Trends
  • 32. 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?
  • 33. Taking Advantage of these Trends A set of architectural principles for understanding the Software + Services paradigm
  • 35. Foundation Physical, Dedicated Single service on a dedicated hardware Physical, Shared Multiple services on a dedicated hardware Physical, HPC Physical hardware supporting HPC scenario Virtual, Single Single instance virtual image Virtual, Shared Multiple instance virtual image
  • 37. Self-Hosted vs. Vendor Hosted Self-Hosted You manage and pay for your own datacenter Vendor Hosted You pay for a vendor to host your applications
  • 38. Self-Hosted vs. Vendor Hosted Vendor Investments Vendors investing heavily in multi-site datacenters
  • 39. Self-Hosted vs. Vendor Hosted Microsoft Data Center (Chicago, IL) $500m investment, 500,000 sq ft, container based
  • 40. Self-Hosted vs. Vendor Hosted Cost Initial investment, maintenance, and depreciation
  • 41. Self-Hosted vs. Vendor Hosted Power Considerations Rising energy costs and sustainability considerations
  • 42. Self-Hosted vs. Vendor Hosted Operational Requirements Helpdesk, backups, networking, upgrades
  • 43. Self-Hosted vs. Vendor Hosted Security and Data Protection Storage, transmission, identity, and regulatory issues
  • 44. Self-Hosted vs. Vendor Hosted Hardware Advancements Virtualization, Multicore, Performance Tuning
  • 45. Architectural Principles for Software + Services Foundation Self Hosted Vendor Hosted Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable
  • 47. Infrastructure Services Identity and Access Directory Based Authentication Username / Password based Claims Based Authentication Secure token or other claims based Role Based Authorization Role-checking and authorization
  • 48. Infrastructure Services Messaging Service Bus Asynchronous, reliable messaging, publish/subscribe model Peer to Peer Node registration, directory, presence awareness
  • 49. Infrastructure Services Storage Traditional Fileshare, flat, page-based Relational Hosted relational database, familiar, transactional, finite Unstructured Key/value Pair, no atomicity, infinitely scalable
  • 50. Infrastructure Services Workflow Event Based Triggered based on events (e.g. document upload) High Throughput Low latency, high volume (e.g. trading confirmations)
  • 51. Architectural Principles for Software + Services Infrastructure Services Foundation Self Hosted Vendor Hosted Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims
  • 53. Application Services Collaboration Search Text Search, Image Search, Indexing Social Social Graphs, Profiles Content Indexing, Retrieval, Conflict Management
  • 54. Application Services Monetization Transaction Pay for each transaction Subscription Pay per month/period Licensing Pay per user/machine Advertising Advert funded model
  • 55. Application Services Composition Service Composition Composition, brokering results, aggregation LOB Integration Service wrapping of mainframe and other LOB applications
  • 56. Application Services Business Intelligence Dashboard Exposed, pre-defined KPIs Reporting Custom queries and reports
  • 57. Architectural Principles for Software + Services Infrastructure Services Foundation Application Services Self Hosted Vendor Hosted Collaboration Search Content Social Monetization Tx Subs License Advert Composition Service Int LOB Int Business Intelligence Dashboards Reporting Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims
  • 58. Application Services Application Business Logic (Rules) Entities (Schema) Workflow (Process)
  • 59. Architectural Principles for Software + Services Infrastructure Services Foundation Application Services Self Hosted Vendor Hosted Application Entities (Schema) Business Logic (Rules) Collaboration Search Content Social Monetization Tx Subs License Advert Composition Service Int LOB Int Business Intelligence Dashboards Reporting Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims Workflow (Processes)
  • 60. Application Services Web Presentation Static Static content, HTML etc Dynamic Asynchronous interaction, AJAX etc. Rich Rich Internet Applications, high visuals, limited offline support Streaming Optimized for content delivery, videos etc.
  • 61. Architectural Principles for Software + Services Infrastructure Services Foundation Application Services Self Hosted Vendor Hosted Web Delivery Static Dynamic Rich Streaming Application Entities (Schema) Business Logic (Rules) Collaboration Search Content Social Monetization Tx Subs License Advert Composition Service Int LOB Int Business Intelligence Dashboards Reporting Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims Workflow (Processes)
  • 62. Application Services Programmatic Access Web Services SOAP based, WS-I compliant, WS-* REST CRUD access to services via HTML RSS Syndication services for subscriptions
  • 63. Application Services Programmatic Access VoiceXML Mobile Application Speech API SIP Session Initiation Protocol – IM Clients SMTP Email inbound and outbound delivery SMS Mobile inbound and outbound text messaging
  • 64. Architectural Principles for Software + Services Infrastructure Services Foundation Application Services Self Hosted Vendor Hosted Exposed APIs Web Services REST RSS VoiceXML Web Delivery Static Dynamic Rich Streaming Application Entities (Schema) Business Logic (Rules) Collaboration Search Content Social Monetization Tx Subs License Advert Composition Service Int LOB Int Business Intelligence Dashboards Reporting Identity & Access Directory RBAC Messaging Service Bus P2P Storage Traditional Unstructured Relational Workflow Event based High Throughput Compute Physical, Dedicated Physical, Shared Physical, HPC Virtual, Single Virtual, Scalable Claims SMTP SMS SIP Workflow (Processes)
  • 66. Client Software Web Based Consumer of web based content, HTML etc RIA Consumer of Rich Content through Browser Add-In Browser Based
  • 67. Client Software Mobile Client Web Based Mobile consumer of web based content, HTML etc RIA Mobile consumer of Rich Content through Browser Add-In Client Application Locally installed and run applications
  • 68. Client Software Mobile Client Office Mobile based Email and Office Applications SMS / IM Text messaging and IM using Mobile Device Speech Speech enabled interface
  • 69. Client Software Office Office Suite, including Email and RSS reader capability Client Application Rich (Smart) client applications installed locally on machine Client PC
  • 70. Client Software Gadgets Locally installed, desktop based Instant Messaging Locally installed Instant Messaging client Client PC
  • 71. Client Software Devices Dedicated devices Consoles Games Consoles Embedded
  • 72. Architectural Principles for Software + Services
  • 73. Architectural Principles for Software + Services
  • 74. Architectural Principles for Software + Services Now that I understand the principles, how should I think about my own architectural designs?
  • 78. Architectural Principles for Software + Services How about the trends you mentioned earlier?
  • 79. Architectural Principles for Software + Services Trend 1: Service Oriented Architecture (SOA)
  • 80. (Trend 1: SOA) – Self Hosted Services
  • 81. (Trend 1: SOA) – Integrating LOB Applications
  • 82. (Trend 1: SOA) – Expanding using OBA
  • 83.  
  • 84. (Trend 1: SOA) – Self Hosted Services
  • 85. (Trend 1: SOA) – Self Hosted Services using ESB
  • 86. Architectural Principles for Software + Services Internet Service Bus
  • 87. (Trend 1: SOA) – Self Hosted Services using ISB
  • 88.  
  • 89. Architectural Principles for Software + Services Trend 2: Software as a Service (SaaS)
  • 90. (Trend 2: SaaS) – Web Based SaaS Provider
  • 91. (Trend 2: SaaS) – Web Based SaaS Provider w/ API
  • 92. (Trend 2: SaaS) – Web Based SaaS Provider w/ Offline
  • 93.  
  • 94. Architectural Principles for Software + Services Trend 3: Web 2.0
  • 96. (Trend 3: Web 2.0) – Nico Nico Douga
  • 97. (Trend 3: Web 2.0) – Nico Nico Douga
  • 98.  
  • 99. Architectural Principles for Software + Services Trend 4: Rich Internet Applications
  • 100. (Trend 4: RIA) - Purchasing Capability
  • 101. (Trend 4: RIA) - Purchasing Capability + RIA
  • 102. (Trend 4: RIA) - Purchasing Capability + Mobile RIA
  • 103.  
  • 104. Architectural Principles for Software + Services How about Microsoft’s own products?
  • 105. Exchange Lifecycle (Exchange 4.0, Outlook 97)
  • 106. Exchange Lifecycle (Exchange 5.0, Outlook XP)
  • 107. Exchange Lifecycle (Exchange 2003, Outlook 2003)
  • 108. Exchange Lifecycle (Exchange 2003, Outlook 2003)
  • 109. Exchange Lifecycle (Exchange 2007, Outlook 2007)
  • 110. Exchange Lifecycle (Hosted Exchange, Outlook 2007)
  • 111. Architectural Principles for Software + Services A “middle out” architecture
  • 112. Architectural Principles for Software + Services A “middle out” architecture
  • 113. Architectural Principles for Software + Services A “middle out” architecture
  • 114.  
  • 116. Contracts and SLAs What kind of contracts and SLAs do you need to be thinking about?
  • 118. Simple Web Site (Internal Contract and SLA) Contracts and SLAs
  • 119. Simple Web Site (External Contract and SLA) Contracts and SLAs
  • 120. Using ISB (Mixed Contract and SLA) Contracts and SLAs
  • 122. Provisioning What is important from a provisioning perspective?
  • 123. Provisioning How are you going to manage your application “as one” in a mixed hosted environment?
  • 124. Using ISB (Provisioning Considerations) Contracts and SLAs Provisioning, Management & Monitoring
  • 126. Implementing Software + Services Three steps for implementing Software + Services using the principles and patterns introduced in this deck
  • 127. Implementing Software + Services Step 1: Get the right people involved
  • 128. Implementing Software + Services Contracts and SLAs Provisioning, Management & Monitoring
  • 129. Implementing Software + Services Contracts and SLAs Provisioning, Management & Monitoring 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) Enterprise Architect and CIO Data Center Operations
  • 130. Implementing Software + Services Step 2: Map to technologies
  • 131. Implementing Software + Services IE8 Silverlight Windows Mobile 6 Live Msgr Windows CE XBOX 360 IIS 7 SL Streaming WCF .NET Framework MOSS 2007 BTS Adapters MOSS 2007 BDC AD / ADFS SQL Server Reporting Services Ad Center .NET Framework 3 rd Party BizTalk 2006 R2 Vista ILM CardSpace BizTalk / BizTalk.Net Peer Fx IIS 7 SQL Server SSDS Windows WF MOSS 2007 Windows WF BizTalk Server 2006 Windows Server 2008 WS 2008 HPC Windows Server 2008 Hyper-V Office WPF
  • 132. Implementing Software + Services Step 3: If you are dealing with repeatable architectural designs, build assets using Software Factories approach
  • 135. Implementing Software + Services Purchasing Site 1 Purchasing Site 2 Purchasing Site 3 Purchasing Site 4
  • 136. © 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. davidsol@microsoft.com

Notas del editor

  1. 06/07/09 23:35 © 2007 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.