The Generative Software GmbH and the FZI have done a survey about the usage of Model-Driven Software Development approaches with around 300 participants. Almost 90% of the respondents have prior experience with the topic, so the report might give interesting general insights.
Please see theÂ MDSD report 2010 (sorry, only in German) for details on the results.
Do you make use of MDSD techniques?
I just discovered TextUML, an Eclipse extension that enables you to define UML models textually. It started out as a free but closed source project and was open sourced eventually.
The core of this tool is the editor for the textual UML representation that provides many features that developers are used to (syntax highlighting, validation, outline view etc.). Additionally, Graphviz can be integrated to create diagrams from the textual models.
There are detailed instructions for the installation of TextUML and the Graphviz integration and a tutorial to get started with textual modeling.
A huge advantage of textual over graphical notations is in my opinion the possibility to create diffs which means you can easily put those textual models under version control and profit from Eclipse’s compare mechanism. This enables teams of developers to share a common model and to edit it concurrently like any other piece of source code.
According to Rafael Chaves’ (the author of the project) comment on the previously linked article,
[...] the final goal is at some point to submit a proposal to Eclipse.org [...]
I hope that this goal will be reached, because TextUML is a very interesting and promising project. Claiming
- increased modeling productivity
- live graphical visualization of your class diagrams
as two of the key benefits of using TextUML, the goal should not be too far away. Productivity is always welcome and the graphical visualization may be one of the key arguments for your manager ;)
Seriously, even if it’s not the core feature of TextUML, a simple and efficient way to create class diagrams quickly would be a great win for any technical documentation or idea sketching as well.