SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
Models as Operational Documentation
SOA Use Case for EMF to ECM

Eclipse Con Europe 2012 – SOA Symposium

                                 Marc Dutoo (Open Wide, FR)




         Confidential | Date | Other Information, if necessary
                                                                 © 2002 IBM Corporation
About the speakers
                                     Open Wide
                                            • Among leading Open Source service providers in
                                              France
                                            • Solutions for business (Portals, Portals, BI) & integration
                                              (SOA, BPM, ESB)
                                            • Subsidiaries : hosting, embedded software

                                     Marc Dutoo - SOA, BPM, ECM architect
                                            • Head of R&D Dept. at Open Wide
                                            • SOA, BPM, ECM expert
                                            • co-leads Eclipse SOA's Java Workflow Tooling


                                     With thanks to
                                          • Yoann Rodière, Open Wide
                                          • EasySOA project partners Nuxeo and EasiFab
                                          • JWT Project partners
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                      2
Agenda

     • The problem
     • The solution
                  • Challenges
                  • Architecture
     • SOA use case and demo




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   3
Problem : with your models, how can you…

           Internal                                                                          Communication
        communication                                                                         with customer

                                                                                              => from model,
… communicate around your
model ?                                                                                       export…
                                                               Reference
                                                                 Data
                                                                                     Formal knowledge
… publish it and make it                                                             Embedded in model :
available to business actors ?                                 (Models)
                                                                                     information, documentation,
                                                                                     comments
… go from design information                                                         Generated from model :
(model) about your system, to                                                        classifications, ontologies,
documenting the developed,                                                           image previews
operated, usable system ?
                                                                                     And link with companion
                                      Assessment
… keep an accessible            (Testing, monitoring, ...)                           informal knowledge,
reference all along the life of                                                          .doc .odt .ppt .odp .xls
your system ?                                                                            .png .svg
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                                  4
This is especially useful in SOA !
   SOA is first and foremost document(ation)
                •     Which services are provided where, when, at which conditions
                •     Formal interfaces (beware of death by too few or too many WSDLs)
                •     Its requirements are born of collaboration between usually separate
                      entities with different (if not opposing) concerns

   Several candidate editors in Eclipse SOA :
     BPMN2, SCA & Mangrove, Startdust’s…
                … enter Java Workflow Tooling
                                                        Versatile Business Process and Workflow Tooling
                                                           and platform
                                                        Various views (UML AD, EPC) and model extensions
                                                        Compatibility (transformations) to other
                                                           representations (BPMN, Mangrove…)
                                                        Export to executable workflow formats (Bonita, jPDL…)
                                                        … Synchronization of documentation with Document
                                                           Management Systems !
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                       5
Solution: Document Management Systems (DMS)

     • But exporting it merely to filesystem ??
                  • Problems : local, classification, (tree) versioning,
                    metadata

     => Enterprise Content Management (ECM)
     No loss of information
             – Rich structure: metadata, relationships, multiple views
     Consistency
             – Automatic versioning,
             – workflows,
             – custom model
     Online: sharing, collaborative editing, discussion

Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   6
Paradigm Fight : File-centric vs. Content-centric

File-centric                                                           Content-centric
        – Simple documents                                                    – Abstract entities
        – Metadata:                                                           – Metadata:
                • Size: 580kb                                                        • Comment: “lol awesome”
                • Last edited by: user33                                             • Endpoint URL:
        – Relationships:                                                               http://example.org/?wsdl
                • Folder/File                                                 – Relationships:
                  (composition)                                                      • High-level: “Service A's
        – Workflows:                                                                   implementation depends
                                                                                       on Service B”
                • User-defined
                                                                              – Workflows:
                                                                                     • Enforced by a policy
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                                7
Solution : we need a bridge !
                            Eclipse                                                  Document Management System

                    Editor model                                                            Business model

                                                            Eclipse/DMS
                                                               bridge




               Eclipse/Filesystem
                     bridge

                                                             • Consistency !
                                                             • Eclipse Resources : not enough
                           XML,
                            ...

Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                                8
Solution: Generic Eclipse/DMS bridge requirements

     • One-way synchronization
             – Export the editor model to the DMS
                    – Information extracted from the editor model is overwritten in the DMS
                      mapped objects
                    – the editor is the only accepted source for these DMS objects (which should
                      be locked otherwise) and fully controls them
             – But accept linked DMS objects that come from other
               sources (such as from DMS document import UI)
     • DMS-agnostic
     • Business model-agnostic
             – It should adapt to any business model on the DMS side



Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                 9
Solution: From Editor model to DMS Model
                                                                    Eclipse

              Editor                                                             CMIS metamodel
            metamodel


          Editor model                                                               Wanted model
                                           Business-aware
                                            transformation                                            Sync
                                              (editor- and                                          (generic)
                                          business-specific)




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                              10
Solution: from Eclipse to DMS
                                     Eclipse                                              CMIS metamodel

       Editor
     metamodel                                                                                         DMS
                                                            DMS model                                  DMS model
    Editor model
                           Business-aware                                            Synchronization
                            transformation                                              (generic)




     • CMIS : DMS standard interface
             – client : Apache Chemistry, (almost) already in Eclipse

     • Transformation : ATL for EMF to EMF
             – With several editors, an exponential number of them required => intermediate
               model (who said Mangrove ?)
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                                 11
Solution: overall architecture of JWT DMS Export
  Editor to CMIS                                                                            = to be
    model ATL                                                                               developed
  transformation                                                                            according to
                                           Input                   ATL VM
                                                                                            editor & DMS
                                                                                            business
          Editor                                                                            models
          model                                                    CMIS
                                                                 EMF model

       Matching
       strategy

                                            Input               Synchronizer         CMIS      DMS
          Sync
        filtering
        strategy

Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                    12
SOA Case Study : EasySOA 101

     A unified service registry for all actors of the SOA
       process, on top of Nuxeo DM
     Service audit and discovery
             – From design, source, classpath, web, monitoring…
     Service documentation
             – Extracted, manual, collaborative editing
     SOA sanity check
             – indicators and validation, from design time to monitoring
     Testing tools : record / (templatized) replay, SOAPUI
     Integrated RAD platform : FraSCAti Studio
     Integrated ESB platform : Talend ESB and Jasmine
       monitoring
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   13
SOA Case Study with JWT and EasySOA

     • From a workflow to SOA documentation
             – JWT workflow package =>
                    – “Business“ folder with author, source, version, description
                    – as well as JWT workflow files
             – JWT Activity (process) => “Process” folder with SVG export of the
               diagram
             – JWT Action using a WebServiceApplication :
                    – Action => business Service
                    – WebServiceApplication => Endpoint with uploaded WSDL
             – Comments on all JWT objects goes as documentation




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   14
SOA Case Study –
                                                                                     showtime !




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                      15
SOA Case Study – showtime !




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   16
SOA Case Study – showtime !




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   17
SOA Case Study with JWT and EasySOA

     • Now…
             – Architects can browse services and endpoints along the generated
               business classification
             – Information about business processes (including image preview) can be
               published along textual specification documents to end users
             – Business-time documentation is available to developers, linked to
               implementations and endpoints they develop
     • In production…
             – This documentation model will again have been enriched
                    – by information extracted at development time (source documentation)
                    – but also from staging and SOA assessment time
             – This aggregated requirements-to-solution documentation of the SOA
               process will be versioned and locked, as a reference to all actors during the
               operational lifetime

Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0       18
Conclusion
  Produce SOA documentation structure and
    information in DMS out of SOA models
               • One-way synchronization of matched & filtered elements
               • Thanks to ATL model transformation & CMIS DMS standard
  What’s next
          – JWT DMS Export :
                 – from ecm_support branch to trunk
                 – More models ? BPMN2, SCA, Stardust…
          – EasySOA : full SOA requirements model, then 1.0
          – Scarbo 2 : SOA-consistent BPM platform based on Eclipse
            tooling (JWT, SCA) and OW2 runtime (FraSCAti service platform
            and Bonita workflow engine)
          – … hopefully for Christmas 
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   19
Thanks for your attention !

                       Any questions???
          …And you, how do you document your services ?
                                   Contact : marc.dutoo AT openwide.fr


         JWT website & wiki: http://www.eclipse.org/jwt
         EasySOA website : http://www.easysoa.org
                                     We thank for his assistance:
                                      Yoann Rodière, Open Wide
                                      EasySOA Project members Nuxeo and EasiFab

Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   20
BONUS




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   21
Problem : what to export ?

     • The simplest: editor files, image files
             – For archive, for reference, for description

     • More advanced: a refined, componentized
       model extracted from the editor model
             – Example: an SOA “System” entity
                    • with references to “Systems” it depends on, actors involved, target business
                      requirements...
                    • Each of them may carry
                        – attached documents (editor files, image files, text documents)
                        – meta-data (commercial name, current endpoints, source location, ...)
                    • Browsing a tree of Systems allows for easier, business-focused access to data




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                    22
Problem : documenting from Eclipse

                                                               PNG
                                                              PNG
                                                             PNG


         Eclipse editor
             model                                                                    Informal
                                                                                     knowledge
                                                              *.doc
                                                               *.odt
                                                              *.html
                                                                 ...



                     P:projectssaveTheWorldv123models_bak2export0023_v2_tmp.rtf

         Problems : local, classification, (tree) versioning, metadata

Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0               23
Solution: Making synchronization generic


                                                                           CMIS metamodel


                                    Eclipse                                                  DMS

                                    Wanted model
                                                                                            Outdated model
  (Somehow)                                                                    CMIS calls




Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                      24
Solution: the matching challenge
                                     Eclipse                                              CMIS metamodel

       Editor
     metamodel                                                                                         DMS
                                                            DMS model                                  DMS model
    Editor model
                           Business-aware                                            Synchronization
                            transformation                                              (generic)




     • CMIS : DMS standard interface
             – client : Apache Chemistry, (almost) already in Eclipse

     • Transformation : ATL for EMF to EMF
             – With several editors, an exponential number of them required => intermediate
               model (who said Mangrove ?)
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0                                 25
Solution: the matching challenge

     • “light” integration to existing editors
             – We can't change their models, their file format, etc.

     • How do we match two objects,
             – one on the editor side and one on the DMS side?
             – By ID?
                 • editor-generated IDs (DMS-provided IDs could not be stored in the editor)
             – By path?
                • Does not allow file move detection
                • But it is a good fallback method, if we can't provide unique, consistent IDs
             – With complex queries (non-atomic IDs)?
             – By another way? We may reference objects that weren't generated by the editor!

     • It depends on the business model
             – (which may be preexisting and immutable)
             – The bridge should not assume anything regarding matching
Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0               26
Solution: the filtering challenge

     • Changes can stem not only from the
       editor, but also from other sources
             – Web interface users
             – Other editors with the same bridge
             – Automatic DMS clients
             – ...
     • Fortunately, we don't need to know where these changes
       came from (three-way synchronization) since we only
       propagate changes one way
     • But the bridge still need to know what change should be
       overwritten, and which one should not
     • So how to select meaningful, non-overwritable changes?

Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0   27

Más contenido relacionado

La actualidad más candente

EclipseConEurope2012 SOA - Talend with EasySOA
EclipseConEurope2012 SOA - Talend with EasySOAEclipseConEurope2012 SOA - Talend with EasySOA
EclipseConEurope2012 SOA - Talend with EasySOAMarc Dutoo
 
EasySOA introduction and video demos - fOSSa 2011
EasySOA introduction and video demos - fOSSa 2011EasySOA introduction and video demos - fOSSa 2011
EasySOA introduction and video demos - fOSSa 2011Marc Dutoo
 
Soa symposium eclipse con 2013
Soa symposium   eclipse con 2013Soa symposium   eclipse con 2013
Soa symposium eclipse con 2013Marc Gille
 
Solution de génération de rapport OpenDocument à partir de plusieurs sources ...
Solution de génération de rapport OpenDocument à partir de plusieurs sources ...Solution de génération de rapport OpenDocument à partir de plusieurs sources ...
Solution de génération de rapport OpenDocument à partir de plusieurs sources ...EclipseDayParis
 
Websphere Application Server: Much more than Open Source
Websphere Application Server: Much more than Open SourceWebsphere Application Server: Much more than Open Source
Websphere Application Server: Much more than Open SourceIBM WebSphereIndia
 
What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009Stefane Fermigier
 
Focus Group Open Source 28.4.2010 Paolo Maresca
Focus Group Open Source 28.4.2010 Paolo MarescaFocus Group Open Source 28.4.2010 Paolo Maresca
Focus Group Open Source 28.4.2010 Paolo MarescaRoberto Galoppini
 
OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...
OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...
OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...mfrancis
 
Experience in Corporate Training in Virtual Worlds
Experience in Corporate Training in Virtual WorldsExperience in Corporate Training in Virtual Worlds
Experience in Corporate Training in Virtual WorldsAgile Dimensions LLC
 
Netbeans-platform ref_card
  Netbeans-platform ref_card  Netbeans-platform ref_card
Netbeans-platform ref_cardrajankadam
 
Research platform architecture
Research platform architectureResearch platform architecture
Research platform architecturePierre Menard
 
Building modular software with OSGi - Ulf Fildebrandt
Building modular software with OSGi - Ulf FildebrandtBuilding modular software with OSGi - Ulf Fildebrandt
Building modular software with OSGi - Ulf Fildebrandtmfrancis
 
Java programming basics
Java programming basicsJava programming basics
Java programming basicsPragya Rastogi
 
Kaa shiv ieee2012topics
Kaa shiv ieee2012topicsKaa shiv ieee2012topics
Kaa shiv ieee2012topicskaashiv
 
DB2 z/OS & Java - What\'s New?
DB2 z/OS & Java - What\'s New?DB2 z/OS & Java - What\'s New?
DB2 z/OS & Java - What\'s New?Laura Hood
 
Java keynote preso
Java keynote presoJava keynote preso
Java keynote presoArtur Alves
 
GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laborator...
GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laborator...GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laborator...
GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laborator...Mohamed Tawfik
 
Agile Testing Practices
Agile Testing PracticesAgile Testing Practices
Agile Testing PracticesPaul King
 

La actualidad más candente (19)

EclipseConEurope2012 SOA - Talend with EasySOA
EclipseConEurope2012 SOA - Talend with EasySOAEclipseConEurope2012 SOA - Talend with EasySOA
EclipseConEurope2012 SOA - Talend with EasySOA
 
EasySOA introduction and video demos - fOSSa 2011
EasySOA introduction and video demos - fOSSa 2011EasySOA introduction and video demos - fOSSa 2011
EasySOA introduction and video demos - fOSSa 2011
 
Soa symposium eclipse con 2013
Soa symposium   eclipse con 2013Soa symposium   eclipse con 2013
Soa symposium eclipse con 2013
 
Solution de génération de rapport OpenDocument à partir de plusieurs sources ...
Solution de génération de rapport OpenDocument à partir de plusieurs sources ...Solution de génération de rapport OpenDocument à partir de plusieurs sources ...
Solution de génération de rapport OpenDocument à partir de plusieurs sources ...
 
Websphere Application Server: Much more than Open Source
Websphere Application Server: Much more than Open SourceWebsphere Application Server: Much more than Open Source
Websphere Application Server: Much more than Open Source
 
What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009What's new in Nuxeo 5.2? - Solutions Linux 2009
What's new in Nuxeo 5.2? - Solutions Linux 2009
 
JavaOne Update zur Java Plattform
JavaOne Update zur Java PlattformJavaOne Update zur Java Plattform
JavaOne Update zur Java Plattform
 
Focus Group Open Source 28.4.2010 Paolo Maresca
Focus Group Open Source 28.4.2010 Paolo MarescaFocus Group Open Source 28.4.2010 Paolo Maresca
Focus Group Open Source 28.4.2010 Paolo Maresca
 
OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...
OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...
OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...
 
Experience in Corporate Training in Virtual Worlds
Experience in Corporate Training in Virtual WorldsExperience in Corporate Training in Virtual Worlds
Experience in Corporate Training in Virtual Worlds
 
Netbeans-platform ref_card
  Netbeans-platform ref_card  Netbeans-platform ref_card
Netbeans-platform ref_card
 
Research platform architecture
Research platform architectureResearch platform architecture
Research platform architecture
 
Building modular software with OSGi - Ulf Fildebrandt
Building modular software with OSGi - Ulf FildebrandtBuilding modular software with OSGi - Ulf Fildebrandt
Building modular software with OSGi - Ulf Fildebrandt
 
Java programming basics
Java programming basicsJava programming basics
Java programming basics
 
Kaa shiv ieee2012topics
Kaa shiv ieee2012topicsKaa shiv ieee2012topics
Kaa shiv ieee2012topics
 
DB2 z/OS & Java - What\'s New?
DB2 z/OS & Java - What\'s New?DB2 z/OS & Java - What\'s New?
DB2 z/OS & Java - What\'s New?
 
Java keynote preso
Java keynote presoJava keynote preso
Java keynote preso
 
GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laborator...
GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laborator...GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laborator...
GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laborator...
 
Agile Testing Practices
Agile Testing PracticesAgile Testing Practices
Agile Testing Practices
 

Similar a EclipseConEurope2012 SOA - Models As Operational Documentation

Analyze your software assets with Modisco par Frédéric Madiot
Analyze your software assets with Modisco par Frédéric MadiotAnalyze your software assets with Modisco par Frédéric Madiot
Analyze your software assets with Modisco par Frédéric MadiotEclipseDayParis
 
OpenMockup - Presentation apr/2016
OpenMockup - Presentation apr/2016OpenMockup - Presentation apr/2016
OpenMockup - Presentation apr/2016Xavi Montero
 
Devnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software DevelopmentDevnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software DevelopmentDevnology
 
Novell enabling collaboration
Novell   enabling collaborationNovell   enabling collaboration
Novell enabling collaborationGWAVA
 
Open Peer Review Meets Open Archives CERN2001
Open Peer Review Meets Open Archives CERN2001Open Peer Review Meets Open Archives CERN2001
Open Peer Review Meets Open Archives CERN2001Simon Buckingham Shum
 
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability EngineeringSADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability EngineeringDavid Marca
 
Interoperability Requirements for a Sustainable Component to Support Manageme...
Interoperability Requirements for a Sustainable Component to Support Manageme...Interoperability Requirements for a Sustainable Component to Support Manageme...
Interoperability Requirements for a Sustainable Component to Support Manageme...Martin Memmel
 
Improve Foundations (EN)
Improve Foundations (EN)Improve Foundations (EN)
Improve Foundations (EN)dduquenne
 
Producing documentation for Eclipse RCP applications using single source prin...
Producing documentation for Eclipse RCP applications using single source prin...Producing documentation for Eclipse RCP applications using single source prin...
Producing documentation for Eclipse RCP applications using single source prin...wild_wild_leha
 
LCTY09 - Beyond office with Lotus Symphony
LCTY09 - Beyond office with Lotus SymphonyLCTY09 - Beyond office with Lotus Symphony
LCTY09 - Beyond office with Lotus SymphonyStuart McIntyre
 
Acceleo Day - Orange
Acceleo Day - OrangeAcceleo Day - Orange
Acceleo Day - Orangesliard
 
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015Mozaic Works
 
Drupal Recipe
Drupal RecipeDrupal Recipe
Drupal Recipehernanibf
 
Visual Ontology Modeling for Domain Experts and Business Users with metaphactory
Visual Ontology Modeling for Domain Experts and Business Users with metaphactoryVisual Ontology Modeling for Domain Experts and Business Users with metaphactory
Visual Ontology Modeling for Domain Experts and Business Users with metaphactoryPeter Haase
 
OpenTravel XML Object Suite Mechanics
OpenTravel XML Object Suite MechanicsOpenTravel XML Object Suite Mechanics
OpenTravel XML Object Suite MechanicsOpenTravel Alliance
 
OSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningOSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningPaco Nathan
 
The Nuxeo Way: leveraging open source to build a world-class ECM platform
The Nuxeo Way: leveraging open source to build a world-class ECM platformThe Nuxeo Way: leveraging open source to build a world-class ECM platform
The Nuxeo Way: leveraging open source to build a world-class ECM platformNuxeo
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLESIvano Malavolta
 

Similar a EclipseConEurope2012 SOA - Models As Operational Documentation (20)

Analyze your software assets with Modisco par Frédéric Madiot
Analyze your software assets with Modisco par Frédéric MadiotAnalyze your software assets with Modisco par Frédéric Madiot
Analyze your software assets with Modisco par Frédéric Madiot
 
OpenMockup - Presentation apr/2016
OpenMockup - Presentation apr/2016OpenMockup - Presentation apr/2016
OpenMockup - Presentation apr/2016
 
Devnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software DevelopmentDevnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software Development
 
Novell enabling collaboration
Novell   enabling collaborationNovell   enabling collaboration
Novell enabling collaboration
 
Open Peer Review Meets Open Archives CERN2001
Open Peer Review Meets Open Archives CERN2001Open Peer Review Meets Open Archives CERN2001
Open Peer Review Meets Open Archives CERN2001
 
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability EngineeringSADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
 
Interoperability Requirements for a Sustainable Component to Support Manageme...
Interoperability Requirements for a Sustainable Component to Support Manageme...Interoperability Requirements for a Sustainable Component to Support Manageme...
Interoperability Requirements for a Sustainable Component to Support Manageme...
 
Improve Foundations (EN)
Improve Foundations (EN)Improve Foundations (EN)
Improve Foundations (EN)
 
Producing documentation for Eclipse RCP applications using single source prin...
Producing documentation for Eclipse RCP applications using single source prin...Producing documentation for Eclipse RCP applications using single source prin...
Producing documentation for Eclipse RCP applications using single source prin...
 
LCTY09 - Beyond office with Lotus Symphony
LCTY09 - Beyond office with Lotus SymphonyLCTY09 - Beyond office with Lotus Symphony
LCTY09 - Beyond office with Lotus Symphony
 
Resume
ResumeResume
Resume
 
Acceleo Day - Orange
Acceleo Day - OrangeAcceleo Day - Orange
Acceleo Day - Orange
 
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
 
Drupal Recipe
Drupal RecipeDrupal Recipe
Drupal Recipe
 
Visual Ontology Modeling for Domain Experts and Business Users with metaphactory
Visual Ontology Modeling for Domain Experts and Business Users with metaphactoryVisual Ontology Modeling for Domain Experts and Business Users with metaphactory
Visual Ontology Modeling for Domain Experts and Business Users with metaphactory
 
OpenTravel XML Object Suite Mechanics
OpenTravel XML Object Suite MechanicsOpenTravel XML Object Suite Mechanics
OpenTravel XML Object Suite Mechanics
 
OSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningOSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine Learning
 
The Nuxeo Way: leveraging open source to build a world-class ECM platform
The Nuxeo Way: leveraging open source to build a world-class ECM platformThe Nuxeo Way: leveraging open source to build a world-class ECM platform
The Nuxeo Way: leveraging open source to build a world-class ECM platform
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES[2015/2016] Software systems engineering PRINCIPLES
[2015/2016] Software systems engineering PRINCIPLES
 

Más de Marc Dutoo

Bringing Entreprise Search in the Big Data era with PCU - Paris Open Source ...
 Bringing Entreprise Search in the Big Data era with PCU - Paris Open Source ... Bringing Entreprise Search in the Big Data era with PCU - Paris Open Source ...
Bringing Entreprise Search in the Big Data era with PCU - Paris Open Source ...Marc Dutoo
 
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...Marc Dutoo
 
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Marc Dutoo
 
PCU@RISE 2017 - Building a thesaurus for product search
PCU@RISE 2017 - Building a thesaurus for product searchPCU@RISE 2017 - Building a thesaurus for product search
PCU@RISE 2017 - Building a thesaurus for product searchMarc Dutoo
 
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...Marc Dutoo
 
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platform
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platformOCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platform
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platformMarc Dutoo
 
OCCIware@OW2con 2016
OCCIware@OW2con 2016OCCIware@OW2con 2016
OCCIware@OW2con 2016Marc Dutoo
 
OCCIware Cloud Expo London 2016 - Docker Studio, Studio Factory, erocci bus &...
OCCIware Cloud Expo London 2016 - Docker Studio, Studio Factory, erocci bus &...OCCIware Cloud Expo London 2016 - Docker Studio, Studio Factory, erocci bus &...
OCCIware Cloud Expo London 2016 - Docker Studio, Studio Factory, erocci bus &...Marc Dutoo
 
OCCIware @ Cloud Computing World 2016 - year 1 milestone & Linked Data demo
OCCIware @ Cloud Computing World 2016 - year 1 milestone & Linked Data demoOCCIware @ Cloud Computing World 2016 - year 1 milestone & Linked Data demo
OCCIware @ Cloud Computing World 2016 - year 1 milestone & Linked Data demoMarc Dutoo
 
OCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSSOCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSSMarc Dutoo
 
OCCIware - A Framework for Everything as a Service - Cloud Expo London 2015
OCCIware - A Framework for Everything as a Service - Cloud Expo London 2015OCCIware - A Framework for Everything as a Service - Cloud Expo London 2015
OCCIware - A Framework for Everything as a Service - Cloud Expo London 2015Marc Dutoo
 
EasySOA business case and real world use case 20130220
EasySOA business case and real world use case 20130220EasySOA business case and real world use case 20130220
EasySOA business case and real world use case 20130220Marc Dutoo
 
Alfresco Meetup - ETL Connector & Talend
Alfresco Meetup - ETL Connector & TalendAlfresco Meetup - ETL Connector & Talend
Alfresco Meetup - ETL Connector & TalendMarc Dutoo
 
Scripts, Apps, APIs : les nouveaux champs de bataille de l'Open Source à l'èr...
Scripts, Apps, APIs : les nouveaux champs de bataille de l'Open Source à l'èr...Scripts, Apps, APIs : les nouveaux champs de bataille de l'Open Source à l'èr...
Scripts, Apps, APIs : les nouveaux champs de bataille de l'Open Source à l'èr...Marc Dutoo
 
SOA facile en 10 pratiques avec EasySOA - Alpes JUG
SOA facile en 10 pratiques avec EasySOA - Alpes JUGSOA facile en 10 pratiques avec EasySOA - Alpes JUG
SOA facile en 10 pratiques avec EasySOA - Alpes JUGMarc Dutoo
 
EasySOA thanks to OW2 - OW2Con 2011
EasySOA thanks to OW2 - OW2Con 2011EasySOA thanks to OW2 - OW2Con 2011
EasySOA thanks to OW2 - OW2Con 2011Marc Dutoo
 
Open Wide Flyer - OW2 Conference 2010 – 23-24 November, Paris
Open Wide Flyer - OW2 Conference 2010 – 23-24 November, ParisOpen Wide Flyer - OW2 Conference 2010 – 23-24 November, Paris
Open Wide Flyer - OW2 Conference 2010 – 23-24 November, ParisMarc Dutoo
 
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...Marc Dutoo
 
Eclipse Summit 2009 - Aspect Oriented Modeling
Eclipse Summit 2009 - Aspect Oriented ModelingEclipse Summit 2009 - Aspect Oriented Modeling
Eclipse Summit 2009 - Aspect Oriented ModelingMarc Dutoo
 

Más de Marc Dutoo (19)

Bringing Entreprise Search in the Big Data era with PCU - Paris Open Source ...
 Bringing Entreprise Search in the Big Data era with PCU - Paris Open Source ... Bringing Entreprise Search in the Big Data era with PCU - Paris Open Source ...
Bringing Entreprise Search in the Big Data era with PCU - Paris Open Source ...
 
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...
OCCIware @ Paris Open Source Summit 2017 - a standard, extensible Cloud consu...
 
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
 
PCU@RISE 2017 - Building a thesaurus for product search
PCU@RISE 2017 - Building a thesaurus for product searchPCU@RISE 2017 - Building a thesaurus for product search
PCU@RISE 2017 - Building a thesaurus for product search
 
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...
OCCIware@CloudExpoLondon2017 - an extensible, standard XaaS Cloud consumer pl...
 
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platform
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platformOCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platform
OCCIware@POSS 2016 - an extensible, standard XaaS cloud consumer platform
 
OCCIware@OW2con 2016
OCCIware@OW2con 2016OCCIware@OW2con 2016
OCCIware@OW2con 2016
 
OCCIware Cloud Expo London 2016 - Docker Studio, Studio Factory, erocci bus &...
OCCIware Cloud Expo London 2016 - Docker Studio, Studio Factory, erocci bus &...OCCIware Cloud Expo London 2016 - Docker Studio, Studio Factory, erocci bus &...
OCCIware Cloud Expo London 2016 - Docker Studio, Studio Factory, erocci bus &...
 
OCCIware @ Cloud Computing World 2016 - year 1 milestone & Linked Data demo
OCCIware @ Cloud Computing World 2016 - year 1 milestone & Linked Data demoOCCIware @ Cloud Computing World 2016 - year 1 milestone & Linked Data demo
OCCIware @ Cloud Computing World 2016 - year 1 milestone & Linked Data demo
 
OCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSSOCCIware & Linked Data prototype OW2Con@POSS
OCCIware & Linked Data prototype OW2Con@POSS
 
OCCIware - A Framework for Everything as a Service - Cloud Expo London 2015
OCCIware - A Framework for Everything as a Service - Cloud Expo London 2015OCCIware - A Framework for Everything as a Service - Cloud Expo London 2015
OCCIware - A Framework for Everything as a Service - Cloud Expo London 2015
 
EasySOA business case and real world use case 20130220
EasySOA business case and real world use case 20130220EasySOA business case and real world use case 20130220
EasySOA business case and real world use case 20130220
 
Alfresco Meetup - ETL Connector & Talend
Alfresco Meetup - ETL Connector & TalendAlfresco Meetup - ETL Connector & Talend
Alfresco Meetup - ETL Connector & Talend
 
Scripts, Apps, APIs : les nouveaux champs de bataille de l'Open Source à l'èr...
Scripts, Apps, APIs : les nouveaux champs de bataille de l'Open Source à l'èr...Scripts, Apps, APIs : les nouveaux champs de bataille de l'Open Source à l'èr...
Scripts, Apps, APIs : les nouveaux champs de bataille de l'Open Source à l'èr...
 
SOA facile en 10 pratiques avec EasySOA - Alpes JUG
SOA facile en 10 pratiques avec EasySOA - Alpes JUGSOA facile en 10 pratiques avec EasySOA - Alpes JUG
SOA facile en 10 pratiques avec EasySOA - Alpes JUG
 
EasySOA thanks to OW2 - OW2Con 2011
EasySOA thanks to OW2 - OW2Con 2011EasySOA thanks to OW2 - OW2Con 2011
EasySOA thanks to OW2 - OW2Con 2011
 
Open Wide Flyer - OW2 Conference 2010 – 23-24 November, Paris
Open Wide Flyer - OW2 Conference 2010 – 23-24 November, ParisOpen Wide Flyer - OW2 Conference 2010 – 23-24 November, Paris
Open Wide Flyer - OW2 Conference 2010 – 23-24 November, Paris
 
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
 
Eclipse Summit 2009 - Aspect Oriented Modeling
Eclipse Summit 2009 - Aspect Oriented ModelingEclipse Summit 2009 - Aspect Oriented Modeling
Eclipse Summit 2009 - Aspect Oriented Modeling
 

EclipseConEurope2012 SOA - Models As Operational Documentation

  • 1. Models as Operational Documentation SOA Use Case for EMF to ECM Eclipse Con Europe 2012 – SOA Symposium Marc Dutoo (Open Wide, FR) Confidential | Date | Other Information, if necessary © 2002 IBM Corporation
  • 2. About the speakers  Open Wide • Among leading Open Source service providers in France • Solutions for business (Portals, Portals, BI) & integration (SOA, BPM, ESB) • Subsidiaries : hosting, embedded software  Marc Dutoo - SOA, BPM, ECM architect • Head of R&D Dept. at Open Wide • SOA, BPM, ECM expert • co-leads Eclipse SOA's Java Workflow Tooling  With thanks to • Yoann Rodière, Open Wide • EasySOA project partners Nuxeo and EasiFab • JWT Project partners Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 2
  • 3. Agenda • The problem • The solution • Challenges • Architecture • SOA use case and demo Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 3
  • 4. Problem : with your models, how can you… Internal Communication communication with customer => from model, … communicate around your model ? export… Reference Data Formal knowledge … publish it and make it Embedded in model : available to business actors ? (Models) information, documentation, comments … go from design information Generated from model : (model) about your system, to classifications, ontologies, documenting the developed, image previews operated, usable system ? And link with companion Assessment … keep an accessible (Testing, monitoring, ...) informal knowledge, reference all along the life of .doc .odt .ppt .odp .xls your system ? .png .svg Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 4
  • 5. This is especially useful in SOA ! SOA is first and foremost document(ation) • Which services are provided where, when, at which conditions • Formal interfaces (beware of death by too few or too many WSDLs) • Its requirements are born of collaboration between usually separate entities with different (if not opposing) concerns Several candidate editors in Eclipse SOA : BPMN2, SCA & Mangrove, Startdust’s… … enter Java Workflow Tooling Versatile Business Process and Workflow Tooling and platform Various views (UML AD, EPC) and model extensions Compatibility (transformations) to other representations (BPMN, Mangrove…) Export to executable workflow formats (Bonita, jPDL…) … Synchronization of documentation with Document Management Systems ! Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 5
  • 6. Solution: Document Management Systems (DMS) • But exporting it merely to filesystem ?? • Problems : local, classification, (tree) versioning, metadata => Enterprise Content Management (ECM) No loss of information – Rich structure: metadata, relationships, multiple views Consistency – Automatic versioning, – workflows, – custom model Online: sharing, collaborative editing, discussion Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 6
  • 7. Paradigm Fight : File-centric vs. Content-centric File-centric Content-centric – Simple documents – Abstract entities – Metadata: – Metadata: • Size: 580kb • Comment: “lol awesome” • Last edited by: user33 • Endpoint URL: – Relationships: http://example.org/?wsdl • Folder/File – Relationships: (composition) • High-level: “Service A's – Workflows: implementation depends on Service B” • User-defined – Workflows: • Enforced by a policy Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 7
  • 8. Solution : we need a bridge ! Eclipse Document Management System Editor model Business model Eclipse/DMS bridge Eclipse/Filesystem bridge • Consistency ! • Eclipse Resources : not enough XML, ... Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 8
  • 9. Solution: Generic Eclipse/DMS bridge requirements • One-way synchronization – Export the editor model to the DMS – Information extracted from the editor model is overwritten in the DMS mapped objects – the editor is the only accepted source for these DMS objects (which should be locked otherwise) and fully controls them – But accept linked DMS objects that come from other sources (such as from DMS document import UI) • DMS-agnostic • Business model-agnostic – It should adapt to any business model on the DMS side Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 9
  • 10. Solution: From Editor model to DMS Model Eclipse Editor CMIS metamodel metamodel Editor model Wanted model Business-aware transformation Sync (editor- and (generic) business-specific) Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 10
  • 11. Solution: from Eclipse to DMS Eclipse CMIS metamodel Editor metamodel DMS DMS model DMS model Editor model Business-aware Synchronization transformation (generic) • CMIS : DMS standard interface – client : Apache Chemistry, (almost) already in Eclipse • Transformation : ATL for EMF to EMF – With several editors, an exponential number of them required => intermediate model (who said Mangrove ?) Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 11
  • 12. Solution: overall architecture of JWT DMS Export Editor to CMIS = to be model ATL developed transformation according to Input ATL VM editor & DMS business Editor models model CMIS EMF model Matching strategy Input Synchronizer CMIS DMS Sync filtering strategy Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 12
  • 13. SOA Case Study : EasySOA 101 A unified service registry for all actors of the SOA process, on top of Nuxeo DM Service audit and discovery – From design, source, classpath, web, monitoring… Service documentation – Extracted, manual, collaborative editing SOA sanity check – indicators and validation, from design time to monitoring Testing tools : record / (templatized) replay, SOAPUI Integrated RAD platform : FraSCAti Studio Integrated ESB platform : Talend ESB and Jasmine monitoring Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 13
  • 14. SOA Case Study with JWT and EasySOA • From a workflow to SOA documentation – JWT workflow package => – “Business“ folder with author, source, version, description – as well as JWT workflow files – JWT Activity (process) => “Process” folder with SVG export of the diagram – JWT Action using a WebServiceApplication : – Action => business Service – WebServiceApplication => Endpoint with uploaded WSDL – Comments on all JWT objects goes as documentation Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 14
  • 15. SOA Case Study – showtime ! Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 15
  • 16. SOA Case Study – showtime ! Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 16
  • 17. SOA Case Study – showtime ! Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 17
  • 18. SOA Case Study with JWT and EasySOA • Now… – Architects can browse services and endpoints along the generated business classification – Information about business processes (including image preview) can be published along textual specification documents to end users – Business-time documentation is available to developers, linked to implementations and endpoints they develop • In production… – This documentation model will again have been enriched – by information extracted at development time (source documentation) – but also from staging and SOA assessment time – This aggregated requirements-to-solution documentation of the SOA process will be versioned and locked, as a reference to all actors during the operational lifetime Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 18
  • 19. Conclusion Produce SOA documentation structure and information in DMS out of SOA models • One-way synchronization of matched & filtered elements • Thanks to ATL model transformation & CMIS DMS standard What’s next – JWT DMS Export : – from ecm_support branch to trunk – More models ? BPMN2, SCA, Stardust… – EasySOA : full SOA requirements model, then 1.0 – Scarbo 2 : SOA-consistent BPM platform based on Eclipse tooling (JWT, SCA) and OW2 runtime (FraSCAti service platform and Bonita workflow engine) – … hopefully for Christmas  Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 19
  • 20. Thanks for your attention ! Any questions??? …And you, how do you document your services ? Contact : marc.dutoo AT openwide.fr JWT website & wiki: http://www.eclipse.org/jwt EasySOA website : http://www.easysoa.org We thank for his assistance:  Yoann Rodière, Open Wide  EasySOA Project members Nuxeo and EasiFab Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 20
  • 21. BONUS Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 21
  • 22. Problem : what to export ? • The simplest: editor files, image files – For archive, for reference, for description • More advanced: a refined, componentized model extracted from the editor model – Example: an SOA “System” entity • with references to “Systems” it depends on, actors involved, target business requirements... • Each of them may carry – attached documents (editor files, image files, text documents) – meta-data (commercial name, current endpoints, source location, ...) • Browsing a tree of Systems allows for easier, business-focused access to data Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 22
  • 23. Problem : documenting from Eclipse PNG PNG PNG Eclipse editor model Informal knowledge *.doc *.odt *.html ... P:projectssaveTheWorldv123models_bak2export0023_v2_tmp.rtf Problems : local, classification, (tree) versioning, metadata Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 23
  • 24. Solution: Making synchronization generic CMIS metamodel Eclipse DMS Wanted model Outdated model (Somehow) CMIS calls Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 24
  • 25. Solution: the matching challenge Eclipse CMIS metamodel Editor metamodel DMS DMS model DMS model Editor model Business-aware Synchronization transformation (generic) • CMIS : DMS standard interface – client : Apache Chemistry, (almost) already in Eclipse • Transformation : ATL for EMF to EMF – With several editors, an exponential number of them required => intermediate model (who said Mangrove ?) Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 25
  • 26. Solution: the matching challenge • “light” integration to existing editors – We can't change their models, their file format, etc. • How do we match two objects, – one on the editor side and one on the DMS side? – By ID? • editor-generated IDs (DMS-provided IDs could not be stored in the editor) – By path? • Does not allow file move detection • But it is a good fallback method, if we can't provide unique, consistent IDs – With complex queries (non-atomic IDs)? – By another way? We may reference objects that weren't generated by the editor! • It depends on the business model – (which may be preexisting and immutable) – The bridge should not assume anything regarding matching Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 26
  • 27. Solution: the filtering challenge • Changes can stem not only from the editor, but also from other sources – Web interface users – Other editors with the same bridge – Automatic DMS clients – ... • Fortunately, we don't need to know where these changes came from (three-way synchronization) since we only propagate changes one way • But the bridge still need to know what change should be overwritten, and which one should not • So how to select meaningful, non-overwritable changes? Eclipse Foundation, Inc. | © 2012 by Open Wide - Made available under the EPL v1.0 27