CS 493/693: Distributed Systems Programming

Slides:



Advertisements
Similar presentations
Welcome to Middleware Joseph Amrithraj
Advertisements

Database Architectures and the Web
Enterprise Application Integration (EAI). Overview  What is EAI?  Advantages/Disadvantages  Problems  Software Options.
Remote Procedure Call sockets TCP, UDP Internet Protocol (IP) Remote Procedure Call: hides communication details behind a procedure call and helps bridge.
Chapter 17: Client/Server Computing Business Data Communications, 4e.
Chapter 7 Enterprise-Wide Information Systems
Middleware Technologies compiled by: Thomas M. Cosley.
JMS Java Message Service Instructor Professor: Charles Tappert By Student: Amr Fouda.
Enterprise Application Integration
The Client/Server Database Environment
Messaging Technologies Group: Yuzhou Xia Yi Tan Jianxiao Zhai.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
Process-oriented System Automation Executable Process Modeling & Process Automation.
IBM Research – Thomas J Watson Research Center | March 2006 © 2006 IBM Corporation Events and workflow – BPM Systems Event Application symposium Parallel.
Service Oriented Architecture SOA: Guiding priciples and ESB demonstration Федор ваханах.
Service Integration Architectures An Introduction to Process Integration, Service Integration, and Mashup Integration.
Prepared By: Prof. Dhara Virani CSE/IT Dept. Dr. Subhash Technical Campus. Junagadh. Chapter 7.
Enterprise Application -Lesegruppe WebServices -Zusammenfassung von Tianxiang LU.
Kevin Hudson Oracle Corporation October Evolution of Oracle from Application to Infrastructure.
SOA, BPM, BPEL, jBPM.
Enterprise Systems & Architectures. Enterprise systems are mainly composed of information systems. Business process management mainly deals with information.
ESB Guidance 2.0 Kevin Gock
IS 466 ADVANCED TOPICS IN INFORMATION SYSTEMS LECTURER : NOUF ALMUJALLY 3 – 10 – 2011 College Of Computer Science and Information, Information Systems.
Middleware-Based OS Distributed OS Networked OS 1MEIT Application Distributed Operating System Services Application Network OS.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 21, 2005.
Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.
SOA in Telecommunications September 30, 2008 Speaker: Mike Giordano.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 28, 2005.
CHAPTER TEN Enterprise Resource Planning and Collaboration Systems.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University February 07, 2005.
Web server internal infrastructure suppliercustomer warehouse web server internal infrastructure internal procurement requests B2B interactions occur by.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 7, 2005.
Service Oriented Architectures Presentation By: Clifton Sweeney November 3 rd 2008.
SEMINOR. INTRODUCTION 1. Middleware is connectivity software that provides a mechanism for processes to interact with other processes running on multiple.
Databases JDBC (Java Database Connectivity) –Thin clients – servlet,JavaServer Pages (JSP) –Thick clients – RMI to remote databases –most recommended way.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University April 4, 2005.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University April 11, 2005.
WebMethods Architecture By webMethods_KB. EAI Architecture Concepts Introduction  EAI IT Landscape  Integration Evolution Basic Concepts  Messaging.
Presented By:- Sudipta Dhara Roll Table of Content Table of Content 1.Introduction 2.How it evolved 3.Need of Middleware 4.Middleware Basic 5.Categories.
Eric Wagner Mike Taylor Phil Joseph Copyright © 2009 Catavolt, Inc. All rights reserved.
ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information.
2005 Microsoft PAKISTAN DEVELOPER CONFERENCE June 13-15, 2005.
Overview of SOA and the role of ESB/OSB
Service Oriented Integration Peter Dolog dolog [at] cs [dot] aau [dot] dk Intelligent Web and Information Systems October 5, 2010.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University April 4, 2005.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University February 07, 2005.
TOPIC 7 Enterprise Application Architecture (EAI).
INFS3204/ M21 INFS 3204/7204 Service-Oriented Architecture Dr Heng Tao SHEN ITEE, UQ Semester 2, M2: EAI and B2B - A business case.
Topic 4: Distributed Objects Dr. Ayman Srour Faculty of Applied Engineering and Urban Planning University of Palestine.
Workflow Products October 7,2003 Craig Bennett IBM Corporation.
What is BizTalk ?
SAP Business One 9.0 integration for SAP NetWeaver Solution Overview
Database Architectures and the Web
The Client/Server Database Environment
Enterprise Resource Planning
CS 493/693: Distributed Systems Programming
The Client/Server Database Environment
Web Services Chapter 5.
Chapter 9: The Client/Server Database Environment
Database Architectures and the Web
#01 Client/Server Computing
Ch > 28.4.
Inventory of Distributed Computing Concepts and Web services
Java Messaging Service (JMS)
Enterprise Application Integration Styles
Java Messaging Service (JMS)
Inventory of Distributed Computing Concepts
Chapter 17: Client/Server Computing
Enterprise Integration
#01 Client/Server Computing
Presentation transcript:

CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 7, 2005

Chapter 3: Enterprise Application Integration Web Services: Concepts, Architectures and Applications G. Alonso et. al. Springer Verlag

From Middleware to Enterprise Application Integration (EAI) Middleware and 3-tier architectures addressed the need to integrate multiple resources (typically databases whose interface was standardized using ODBC or JDBC type interfaces) EAI refers to the integration faced when dealing with multiple middleware systems to provide enterprise-wide functionality

EAI: Application Example quotation supplier and customer mgmt order processing procurement shipment management financial Manual process of implementing a supply-chain system Copyright Springer Verlag Berlin Heidelberg 2004

Need for message brokers dispatcher inventory management ERP shipping message-oriented middleware month-end closing new PO With RPC or message-based interoperability, applications need to be Changed if they need to interoperate with a new system (dashed) Copyright Springer Verlag Berlin Heidelberg 2004

Extending basic Message-Oriented Middleware (MOM) message broker core sender receiver message broker with message brokers, custom message routing logic can be defined at the message broker level or at the queue level in basic MOM it is the sender who specifies the identity of the receivers Message brokers enable users to define custom message routing logic Copyright Springer Verlag Berlin Heidelberg 2004

Publish/Subscribe Interaction Model dispatcher (publisher) inventory management (subscriber) ERP shipping message broker month-end closing new PO Copyright Springer Verlag Berlin Heidelberg 2004

Distributed Administration of a Message Broker message broker MB-A message broker MB-B client … message broker MB-C administrative domain A administrative domain B administrative domain C Copyright Springer Verlag Berlin Heidelberg 2004

High-level architecture of typical EAI systems DBMS applications message broker SmartQuotation adapter e-mail database SmartForecasting XYZ integrating application (contains the composition logic) Copyright Springer Verlag Berlin Heidelberg 2004

Example use of message broker at systems startup time (can occur in any order, but all must occur before RFQs are executed) A: subscription to message quote B: subscription to message quoteRequest C: subscription to message newQuote at run time: processing of a request for quote. 1: publication of a quoteRequest message 2: delivery of message quoteRequest 3: synchronous invocation of the getQuote function 4: publication of a quote message 5: delivery of message quote 6: publication of a newQuote message 7: delivery of message newQuote 8: invocation of the createForecastEntry procedure RFQ processing A 1 5 6 message broker B 2 4 C 7 SmartQuotation adapter SmartForecasting adapter 3 8 SmartQuotation SmartForecasting Copyright Springer Verlag Berlin Heidelberg 2004

Critical view of message brokers On the plus side Lower development costs Lower opportunity costs Lower maintenance effort On the negative side Expensive tool suite Adapters may not be easy to build

Workflow Management Systems

Historical background on workflow systems WfMS – work flow management systems Evolved from supporting “office automation” Types of workflows Administrative workflows (travel reimbursement processing) Production workflows Commercial platforms WebSphere MQ workflow (IBM) Vitria Businessware Tibco Business Process Modeling (BPM) BEA Web Logic Microsoft BizTalk Orchestration Standardization effort – Workflow Management Coalition (WfMC)

Workflow definitions Business Process – a collection of activities that are performed by humans or software applications Work node – work that needs to be done Routing node – define the order in which work can be carried out Start and completion nodes – start and end points of workflows Workflow instance – an instance of a specific workflow process

Workflow model for a quotation system check if offered product Offered=false check if worth proceeding Offered=true else GoAhead=true get quote from quotation system variables: QuoteReferenceNumber: int Customer: String Item: String Quantity: int RequestedDeliveryDate: Date DeliveryAddress: String GoAhead: Bool ContractExists: Bool Offered: Bool ContractExists=false get quote from supplier ContractExists=true update quotation system send quote to customer enter quote in forecasting system Copyright Springer Verlag Berlin Heidelberg 2004

Scheduling and managing workflows resource broker resource 1 5 3 4 workflow engine resource 2 completed work items inbound queue 1 2 resource n workflow definitions outbound queues workflow designer Copyright Springer Verlag Berlin Heidelberg 2004

Recovering from failures Forward recovery Backward recovery Sagas or compensating activity Exception handling languages Deadlines and deadline expiration

Workflow and EAI technologies combined WfMS WfMS adapter message broker SmartQuotation adapter database adapter SmartForecasting adapter e-mail adapter XYZ adapter SmartQuotation DBMS applications XYZ SmartForecasting Copyright Springer Verlag Berlin Heidelberg 2004

Workflow summary Expensive and complicated to implement Useful in applications that are highly repetitive But the same applications can be done better with conventional middleware Nevertheless, they constitute a generic approach to a lot of commercial workflow problems.