13. What We Heard From You “ What API should I use?” “ How do I build service-oriented systems?” “ How can I send messages securely & reliably?” “ How do I build dynamic, decoupled applications?”
17. Unified Programming Model Interop with other platforms ASMX Attribute- Based Programming Enterprise Services WS-* Protocol Support WSE Message- Oriented Programming System.Messaging Extensibility Location transparency .NET Remoting Unified Programming Model
18.
19. WCF Composable Architecture Service Code Service Model Layer Influences and adds to the programming model based on incoming messages Messaging Layer Moves messages back and forth and adds transfer semantics (channels) Transaction Behavior CLR Type Integration Instancing Behavior Security Channel TCP Transport Security Channel TCP Transport Transaction Behavior CLR Type Integration
20. WCF Composability in Action Service Model Layer Messaging Layer Behaviors Channels Transaction Behavior CLR Type Integration Instancing Behavior Security Channel HTTP Transport Custom Channel Reliable Messaging Queue Transport MSMQ Integration TCP Transport Named Pipes Throttling Behavior Error Handling Behavior Concurrency Behavior Metadata Behavior Custom Behavior HTTP Transport TCP Transport Security Channel Custom Channel Reliable Messaging CLR Type Integration Instancing Behavior Transaction Behavior
30. Four Tenets of Service Orientation SERVICE ORIENTATION Compatibility Based On Policy Share Schema & Contract, Not Class Services Are Autonomous Boundaries Are Explicit
37. The Four Tenets of Service-Orientation Services and consumers are independently versioned, deployed, operated, and secured. Services are autonomous Data never includes behavior; Objects with data and behavior are a local phenomenon. Share schema & contract, not class Capabilities and requirements represented by a unique public name; Used to establish service suitability. Compatibility based on policy Developers opt-in to consuming, exposing, and defining public-facing service façade. Boundaries are Explicit
38.
39. WCF Architecture Detail Application Service Model Messaging Hosting Environments TCP Channel HTTP Channel Queue Channel Secure Channel Reliable Channel Binary Encoder Text/XML Encoder … … ASP.NET Avalon WinForm NT Service COM+ Instance Behavior Throttling Behavior Type Integ. Behavior Transaction Behavior Concurrency Behavior Error Behavior Metadata Behavior … WAS
43. WS-* Architecture Assurances Messaging SOAP WS-Security MTOM WS-Addressing Metadata WS-Policy WSDL WS-Discovery UDDI WS-Metadata Exchange WS-Transfer WS-Enumeration WS-Eventing XML Schema WS-Reliable Messaging WS-Coordination WS-Atomic Transaction WS-Business Activity WS-Trust WS-Secure Conversation Infrastructure and Profiles WS-Management WS-Federation Devices Profile Foundation SOAP / HTTP SOAP / UDP MIME XML Infoset XML 1.0 XML Namespaces
44. 80+ WS-* Workshop Participants Actional Fujitsu Newisys Sharp Labs AMD Grand Central Nokia Siebel American Megatrends Hewlett-Packard Oasis Semiconductor Software AG ANL IBM Oblix Sonic Software Apache Project iDesign OPC Foundation Sun Axalto Intel OpenNetwork Systinet BEA Intermec Oracle Tibco Blue Titan Iona OSA Technologies Toshiba Boeing IPO Group Peerless Tyco Safety Systems Brother Jboss Ping Identity Univ of Sydney Canon JibxSoap Printronix VeriSign Choreology KnowNow QuickTree Veritas CommerceOne Layer 7 Tech Quovadx Visa Computer Associates Lexmark Reactivity Vitria Content Guard Lockheed Martin Ricoh WRQ Cornell University Microsoft Roxio webMethods Dell Motive RSA Security WSO2 Epson NEC SAP Xerox Exceptional Innovation NEON Schneider Electric Zoran Feature Software Netegrity SeeBeyond Unaffiliated
45. WS-* Spec Status Assurances Messaging SOAP WS-Security MTOM WS-Addressing Metadata WS-Policy WSDL WS-Discovery UDDI WS-Metadata Exchange WS-Transfer WS-Enumeration WS-Eventing XML Schema WS-Reliable Messaging WS-Coordination WS-Atomic Transaction WS-Business Activity WS-Trust WS-Secure Conversation Infrastructure and Profiles WS-Management WS-Federation Devices Profile Foundation SOAP / HTTP SOAP / UDP MIME XML Infoset XML 1.0 XML Namespaces Step 4 – Approved Standard Step 3 – Standardization Step 2 – Workshops & Community Dev