UMLet

Last updated

UMLet is an open-source Java-based UML tool designed for teaching the Unified Modeling Language and for quickly creating UML diagrams. It is a drawing tool rather than a modelling tool as there is no underlying dictionary or directory of reusable design objects. UMLet is distributed under the GNU General Public License. [1]

Contents

UMLet has a simple user interface that uses text-formatting codes to modify the basic shapes with decorations and annotations, so there is no forest of icons or parameter list dialogs in the user's way. This does require the user to learn yet another text markup language, but the effort is small and the markup obvious to the experienced UML designer.

UMLet can export diagrams to pictures (eps, jpg), drawing formats (SVG), document formats (PDF). The clipboard can be used to copy-paste diagrams as pictures into other applications. It is possible to create custom UML elements.

The basic drawing objects can be modified and used as templates which allows users to customize the app to their needs. This requires programming of the elements in Java.

The most important UML diagram types are supported: class, use case, sequence, state, deployment, activity. Support for UML 2.0 features is not yet available, though the customization feature could be used to do this. It supports concepts like Martin Fowler's UmlAsSketch. [2] Its design goals are described in the paper "Flyweight UML Modelling Tool for Software Development". [3] Another paper compares UMLet to Rational Rose. [4]

The app's native file format is UXF, an extension of XML intended for exchanging UML models.

UMLet runs stand-alone or as Eclipse plug-in on Windows, OS X and Linux.

Releases

Limitations

See also

Related Research Articles

Dia (software) Diagramming software

Dia is free and open source general-purpose diagramming software, developed originally by Alexander Larsson. Dia uses a controlled single document interface (SDI) similar to GIMP and Inkscape.

The XML Metadata Interchange (XMI) is an Object Management Group (OMG) standard for exchanging metadata information via Extensible Markup Language (XML).

Eclipse (software) Software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a JavaScript engine, for rendering of controls and extra scriptability.

A UML tool is a software application that supports some or all of the notation and semantics associated with the Unified Modeling Language (UML), which is the industry standard general-purpose modeling language for software engineering.

A number of vector graphics editors exist for various platforms. Potential users of these editors will make a comparison of vector graphics editors based on factors such as the availability for the user's platform, the software license, the feature set, the merits of the user interface (UI) and the focus of the program. Some programs are more suitable for artistic work while others are better for technical drawings. Another important factor is the application's support of various vector and bitmap image formats for import and export.

Office Open XML is a zipped, XML-based file format developed by Microsoft for representing spreadsheets, charts, presentations and word processing documents. The format was initially standardized by the Ecma, and by the ISO and IEC in later versions.

Adobe Lightroom Photo editing and management software

Adobe Lightroom is a creative image organization and image manipulation software developed by Adobe Inc. as part of the Creative Cloud subscription family. It is supported on Windows, macOS, iOS, Android, and tvOS. Its primary uses include importing, saving, viewing, organizing, tagging, editing, and sharing large numbers of digital images. Lightroom's editing functions include white balance, presence, tone, tone curve, HSL, color grading, detail, lens corrections, and calibration manipulation, as well as transformation, spot removal, red eye correction, graduated filters, radial filters, and adjustment brushing. The name of the software is based on darkrooms used for processing light-sensitive photographic materials.

SAP PowerDesigner (PowerDesigner) is a collaborative enterprise modelling tool produced by Sybase, currently owned by SAP. It can run either under Microsoft Windows as a native application or in an Eclipse environment through a plugin. It supports model-driven architecture software design, and stores models using a variety of file extensions, such as .bpm, .cdm and .pdm. The internal file structure can be either XML or a compressed binary file format. It can also store models in a database repository.

Precision Graphics Markup Language (PGML) is an XML-based language for representing vector graphics. It was a World Wide Web Consortium (W3C) submission by Adobe Systems, IBM, Netscape, and Sun Microsystems, that was not adopted as a recommendation. PGML is a 2D graphical format, offering precision for graphic artists, guaranteeing that the design created will appear in end user systems with the correct formatting, layout and the precision of color.

MagicDraw

MagicDraw is a visual UML, SysML, BPMN, and UPDM modeling tool with team collaboration support. Designed for business analysts, software analysts, programmers, and QA engineers, this dynamic and versatile development tool facilitates analysis and design of object oriented (OO) systems and databases. It provides the code engineering mechanism, as well as database schema modeling, DDL generation and reverse engineering facilities.

Sandcastle is a documentation generator from Microsoft. It automatically produces MSDN-style code documentation out of reflection information of .NET assemblies and XML documentation comments found in the source code of these assemblies. It can also be used to produce user documentation from Microsoft Assistance Markup Language (MAML) with the same look and feel as reference documentation.

ER/Studio is data architecture and database design software developed by IDERA, Inc. ER/Studio is compatible with multiple database platforms and is used by data architects, data modelers, database administrators and business analysts to create and manage database designs, document and reuse data assets. In 2015, Embarcadero Technologies was acquired by database and infrastructure management software company IDERA, Inc. Since the acquisition by IDERA, Inc., ER/Studio has been renamed to ER/Studio Data Architect with updated features.

The Office Open XML file formats are a set of file formats that can be used to represent electronic office documents. There are formats for word processing documents, spreadsheets and presentations as well as specific formats for material such as mathematical formulae, graphics, bibliographies etc.

yEd Diagramming program

yEd is a general-purpose diagramming program with a multi-document interface.

Enterprise Architect (software)

Sparx Systems Enterprise Architect is a visual modeling and design tool based on the OMG UML. The platform supports: the design and construction of software systems; modeling business processes; and modeling industry based domains. It is used by businesses and organizations to not only model the architecture of their systems, but to process the implementation of these models across the full application development life-cycle.

PlantUML Software tool

PlantUML is an open-source tool allowing users to create diagrams from a plain text language. Besides various UML diagrams, PlantUML has support for various other software development related formats, as well as visualisation of JSON and YAML files.

ABViewer

ABViewer is multifunctional software for working with AutoCAD DWG, DXF, PLT, STEP, IGES, STL and other 2D and 3D CAD files. The application allows creating and editing drawings, as well as saving them to AutoCAD DWG/DXF, PDF, JPG and a number of other vector and raster file formats.

References

  1. https://github.com/umlet/umlet
  2. Martin Fowler's UmlAsSketch
  3. M. Auer, T. Tschurtschenthaler, S. Biffl, "Flyweight UML Modelling Tool for Software Development", Proc of 29th EUROMICRO Conference
  4. M. Auer, L. Meyer, S. Biffl, Explorative UML Modeling - Comparing the Usability of UML Tools, Proc of 9th International Conference on Enterprise Information Systems (ICEIS 2007)