Service Oriented Architecture (SOA) Richard Godfrey CEng MBCS CITP Architect Developer & Platform Group

Slides:



Advertisements
Similar presentations
Managing Service-Oriented Architectures Jim Bole VP Professional Services Infravio, Inc June 7,
Advertisements

Indigo Jonathan Turnbull Nick Cartwright Ivan Konontsev Chris Bright.
Siebel Web Services Siebel Web Services March, From
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
What is SOA? IT architecture for request - reply applications Application functions are modularized and presented as services Services are loosely coupled.
Building an Operational Enterprise Architecture and Service Oriented Architecture Best Practices Presented by: Ajay Budhraja Copyright 2006 Ajay Budhraja,
Application Integration, Data Access, and Process Change.
1 Introduction to SOA. 2 The Service-Oriented Enterprise eXtensible Markup Language (XML) Web services XML-based technologies for messaging, service description,
SOA with Progress Philipp Walther Consultant. © 2007 Progress Software Corporation2 Agenda  SOA  Enterprise Service Bus (ESB)  The Progress SOA Portfolio.
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
Troy Hutchison Service Oriented Architecture (SOA) Security.
Livermore July Web Services Overview Francisco Curbera IBM T.J. Watson Research Center.
Web Services (ASMX 2.0 and WSE 3.0) Mike Taulty Developer & Platform Group Microsoft Ltd
Web Service Architecture Part I- Overview and Models (based on W3C Working Group Note Frank.
B. RAMAMURTHY Web services. Topics What is a web service? From OO to WS WS and the cloud WS code.
Getting Started with Windows Communication Foundation 4.5 Ed Jones, MCT, MCPD, MCTS Consultant RBA Inc.
Web Services Michael Smith Alex Feldman. What is a Web Service? A Web service is a message-oriented software system designed to support inter-operable.
Pooya Darugar Architect, Microsoft Gulf.  What is SOA, What isn’t SOA  The important A in SOA  Business Modeling  How to get started  The forgotten.
CONNECT EVERYTHING. ACHIEVE ANYTHING. ™ Top Ten Enterprise Service Bus (ESB) Myths Gordon Van Huizen CTO, Sonic Software March 17, 2005.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
Boštjan Šumak dr. Marjan Heričko THE ROLE OF BIZTALK SERVER IN BUSINESS PROCESS INTEGRATION.
SOA, BPM, BPEL, jBPM.
CIS 375—Web App Dev II Microsoft’s.NET. 2 Introduction to.NET Steve Ballmer (January 2000): Steve Ballmer "Delivering an Internet-based platform of Next.
Web Services Architecture1 - Deepti Agarwal. Web Services Architecture2 The Definition.. A Web service is a software system identified by a URI, whose.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Web Services Igor Wasinski Olumide Asojo Scott Hannan.
Web Services & WCF ~ Ankit. Web services A web service is a collection of protocols and standards used for exchanging data between applications or systems.
Distributed Communication via ASP.Net Web Services and.Net Remoting By Richard King.
1 “Indigo”: Services And The Future Of Distributed Applications Don Box Architect Microsoft Corporation here –
DEVS Namespace for Interoperable DEVS/SOA
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Develop Distributed Applications using.NET Remoting Kate Gregory Regional Director Gregory Consulting Limited
Progress SOA Reference Model Explained Mike Ormerod Applied Architect 9/8/2008.
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Random Logic l Forum.NET l Web Services Enhancements for Microsoft.NET (WSE) Forum.NET ● October 4th, 2006.
AUTHORS: MIKE P. PAPAZOGLOU WILLEM-JAN VAN DEN HEUVEL PRESENTED BY: MARGARETA VAMOS Service oriented architectures: approaches, technologies and research.
Chris Kuruppu NWS Office of Science and Technology Systems Engineering Center (Skjei Telecom) 10/6/09.
SOA-39: Securing Your SOA Francois Martel Principal Solution Engineer Mitigating Security Risks of a De-coupled Infrastructure.
.NET Enterprise Services COM+ 1.5 麥超俊 Bobby Mak 架構技術推廣經理開發工具暨平台推廣處台灣微軟股份有限公司.
1 UNIT –II Architecting Web Service. 2 Why SOA? – business point of view  Information Technology (IT) workers face many challenges, including: Limited.
Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks.
Intro to dot Net Dr. John Abraham UTPA CSCI 3327.
S imple O bject A ccess P rotocol Karthikeyan Chandrasekaran & Nandakumar Padmanabhan.
Kemal Baykal Rasim Ismayilov
1 G52IWS: Web Services Chris Greenhalgh. 2 Contents The World Wide Web Web Services example scenario Motivations Basic Operational Model Supporting standards.
1 Web Services Policy Management Greg Pavlik Web Services Architect Oracle Corporation May 11, 2005.
EMEA AGENDA: Patterns in the Enterprise Break Integration Patterns Lunch Showcase
Service Oriented Architecture + SOAP -Robin John.
Dhananjay Kumar MVP-Connected System 1. WCF  Agenda What is WCF ? Why WCF? Address, Binding, Contract End Points Hosting Message Patterns Programming.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Sabri Kızanlık Ural Emekçi
WEB SERVICES.
WCF.
Unit – 5 JAVA Web Services
Inventory of Distributed Computing Concepts and Web services
Connected Systems Architecture
W3C Workshop WS-Policy in the Web Service Architecture
Service Oriented Architecture + SOAP
Introduction to Web Services
Distributed System using Web Services
Introduction to Web Services and SOA
Distributed System using Web Services
Presentation transcript:

Service Oriented Architecture (SOA) Richard Godfrey CEng MBCS CITP Architect Developer & Platform Group

2 Agenda Microsoft & SOA SOA technology & frameworks (.Net) Implementation

3 Aligning Business and IT IT Business Business Architecture Operational Requirements Functional Requirements Information Requirements Technology Architecture Application Portfolio Information Architecture Top Down Bottom Up

4 Moving to SOA: The Top-Down Approach How it works: Define a business architecture Using, for example, Microsoft’s Motion methodology Discover what services are required Create service-oriented apps based on this Pros: It’s elegant, clean, and sensible Cons: It’s very difficult in most organizations Getting the up-front funding and business buy-in is tough Keeping up with business change is also tough

5 Moving to SOA: The Bottom-Up Approach How it works: Build a service-oriented app Then build another one Next, work on central SOA issues, e.g., security and management Then build another service-oriented app... Pros: It’s the only approach that has worked in most organizations Cons: It’s an inelegant, piecemeal way to address the problem

6 SOA in One Slide – The “Message” Schema Agreements Programming Language Object Model Application Server Database Operating System Database Operating System Programming Language Object Model Application Server You Your Partner Example of a tightly coupled solution Service Oriented Architecture

Shared Memory Procedural Parameters, returning values Components Some self definition eg Type Libraries Roles and events Objects Visibility Reuse Instances Statics Web Services Self describing WSDL, Request Response Local, w/in firewall, Machine to machine M to M IPC Global Ubiquitous WSA Decoupled & Self Describing Tightly coupled Application Scope Development Evolution and.NET

8 Shift To A Service-Oriented Architecture Function oriented Build to last Prolonged development cycles FromTo Process oriented Build to change Incrementally built and deployed Application silos Tightly coupled Object oriented Known implementation Orchestrated solutions Loosely coupled Message oriented Abstraction

9 Services Message Exchange Pattern describe Operational Requirements enforce Systems composed of Messages exchange is a set of Contracts bound by contain Schemas define structure of governed by Policies have Service Orientation Key Concepts

10 Policy The Anatomy of a “Service” Service State SOAPMessage Logic

11 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 The Four Tenets of Service-Orientation

12 Web Services Architecture “Secure, Reliable, Transacted services” SOAP (Logical Messaging) Transports Messaging WSDL, UDDI, Inspection Quality of Service Transactions Business Processes BPEL4WS Transport XML, Encoding Other protocols Other services Coordination Security Reliable Messaging Description

13 SOA Design Issues Schema definition Message definition Contract definition Message handling Process management Transaction model Operational compliance Exception handling Message to Object mapping Refinement of Analysis … Contracts Service Process Document A Document C-1 Document C-2 Document B Either C-1 or C-2 Process

14 Service Operations Issues Security Access control MonitoringManagement QoS and SLA enforcement VersioningScalability Dealing with unreliability Exception routing Caching Service Message Processing Infrastructure Serialize Encrypt Sign Deserialize Authenticate Authorize Audit Log Reliable messaging

15 BizTalk Server 2004 Windows Business Rules Engine Human Workflow Services More Business Activity Monitoring (BAM) Orchestrations.NET Framework BizTalk Server 2004 Engine Visual Studio.NET Orchestration Designer Health and Activity Tracking (HAT)

Unifies today’s distributed technology stacks Composable functionality Appropriate for use on-machine, cross machine, and cross Internet “The unified programming model for rapidly building service-oriented applications on the Windows platform” WS-* interoperability with applications running on other platforms Interoperability with today’s distributed stacks Service-oriented programming model Supports 4 tenets of service-orientation Maximized developer productivity “Indigo” Design Goals Unification Interoperability & Integration ProductiveService-OrientedProgramming

17 class HelloService { [WebMethod] [WebMethod] public String Hello(String Greeting) { public String Hello(String Greeting) { X509CertificateCollection collection = new X509CertificateCollection(); IntPtr blob = Marshal.AllocHGlobal(Marshal.SizeOf( typeof(CRYPTOAPI_BLOB))); IntPtr data = (IntPtr)((int)blob + Marshal.SizeOf(typeof(CRYPTOAPI_BLOB))); Marshal.SizeOf(typeof(CRYPTOAPI_BLOB)));… SeqAckRange range = new SeqAcknRange(id, low, high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); … hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); &pITransaction);… return Greeting; return Greeting; }} 20,379 lines security 5,988 lines reliable messaging reliable messaging 25,507 lines transactions Total lines 56,296 4,442 lines infrastructure Productive Development Secure, Reliable, Transacted Application Development …Using Visual Studio.NET 2003

18 class HelloService { [WebMethod] [WebMethod] public String Hello(String Greeting) { public String Hello(String Greeting) { foreach ( SecurityToken tok in foreach ( SecurityToken tok in requestContext.Security.Tokens requestContext.Security.Tokens { X509SecurityToken token = tok as X509SecurityToken { X509SecurityToken token = tok as X509SecurityToken } … SeqAckRange range = new SeqAcknRange(id, low, high ); SeqAckRange range = new SeqAcknRange(id, low, high ); SeqAckRange[] ranges = { range }; SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); ReliableQueue.ProcessAcks( ranges ); … hr = pITxDispenser->BeginTransaction (NULL, hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); &pITransaction); … return Greeting; return Greeting; }} 10 lines security Total lines 27,321 1,804 lines reliable messaging 25,507 lines transactions …Using Visual Studio.NET 2003 and WSE Productive Development Secure, Reliable, Transacted Application Development

19 [ServiceContract(SecureChannel, SecurityMode =“Windows")] [Reliability(Guarantees.ExactlyOnce | Guarantees.InOrder)] [ServiceContract] class HelloService { [ServiceOperation(TransactionFlowAllowed = true)] [ServiceOperation(TransactionFlowAllowed = true)] String Hello(String Greeting) String Hello(String Greeting) { return Greeting; return Greeting; }} 1 line security 1 line reliable messaging reliable messaging 1 line transactions Total lines 3 Productive Development Secure, Reliable, Transacted Application Development …Using Visual Studio 2005 and Indigo