UML

About UML, the Unified Modeling Language

UML is an open modeling language, mainly to design software applications and information systems with.

On Dragon1 you can design your software applications using UML.

The UML Meta Model

UML is about object oriented analyses and design. UML defines that every entity, like a software application, a house or a person, is an instance of a class. And that class has attributes (like a name, version and type) and has methods (like starting up, protecting and walking).

Everything in an UML model is a model element, like you can see here below in the simplified UML meta model. This meta model enables for instance users to create class models and visualize them as class diagrams.

UML Structural Entities

Any diagram of UML shows structural entities. The defined structural entities in UML are:

  • Class
  • Object
  • Interface
  • Collaboration
  • Use Case
  • Actor
  • State
  • Node
  • Component
  • Package

The standard diagram types

In UML twelve standard diagram typs are recognized:

  • Class Diagram
  • Component Diagram
  • Deployment Diagram
  • Object Diagram
  • Package Diagram
  • Profile Diagram
  • Composite Structure Diagram
  • Use Case Diagram
  • Activity Diagram
  • State Machine Diagram
  • Sequence Diagram
  • Communication Diagram
  • Interaction Overview Diagram
  • Timing Diagram

On Dragon1 you can create all of these Diagram Types

Use Case Diagram

The first diagram you create when working with UML is an Use Case Diagram. In this diagram you identify the stakeholders or users that will make use of the software application and also what they primarily want or need to use the software application for.

Class Diagram

Below is an example class diagram. A class diagram shows how the world your software application will know, looks like or can exist of.

Sequence Diagram

Because interaction can get really complicated in a software application or information system, it is a very wise thing to create a sequence diagram like the one below to visualize what should happen, in what order.

UML Rules and Naming Convention

Every modeling language requires rules and naming conventions so that the group using the language create pieces of work that fit together. UML does not prescribe how to model and name classes, etc.. in detail. As architect or team of architects that wants to use UML you have to put effort in creating your own modeling rules and naming conventions.