SlideShare a Scribd company logo
1 of 9
STUDIO DEL FRAMEWORK
APACHE CAMEL PER
L’IMPLEMENTAZIONE
MODULARE DI PRIMITIVE
DI MEDIAZIONE

RELATORI:
Autili Marco
Tivoli Massimo

CANDIDATO:
Lamonaco Giacomo
CONNETTORE SOFTWARE


Le soluzioni software più interessanti hanno quasi
sempre la necessità di interagire con l’esterno
I don’t
understand..

Che ore
sono?

Applicazione
A

Applicazione
B
INCORRISPONDENZA

Che ore
sono?

02.17 !

Applicazione
A

Applicazione
B
CONNETTORE
SOFTWARE
What’s the
time?
ALGEBRA DEI CONNETTORI


Principali pattern di mediazione
Primitive Algebra Dei Connettori
PATTERN DI INTEGRAZIONE (EIP)


I principali pattern di integrazione
Enterprise Integration Pattern

Message Translator

Splitter

Aggregator

Resequencer
RELAZIONI TRA LE DUE
CATEGORIE DI PATTERN
Primitive Algebra Dei Connettori

Enterprise Integration Pattern

Message Translator

Splitter

Aggregator

Resequencer
APACHE CAMEL


Il framework apache camel implementa diversi
pattern di integrazione
Primitive Algebra Dei Connettori

Enterprise Integration Pattern

Message Translator

Splitter

Aggregator

Resequencer
LA LIBRERIA CABAC


Connector Algebra Based on Apache Camel
CABAC LIBRARY

La libreria espone in concetti del
framework rispettando la struttura
proposta dall’algebra dei connettori



APACHE CAMEL FRAMEWORK

.
.
.

Implementa diversi operatori di composizione

Applicazione dell’operatore di plug su due termini
UNA SEMPLICE APPLICAZIONE


Interazione utilizzando termini dell’algebra
CONCLUSIONI E SVILUPPI FUTURI
o

La libreria CABAC implementa la specifica
dell’algebra dei connettori in [1]

o

La libreria può essere ulteriormente estesa.

o

Verificare il comportamento della libreria in
relazione a scenari più complessi

1. Marco Autili, Chris Chilton, Paola Inverardi, Marta Kwiatkowska and Massimo Tivoli, Towards a
Connector Algebra, in: 4th International Symposium on Leveraging Applications (ISoLA 2010) of Formal
Methods, Verification and Validation, pages 278-292, LNCS

More Related Content

Similar to Connector Algebra Build on top of Apache Camel - EIP

Modeling and Synthesizing Modular Connectors via composition of protocol medi...
Modeling and Synthesizing Modular Connectors via composition of protocol medi...Modeling and Synthesizing Modular Connectors via composition of protocol medi...
Modeling and Synthesizing Modular Connectors via composition of protocol medi...Giacomo Lamonaco
 
Applicazioni web con Asp.Net MVC 6
Applicazioni web con Asp.Net MVC 6Applicazioni web con Asp.Net MVC 6
Applicazioni web con Asp.Net MVC 6Michele Aponte
 
Code Generation con i templates T4 in visual studio
Code Generation con i templates T4 in visual studioCode Generation con i templates T4 in visual studio
Code Generation con i templates T4 in visual studioMarco Parenzan
 
Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?Andrea Carratta
 
Continuous Integration e High Quality Code
Continuous Integration e High Quality CodeContinuous Integration e High Quality Code
Continuous Integration e High Quality CodeDaniele Mondello
 
Machine learning models continuous deployment on azure using devops
Machine learning models continuous deployment on azure using devopsMachine learning models continuous deployment on azure using devops
Machine learning models continuous deployment on azure using devopsIgor Antonacci
 
Continous Delivery & HQ Code
Continous Delivery & HQ CodeContinous Delivery & HQ Code
Continous Delivery & HQ CodeDaniele Mondello
 
Ricerca Operativa - AMPL
Ricerca Operativa - AMPLRicerca Operativa - AMPL
Ricerca Operativa - AMPLmacdario
 
Deep diving C# 4 (Raffaele Rialdi)
Deep diving C# 4 (Raffaele Rialdi)Deep diving C# 4 (Raffaele Rialdi)
Deep diving C# 4 (Raffaele Rialdi)DotNetMarche
 
Alessandro Forte - MVP vs MVC
Alessandro Forte - MVP vs MVCAlessandro Forte - MVP vs MVC
Alessandro Forte - MVP vs MVCAlessandro Forte
 
Generazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptxGenerazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptxGiacomoZorzin
 
AntiPatterns: i vizi del programmatore
AntiPatterns: i vizi del programmatoreAntiPatterns: i vizi del programmatore
AntiPatterns: i vizi del programmatoreManuel Scapolan
 
Riuso Object Oriented
Riuso Object OrientedRiuso Object Oriented
Riuso Object OrientedStefano Fago
 
Capitolo 7 elementi di programmazione c-c++
Capitolo 7   elementi di programmazione  c-c++Capitolo 7   elementi di programmazione  c-c++
Capitolo 7 elementi di programmazione c-c++Giovanni Della Lunga
 
IBM Softwareland 2008 - Rational
IBM Softwareland 2008 - RationalIBM Softwareland 2008 - Rational
IBM Softwareland 2008 - Rationalfedericobotti
 
Introduzione ai Design Pattern
Introduzione ai Design PatternIntroduzione ai Design Pattern
Introduzione ai Design PatternRiccardo Cardin
 

Similar to Connector Algebra Build on top of Apache Camel - EIP (20)

Modeling and Synthesizing Modular Connectors via composition of protocol medi...
Modeling and Synthesizing Modular Connectors via composition of protocol medi...Modeling and Synthesizing Modular Connectors via composition of protocol medi...
Modeling and Synthesizing Modular Connectors via composition of protocol medi...
 
Applicazioni web con Asp.Net MVC 6
Applicazioni web con Asp.Net MVC 6Applicazioni web con Asp.Net MVC 6
Applicazioni web con Asp.Net MVC 6
 
Code Generation con i templates T4 in visual studio
Code Generation con i templates T4 in visual studioCode Generation con i templates T4 in visual studio
Code Generation con i templates T4 in visual studio
 
Introduzione a UML
Introduzione a UMLIntroduzione a UML
Introduzione a UML
 
Kotlin hexagonal-architecture
Kotlin hexagonal-architectureKotlin hexagonal-architecture
Kotlin hexagonal-architecture
 
Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?
 
Continuous Integration e High Quality Code
Continuous Integration e High Quality CodeContinuous Integration e High Quality Code
Continuous Integration e High Quality Code
 
EIP with Apache Camel
EIP with Apache CamelEIP with Apache Camel
EIP with Apache Camel
 
Machine learning models continuous deployment on azure using devops
Machine learning models continuous deployment on azure using devopsMachine learning models continuous deployment on azure using devops
Machine learning models continuous deployment on azure using devops
 
Continous Delivery & HQ Code
Continous Delivery & HQ CodeContinous Delivery & HQ Code
Continous Delivery & HQ Code
 
Ricerca Operativa - AMPL
Ricerca Operativa - AMPLRicerca Operativa - AMPL
Ricerca Operativa - AMPL
 
Deep diving C# 4 (Raffaele Rialdi)
Deep diving C# 4 (Raffaele Rialdi)Deep diving C# 4 (Raffaele Rialdi)
Deep diving C# 4 (Raffaele Rialdi)
 
Alessandro Forte - MVP vs MVC
Alessandro Forte - MVP vs MVCAlessandro Forte - MVP vs MVC
Alessandro Forte - MVP vs MVC
 
Generazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptxGenerazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptx
 
AntiPatterns: i vizi del programmatore
AntiPatterns: i vizi del programmatoreAntiPatterns: i vizi del programmatore
AntiPatterns: i vizi del programmatore
 
Riuso Object Oriented
Riuso Object OrientedRiuso Object Oriented
Riuso Object Oriented
 
Angular and beyond
Angular and beyondAngular and beyond
Angular and beyond
 
Capitolo 7 elementi di programmazione c-c++
Capitolo 7   elementi di programmazione  c-c++Capitolo 7   elementi di programmazione  c-c++
Capitolo 7 elementi di programmazione c-c++
 
IBM Softwareland 2008 - Rational
IBM Softwareland 2008 - RationalIBM Softwareland 2008 - Rational
IBM Softwareland 2008 - Rational
 
Introduzione ai Design Pattern
Introduzione ai Design PatternIntroduzione ai Design Pattern
Introduzione ai Design Pattern
 

Recently uploaded

Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxLorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxlorenzodemidio01
 
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaXIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaStefano Lariccia
 
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxLorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxlorenzodemidio01
 
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaXI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaStefano Lariccia
 
Lorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxLorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxlorenzodemidio01
 
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxLorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxlorenzodemidio01
 

Recently uploaded (6)

Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxLorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
 
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaXIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
 
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxLorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
 
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaXI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
 
Lorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxLorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptx
 
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxLorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
 

Connector Algebra Build on top of Apache Camel - EIP

  • 1. STUDIO DEL FRAMEWORK APACHE CAMEL PER L’IMPLEMENTAZIONE MODULARE DI PRIMITIVE DI MEDIAZIONE RELATORI: Autili Marco Tivoli Massimo CANDIDATO: Lamonaco Giacomo
  • 2. CONNETTORE SOFTWARE  Le soluzioni software più interessanti hanno quasi sempre la necessità di interagire con l’esterno I don’t understand.. Che ore sono? Applicazione A Applicazione B INCORRISPONDENZA Che ore sono? 02.17 ! Applicazione A Applicazione B CONNETTORE SOFTWARE What’s the time?
  • 3. ALGEBRA DEI CONNETTORI  Principali pattern di mediazione Primitive Algebra Dei Connettori
  • 4. PATTERN DI INTEGRAZIONE (EIP)  I principali pattern di integrazione Enterprise Integration Pattern Message Translator Splitter Aggregator Resequencer
  • 5. RELAZIONI TRA LE DUE CATEGORIE DI PATTERN Primitive Algebra Dei Connettori Enterprise Integration Pattern Message Translator Splitter Aggregator Resequencer
  • 6. APACHE CAMEL  Il framework apache camel implementa diversi pattern di integrazione Primitive Algebra Dei Connettori Enterprise Integration Pattern Message Translator Splitter Aggregator Resequencer
  • 7. LA LIBRERIA CABAC  Connector Algebra Based on Apache Camel CABAC LIBRARY La libreria espone in concetti del framework rispettando la struttura proposta dall’algebra dei connettori  APACHE CAMEL FRAMEWORK . . . Implementa diversi operatori di composizione Applicazione dell’operatore di plug su due termini
  • 8. UNA SEMPLICE APPLICAZIONE  Interazione utilizzando termini dell’algebra
  • 9. CONCLUSIONI E SVILUPPI FUTURI o La libreria CABAC implementa la specifica dell’algebra dei connettori in [1] o La libreria può essere ulteriormente estesa. o Verificare il comportamento della libreria in relazione a scenari più complessi 1. Marco Autili, Chris Chilton, Paola Inverardi, Marta Kwiatkowska and Massimo Tivoli, Towards a Connector Algebra, in: 4th International Symposium on Leveraging Applications (ISoLA 2010) of Formal Methods, Verification and Validation, pages 278-292, LNCS