[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-kuml-devel
Subject:    Re: KUml - wish list
From:       Carsten Kuckuk <ck () kuckuk ! com>
Date:       2000-09-21 17:01:49
[Download RAW message or body]

Here's my wish list:

(1) Full implementation of UML V1.3 as described in the document
    "OMG Unified Modeling Language Specification, Version 1.3,
    June 1999" that can be downloaded from the net as "99-06-08.ps"
    (either www.rational.com or www.omg.org -- can't remember).
    [I have just skimmed this document, but this seems to be exactly
    what we need to coordinate our efforts without too many misunder-
    standings]

(2) A Layered Archtiecture consisting of (1) GUI, (2) Processing, 
    (3) Transient Data Model where layers 2 and 3 are written in
    standard C++ using only STL and streams. This layer should
    be shared between the Gnome and the KDE people. Layer 1 is
    where KUML and GNUML differ.

(3) From what I can see, part 2 of the above mentioned standard
    gives class diagrams for all necessary model classes. We should
    take this model and implement it, with an aditional prefix like
    model_XXX or mo_XXX to avoid name clashes and syntax errors. 
    This should provide us with a workable, complete transient model
    in a very short time.

(4) In the beginning we should build either static or dynamic 
    libraries from these classes. Later on we can coat the classes
    with syntactic sugar and linker magic and repackage them as
    Corba objects, KParts, Beans or whatever is wanted. I believe
    that this is possible by simply writing new make files. 

(5) As I wrote earlier, it is of utmost importance to have the
    LGPL license applying for the transient data model and the
    data storage functionality to attract more developers.

Here's my short-term proposal:

Layer 3: GUI [GPL]
- Project KUML
- Project GNUML
- Lots of home grown quick and dirty tools for real-life application

Layer 2: PROCESSING [LGPL]
- Project ModelManipulation (AddClass, AddRelationship,..)
- Project ModelExImport (WriteAsXMI,ReadFromXMI,ReadFromRose,
  WriteAsRose..)
- Project ReverseEngineering (C++Parser from KDevelop)
- Additional Functionality as everything grows, like IDL readers and
  writers, etc.

Layer 1: TRANSIENT MODEL [LGPL]
- Project TransientUmlModel13: Class, Relationship, ...
- Project TransientDiagrams if not covered by the standard.
   
In the beginning, all projects could be started as static libraries and
then migrate to dynamic libraries. 


Commments, anyone?


Carsten

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic