JetUML

Last updated
JetUML
Initial releaseJan 23, 2015
Stable release
3.6 / August 7, 2023 [1]
Repository
Written in Java
Platform Java SE
Size 708 kB
Type Software development, UML Tool
License GNU General Public License v3
Website www.jetuml.org

JetUML is a UML tool developed as a pure-Java desktop application for educational and professional use. [2] The project was launched in January 2015 with a focus on minimalist design. [2] The name JetUML relates to the primary goal of the tool, namely the quick sketching of diagrams in the Unified Modeling Language (UML). [3] JetUML is a free and open-source software licensed under the GNU General Public License (GPL). [4]

Contents

History

The JetUML project was launched in January 2015 by Martin P. Robillard, [1] a professor of computer science at McGill University. The original goal of the tool was to support the interactive sketching of UML diagrams during lectures and software design sessions.

The initial source code was derived from the Java Swing-based Violet UML application [5] developed by Cay Horstmann, and then progressively rewritten to modernize it and focus solely on UML sketching. In winter 2018, the application was migrated to the JavaFX GUI framework (Release 2.0). [1] In spring 2020 the application was converted to a modular application (Release 3.0) and started to be distributed as a self-contained executable. [1]

JetUML was used to create the hundred-plus UML diagrams in the book Introduction to Software Design with Java. [6]

Features

JetUML aims to sketch software design ideas with a minimalist feature set. [4] It allows users to create, modify, and annotate the main UML diagram types: class, sequence, state, object diagrams, and use case. JetUML uses UTF-8 encoding to share diagrams across systems including Windows, Linux, and macOS.

JetUML saves diagrams in JSON files and can export diagrams as images in various graphic formats. JetUML does not collect or share any personal information from users. [3] Users can send feedback and report issues directly to the open-source repository in GitHub.

Limitations

See also

Related Research Articles

<span class="mw-page-title-main">ArgoUML</span>

ArgoUML is an UML diagramming application written in Java and released under the open source Eclipse Public License. By virtue of being a Java application, it is available on any platform supported by Java SE.

<span class="mw-page-title-main">Dia (software)</span> Diagramming software

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

In software engineering, version control is a class of systems responsible for managing changes to computer programs, documents, large web sites, or other collections of information. Version control is a component of software configuration management.

<span class="mw-page-title-main">Eclipse (software)</span> 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. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. 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.

<span class="mw-page-title-main">Objecteering</span>

Objecteering is a UML and MDA CASE tool edited by Objecteering Software, a subsidiary of Softeam.

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.

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.

diagrams.net Graph drawing software

diagrams.net is a cross-platform graph drawing software developed in HTML5 and JavaScript. Its interface can be used to create diagrams such as flowcharts, wireframes, UML diagrams, organizational charts, and network diagrams. Parts of its source code are provided under the Apache 2 open-source license.

Domain-driven design (DDD) is a major software design approach, focusing on modeling software to match a domain according to input from that domain's experts.

NClass is a free and open source software tool to create Unified Modeling Language (UML) class diagrams for C# and Java applications. It is written in C# only and needs the .NET Framework 4.0 or the latest version of Mono.

<span class="mw-page-title-main">Etherpad</span> Open-source web-based collaborative real-time editor

Etherpad is an open-source, web-based collaborative real-time editor, allowing authors to simultaneously edit a text document, and see all of the participants' edits in real-time, with the ability to display each author's text in their own color. There is also a chat box in the sidebar to allow meta communication.

Open ModelSphere was a data, process and UML modeling tool written in Java and distributed as free software under the GPL License. It provided support for forward and reverse engineering between UML and relational schemas.

<span class="mw-page-title-main">Applications of UML</span>

UML is a modeling language used by software developers. UML can be used to develop diagrams and provide users (programmers) with ready-to-use, expressive modeling examples. Some UML tools generate program language code from UML. UML can be used for modeling a system independent of a platform language. UML is a graphical language for visualizing, specifying, constructing, and documenting information about software-intensive systems. UML gives a standard way to write a system model, covering conceptual ideas. With an understanding of modeling, the use and application of UML can make the software development process more efficient.

<span class="mw-page-title-main">Chromium Embedded Framework</span> Free and open-source software framework

The Chromium Embedded Framework (CEF) is an open-source software framework for embedding a Chromium web browser within another application. This enables developers to add web browsing functionality to their application, as well as the ability to use HTML, CSS, and JavaScript to create the application's user interface.

<span class="mw-page-title-main">JetBrains</span> Czech software company

JetBrains s.r.o. is a Czech software development private limited company which makes tools for software developers and project managers. The company has its headquarters in Prague, and has offices in China, Europe, and the United States.

<span class="mw-page-title-main">Umple</span> Object-oriented programming and modelling language

Umple is a language for both object-oriented programming and modelling with class diagrams and state diagrams. The name Umple is a portmanteau of "UML", "ample" and "Simple", indicating that it is designed to provide ample features to extend programming languages with UML capabilities.

<span class="mw-page-title-main">PlantUML</span> Open-source 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.

Perforce Software, Inc. is an American developer of software used for developing and running applications, including version control software, web-based repository management, developer collaboration, application lifecycle management, web application servers, debugging tools and agile planning software.

References

  1. 1 2 3 4 "JetUML Releases Notes". JetUML GitHub Repository. Retrieved 8 Apr 2021.
  2. 1 2 Robillard, Martin P.; Kutschera, Kaylee (2019-05-29). "Lessons Learned While Migrating From Swing to JavaFX". IEEE Software. 37 (3): 78–85. arXiv: 1811.04478 . doi:10.1109/MS.2019.2919840. S2CID   53281872 . Retrieved 2020-06-23.
  3. 1 2 3 4 5 Robillard, Martin P. (2020-04-16). "Architectural Description". github.com. Retrieved 2020-06-23.
  4. 1 2 Martinig, Franco (April 2020). "JetUML – a Simple Open Source UML Diagramming Tool". methodsandtools.com. Retrieved 2020-06-23.
  5. Horstmann, Cay (2012). "Violet". In Brown, Amy; Wilson, Greg (eds.). The Architecture of Open-Source Applications: Elegance, Evolution, and a Few Fearless Hacks.
  6. 1 2 Robillard, Martin P. (2019). Introduction to Software Design with Java. Springer International Publishing. ISBN   978-3-030-24094-3.