Which are your favorite UML tools?

Anastasios Hatzis ah at hatzis.de
Sat Apr 28 08:34:23 EDT 2007


On Saturday 28 April 2007 00:26, Russell E. Owen wrote:
> In article <463265f0$0$19018$426a34cc at news.free.fr>,
>
>  Bruno Desthuilliers <bdesth.quelquechose at free.quelquepart.fr> wrote:
> > Anastasios Hatzis a écrit :
> > > Hello,
> > >
> > > I'm working on the light-weight MDA tool pyswarm,
> > > http://pyswarm.sourceforge.net/ (it is about a code-generator for
> > > Python/PostgreSQL-based software. I plan to add support of UML CASE
> > > tools other than the one supported currently.
> > >
> > > I would like to learn which UML tools you use (if any),
> >
> > Any piece of paper and anything that can be used to write on it.
> >
> > > preferrably if it
> > > comes to modeling a Python application.
> >
> > I stll wait for UML to be able to describe common hi-level dynamic
> > languages idioms and patterns without requiring more space and time than
> >   source code.
>
> I am inclined to agree, though my experience is limited. I work on a
> project that is trying to model all its software using Enterprise
> Architect. EA has some nice features, but overall I find it clumsy and
> frustrating.
>
> Some problems are intrinsic to UML (for instance it has no concept of
> linking use case information to other elements). And I don't know of any
> way to model functions (only classes).
>
> Others are EA's fault. For instance it is very slow and clumsy to add or
> edit lists of items (such as class methods or database fields). Also,
> shared development is a pain because there is no concurrent version
> control (it uses CVS to keep track of revisions, but not in a concurrent
> way; checking out a package locks out everybody else).

Version control of UML models is a tough issue, given the dependencies between 
models and thinking of visualization of differences between two models. So 
far my tool only uses one model in one single XMI file, but I have to change 
this especially since I want to ease the re-use of components between 
projects.

>
> I tried using a competing product but the interporability was terrible.
> Which brings up another point: it is likely the original poster would
> need to do a lot of work for each CASE tool supported.

Unfortunetaly you are too right! :)) Interoperability via XMI is a nightmare I 
don't want to dream anymore. For example, in the recent years it would have 
been much easier to use MagicDraw's OpenAPI with Jython to access models 
instead of importing its XMI files. The one thing is that MOF, UML and XMI 
are developing way too fast, so there are many tools but chance is little 
that they are based on the same standard versions. Additionally I don't know 
one tool which fully implements the corresponding standard specifications. 
Not a big surprise since the specifications are really complex and extensive. 
So, supporting one specific XMI format of one UML tool is not that 
complicated (especially since not all features are needed). But I have still 
a hard time thinking about an appropriate mapping between all these different 
standard versions and the differences how they are implemented in the tools. 
Especially since I want to keep these differences away from the normal tool 
user. Maybe it will be possible, at least as some compromise. The future will 
show.

Best regards,
Anastasios



More information about the Python-list mailing list