Enter José Raúl Romero to talk about his new jsUML2 library:
It is more than likely that you already know other tools, like yUML (http://yuml.me/). This tool is based on web services that return a predefined figure from an input UML model, which is written using a simple textual language. Therefore, some tools that need to depict UML diagrams for their users, like AndyUML (http://modeling-languages.com/andyuml-an-android-tool-for-drawing-uml-diagrams/), make use of this external service to provide this functionality. A major shortcoming of yUML is that dependencies to external sources are inevitably created. Besides, only a predefined visualization of models in form of images is possible with no edition capabilities, and this is not free if you want to host the conversion service in your own servers.
The jsUML2 library provides an API to allow web developers to include editable diagrams in their own web sites making use of the HTML5 technologies supported by the newest web browsers, as well as by current mobile devices. This eliminates those requirements imposed by some tools and proposals that either require third-party software, like Flash, or depend on third party service providers, like yUML.
At the moment, the jsUML2 library is under development (taking now about 40000 lines of code), so new improvements are expected soon. Nevertheless, in its current state it is already mature enough to be used by those developers interested in trying it out, or adding some UML diagrams to their websites. Some of the current functionalities include:
– Creation and handling of diverse diagrams and related elements for visualization and edition:
* Use case diagrams.
* Class diagrams.
* Component diagrams.
* Sequence diagrams.
* Activity diagrams.
– Support of style edition for diagram elements (size, position, colour, etc.).
– Support of stereotype definition (UML profiles will be available soon).
– Import/export of UML diagrams to XML.
– Image generation from diagrams.
– Support for managing several diagrams.
In the jsUML2 website, you may find several simple examples, including source code. Furthermore, if you want to try it out more in detail, you may also access to the UML2 EDITOR written with jsUML2. This is an unpretentious DEMO application, which offers a restricted set of features as provided by the library. However, this demo will give you an idea of opportunities that are available for web developers.
For further information, please visit the following site:
The authors will appreciate any feedback you might have in case you make use of the library. They are also interested in knowing which websites do incorporate the library, so these sites could occasionally be linked from the library website.