[Uml-devel] Re: karbon14 and uml

Andrew Sutton ansutton at kent.edu
Tue Apr 15 06:34:17 UTC 2003


> Let's look at a package diagram. There you have stereotypes <<uses>> and
> <<includes>>:

that's not what i'm suggesting using a file system for at all... you have to 
let go of what you think you know about UML ;)

file system browsers are used to navigate and manage large nested hierarchies. 
when i look at uml apps, i see the same thing being done to manage the entire 
model - its called the model tree. the model tree is composed of packages and 
classes and operations and use cases and.... whatever. it turns out that alot 
of those classes in that tree are derived from the UML::Namespace class. this 
class defines the containment relationship used by (for example) packages to 
contain stuff, classes to contain attributes and operations and operations to 
contain parameters. 

however, we also change stuff a little bit and allow packages to contain 
diagrams (documents). umbrello certainly does that. so, if we filter out 
everything in the model tree that isn't a package or a diagram, we end up 
with an data set that looks exactly like a file system. folders (packages) 
containing files (diagrams). we can even thumbnail the diagrams :)

> Another point very important. You have file browsers like Konqueror or MS
> Explorer. But you are more productive with a file browser like
> MidnightCommander or TotalCommander. So both types are showing the
> hierarchie, but the handling is different. So I would say that Konqueror
> style don't have to be the best to handle hierarchies.

i think that's probably just preference. i haven't really used either of 
those, but how much better or worse could they really be. all you're doing is 
creating, deleting and renaming.

> And another point. Let's reduce Konqueror to it's base. It is nothing more
> than a giant tree view. Nothing more.

yup. so's the XMI storage of UML. so's the in-memory version of the model. 
so's the default navigation tool (the tree view). giant trees. all of them. 
that's why it works.

> > - A file system defines just the above mentioned actions and object
> > nodes. It doesn't say anything about the represenation. I think an older
> > project, which was unfortunately rejected in KDE, implemented a treemap
> > visualization of a file system.

that's too bad - sort of. check out this program called Photomesa - it's 
great. it would make an excellent visualization for konquerer.
http://www.cs.umd.edu/hcil/photomesa/

> Ok, but this is only a question how the data of the modell is
> stored/handled internally. If a file system would be best, ok, I could
> accept it. But I think we allready have something like a DOM tree and there
> are not so many differences between a file system and a DOM tree.

for model management the file system metaphor is inaccurate. but i'm not 
talking about model management - i'm just talking about document management.

> > But what are the different views of a software model?
>
> Look at the current CVS version of Umbrello. There you can see 4 different
> views. Maybe there are more, maybe not:
>
> - Component View
> - Deployment View
> - Logical View
> - Use Case View

which is based on the 4+1 view by a dude named kruchten - umbrello is missing 
a view (the process or dynamic view). of course, it can be extended to an n+1 
view - some dude named tu talked about a build-time view that incorporated 
notation for modeling build-time dependencies and alterations. interesting 
stuff. there's basically an unlimited set of views - the zachman enterprise 
architecture framework has 36!. this is really a different conversation 
though. let's hold off on it.

andy




More information about the umbrello-devel mailing list