[Uml-devel] u2 news

Andrew Sutton asutton at cs.kent.edu
Thu Jun 12 07:24:16 UTC 2003


okay, as of yesterday, u2 starts to become a real application :) granted, you 
can't actually edit any of the objects that you create yet, but that's not 
too far off. but, the point is that all 105,000 lines of code have actually 
moved beyond the "proof of concept" stage.

so, if anybody's really interested in helping, here's the todo list.
  - initial design of diagram and diagram objects. i'm taking suggestions, 
requirements, etc. not that i'll get around to implementing them right away, 
but that's why its a call for suggestions.
  - initial design of property dialogs. i'm probably going to kick this off 
today. essentially, when properties are requested, the framework 
(Umbrello::Document class) will construct a dialog and emit signals to 
anything that wants to populate the dialog. essentially, the dialog is going 
to look alot like the ones in 1.x except that individual frames will be added 
to it in a very dynamic manner. it should work quite well... there may be 
some questions about the "apply" and "ok" buttons...
  - stereotypes and profiles - this is actually a non-trivial thing. 
essentially, we have a set of profiles that contain stereotype instances (and 
tagged definition instances). each profile should be its own XMI file that 
contains instances of these stereotypes. all profile files should be 
installed in $appdata/ and loaded by the uml plugin at startup. that means 
that the uml plugin will have to have some capability for managing these. we 
also have a model-specific pseudo-profile. this contains stereotypes defined 
for the current model. so, the stereotypes dialog will be populated with all 
the stereotypes defined in each package (including the default stereotypes as 
per the standard) and the model-specific stereotypes. capabilities to add and 
delete stereotypes are required. also, the ability to export the stereotypes 
is required. this is how we can actually create the other profiles.
  - the rest of the object model. clearly, i need to implement the rest of the 
uml object model including defining actions for everything and setting up all 
the reflective stuff in the class and impl files. i'm kind of doing it as i 
go right now, so its not showing up too fast. this really isn't too bad.
  - fixes to the modeltree part. i'd like to make the viewfilter stuff look 
like a toolbar within the list view - maybe with little buttons that could be 
used to toggle the views. instead of deriving from klistview, i could just 
make a new widget that contains a listview and some kind of toolbar - i think 
that would be the best way to do it.
  - write the xmi saving code. this is actually significantly easier than i 
thought since the metaobject layer is actually tied to the objects that are 
created. all we really need to do is define the policies for determining 
containment, etc.
  - finish the xmi loading code in UML::Plugin. this is actually a big chunk 
of dull, repetitive, error-prone work.
  - storage solutions for:
    - project options
    - diagrams
    - graphical elements
  - all the other stuff that makes a uml editor good:
    - code generator design
    - code import design
    - pattern support/libraries - this requires lots of thinking
    - library imports. i REALLY like this idea. i want to make a new KDE 
application so the application gives me all of the Qt and KDE classes, 
diagrams, everything... awesome. or maybe i want to use the std library, so 
the application links that into the application as well. also awesome :)
    - additional metamodels, uml metamodel extensions, etc.
    - analysis tools
    - icons, icons, icons, icons, icons, icons, icons, icons, icons, icons, 
icons, icons, icons, icons, icons, icons, icons, icons, icons, icons, icons, 
icons, icons, icons, icons, icons, icons, icons, icons, icons, icons, icons, 
icons, icons, icons, icons, icons, icons, icons, icons, icons, icons, icons, 
icons, icons, icons, icons, icons, icons and more icons

of course, there's tons of work to do, and the application is unnecessarily 
complex. but it works and it seems to work well so far. please help. please? 
anybody? just kidding. work continues...

andy




More information about the umbrello-devel mailing list