San Diego, California
I recently reviewed SmartDraw, a general-purpose drawing package. Now the SmartDraw folks have come up with a
smart idea: they've combined their core drawing package with some code
generation smarts to create VisualScript. To use VisualScript, you drag
objects in to a drawing from a library, connect them with automatic
connectors or drop them in swim lanes to create a hierarchy, and set
their field values by typing. From there, a few clicks will generate the
It's hard to do justice to VisualScript without showing you a picture,
so I've added one to this review.
This screenshot shows one of the VisualScript samples, a BPEL document.
If you've ever worked with BPEL, you know that it's rather complex. With
VisualScript, building such a document is a matter of dragging shapes
such as a Partner or a WSDL Message to the drawing and setting their
VisualScript provides a visual environment for creating XML files. (Click on image for larger view)
VisualScript works by letting each shape define the code that it should
generate, including substituting field values into the XML. In fact, you
can even define multiple code templates for a single object, letting the
user choose a target XML dialect at runtime. The scripts can be split
into header and footer sections, so that other nested objects can
generate their own code in between. You can also specify connections
between the code generated by various shapes, or choose a program to
execute the XML script after it's been built. Code generation itself is
extremely easy, requiring only a few mouse clicks after filling in
VisualScript is very extensible. You can define your own shapes (or use
shapes from SmartDraw's extensive set of libraries) and define the code
that they should generate. And you can save collections of the shapes
you define as templates. As a result, you could have developers come up
with templates for the XML files that your company needs to generate in
the course of business, and let anyone else in the company fill them out
by just clicking and typing, with little or no XML knowledge required on
the part of the end user. In this, VisualScript is conceptually similar
to Microsoft InfoPath - but a whole lot more fun to work with.
The product ships with a good set of templates and examples to get you
started, and the excellent documentation contains a batch of tutorials
as well. You can download a free 30-day trial from the company's Web
site and then order a copy online if you decide it's right for you.
Mike Gunderloy has been developing software for a quarter-century now, and writing about it for nearly as long. He walked away from a .NET development career in 2006 and has been a happy Rails user ever since. Mike blogs at A Fresh Cup.