230 likes | 388 Views
Service-Oriented Architectures: Potential and Challenges . Motivation and Example Scenarios Basic Technology Current Trends and Research Challenges. Prof. Dr. Alexander Schill Technische Universität Dresden Chair of Computer Networks. Motivation and Example Scenarios.
E N D
Service-Oriented Architectures: Potential and Challenges • Motivation and Example Scenarios • Basic Technology • Current Trends and Research Challenges Prof. Dr. Alexander Schill Technische Universität Dresden Chair of Computer Networks
Service Oriented Architectures (SOA): Structure 2. Find via Registry Requestor Service broker (Registry) 1. Publish Interface 3. Bind Interaction Service provider “Distributed, discovery based model to expose and manage a collection of software assets as services” Prof. Dr. Alexander Schill
SOA: Major Advantages • Flexibility • Dynamic service selection • Variable service orchestration • Simple reconfiguration • Integration • Universal interfaces based on XML • Simple data integration and mapping • Coexistence with middleware and application servers • Traditional benefits of distributed systems • Decentralization • Replication and fault tolerance • Parallel execution, scalability etc. Prof. Dr. Alexander Schill
SOA Example: Closed Service Coupling Client (for instance Point of Sale) Server (for instance account server) Server (for instance database) Client (for instance Automatic Teller Machine) Data management Application logic Client (for instance Home Access) User interface, pre-processing (thin vs.fat client) Prof. Dr. Alexander Schill
SOA Example: Complex Business Services Processing (for instance, insurance industry): • Complex workflows and basic service requirements • Basic services and distributed servers (1) Offer verification Special audit (2) Insurance offer Prepare contracts (parallel) Print documents (3) Calculate surcharges Client register Audit servers Client management Dept-s for special audit Printservers Form editors Contract forms Mobile radio GigabitNetwork Fast Ethernet Prof. Dr. Alexander Schill
SOA Example: Dynamic Business Web Advertising agency Client Dealer / Sales Request Product information Offers Advertising material, Online presence Order Delivery Payments Delivery Large orders Engineer (freelance) Payments Requirements Construction data Manufacturer Bank Video conference Prof. Dr. Alexander Schill
SOA: General Scenarios Summarized • “Closed service coupling”: e.g. automation of internal office tasks, legacy-integration • “Complex business services”: access to services of external partners with close contractual relationship • “Dynamic Business-Web”: Interaction of many loosely coupled systems; e.g. between manufacturers and suppliers • “Agile company”: comprehensive integration, also with customers and partner enterprises Prof. Dr. Alexander Schill
WebServices: Basic Technology for SOA Business Application (using application servers, further distributed internally) UDDI Registry WSDL Description Discovery Web Services Runtime Web Services Client SOAP Firewall • WebServices: Software applications accessible via Internet protocols using XML for messaging, description and discovery; W3C standard Prof. Dr. Alexander Schill
Web Services: Basic Building Blocks • Simple Object Access Protocol (SOAP) • Remote Procedure Call based on Internet/http and XML • Web Service Definition Language (WSDL) • Interface specification language based on XML • Can be mapped on all kinds of programming languages • Universal Description and Integration (UDDI) Service • Directory for registering and locating web services • Global (www.uddi.org) or intranet-based implementation • Specific enhancements • WS-Secure Conversation (WS-Trust + WS-Security), WS-Discovery, WS-Eventing, WS-Coordination, WS-Addressing, WS-ReliableMessaging, WS-Notification Down-to-earth: RPC + interfaces + directory (like 25 years ago!), but with much better wrapping and integration Prof. Dr. Alexander Schill
WSDL (WebServices Description Language) <binding name=“BankServer“ type=“tns:BankServerPortType“> <soap:binding style = “rpc“ transport = “http://... “/> <operation name = “getBalance“> <soap:operation soapAction = “urn:xmethodsBankServer“/> <input> <AccountIdentification> <AccountNumber>3044005</AccountNumber> <pin>****</pin> <name>John Smith</name> </AccountIdentification> </input> <output> ... </output> </operation> </binding> Call modes: oneway ; request-response (Client/Server) notification ; solicit-response (Server/Client) Prof. Dr. Alexander Schill
Integration with Middleware Web Server HTML-Dokumente HTML-Dokumente HTML-Portals HTML-Dokumente HTML-Dokumente Enterprise Application Integration SOAP ApplicationServer Transaction-Monitors proprietaryProtocols HTTP Java- Client Businesssoftware proprietaryProtocols Inner Firewall outer Firewall Mainframe-applications proprietaryProtocols HTML-Client HTTP Stateful-connection Data bases Stateless-connection Prof. Dr. Alexander Schill
BPEL: Business Process Execution Language Controlstations Workflow object Basic concepts: • Composition of WebServices to complex business processes • Flexible “orchestration” • Support for advanced workflow management; tool support UDDIServers Document 1 Document 2 Partial document Partial document Dept-s for special audit Audit servers Form editors Customer relations Printservers Contract Mgmt. Prof. Dr. Alexander Schill
Trend: Web Services / SOA and the Grid Where web services and the grid meet: • Grid services require global integration technology for dynamically sharing and coordinating dispersed, heterogeneous computing resources: WebServices • Examples: • OGSA (Open Grid Services Architecture): WSDL integration • WSRF (Web Services Resource Framework) by Akamai, HP, IBM, Tibco etc. • Gridbus project: Bank accounting framework via WebServices (by Univ. Melbourne) • NASA´s Information Power Grid • SETI@home (Search for Extraterrestial Intelligence) (by Berkeley Univ.) Prof. Dr. Alexander Schill
WebService Interface of Grid Technology: Example UDDI Client Directory Search for application factory 1. Configure computational model Application Factory Server 2. Create application service Application factory service Create 1. Run 2. Get model Information Application factory Get resultdata Run Model Computational model installed on a high-performance machine Prof. Dr. Alexander Schill
Grid Information Service Grid Resource Broker R3 R2 Application R4 R5 RN Grid Resource Broker R6 R1 Resource Broker Grid Information Service database World-wide Grid Environment Enabled by SOA Selected open issues: • Semantic service selection and matching; software reuse based on ontologies • Global security and privacy policies Prof. Dr. Alexander Schill
Trend: Distributed Multimedia and SOA Example: VidConference System (VidSoft) • Softwarecodecs • Multipointservers • Javafrontend • Middleware/SOA based Prof. Dr. Alexander Schill
Underlying Service Architecture Conference Conferencing Client, File and Compression Server Servers, Gateways Multimedia QoS- Session Components Provision Management Sharing Application and Realtime AV Streams Scheduling Interaction Transport Protocols Selected open issues: • Integration of QoS into software lifecycle (e.g. UML level, CQML, runtime tools) • QoS behaviour of complex components / BPEL aggregation Prof. Dr. Alexander Schill
Trend: Mobile / Ubiquitous Computing and SOA Mobile Application Scenario Product data Central office => Caching Service technician: Customer Mobile access Internet Open issues: - Adaptation to highly dynamic network and device characteristics - Context management, personalization, multimodal applications Prof. Dr. Alexander Schill
Internet Trend: Mobile / Ubiquitous Computing and SOA Personal assistant according to customer profile Planning of tour among fair booths Sensor checks online- ticket Internet- booking Online trip planning City info. System gives directions Mobile device purchases ticket -> Security and Privacy? Remote online hotel checkin, restaurant reservation Prof. Dr. Alexander Schill
Thank You!Questions and Discussion Prof. Dr. Alexander Schill