Jérôme BENOIS's Weblog "MDE 2.0 :)"

Aller au contenu | Aller au menu | Aller à la recherche

mercredi 13 janvier 2010

Building an Enterprise Repository with EMF, CDO and EEF Technologies

Last week, we have delivered a prototype of an enterprise repository for a big french insurance company.

What's an enterprise repository?

An enterprise repository can create a multi-dimensionnal space involving all components of an information system. The implementation of such a tool is part of a governance policy on a large scale information system.

Enterprise Repository

The figure above illustrates how a repository is used to align the IT vision on the Business dimension. This tool aggregates all the foundations of the Information System and can easily navigate to this logical view in order to study changes impacts, and define transformations and modernization plans, ...

In our case most of the information already existed, so we decided to create connectors to feed the repository. Existing information are generally collected from :

  • Existing tools : in fact several tools are used to manage information system, but each tools are isolate. In example we have develop a connector to extract the content of MEGA Repository and add the capability to reference this content with other contents.
  • Legacy systems : Database schemas, existing application (Cobol, Natural, Java,...)

Technically, we use the Eclipse Modeling technologies:

  • EMF: to define metamodels
  • CDO: to store and share our big model
  • EEF: to provide editor and sexy properties views

So, A great opportunity for the Obeo Guys to contribute to the CDO project!

In fact, with Gonzague we developed a new feature, the "push mode" aka the local transaction support. We have carried out in collaboration with Eike, our CDO mentor :)

Some details about this feature:

In CDO, the publishing workflow in the repository is:

  1. Open CDO editor
  2. Add some changes
  3. Save your editor
  4. CDO sends changes in the repository

Our contribution introduces the concept of Local Transaction. It adds a step to this worflow:

  1. Open CDO editor
  2. Add some changes
  3. Save your editor
  4. CDO store all deltas in a local binary file
  5. When the user invokes the "Push" action, CDO sends all changes in the repository.

With this feature, we can also restart eclipse, and restore your local changes later on a new session.

Special thanks for Gonzague and Eike for their works! (#298055,#298178,#298568,#297967,#298334)

The next step, is use GMF with Obeo Designer facilities to provide dedicated viewpoints for each kind of actors.

mercredi 1 juillet 2009

Quelques news Spring et Acceleo

Je suis très heureux d'annonçer la sortie imminente de la nouvelle édition de "Spring par la pratique". La parution en librairie est prévu pour le 9 Juillet 2009 et la version ebook est d'ores et déjà disponible.

Un grand bravo à Thierry Templier, Arnaud Cogoluègnes et Julien Dubois qui ont fait un travail de titan sur cette nouvelle version. Vous y trouverez toutes les nouveautés de Spring 2.5 et Spring 3.0 ainsi que des nouveaux chapitres sur Spring Batch ou encore Spring DM.

J'ai eu l'occasion de participer modestement à cette aventure et de contribuer une annexe traitant de l'industrialisation des développements Spring dans Eclipse. Vous devez vous doutez que cette industrialisation est basée sur une approche dirigée par les modèles et utilise le générateur Acceleo :)

Cette nouvelle version atteignant pas moins de 680 pages, les annexes ne seront pas inclus dans l'édition. Mais elles seront bientôt disponibles pour tous en téléchargement sur le site dédié créé pour l'occasion : http://www.springparlapratique.org. La listes des annexes :

  • Annexe A : SpringIDE
  • Annexe B : Développement OSGi dans Eclipse
  • Annexe C : Industrialisation des développements Spring dans Eclipse

Aussi, je profite de ce billet pour relayer l'annonçe de Freddy sur un événement à ne pas manquer "Eclipse Acceleo Day". La communauté Acceleo se retrouvera le 10 Juillet 2009 à Nantes. Cette événement se déroulera pendant les 10ème RMLL. Vous trouverez toutes les informations ainsi que le programme complet ici.

Inscrivez-vous vite, il ne reste que peu de temps avant la clôture des inscriptions !

- page 2 de 9 -