Xref: utzoo comp.software-eng:5671 comp.editors:3206 comp.graphics:18109 comp.infosystems:247 comp.windows.misc:2058 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!cs.utexas.edu!ut-emx!sjbr From: sjbr@ut-emx.uucp (Sjaak Brinkkemper) Newsgroups: comp.software-eng,comp.editors,comp.graphics,comp.infosystems,comp.lang.visual,comp.windows.misc,tx.general,austin.general Subject: Summary: Software Tools for Diagram Editors (long) Summary: Information and experiences with 17 tool for building diagram editors. Message-ID: <49237@ut-emx.uucp> Date: 20 May 91 02:33:42 GMT Followup-To: comp.software-eng Organization: The University of Texas at Austin; Austin, Texas Lines: 694 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 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 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 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