ArticleslgStudy

science

UML tool

UML tool is a science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand UML tool rather than just read about it. In short: A UML tool (Unified Modeling Language 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. UML tool is used broadly here to include application programs which are not exclusively focused on UML, but which support some functions of the Unifi…

Key takeaways

  • UML tool belongs to science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect UML tool to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of UML tool from memory before moving on to harder problems.

Reference excerpt

A UML tool (Unified Modeling Language 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. UML tool is used broadly here to include application programs which are not exclusively focused on UML, but which support some functions of the Unified Modeling Language, either as an add-on, as a component or as a part of their overall function.

Kinds of functions UML tools support the following kinds of functions:

Diagramming Diagramming in this context means creating and editing UML diagrams; that is diagrams that follow the graphical notation of the Unified Modeling Language. The use of UML diagrams as a means to draw diagrams of (mostly) object-oriented software is generally agreed upon by software developers. When developers draw diagrams of object-oriented software, they usually use UML notation. However, it is often debated whether such diagrams are needed at all, during what stages of the software development process they should be used, or how (if at all) they should be kept up to date. The primacy of software source code often leads to the diagrams being deprecated.

Round-trip engineering Round-trip engineering refers to the ability of a UML tool to perform code generation from models, and model generation from code (a.k.a., reverse engineering), while keeping both the model and the code semantically consistent with each other. Code generation and reverse engineering are explained in more detail below.

Code generation Code generation in this context means that the user creates UML diagrams, which have some connected model data, and the UML tool derives from the diagrams part or all of the source code for the software system. In some tools the user can provide a skeleton of the program source code, in the form of a source code template, where predefined tokens are then replaced with program source code parts during the code generation process. An often cited criticism is that the UML diagrams lack the detail that is needed to contain the same information as is covered with the program source: Jack W. Reeves states that the final embodiment of the design lies in the source code. His often quoted statement that "the Code is the design" has been misinterpreted to mean that there is no need for intermediate- and high-level software-design artifacts, such as UML diagrams or software-requirements documents.

Reverse engineering Reverse engineering in this context means, that the UML tool reads program source code as input and derives model data and corresponding graphical UML diagrams from it (as opposed to the somewhat broader meaning described in the article "Reverse engineering"). Some of the challenges of reverse engineering are:

The source code often has much more detailed information than one would want to see in design diagrams. This problem is addressed by software architecture reconstruction. Diagram data is normally not contained with the program source, such that the UML tool, at least in the initial step, must create some random layout of the graphical symbols of the UML notation or use some automatic layout algorithm to place the symbols in a way that the user can understand the diagram. For example, the symbols should be placed at such locations on the drawing pane that no overlap occurs. Usually, the user of such function of a UML tool must manually edit the automatically generated diagrams to attain some meaningfulness. It also often is senseless to draw diagrams of the whole program source, as that represents too much detail to be of interest at the level of a UML diagram. Some programming language features are notoriously hard to convert automatically to UML diagrams in their full complexity, for example: the C++ language templates for class or function.

Model and diagram interchange XML Metadata Interchange (XMI) is the format for UML model interchange. XMI does not support UML Diagram Interchange, which allows the importation of UML diagrams from one model to another.

Model transformation A key concept associated with the model-driven architecture initiative is the capacity to transform a model into another model. For example, one might want to transform a platform-independent domain model into a Java platform-specific model for implementation. It is also possible to refactor UML models to produce more concise and well-formed UML models. It is possible to generate UML models from other modeling notations, such as Business Process Model and Notation (BPMN), which is also a UML profile. The standard that supports this is named Query/View/Transformation (QVT). One example of an open-source QVT-solution is the ATLAS Transformation Language (ATL) built by French Institute for Research in Computer Science and Automation (INRIA).

See also List of Unified Modeling Language tools List of requirements engineering tools Metamodeling Model-driven engineering QVT Specification and Description Language (SDL)

References

External links

.

UML Tools Directory

Worked examples

Example 1 — a first encounter with UML tool

Start with the simplest possible case. Write down what UML tool claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to UML tool before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about UML tool ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of UML tool

In research
UML tool appears in science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses UML tool in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
UML tool is common in secondary-school and first-year university syllabi. It links to neighbouring topics UML tools, Unified Modeling Language, so understanding it makes those chapters shorter.
In everyday life
Look for UML tool outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “UML tool” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study UML tool in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what UML tool means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain UML tool out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is UML tool in simple terms?

A UML tool (Unified Modeling Language 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. UML tool is used broadly here…

Why does UML tool matter?

Because it connects several science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study UML tool?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on UML tool.

Tags

  • UML tools
  • Unified Modeling Language

Keep exploring