Your SlideShare is downloading. ×
S+S Architecture Overview
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

S+S Architecture Overview

408
views

Published on

This is a talk I give to explain S+S and provide architectural guidance on how to understand and build S+S solutions.

This is a talk I give to explain S+S and provide architectural guidance on how to understand and build S+S solutions.

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
408
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
55
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • 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.
  • Transcript

    • 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
    • 2. Some Recent History
    • 3. In the beginning… centralization .
    • 4. Some Recent History
    • 5. Some Recent History
    • 6. Some Recent History Then we realized distribution was best.
    • 7. Some Recent History
    • 8. Some Recent History
    • 9. Some Recent History The we saw that what we really needed was centralization .
    • 10. Some Recent History
    • 11. Some Recent History
    • 12. Why The Back and Forth??? Security & Privacy Customizability Visibility & Control Data accessibility Global reach Ease of provisioning Business agility Deployability & manageability
    • 13. Industry Trends
    • 14. Industry Trends Trend 1: Service Oriented Architecture (SOA)
    • 15. Industry Trends
    • 16. Industry Trends Trend 2: Software as a Service (SaaS)
    • 17. Industry Trends
    • 18. Industry Trends Trend 3: Web 2.0
    • 19. Industry Trends
    • 20. Industry Trends Trend 4: Rich Internet Applications (RIA)
    • 21. Industry Trends
    • 22. Industry Trends Trend 5: Cloud Computing
    • 23. Industry Trends
    • 24. Industry Trends Trend 6: Mobile Computing
    • 25. Industry Trends
    • 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.
    • 30. Demo: FedEx QuickShip
    • 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
    • 34. Foundation
    • 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
    • 36. Self-Hosted vs. Vendor Hosted
    • 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
    • 46. Infrastructure Services
    • 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
    • 52. Application Services
    • 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)
    • 65. Client Software
    • 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?
    • 75. Simple Web Site
    • 76. Simple Blog
    • 77. Simple Wiki
    • 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
    • 95. Nico Nico Douga
    • 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.  
    • 115. Contracts and SLAs
    • 116. Contracts and SLAs What kind of contracts and SLAs do you need to be thinking about?
    • 117. Simple Web Site
    • 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
    • 121. Provisioning
    • 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
    • 125. Implementing Software + Services
    • 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
    • 133. Implementing Software + Services
    • 134. Implementing Software + Services
    • 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

    ×