400 likes | 419 Vues
Enterprise Application Integration. Walter Moerkerken Ilona Wilmont Integratie Software Systemen 8 mei 2006. Evolution of software architecture Middleware and EAI Message Brokers EAI with message brokers Publish/subscribe model of interaction History Workflow Management systems
E N D
Enterprise Application Integration Walter Moerkerken Ilona Wilmont Integratie Software Systemen 8 mei 2006
Evolution of software architecture Middleware and EAI Message Brokers EAI with message brokers Publish/subscribe model of interaction History Workflow Management systems WfMs`s WfMs als programmeertaal Conclusions Today’s topics
Information system design • Presentation layer - communication with other entities • Application logic layer - actual operation • Resource management layer - data to work with
Architectural design • Information systems are composed of several layers, or tiers. • One-tier architectures • Two-tier architectures • Three-tier architectures • N-tier architectures
Middleware • Interaction between applications across heterogeneous platforms • Solution to integrating set of servers and applications under a common service interface • Basic infrastucture behind distributed information system
Enterprise Application Integration • Extends middleware capabilities to cope with application integration • Uses application logic layers of different middleware systems as building blocks
The supply chain • Customer request - Querying company • Order processing - Analysis and verification purchase order - Scheduling manufacturing of goods • Order fulfillment - Delivery to customer - Financial issues
Difficulties • Different operating system • Support for different interfaces and functionality • Different data format • Different security requirements • Different infrastructure and interaction protocols
Traditional MOM • Point-to-point links • No support for routing logic • No support for heterogeneity • Sender identifies receiver • Complexity increases as more applications are added to the system
Message Brokers • Enhanced MOM-systems • Distribution of messages • Provides flexibility in routing • Filtering of messages • Processing of messages • Adapters for uniform data format • Routing logic moved to middleware
Routing logic • Based on sender’s identity, message type or message content • Rule-based language • Message broker level • Queue level
Message Broker Problems • No tools provided for debugging and maintenance • Performance decreases if application-specific rules are executed at each delivery • Inability to handle large messages
EAI platform components • Adapters • map heterogeneous data formats into common format • Message broker • facilitates interaction among back-end systems
Advantages of message brokers • Lower development cost • Lower opportunity costs • Lower maintenance effort
Publish/subscribe overview • Sender publishes message to middleware • Receivers subscribe with middleware to register their interest
Decoupling • Time • not actively participating in event at the same time • Space • no references to each other • Synchronisation • asynchronous publication and notification
Types of publish/subscribe • Topic-based • Content-based • Type-based
Topic-based publish/subscribe • Earliest scheme, based on topics • Identified by keywords • Represented as strings • Improvement: hierarchical addressing • SupplyChain.newPO • Static scheme with limited expressive power
Content-based publish/subscribe • Based on content of message • Attributes • Meta-data associated with message • Subscribe using subscription language • Specify filters for valid events • type = “newPO” AND quantity = “1200”
Type-based publish/subscribe • Only a suggestion • Filtering messages according to type • Message kind linked to message type • Closer integration of language and middleware
Workflow Management Systems • Geschiedenis • Wat is een workflow? • Uitvoering van een workflow • Workflow als programmeertaal • Workflows met andere Middleware • Voordelen/Nadelen
Geschiedenis • WfMs`s in chronologische volgorde • Administrative workflows • Production workflows • WfMs`s vs. EAI tools • Heterogeniteit • Logica definitie • Perfecte combinatie
Workflow Management Systems • Geschiedenis • Wat is een workflow? • Uitvoering van een workflow • Workflow als programmeertaal • Workflows met andere Middleware • Voordelen/Nadelen
Wat is een workflow? • Workflow proces: • Work Nodes • Routing Nodes • Start & Completion Nodes • Workflow instantie
Workflow Management Systems • Geschiedenis • Wat is een workflow? • Uitvoering van een workflow • Workflow als programmeertaal • Workflows met andere Middleware • Voordelen/Nadelen
Uitvoering van een Workflow Workflow Engine
Workflow Management Systems • Geschiedenis • Wat is een workflow? • Uitvoering van een workflow • Workflow als programmeertaal • Workflows met andere Middleware • Voordelen/Nadelen
Workflow als programmeertaal • Variabelen • Uitvoerder van de procedure • Resource regels • Afhandeling van fouten is anders • Forward Recovery • Backward Recovery • Exception-handling Languages • Deadlines
Workflow Management Systems • Geschiedenis • Wat is een workflow? • Uitvoering van een workflow • Workflow als programmeertaal • Workflows met andere Middleware • Voordelen/Nadelen
Workflow Management Systems • Geschiedenis • Wat is een workflow? • Uitvoering van een workflow • Workflow als programmeertaal • Workflows met andere Middleware • Voordelen/Nadelen
Voordelen: Snel procesontwerp Foutenafhandeling Makkelijk te ondersteunen Nadelen: Een overvloed aan workflows Dure software licenties Complexe installatie en operatie Lange ontwikkelingsfase Voordelen/Nadelen
Conclusies Message broker & Workflow in EAI: • Message broker • Workflow modegevoelig • Lijmen van verschillende systemen • Bieden (nog) niet wat men verwachtte • Samenvoeging • Waarom zoekt men nog wel naar iets anders?