SketchUML is a program to facilitate learning the UML syntax. Using a minimalistic paper-and-pen resembling interface, it allows for naturalistic UML design using ink. Below is a list of currently implementetd features.
Fully-Featured Teacher Mode.
SketchUML can be used by teachers to critique student-drawn UML diagrams. Simply open the student diagram in your SketchUML copy, switch on the Teacher Mode and be able to critique the student's diagram with red ink. Correcting symbols will not remove them, but display them in a manner that makes it easy to identify that this symbol was incorrect and was deleted by the instructor. When the instructor adds or corrects a symbol, it will be displayed similarly, identifing the new symbol to be missing in the original student's solution. The Teacher Mode is fully supported in the "Save" and "Open" functionality as well as the Copy/Paste Feature.
Naturalistic Design Using Ink.
SketchUML is written in C# using the Microsoft .NET Framework v2.5 and the Microsoft Ink SDK. It allows for simple ink input through the Pen/Stylus of a TabletPC, which resembles a natural pen-and-paper approach. This allows SketchUML to mimic the simplicity of paper and pen and combine it with the advantages of computer-aided design.
Naturalistic Feedback to the User.
If the user draws an invalid UML symbol, the system responds naturalistically by not allowing illegal UML symbols to be established. The user thereby has immediate feedback that a UML symbol is invalid and cannot be used in this case, which facilitates the learning of the UML syntax without having to learn the CAD tool first.
Symbols can be drawn in many different ways. For instance, in order to draw a class symbol (i.e. a rectangular shape), the user can either draw each of the edges at a time (lifting the pen after each stroke), or draw the rectangle in one continuous stroke, with start and end point being identical.
Broad UML Syntax Support.
A wide variety of UML syntax elements are supported. Users can draw class symbols, add attributes and operations, create aggregations and generalizations between classes, and much more.
Convenient Editing Functionality.
Computer-aided design comes with the great advantage that a wide variety of editing functions make it easier to create a good design. Copy/Paste functionality and "Save" and "Open" options allow to quickly enhance the UML diagram, save it to disk in the convenient XML format or retrieve it from disk.