Executable UML¶
A model-driven software method that adds executable actions to UML-style domain and state models.
Core Idea¶
Executable UML, particularly the xtUML method, turns a restricted UML-style model into an operational specification. It organizes subject domains, classes and associations, state machines, events, and action-language procedures so that model instances can change in a defined way. The decisive step beyond a diagram is not graphical appearance but sufficient execution semantics.
A verifier can run the model independently of a selected implementation platform, and a model compiler can translate the same conceptual structure toward target code. This separation permits testing domain behavior before platform choices, while leaving architecture and integration concerns for later stages. OMG fUML and ALF address neighboring executable-semantics questions but should not be silently equated with every xtUML method or toolchain.
Scope of Application¶
The method requires executable model semantics, not merely UML-shaped documentation.
- Domain modeling. Express entities and associations independent of one programming language.
- Behavior specification. Define states, events, and actions that determine instance evolution.
- Model verification. Exercise a platform-independent model and inspect outcomes.
- Model compilation. Translate subject semantics into a target technology under explicit compiler rules.
Clarity¶
Class and association diagrams define objects; state/event models and action language determine behavior. A verifier runs the model, while a model compiler translates it. A diagram missing operational actions is descriptive UML, not yet an executable model.
Manages Complexity¶
Large systems contain domain logic, user interfaces, storage, security, and platform details. Partitioning domains and compiling from an abstract model helps manage these layers, but only if cross-domain bridges and generated-code assumptions are made explicit. An underspecified model merely relocates ambiguity rather than removing it.
Abstract Reasoning¶
Partition domains, define typed data and lifecycle states, then give transitions unambiguous actions. Run cases in a verifier, translate with declared compiler rules, and check target behavior separately.
Knowledge Transfer¶
The method applies literally to software domains modeled with executable UML-compatible semantics, independent of a particular target language. State machines in hardware or business process diagrams may share a structural pattern but are not thereby xtUML models. The transferable idea is running a typed behavioral model before code generation; the named method retains its UML profile and action semantics.
Relationships to Other Abstractions¶
Current abstraction Executable UML Domain-specific
Parents (1) — more general patterns this builds on
-
Executable UML presupposes Representation Prime
Executable UML presupposes Representation: the parent's defining role is necessary to the child's frozen mechanism or criterion.
Hierarchy path (1) — routes to 1 parentless root
- Executable UML → Representation → Abstraction
Neighborhood in Abstraction Space¶
Executable UML sits in a moderately populated region (42nd percentile for distinctiveness): it has near-neighbors but no dense thicket of look-alikes.
Family — Formal Systems & Discrete Structures (18 abstractions)
Nearest neighbors
- Semantic Architecture — 0.88
- Role Class Model — 0.88
- Platform-specific model — 0.87
- Feature-Driven Development — 0.87
- Virtual Design and Construction — 0.87
Computed from structural-signature embeddings · 2026-10-08