The DYNAMO Home Page
DYNAMO is an environment that supports construction and exploration of scenarios.
The scenarios we are working with describe the interaction among objects
in an object-oriented design situation. Currently, we only support
design with passive objects.
The problem.
In most cases, object-oriented design is carried out at the static level.
That is, a design is formulated as a number of classes which are related to each other in
a number of ways. The classes may contain attributes and methods.
In some situations, it is more direct to initiate the design process
at a dynamic level. This may be the cases in compilicated design
situations, and in situations where the designers are less
experienced. Following this idea, a design is formulated as a number
of objects that are related to each other, and which interact with
each other by sending messages. During the interaction new objects may appear.
The hypothesis behind this research
is that object-oriented designers think in terms of objects, object relations,
and object interactions during the creative phases of the design
process.
The DYNAMO approach.
DYNAMO is the name of prototype environment, in which object-oriented
design is described in terms of a set of scenarios. A scenario
is an example of interactions among objects. We are developing a
language, and a number of concepts that allow us to build and explore
scenarios. As an important branch of this work, we are investigating
how elements of static models can be extracted from scenarios. More
concretely, we are attempting to derive outlines of classes and
methods from scenarios.
The tools in DYNAMO are also in focus in this research. The majority of the tools
are browsers, which allows the designer to construct, modifiy and examine scenarios
in a number of different ways. In addition, DYNAMO makes it possible to formulate
scenarios as interaction diagrams, in the style of UML sequence diagrams.
Research issues.
- Which concepts should be used for the specification of dynamic models?
The concepts make up the backbone of a dynamic modeling language, which
is central to all the work in the DYNAMO project.
- How can elements of a static model be derived from a dynamic model?
The static models, which we are most interested in, are various outlines of
the object-oriented program, formulated in some concrete programming language
syntax. The program outlines are thought of as a static overview of the dynamic model
rather than as a first version of the implementation.
- What is the nature of the dynamic medium, on which to work with dynamic models?
Currently in DYNAMO, we are working with a set of rather traditional tools.
Two master students, Per Madsen and Lars Iversen, are currently working on a project
in which the focus is design by animation
- How do we create an environment (a set of integrated tools) for construction and exploration of
dynamic models?
Given the focus on the current set of DYNAMO tools, we want to construct a set of flexible
tools for constructing scenarios via interaction diagrams (UML-like sequence diagrams). In addition, we want
the various browsers to work smoothly together with the interaction diagram editor.
The DYNAMO environment.
We are building a prototype of DYNAMO in Allegro Common Lisp for Windows on a PC.
As part of the material below, we we provide a number of screen shots of the DYNAMO
tools.
Papers, reports and other material.
In the following list the new material is listed before older material.
- Tools for Presentation and Animation of Dynamic Models in Object-oriented Design
- A paper about the diagrammatic notations in the DYNAMO and XMAS tools. NWPER'98 in Bergen (moved to Ronneby, Sweden).
There is an overlap between this paper and "DYNAMO - A set of Tools for Dynamic Modelling" (see below).
- Abstract
- The paper (pdf, postscript) - new version as of October 1, 1998.
- XMAS - eXperimental Modelling with Animated Scenarios
- XMAS is a DYNAMO- related master thesis project carried out by
Lars Iversen and Per Madsen.
- The XMAS home page (from which it is possible to download a very preliminary prototype, which illustrates the animation ideas).
- DYNAMO - A set of Tools for Dynamic Modelling
- A paper about the DYNAMO tools. The paper describes three versions of the tools,
with main emphasis on the newest version. The notion of interaction diagrams are discussed
extensively, as the basis for a tool in the Dynamo modelling environment.
- Abstract
- The paper (pdf, postscript, compressed postscript).
- Synthesis of Static Models from Dynamic Models in DYNAMO
- Papers about the synthesis of class and method outlines from scenarios.
- Abstract
- A brief version of the paper:
- The full version of the paper:
- Deriving classes from scenarios in object-oriented design, preliminary version, (pdf, postscript, compressed postscript).
- The latest version of the full paper, retitled Synthesis of Program Outlines from Scenarios in DYNAMO (pdf, postscript).
- Towards an Abstract Language for Dynamic Modelling in Object-oriented Design
- OOPSLA'96 Poster on DYNAMO
- The DYNAMO Tools
- Tools for Exploration of Dynamic Models in Object-oriented Design
- Dynamic Models in Object-oriented Design
Kurt Nørmark
normark@cs.auc.dk
Department of Computer Science
Aalborg University
Denmark