Top Qs
Timeline
Chat
Perspective

Real-Time UML

From Wikipedia, the free encyclopedia

Remove ads

Real-Time UML (RTUML) refers to the application of the Unified Modelling Language (UML) for the analysis, design, and implementation of real-time and embedded systems, where timing constraints, concurrency, and resource management are critical.[1][2][3] It extends standard UML with profiles, notations, and semantics to handle hard and soft real-time requirements, such as modelling predictable response times and fault tolerance.[4][5] RTUML is not a separate language but a methodology leveraging UML diagrams (e.g., statecharts, sequence diagrams) for time-sensitive applications like automotive controls, avionics, and medical devices.[1][2][6]

The term is closely associated with Bruce Powel Douglass, who popularised it through his books and the Harmony process for embedded software development.[1][2][7] As of 2025, RTUML remains relevant in industries requiring certified systems, though its adoption varies with agile methodologies and model-driven engineering tools.[8][9][10]

Remove ads

Background

Real-Time UML emerged in the late 1990s as UML was standardized by the Object Management Group (OMG) in 1997, addressing the need for object-oriented modeling in real-time systems previously dominated by procedural languages like C.[1][11][12] Traditional real-time development relied on "bare metal" programming or theoretical models, but RTUML introduced visual notations for object structure, behaviour, and timing.[1][2]

Bruce Powel Douglass’s 1999 book, Real-Time UML: Developing Efficient Objects for Embedded Systems, formalised the approach, emphasising statecharts for concurrency and timing constraints.[1][13] Later editions (2004, 2006) incorporated UML 2.0 features like activity and timing diagrams, aligning with OMG’s Real-Time Profile (now part of MARTE—Modelling and Analysis of Real-Time and Embedded Systems).[2][3][14] The Harmony process integrates RTUML with executable models for simulation and code generation.[15][4]

RTUML addresses hard real-time systems (e.g., strict deadlines in avionics) versus soft real-time (e.g., media streaming), using UML extensions for schedulability analysis.[16][4][17]

Remove ads

Key concepts

RTUML adapts UML diagrams and techniques for real-time needs:

These support iterative development, from requirements to deployment, often with tools like IBM Rhapsody or Enterprise Architect.[21][22][23]

Remove ads

Applications

RTUML is used in:

Tools like IBM Rhapsody support RTUML for model-based development and code generation in C/C++.[22][21]

Criticism and adoption

RTUML’s complexity can overwhelm simple systems, and its use in agile environments is limited, where lightweight diagrams are preferred.[26][27] Surveys indicate UML (including RTUML) is used in 30–50% of embedded projects, often for documentation rather than full model-driven engineering.[28][29][30][31] It remains standard in academia and certified industries like aerospace.[4][32][33]

See also

References

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads