SharenGo Wiki
About Sharengo
- SharenGo
- Members
- Join us
- Contact

Methodology
- Methodology

Tools
- PragMaTic
- ABS
- JsRIA

Projects
- MarcoPolo

Components Directory

Infrastructure
- HAPlatForm

Legal

Community
- Tracker
- MailingLists

Wiki
- WikiHelp
- RecentChanges
- RSS
- WikiSearch

Google Summer Of Code 2006 proposal

Short description of the PragMaTic Project

(http://sharengo.org/Wiki?PragMaTic)

PragMaTic Team is a group of people that share the passion of developing the PragMaTic open source MDA (http://www.omg.org/mda/) solution. PragMaTic is hosted by SharenGo (an association in creation) and supported by Argia-Engineering, a French company.

PragMaTic is an MDA tool aiming at facilitating model manipulation. There are lots of good open source projects on this subject but we think they are quite complicated to use, as soon as you want to performs tasks on models that are more complex than code generation. The average company developer needs to concentrate on business functionalities and not on building tools. So we try to provide a tool, sufficiently simple in order to be used very quickly and sufficiently powerful to help users work efficiently at a more abstract level than source code. The power of MDA must be accessible to everybody.

PragMaTic is at the beginning of its life but we already use it for several tasks in real-life projects, notably documentation and code generation from UML Models. All pragmatic code and documentation are released under the Apache Software Licence V2. It is written in Java and it based on JMI standard. At this time only the UML 1.4 metamodel with Diagram Interchange extension are supported.


Project Ideas :

1/ Mentor : Jérôme BENOIS, ideas : In order to produce an SVG representation of diagrams, PragMaTic uses now an excellent project named uml2svg (http://uml2svg.sourceforge.net/). However uml2svg depends on a specific version of XMI, it tested just with Poseidon and it uses XSLT to perform the transformation. I propose to integrate all transformation code in a set of Velocity templates and use the metafacades for all UML elements. This would result in an useful feature for PragMaTic, improved performance for diagrams generation, better integration and support for other UML tools compatible with
PragMaTic.

PragMaTic already provides model-to-model manipulation in order to add, remove or update structural UML elements in a model. But the limitation of this features is that the modifications usually have an impact on the diagrams, leading to consistency problems. It would be very useful to add a feature to modify graphical elements supported by the Diagram Interchange specification together with the structural representation. This could even include automatic layout capabilities.

2/ Mentor : Jérôme BENOIS, ideas : Now PragMaTic supports only the XMI 1.X and UML1.4 metamodels. I propose to add support for the new UML2 metamodel in order to better integrate with more UML tools. We must implement a new repository, a specific model visitor and all metafacades for the new metamodel. As a start, we can use the UML2 metamodel reference implementation that is part of the Eclipse project (http://www.eclipse.org/uml2/)

3/ Mentor : Jérôme BENOIS, ideas : In April and May the PragMaTic team plans to realize a mechanism to compare several models and implement diff and merge features. I propose to use this feature to build a "Team Work Server" in order to manage models in a similar ways source files are managed in a Subversion repository, with commit, update and merge capabilities.


We can discuss these and other project ideas on the PragMaTic Developer Mailing List: http://sharengo.org/MailingLists



Google Summer Of Code 2006 proposal is mentioned on: PragMaTic


VeryQuickWiki Version 2.7.1 | Admin
Contact -