3. “Integrare”
Cosa si intende quando parliamo di integrazione?
Trovare una soluzione al seguente problema:
“Come posso far funzionare insieme
molteplici applicazioni attraverso lo
scambio di informazioni?”
3
4. Enterprise Integration Patterns (EIP)
Gli Enterprise Integration Patters offrono
soluzioni per affrontare il precedente
problema.
Cosa sono gli EIP?
4
6. Perchè “integrare” è importante?
Integrare è quindi l’arte di spostare informazioni da una
applicazione ad un altra:
6
(soprattutto per studenti TLC)
I corsi universitari vi insegnano le tecnologie per spostare
informazioni (su reti);
Gli EIP vi insegnano come organizzare bene questo
trasferimento di informazioni su sistemi ICT.
7. Come si può fare integrazione?
I principali metodi tramite cui avviene
integrazione nei sistemi software sono:
7
11. Messaging
Gli EIP si focalizzano sulla integrazione via
“messaging” e definiscono una propria notazione
per rappresentare le soluzioni di integrazione.
11
19. Message Channel
“How does one application communicate with another using messaging?”
19
Messaging Systems
20. Message
“How can two applications connected by a message channel exchange a piece
of information?”
20
Messaging Systems
21. Pipes and Filters
“How can we perform complex processing on a message while maintaining
independence and flexibility?”
21
Messaging Systems
22. Message Routing
“How can you decouple individual processing steps so that messages can be
passed to different filters depending on a set of conditions?”
22
Messaging Systems
23. Message Translator
“How can systems using different data formats communicate with each other
using messaging?”
23
Messaging Systems
24. Message Endpoint
“How does an application connect to a messaging channel to send and
receive messages?”
24
Messaging Systems
26. Point-to-Point channel
“How can the caller be sure that exactly one receiver will receive the
document or perform the call?”
26
Patterns per “Messaging Channels”
35. Message Broker
“How can you decouple the destination of a message from the sender and
maintain central control over the flow of messages?”
35
Patterns per “Message Routing”
36. Canonical Data Model
“How can you minimize dependencies when integrating applications that use
different data formats?”
36
Patterns per “Message Transformation”
38. Polling Consumer
“How can an application consume a message when the application is ready?”
38
Patterns per “Messaging Endpoints”
39. Event Driven Consumer
“How can an application automatically consume messages as they become
available?”
39
Patterns per “Messaging Endpoints”
40. Service Activator
“How can an application design a service to be invoked both via various
messaging technologies and via non-messaging techniques?”
40
Patterns per “Messaging Endpoints”