After my previous blog post and with the help (and motivation) of Mickael Istria (https://twitter.com/#!/mickaelistria and http://mickaelistria.wordpress.com/) we will share our feedback about continuous code improvement when developing eclipse based solutions.
This talk will involve some tools and SAAS providers such as :
- Maven/Tycho: to build your app
- Jacoco: to instrument your code in order to gather code coverage
- Sonar: to gather some metrics such as code coverage, it coverage, code conventions, complexity, and so on…
- Cloudbees Dev@cloud SAAS platform : for continuous integration and deployement
You can find the abstract of our incoming talk there : http://www.eclipsecon.org/2012/sessions/get-ready-fight-your-technical-debt-tycho-sonar-and-jacoco
So get ready to fight the technical debt and see you there!
Building tools brings a lot more that compilation. You can go much further.
For instance, have a look at maven : there’s a plugin for almost everything (Here, here, and here). And with the rise of Tycho, you can bring all the power of maven to build OSGI/Eclipse based projects.
Yahoo! pipes is a great tool! I use it to have all my favorites MDE bloggers in a single RSS feed.
You can find that feed here : http://feeds.feedburner.com/MdePipe
Feel free send me new bloggers, I’ll add them for sure!
Nantes, France, has a great environment for MDE purpose: great schools, great labs, great companies and now the FIRST post-graduate specialization Diploma in Model Driven Engineering! Here is an interview with the head of the dipolma: Jordi Cabot.
If like me, you love reading bloggers who are speaking about MDE, here is all the bloggers I follow. Maybe you will enjoy following them? And if you know some others, let me know!
After reading this post, you are now MagicDraw open API experts! But you still need to debug your plugins! Here is a short presentation on how to debug your MagicDraw plugin with Eclipse.
I’ll try to list all the MDE tools I know, I’ll also try to reference them by their scope. Feel free to comment this list of MDE tools!
- actifsource (http://www.actifsource.com/)
- AndroMDA (http://www.andromda.org/)
- Eclipse ATL (http://www.eclipse.org/atl/) is a part of Eclipse Modeling project
- Eclipse QVTO (http://wiki.eclipse.org/M2M/QVTO) is a part of Eclipse Modeling project
- Itemis/Eclipse xpand/xtend (http://wiki.eclipse.org/Xpand) it was originaly a part of the no longer supported openArchitectureWare (http://oaw.itemis.com/ & http://www.openarchitectureware.org/) is now a part of Eclipse Modeling project
- Mia-Software Mia-Generation (http://www.mia-software.com/) is a part of Mia-Studio tool suite
- Mia-Software Mia-Transformation (http://www.mia-software.com/) is a part of Mia-Studio tool suite
- Obeo/Eclipse Acceleo (http://www.eclipse.org/acceleo/) is a M2T tool that has recently moved from the Obeo (http://www.obeo.fr/) company to Eclipse Modeling project
For french readers, you’ll find an introduction about algebraïc graph transformations. Since graph based transformations are quite trendy, I thought it should be a good idea to see what’s behind graph based transformations.
For the ones who don’t speak french, you should watch at least the bibliography at the end of the pdf, since almost bibliography entries are in english.
The purpose of this paper is to have a french version of what is algebraïc graph transformations because there is almost nothing in french.
MagicDraw is a great modeling tool¹ for lot of reasons. First of all :
- this is a mature tool,
- enterprise ready,
- and easy to use.
Then there’s a lot of great side functionalities like :
- reporting templates,
- dependency matrix,
- active validation
- and even more²!
But in a model driven environment, MagicDraw is great because of its open API which allows you to manipulate models and diagrams really easily.
So it’s time to introduce a simple plugin to get familiar with this open API! More >
Dans un contexte d’ingénierie des modèles, Maven2 est un outil formidable pour orchestrer les différents traitements que subissent nos modèles.
C’est ce que nous appliquons chez le client chez qui j’interviens.
Maven2 nous sert (entre autres) à :
- Exécuter un export vers XMI depuis MagicDraw ;
- Exécuter des fonctionalités particulières de MagicDraw sans pour autant lancer MagicDraw en mode graphique ;
- Exécuter nos propres plugins MagicDraw ;
- Valider nos modèles avec nos propres règles de validation codées avec l’API emf/uml2 d’eclipse ;
- Lancer nos transformations de modèle ;
- Et finalement de générer avec MIA-Generation.