The Unified Modeling Language (UML) is a general-purpose, developmental, modeling language made for software engineers. It provides a standardized visualization the design of a system. UMLEditor is intended to allow the user to create, edit, and visualize the basic functions of UML.
UMLEditor can
- Add/remove
- classes
- fields
- methods
- relationships (between classes)
- Rename
- classes
- fields
- methods
- Change Relationship types
- Save/load files
There is only one installation requirements for running UMLEditor. Apache Maven. Below is an outsourced link to a guide on how to install Maven Windows and Linux.
After installation of Apache Maven or if you already have it installed. There are a few further steps to run the program.
-
Download UMLEditor on GitHub
-
click the button in the right hand corner. To download the zip file.
-
Extract the files and create a folder.
- Download UMLEditor on GitHub
- Open a terminal
- Navigate to the directory where you have UMLEditor. If you are unfamiliar with how to do so see Command Prompt Basic Commands.
- Type
run-uml-console.bat
for a console view or./run-uml-gui.bat
for a GUI view - Type
help
to see a list of commands and descriptions
- Download UMLEditor on GitHub
- Open a terminal
- Navigate to the directory where you have UMLEditor. If you are unfamiliar with how to do so see Terminal Basic Commands.
- Type
run-uml-console.sh
for a console view or./run-uml-gui.sh
for a GUI view - Type
help
to see a list of commands and descriptions
Once UMLeditor is running type help
and hit enter to print out a list of valid commands and their descriptions.
Typing help <command>
will show the description of a specified command. For example below we specify the add command.
Creating a class is in the form add class <className>
. Here we create two classes Student_1 and Teacher_1. Then list the classes to illustrate progress.
Creating a field is in the form add field <class_name> <field_name> <type>
. Here we create four fields two for Student_1 and two for Teacher_1. Then list the classes to illustrate progress.
The relationships supported are
aggregation
- -----<>
composition
- ----<=>
inheritance
- ------->
realization
-
-
-
-
- ->
-
-
-
-
Creating a relationship is in the form add relationship <class_name1> <relationship_name> <class_name2>
. Here we create an aggregation relationship between our two classes. Then list the relationships to illustrate progress.
Creating a method is in the form add method <class_name1> <return_type> <parameter_list>
. Here we create a method called GetMajor which accepts ID as a parameter and has a return type string. Then list the classes to illustrate progress.
There are four examples of listing above.
To view a list of classes their fields and methods type list classes
. The lists take the form of boxes with the classes name and its associated attributes inside.
To view a list relationships between classes type list relationships <class_name>
. The list takes the form of boxes for each class containing their associated attributes with a delimiter for relationship type between the classes.
- classes
edit class <old_class_name> <new_class_name>
. - fields
edit field <source_class> <old_name> <name_name>
. - methods
edit method <source_class> <old_name> <name_name> <paramter_list>
.
- classes
remove class <class_name>
. - fields
remove field <class_name> <field_name>
. - methods
remove method <class_name> <method_name> <paramter_list>
.
To save the current state of the UML diagram type save
. If a file has not been set it will prompt the user for one.
To load a previously save UML state type load <file_path>
.
Typing quit
or exit
will exit the program.
Click the "file" tab or right click on any whitespace to bring up the command menu.
Click the "actions" tab or right click on a class to bring up the actions menu.
Once you've created a class you can drag them to better position them to your liking. Relationship indicators will move dynamically with the classes.
- Classes appear bold at the top of the box that contains their contents.
- Fields are depicted underneath the first solid line in the box. In the form
<fieldType> <fieldName>.
- Methods appear underneath the second solid line in the box. In the form
<methodType> <MethodName> <parameters>.
- Relationships are depicted as lines inbetween the classes who's ends delineate them.