sjbr@ut-emx.uucp (Sjaak Brinkkemper) (05/20/91)
Distribution: world
Organization: The University of Texas at Austin; Austin, Texas
Keywords: Diagram Editors, Visual languages, Editor generator
Here is a very extensive list of 17 tools for diagram editors. I have used
the material I got from all kinds of sources, which led to descriptions
with varying contents and quality. There is quite something around: for the
Mac, PC, WS; from plain graph editors to editor generators. Our experience is
that the response from the companies and/or 800 numbers varies.
Please send comments and information on more tools, experiences and other
details to me: sjbr@emx.utexas.edu. Follow-up to comp.software-eng.
Thanks to all those who responded and y'all have fun if you plan to
use this information.
Sjaak Brinkkemper
======================================================
Tool descriptions and experiences:
======================================================
a. MetaDesign, Design/OA
From: curreyr@argus.math.orst.edu
1) Design/IDEF - This is design tool that uses the structured
analysis technique IDEF/SDAT to do system modeling.
2) MetaDesign - A fancy graphics package allowing custom
modeling of complex systems.
3) Design/OA - This is essentially a development package
that lets you interface the powerful design
environment in MetaDesign and construct your own
custom diagram editors.
All three packages support hierarchical designs and text linked within
the diagram. Design/OA seems really powerful and may suit your needs
exactly. The platforms it runs on are Macintosh Toolbox, MS-Windows,
and X Window System. I am still in the process of reviewing and trying
to learn this system so I can't say much more. You can get more info
from Meta Software at:
Meta Software Corporation
150 CambridgePark Drive
Cambridge, MA 02140
Phone: (800)227-4106
Fax: (617)576-0519
Hope this helps.
-Robert W. Currey
Oregon State University
curreyr@argus.math.orst.edu
From: wdl1!spl27.spl.loral.com!pcg@SGI.COM (Paul C George)
Meta Software, Design/OA. An extension kit for their design series. Basically
only deals with graphics, not underlying semantics. Runs on Vax, Macintosh,
Xwindows. Have tools for IDEF modeling (SADT, ERD), Colored Petri Nets.
150 Cambridge Park Dr. Cambridge MA. 02140. (617)576-6920
Andrew Levin, VP, avl%metasoft@bbn.com
======================================================
b. InterViews, UniDraw, HotDraw
From: kung@evax.uta.edu (Chenho Kung)
Organization: Computer Science Engineering Univ. of Texas at Arlington
How about InterViews by Linton, Stanford University. See
IEEE Computer 1989. You can use anonymous ftp to obtain InterViews from the host
interviews.stanford.edu. The current version is 2.6, available
in pub/2.6.tar.Z. This is a compressed tar file containing
the source, manual pages, and technical reports. A newer version, 3.0,
should be available in alpha form very soon.
Chenho
From: Ralph Johnson <johnson@cs.uiuc.edu>
You should look at Unidraw. It is built on top of Interviews,
which is an object-oriented user interface framework written
in C++ that runs on top of X. If you are using X, and don't
mind C++, then Unidraw is for you. It makes implementing
diagram editors much, much easier. John Vlissides' PhD
thesis from Stanford describes it.
On the other hand, if you like Smalltalk then HotDraw is best.
Although independently created, HotDraw and Unidraw are
surprisingly similar. If you want it, I can get you a version.
Ralph Johnson
From: Ralph Johnson <johnson@cs.uiuc.edu>
Interviews is not a diagram editor. It is a user interface
framework. Unidraw is the diagram editor that runs on top
of Interviews. They are both written in C++ and run in X.
They are freely available on the X consortium tape and from
various ftp archives. Unidraw was written by John Vlissides
as part of his PhD work at Stanford. He can be reached at
vliss@interviews.stanford.edu. It is a very nice thesis.
I have never customized Unidraw, but the thesis describes
a VLSI editor, a user interface builder, and a standard
drawing tool.
HotDraw is written in Smalltalk-80. I've used it for a
PERT chart editor (took me an hour and a half), simple
animation, and as a regular drawing editor. Students used
it in a class this last semester to implement a variety of
drawing editors, many of which used animation. The original
version was done at Tektronix by Ward Cunningham and
Kent Beck. The version I have came from some people
in France. It is very good. Unidraw looks like it is
just as nice, though of course it has the misfortune
not to be written in Smalltalk.
Ralph Johnson -- University of Illinois at Urbana-Champaign
Experiences:
From: paulA@minster.york.ac.uk
Of those listed, the only tool set that I have used is "InterViews".
I, and other people here at York, have found InterViews very difficult to learn
how to use - probably because of the shortage of good quality documentation.
I hope that this is helpful
Paul Andrews
======================================================
c. Robochart
From: cs.utexas.edu!elroy!jackm%agcsun%boulder@ncar.UCAR.EDU (Jack Morrison)
I know this isn't what you asked, but we sell a generalized diagram
editor that handles data flow, ER diagrams, flow charts, state
transitions, etc. Here's a blurb if you're interested. Send me a
postal address if you'd like more information, including sample output.
Jack
ROBOCHART is an interactive graphics program designed to create and
edit flow diagrams. It is particularly geared toward Yourdon-style
Data Flow Diagrams, but can generate many other similar diagrams,
such as state transition diagrams, system configurations, flow charts,
entity-relationship diagrams, organization charts, etc. ROBOCHART is
NOT a general-purpose drawing tool, but for these types of diagrams
it's much faster and easier to work with.
ROBOCHART doesn't need complicated commands. You simply manipulate the
diagram directly on the screen. The program knows you are drawing a
flow diagram, and keeps things perfectly connected and aligned as you
make changes.
Some of the features are:
* Objects can be drawn, moved, or resized with a single mouse command.
* Flows between objects can be drawn or moved just as easily.
* Flows are automatically redrawn when a connected object moves.
* Flows can be rerouted with intermediate vertices.
* Labels are entered by simply pointing at an object or flow and
typing.
* Labels are moved automatically when objects or flows move.
* An optional snap grid simplifies diagram alignment.
* Hierarchical diagrams are supported for logical zooming between
levels of detail. Automatic level numbering is
optional. Object consistency across levels is automatic.
* Diagrams can be saved to disk and reloaded for editing.
Multiple diagram pages can be stored in one file.
* Pick, Cut and Paste functions handle hierarchical diagram sections.
* Program defaults are user-configurable.
The program provides 18 object shapes, each of which can stretched to any
width and height. Flows can be solid or dashed lines, and each end can be
plain, single or double arrowhead, or crossed.
ROBOCHART runs on PC/XT/AT/PS2 and compatible machines with 275K free RAM.
A Microsoft-compatible mouse is required. Hercules, CGA, EGA, VGA, and
super VGA displays are supported. Hardcopy output is provided for many
laser, dot matrix, and PostScript printers, and HPGL plotters. ROBOCHART can
export your diagram in several graphics file formats. Diagrams can be up
to 16 times the graphics screen area.
List price is $96, with quantity discounts available.
ROBOCHART is also available for SUN 3 and SUN 4 systems. It runs under
SunView with SUNOS 4.0 or later, and provides PostScript, EPSF, and
HPGL output formats. A demo version with full manual is available for $25
(refundable against purchase of licensed version). Full version licensed
for a single node is $345. Additional licenses (including manual) are
$90 each. Open Look and Motif versions are under development.
For further information or ordering, contact
Lynn Morrison, Marketing Director
Digital Insight
P.O. Box 2095
Evergreen, CO 80439-2095
(303) 674-5232
Send E-mail inquiries to Jack Morrison at ...ncar!boulder!agcsun!jackm
Experiences:
From: cs.utexas.edu!elroy!jackm%agcsun%boulder@ncar.UCAR.EDU (Jack Morrison)
As the developer of ROBOCHART, I can't give
an unbiased user report, but I'll try to describe it's uniqueness. Again,
keep in mind that it's not really an editor *developer* as you requested,
but a general-purpose "flow diagram" editor.
ROBOCHART was designed from the ground up to do as much of the grunge work
of diagramming as possible. (Some marketing types would call it "intelligent").
It's fundamentally mouse-driven, and uses all 3 mouse buttons so that
direct manipulation of the diagram can be performed with minimal effort.
In the SunView version, objects in the diagram act a lot like SunView
windows do - you can use the same mouse operations to move and resize
objects, and you enter labels by moving the cursor inside an object and
typing.
Another basic philosophy of ROBOCHART is that once you've entered something,
you shouldn't have to redo it just because you've changed your mind.
For example, you can change the size, shape, or position of an object or
flow line without affecting the label and connections.
Also, ROBOCHART helps you create hierarchical diagrams by providing multiple
levels and logical zooming functions, with optional linking of objects
across levels. For example, you can create a top-level dataflow
diagram, then zoom in on one process. ROBOCHART automatically initializes
the new detailed level, with linked copies of the adjacent flows and
objects. "Linked" means that if you edit the label of an object or flow,
the change is automatically carried to all other levels where that object
or flow appears. Where some other programs force you to invoke a function
to check consistency, which generates a list of errors, ROBOCHART tries to
automatically keep things consistent for you, as you work.
The Cut and Paste operations can work across hierarchical levels. Say
your diagram is getting a bit too complicated. It's a simple matter
to take a group of objects and "push" them down one level. Just
mark the group of related objects, cut them from the top level, create
a new high-level object to represent this group, zoom into the new
object, and paste the detailed objects in. This works even if some of
the detailed objects already had their own sublevels defined!
ROBOCHART can automatically number objects according to their current
position in the hierarchy.
The feedback I get from users is that it is indeed pretty easy to learn,
and extremely easy to use. I figure our main competition is pencil and
paper, which is slightly faster at creating a diagram -- but there's no
contest if you need to change anything!
Take care,
Jack
======================================================
d. SYLVA
From: vavra@s5000.RSVL.UNISYS.COM
SYLVA is a general diagram editor which has been customized to support several
different development methodologies. I haven't used it much myself, but it is
a real product from:
CADWARE
50 Fitch Street
New Haven, CT 06515
(800) CADWARE
Bob Vavra
=======================================================
e. EDGE
From: mep@inmet.inmet.com (Mark Polhamus)
EDGE by Frances Paulisch, University of Karlsruhe, Germany. My
main source of information is the article "EDGE: An Extendible Graph
Editor" in Software Practice and Experience, Vol 20 (S1), pp 63-88,
June 1990 -- co-authored with Walter F. Tichy.
>From what I read this is a good work, adressing the essence of the
problem I was thinking about. For instance, auto-placement under
constraints, conversion between text format and graphics. It is easy
to recommend the article.
Contrary to what the article says, the implementation is not available
(yet). The article has seemingly generated a lot of requests for tapes
while the author is trying to finish her PhD... Somewhere around
November it will be decided if the software will go into the public
domain.
The software is written in C++ and is based on Athena widgets (?)
under X Windows.
From: Francie Newbery <newbery%ira.uka.de@RELAY.CS.NET>
EDGE Version 3.0 will be ready for release in March 1991. This version uses
the X Window System Version 11 Release 4 and AT C++ version 2.0.
The basic features of EDGE allow you to:
1) Display a graph using a choice of four automatic layout algorithms
(Barycenter, ISI, Tree, Planar). The Barycenter layout, based on the
layout algorithm by Kozo Sugiyama, has been extended so that it can take
user- or application-specified layout constraints into account.
2) Edit the graph by adding, deleting, changing nodes and edges.
3) Group subgraphs into multi-level abstractions. These may be shown in the
context of the remaining graph or in a separate editing session.
4) Read or write a file describing the graph and how it is to be displayed.
You can either use EDGE's standard input/output format GRL or you can
use your own format as long as you provide a procedure which reads/writes
your special format.
EDGE offers base classes for graph, node, and edge. An application developer
can use objects derived from these basic types to customize EDGE to a
particular application. Four simple application programs are provided as
examples of how EDGE can be customized: Project Management, Directory Browser,
a Logic Simulator, and Program Animation.
A recent article in ``Software -- Practice and Experience'' (Special Issue on
Unix Tools, June 20, 1990) describes EDGE in more detail. The program
generator tool COGENT which is used to generate source code for the GRL scanner
and parser as well as for the menus will not be included in this release.
A pre-release of EDGE is available for anonymous ftp from the machine
iraun1.ira.uka.de (129.13.10.90) (in directory pub/src, I think). Please ftp
in the off hours our time (MET).
If you are unable to ftp, then please send me a streamer or magnetic tape and
we can put EDGE on it in tar format and return it to you.
Frances Newbery Paulisch (newbery@ira.uka.de)
Institut fuer Programmstrukturen und Datenorganisation
Universitaet Karlsruhe
Postfach 6980
D-7500 Karlsruhe 1
FRG
=======================================================
f. XSIM
From: mep@inmet.inmet.com (Mark Polhamus)
Author: Gregory S. Thomas (gthomas@cs.washington.edu),
Department of Computer Science and Engineering, FR-35
University of Washington
Seattle, WA 98195
The program is ftp-able from cs.washington.edu and may be used without
license, but is copyrighted by U. of W., whatever it means.
We tried this one, because it is small and simple (around 10,000 lines
of code). It is written in C and uses Athena widgets. We easily
installed it on an Apollo 3000 although this had not been reported
before.
xsim is controlled by a configuration file. You may specify types of
nodes and edges. Each type of node is represented by a bitmap whose
file name must be defined in the configuration file. You may also
specify node and edge attributes and their types. Nodes are placed on
a grid which may be visible or not. Attributes are not shown until you
click on the node or edge. The drawing area is fixed. No
auto-placement. No builtin printing capability.
You may write a translator program which converts an xsim graph to
some other representation. The translator may be invoked from within
xsim.
In my opinion this is a lightweight, honest graph editor. The other
ones may be theoretically better, but we can't easily run them.
(I know it's just a minor practical detail :-)
=======================================================
g. XGRAB
From: mep@inmet.inmet.com (Mark Polhamus)
Several people have contributed to xgrab; current contact persons:
Gregory S. Barnes, greg@cs.washington.edu
Robert R. Henry, rrh@cs.washington.edu
Computer Science and Engineering Department, FR-35
University of Washington
Seattle, WA 98195 USA
206 685 1934
There is also the mailbox xgrab@cs.washington.edu. The program is
ftp-able from cs.washington.edu. It requires g++ and Interviews 2.6
(ftp-able as 2.6.tar.Z from interviews.stanford.edu). To us this is a
complication, so we have not installed it, just read the
documentation. My guess is it consists of 25,000 lines of code.
xgrab is free for non-commercial use. Commercial use requires a
license from Berkeley. Terms are unknown to me.
It seems that xgrab is a more complete graph editor. It has auto
placement, pan and zoom, can generate PostScript, and many other
features.
=======================================================
h. DAG
From: cchen@sbcs.sunysb.edu
I just want to put out a few good words about an excellent graph
layout program, called DAG, that I recently acquired from AT&T.
I've been looking for such a program that would compute the coordinates
for the nodes and edges given basically a connection matrix type of
things or its equivalent as input. DAG does the job exceptionally.
It fits in with the pic, troff suites of processors, and generates
pic or postscript commands. Optional instructions are also available
for attaching labels, controlling spacing, and specifying how nodes
are drawn, etc. If you need to display finite automata, data flow,
any kind of graphs, I think this program will be of great help.
To be impressed, read their paper on Software - Practice and Experience,
vol 18, num 11, page 1047-62, 1988.
I received my binary copy free from Mr. North(north@ulysses.att.com).
He has been extremely helpful in the matter. I have no idea about their
policy on non-academic distributions.
==========================================================
i. MacSTILE
From weide@cis.ohio-state.edu Thu Feb 14 09:56:56 1991
Sorry I haven't been following comp.lang.visual too closely for the
past couple weeks, and just saw your note about diagram editors. Let
me add this to your list:
Software Originals, Inc.: MacSTILE
For more info call 419-885-8747 or (in U.S.) 1-800-873-6873, M-F 11-6
Eastern time.
-Bruce
Experiences:
I have quite a bit of experience with it, as the developer :-).
If you call the 800 number I gave you they can send some literature
describing it, including what some users are doing with it. A demo
is only $20 with full documentation.
-Bruce
===========================================================
j. Adagen
From: wdl1!spl27.spl.loral.com!pcg@SGI.COM (Paul C George)
Mark V Systems, Adagen - v7 contains a language for specifing graphic semantics
and a data manipulation language. Also has facilities for menu design & extension.
runs on unix workstations, Macintosh, PC under MS windows.
16400 Ventura Blvd, Encino Ca. 91436; (800)666-6232
Note: from Sjaak Brinkkemper
In the info we ontained from Mark V, Adagen is listed as an ADA generator.
Mark V systems list also a customizer of their Objectmaker CASE tool,
called Corporate Environment Tool
===========================================================
k. Design Graphics System
From: wheeler@IDA.ORG (David Wheeler)
Design Graphics System: Cadware Group, Limited. New Haven, CT. 203-397-2908.
--- David A. Wheeler
wheeler@ida.org
===========================================================
l. Virtual Software Factory
From: wdl1!spl27.spl.loral.com!pcg@SGI.COM (Paul C George)
Systematica, Virtual Software Factory. - full semantic metalanguage for tool
specification. weak programmatic interface, basically ascii file import/export.
Quite expensive, and must purchase their runtime kernal for every developed
application. Being used on the space station. HOOD & RTSA implementations
available.
Systematica House, 3-7 St. Stevens Road, Bournemouth, Dorset, BH2 6JL
(0202)297292, Michael Fish, Marketing Director.
From: deweerd@edsr.eds.com (Randall De Weerd)
I recently came across another tool for creating diagram editors. The
tool is Virtual Software Factory (VSF) from:
Systematica Limited
Systematica House, 3-7 Stephens Road,
Bournemouth, Dorset BH2 6JL, England
Phone: +44 202 297 292
Fax: +44 202 291 180
The specifications for diagram editors are given in two parts. First, the
meta objects are defined in a set-theoretic based language called
Cantor. Then, the graphic representation of the sets is defined using
a Graphics Definition Language (GDL).
VSF has two environments. The development environment allows you to develop
a meta definition and the associated graphics definition. The run-time
environment interprets the definition, allowing you to build and edit diagrams.
--Randall
===========================================================
l. Picture Editor
From: mcgregor@hemlock.Atherton.COM (Scott McGregor)
Interactive Development Environments (IDE) sells Software Through
Pictures which included a diagram editor called Picture Editor. I've used it
as have some of the people who work for me. Reasonably good if you are
happy with their pallette of predefined symbols. Pallette contains
most of the SA/SD type symbols you might expect. Binary distribution.
Reuse in another program subject to permission and possible royalties to
IDE.
Scott McGregor
Atherton Technology
mcgregor@atherton.com
===========================================================
m. Motif Graph Widget
From: mcgregor@hemlock.Atherton.COM (Scott McGregor)
Hewlett-Packard sells a "Motif Graph Widget", but only through special
request to their Corvallis Plant. The Graph Widget evolved from original work
done by Luis Miguel (now PhD candidate at UC Berkeley) when he worked at
HP's Software Methods Lab in Cupertino, CA and was extensively rewritten for
Motif by Doug Young (author of Motif Programming book, now at Silicon
Graphics) when he was at HP Labs in Palo Alto. Now classified as a "specials"
product, it is available only via Corvallis which develops HP's other Motif
implementations.
The Graph Widget is a full-fledged Motif manager widget which
displays nodes (any arbitrary Motif widget or gadget), and arcs
(undirected, directed, bi-directed, colored, labeled, variable width,
arrow/line widgets). Can display unconnected forests of graphs, including
graphs with cycles. Does a great job laying out hierarchical structures,
and a good job with many other graphical layouts. Supports edit modes
for repositioning nodes, subtrees, deleting and adding new nodes and
arcs. Supports linking to arbitrary user specified callbacks. Comes
with a set of useful test programs and examples that you can evolve your
own diagram editor from. Sold only in SOURCE form. No royalties due
on binary products resold by others that reuse the widget. IMHO, a nice,
very versatile tool for building applications.
Scott McGregor
Atherton Technology
mcgregor@atherton.com
==========================================================
n. IPSYS TBK
From: wdl1!spl27.spl.loral.com!pcg@SGI.COM (Paul C George)
IPSYS TBK, distributed by CASET corp. Similar to VSF but cheaper. Seems to have
grown out of the same work. Has editor & data manipulation language. Strong
schema. Does not have metalanguage. HOOD tool available. Unix/Xwindows
Karen Onsgard, Regional Sales Mgr. (714)496-8670
==========================================================
o. MetaView
From sjbr@emx.utexas.edu
MetaView is a generator for diagram-editors from Ascent Technology Inc.
It runs under Sunview on Sun4 and Sparcstation
Contact:
Ascent Technology Inc.
Rindert Schutten
2433 Villa Nueva Way
Mountain View, CA 94040
Phone: (415) 940 1550
Fax: (408) 722 2017
==========================================================
p. Configurable Graphical Editor (CGE)
From: sjbr@emx.utexas.edu
CGE is a generator for diagram editors from TNO in the Netherlands
running under Unix under X-windows and written in C.
User definition of symbols, manipulations and connections of
a diagram editor. Can be used as a front end to simulators, CASE tools,
etc.
Contact:
TNO Institute for Applied Computer Science
P.O. Box 6032
2600 JA Delft
The Netherlands
Phone: +31.15.697.071
Fax: +31.15.623.313
==========================================================
q. XL/Customizer
From: sjbr@emx.utexas.edu
XL/Customizer is a customizer for diagram editors from Index Technology
for their Excelerator CASE tool. Index is based in Cambridge, MA.
==========================================================
Miscellaneous remarks
==========================================================
From clements@cs.utexas.edu Tue Feb 5 12:13:50 1991
I would be interested in a summary of what you find. I could
use such a beast myself.
We are building a CASE tool for embedded real-time systems. The tool
(called Modechart) lets designers specify a system by specifying
the system's control structure using boxes ("modes"), specifying when
transitions among boxes occur (based on machine state, external events,
timing, etc.), and associating actions with being in a particular mode.
My immediate problem is trying to build a nice box-and-line-drawing
system (windows, mouse clicks, icons, etc.) without actually having
to *build* it -- there must be a zillion of those things around, and
it seems dumb to build Yet Another One. But I have had very poor
luck finding a package to help.
Paul C. Clements
clements@cs.utexas.edu
From rhaar@albert.cs.gmr.com Tue Feb 5 18:26:42 1991
From: rhaar@albert.cs.gmr.com (Robert L. Haar CS50)
Please send me a summary of any responses that you get as
we are interested in similar tools.
We are using Teamwork from Cadre Technologies for developing data
flow diagrams. It is reasonably good at this, but is essentially a CASE tool.
We plan to use the resulting DFD's as input to tools that we are
developing here to assist an engineer in partitioning vehicle
electrical system design into hardware modules. The first thing we need to do
is to display the DFD and allow the engineer to group process bubbles
into units that will then be assigned to physical modules for
implementation.
Robert Haar InterNet : rhaar@albert.cs.gmr.com
Computer Science Dept., G.M. Research Laboratories
====================================================
====================================================
Thanks to:
acuenca@gmv.es
cchen@sbcs.sunysb.edu
clements@cs.utexas.edu
cs.utexas.edu!elroy!jackm%agcsun%boulder@ncar.UCAR.EDU
curreyr@argus.math.orst.edu
deweerd@edsr.eds.com
dmark@acsu.buffalo.edu
duncan@ctt.bellcore.com
etj90@ecs.soton.ac.uk
fwb@pollux.siemens.com
G.Joly@cs.ucl.ac.uk
haney@cs.uiuc.edu
heymann@cns.SanDiego.NCR.COM
johnson@cs.uiuc.edu
joshua@Atherton.COM
kung@evax.uta.edu
mcgregor@hemlock.Atherton.COM
mep@inmet.inmet.com
naz@hasler.ascom.ch
newbery@ira.uka.de
paulA@minster.york.ac.uk
rhaar@albert.cs.gmr.com
soi!vax!chip@uu.psi.com
vavra@s5000.RSVL.UNISYS.COM
wdl1!spl27.spl.loral.com!pcg@SGI.COM
weide@cis.ohio-state.edu
wheeler@IDA.ORG
--
Sjaak Brinkkemper Organizational Computing Lab
MSIS, CBA 5.202 University of Texas, Austin, TX 78712, USA
sjbr@emx.utexas.edu tel.: +1.512.471.8879 / +1.512.892.1423