The Rosetta project aims to develop a tool for object-oriented analysis
and design, compatible with Java
and IBM's VisualAge
for Java programming environment. In the Rosetta project, we are investigating
how to better integrate object-oriented design into a process and toolset
that programmers will be enthusiastic about using. We aim to achieve this
by providing a light-weight editing environment for object-oriented diagrams.
This editor is:
Process-neutral: Developers may perform design and implementation
in any order. Rather than generating code from design, the design is linked
to code via a checker. This way, during development, neither the
design nor the code need be complete for development to continue.
Toolset-neutral: The Rosetta editor does not force the programmer
to use a custom code editor or compiler. Programmers can continue using
their favourite toolset while using Rosetta for their OO design tasks.
Web-based: Rosetta uses a distributed architecture based on the
world wide web. Programmers can include Rosetta designs via an applet embedded
in HTML design documents.
Other groups also provide object-oriented analysis and design tools for
Java. Here are links to some of them:
Object International is developing
a new version of their Together/C++
environment for Java. The C++ environment supports round-tripping and OO
design using the Coad, OMT and UML notations.
Tendril produces
StructureBuilder,
separating architecture specification from coding, and based on code generation
from diagrams.
Aonix produces the Software
through Pictures environment, supporting the OMT, Booch and UML notations.
StP can generate code for a variety of languages and programming environments,
including Java.
Rational produces Rational
Rose/Java Edition, supporting the OMT, Booch and UML notations. Rose
supports code generation from diagrams and reverse engineering. Rose is
integrated with Symantec Cafe and Microsoft Visual J++.