Richard, I applaud your opening remarks. I only wish I could be so succinct. My anger at being accussed of Trolling, is quickly gone. I will ruminate on the rest of your email, over a good cup of tea. Thank you for a glimpse of light at the end of a long tunnel. "Proccede Desire with Design" Justin
---- Richard Staehli rastaehli@mac.com wrote:
Trygve, I applaud this effort to close the gap between design and implementation. I learned the distinction between an objects design "role" and its implementation "class" from your book "Working with Objects". I agree that it is still a huge problem to rely on programmers to realized design constraints expressed in a separate (e.g. UML) language, if at all.
I have two main comments. First, your short document ignores related work like the Model Driven Architecture work of the OMG. While you may not have the time to follow all such work, you might find a very knowledgeable audience to critique your BabyUML work through Jan Øyvind Aagedal at SINTEF.
Second, I believe the biggest challenge in translating design to implementation is architectural tradeoffs to achieve extra-functional (QoS) properties. Where OO design is concerned with the semantics of communication between objects, much of our implementation is concerned with the look and feel of a GUI or the scalability of algorithms to access persistent data. These architectural tradeoffs are typically made in the context of a particular user environment or assumptions about the deployment resources and loads. As a consequence, they are generally orthogonal to the primary functional decomposition. In AOP terms, these are cross-cutting concerns. If a programmer must specify how to resolve these architectural tradeoffs in BabyUML, then I expect BabyUML will be little better than a visual programming language; it will fail to untangle your spaghetti. Our research in the QuA project (http://home.simula.no:8888/QuA/) suggests that design must be broken up into small components that are pieced together through architectural decisions by either a software architect/engineer, or perhaps by an automated "service planner".
I look forward to hearing more about BabyUML.
Richard Staehli
On Tuesday, September 20, 2005, at 01:10 AM, squeak-dev-request@lists.squeakfoundation.org wrote:
BabyUML is a coherent multi-language discipline for coding object interaction and objects/classes.
An overview has been posted: http://heim.ifi.uio.no/~trygver/2005/babyuml/newdiscipline.pdf
Sorry, folks - it's long (10 pages).
The title may be a show stopper: Towards A New Discipline of Programming
Enjoy --Trygve
P.S. I have, of course, started building BabyUML an extension of Squeak, but it does not appear to be a realistic task for a one-person team. More about that when I see the response to this opener (if any).
--
Trygve Reenskaug mailto: trygver@ifi.uio.no Morgedalsvn. 5A http://heim.ifi.uio.no/~trygver N-0378 Oslo Tel: (+47) 22 49 57 27 Norway
squeak-dev@lists.squeakfoundation.org