Talk EclipseSirius Con - EIP Designer - 20151203
-
Upload
laurent-broudoux -
Category
Technology
-
view
1.071 -
download
0
Transcript of Talk EclipseSirius Con - EIP Designer - 20151203
![Page 1: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/1.jpg)
@lbroudoux#EIPDesignerSiriusCon
EIP DesignerBridging the Gap between Enterprise Architecture and Development
Laurent BroudouxDecember 3rd, 2015
![Page 2: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/2.jpg)
@lbroudoux#EIPDesignerSiriusCon
Who am I ?
Laurent Broudoux On day time… Senior IT Architect at Covéa Keywords : EA, SOA, Modeling, Java, Agile, Software factories
On night time… Coder, geek, open source committer (http://github.com/lbroudoux)
Join / follow me @lbroudoux [email protected] http://lbroudoux.wordpress.com
![Page 3: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/3.jpg)
@lbroudoux#EIPDesignerSiriusCon
Enterprise Integration
![Page 4: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/4.jpg)
@lbroudoux#EIPDesignerSiriusCon
How to describe
an integration flow behaviour ?
? ????
??
?
![Page 5: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/5.jpg)
@lbroudoux#EIPDesignerSiriusCon
UML ?
![Page 6: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/6.jpg)
@lbroudoux#EIPDesignerSiriusCon
UML happens to hurt you…
Optional sequences or alternatives with guard conditions.
![Page 7: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/7.jpg)
@lbroudoux#EIPDesignerSiriusCon
… again …Break conditions and parallelism.
![Page 8: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/8.jpg)
@lbroudoux#EIPDesignerSiriusCon
… and again.
Loop definitions.
Lacks and limits in context of Enterprise Integration :- How to qualify a processing step ?
(Acts on data ? Use external resources ?),
- Readability when having numerous partners,
- Accessibility : who does understand ??
![Page 9: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/9.jpg)
@lbroudoux#EIPDesignerSiriusCon
Other candidates ?
BPMN ?OK for modeling options, sequences and parallelismKO for qualifying processing steps
Visio or PowerPoint ?OK if you have defined your own concepts & representations setsDifficult to share (think about your contractors…)Difficult to automate
Text document ?AmbiguousImpossible to automate
![Page 10: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/10.jpg)
@lbroudoux#EIPDesignerSiriusCon
Enterprise Integration Patterns
• Gregor Hohpe and Bobby Woolf in 2003• 65 patterns for describing recurring problems
![Page 11: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/11.jpg)
@lbroudoux#EIPDesignerSiriusCon
Enterprise Integration Patterns
A terminology and its notation for primitives…
Router
Splitter
Enricher
![Page 12: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/12.jpg)
@lbroudoux#EIPDesignerSiriusCon
Enterprise Integration Patterns
With some defined assemblies
Normalizer
Scatter-Gather
![Page 13: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/13.jpg)
@lbroudoux#EIPDesignerSiriusCon
EIP Support
A « de-facto standard » claimed by major vendors
- Just a source code abstraction…- Implicit mapping most of time !
![Page 14: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/14.jpg)
@lbroudoux#EIPDesignerSiriusCon
But…designer for EIP
designer for EIP
EIP is not a language, has no metamodel. It’s just a notation…
![Page 15: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/15.jpg)
@lbroudoux#EIPDesignerSiriusCon
1st step : « Conceptualize Everything »
EIP MetaModel
![Page 16: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/16.jpg)
@lbroudoux#EIPDesignerSiriusCon
Enterprise Architecture
![Page 17: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/17.jpg)
@lbroudoux#EIPDesignerSiriusCon
Enterprise Architecture Service vision
Most of EA methodologies have Service and consumptions concepts
Service
Application Service
Application Function
consumes
usesrealizes
But don’t go further and address the question of « how ? »
![Page 18: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/18.jpg)
@lbroudoux#EIPDesignerSiriusCon
Service / API Behaviour Specification Describe internal processing and
partners interactions
Additional activities
Service / API Realization
Enterprise Architecture activities
In order to fill the gap before actually developping
Service / API InterfaceSpecification
Describe exchanged data (IN / OUT)
![Page 19: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/19.jpg)
@lbroudoux#EIPDesignerSiriusCon
Easy to provide tooling for some…
Service / API Realization
Enterprise Architecture activities
Service / API InterfaceSpecification
Service / API Behaviour Specification
Well-known metamodels and standards artifacts
… some others are less obvious !
?
![Page 20: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/20.jpg)
@lbroudoux#EIPDesignerSiriusCon
Using EIP for behaviour specification
Service / API Realization
Enterprise Architecture activities
Service / API InterfaceSpecification
Service / API Behaviour Specification
Bring some fluidity between activities
Use the EIP tooling to ensure transition
![Page 21: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/21.jpg)
@lbroudoux#EIPDesignerSiriusCon
2nd step : « Bring fluidity in process »
PDE Model transformation
Model to Text generation
![Page 22: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/22.jpg)
@lbroudoux#EIPDesignerSiriusCon
Using EIP for behaviour specification
Service / API Realization
Enterprise Architecture activities
Service / API InterfaceSpecification
Service / API Behaviour Specification
Adding a feedback loop
Because real-life is never a top-down only
process !
![Page 23: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/23.jpg)
@lbroudoux#EIPDesignerSiriusCon
3rd step : « Have a feedback loop »
Model ComparisonPDE
![Page 24: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/24.jpg)
@lbroudoux#EIPDesignerSiriusCon
EIP Designer project
![Page 25: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/25.jpg)
@lbroudoux#EIPDesignerSiriusCon
EIP Designer
A simple, vendor-independant way of formelly describe the behaviour of an integration flow (aka. an Enterpise Service),
Kickstarters for generating code templates for the most commons solutions,
Reverse and control tools for checking development compliance, detecting design caveats,
A Bridge System to extend other designers such as Enteprise Architecture oriented ones.
![Page 26: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/26.jpg)
@lbroudoux#EIPDesignerSiriusCon
EIP Designer
Based on cool Eclipse Modeling Technologies
Open Source (http://github.com/lbroudoux/eip-designer)
Supporting open standards
Spring Integration
Obeo TOGAF Designer
SwitchYard / SCA
![Page 27: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/27.jpg)
@lbroudoux#EIPDesignerSiriusCon
What else ?
We’re using it for technical migrations !
Current experimentation at Covéa
EIP Model
EIP Designer Parsers
EIP Designer
Generators
EA activities
![Page 28: Talk EclipseSirius Con - EIP Designer - 20151203](https://reader036.fdocuments.us/reader036/viewer/2022062302/58edf5591a28abdf688b45c7/html5/thumbnails/28.jpg)
@lbroudoux#EIPDesignerSiriusCon
Thank you !
Crédits photoshttps://www.flickr.com/photos/endymion120/8322183203/https://www.flickr.com/photos/sembazuru/6974372/https://www.flickr.com/photos/flyingturtle/880395543/https://www.flickr.com/photos/bodhack/3426176883/https://www.flickr.com/photos/joone/3050331298/https://www.flickr.com/photos/davegray/