I'm a big fan of plain-text tools. Source Code. ReStructuredText. LaTeX.
not a big fan of proprietary file formats and document formats that are
difficult or impossible to decode. JSON and XML rock. .XLS files are
painful and difficult to work with.
Diagrams are a particularly odious problem. To see a diagram it has to
be PNG or PDF or some other graphic format that's optimized for storage
and display, but not really optimized for editing. SVG has a text
vector markup language, but it's painful because it's so generalized.
Recently, I found two text to UML tools that are exciting prospects.
First, there's YUML.me
This draws pretty nice, if simple, diagrams that you can work with
with relatively little pain. It's slow and limited. But it works for
The best part is that the image is rendered from the URL as plain text.
http://yuml.me/diagram/scruffy/usecase/[Author]-(write text), (render image)-[YUML], [Author]-(share link).
supports simple use case diagrams, simple class diagrams and really
simple activity diagrams. It covers a few bases with a pleasant level
The other tool is Plant UML
. "PlantUML is used to draw UML diagram, using a simple and human readable text description."
The online Plant UML Server
allows a flexible no-software-on-the-desktop way to play with their
markup language. The text of the image is not in the URL here, since
the text is so much more complex.
The best part of this is that the pictures come from plain text.
- The plain text is trivial to put under configuration control.
- Plain text system descriptions are easy to write with simple markup.
- Plain text documentation of existing software can be derived from simple source analysis.
- Plain text design documents can generate some elements of the source code