Timing-Diagramm

Ein Timing-Diagramm in der UML ist eine spezielle Art von Interaktionsdiagramm, das die zeitlichen Beschränkungen eines Systems visualisiert. Es konzentriert sich auf die chronologische Reihenfolge von Ereignissen und zeigt, wie verschiedene Objekte im Laufe der Zeit miteinander interagieren. Zeitdiagramme sind besonders in Echtzeitsystemen und eingebetteten Systemen nützlich, um das Verhalten von Objekten über einen bestimmten Zeitraum hinweg zu verstehen.

[Ref. of initial request QA-5383]

Definition von Elementen und Teilnehmern

Schlüsselwörter steuern die Darstellung der Teilnehmer in der Grafik. Mit folgenden Schlüsselwörtern kann die Darstellung gesteuert werden:

Schlüsselwort Beschreibung
analog analog stellt den Statusübergang des Teilnehmers als analoges Signal dar, in dem die angegebenen Werte der Stati linear über die in der Zeitlinie gesetzten Zeitpunkte interpoliert werden.
binary binary Lässt für den Teilnehmer zwei Status zu, zwischen denen er wechseln kann
clock clocked stellt eine Rechtecksignal für den Teilnehmer dar.
Mit period wird die Frequenz für den Statuswechsel festgelegt (Muss-Angabe).
Mit offset kann der Startzeitpunkt des ersten Signals festgelegt werden.
Mit pulse kann die länge des Statusimpulses festgelegt werden
concise concise ist eine vereinfachte Darstellung um einen Statusübergang eines Teilnehmers darzustellen (Eignet sich am besten für die Darstellung von Meldungssignalen).
robust robust stellt eine Signallinie dar, welche den Übergang von verschiedenen Statusübergängen darstellt.

Ein Zeitpunkt eines Statuswechsels in der Zeitlinie wird mit @ festgelegt. Der jeweilige Status des Teilnehmers zu diesem Zeitpunkt wird mit is definiert.

[Ref. QA-14631, QA-14647 and QA-11288]

[Ref. QA-14631, QA-14647, QA-11288 and GH-2409]
WARNING
 This translation need to be updated. 
WARNING

Binary and Clock

It's also possible to have binary and clock signal, using the following keywords:

Adding message

You can add message using the following syntax.

Relative time

It is possible to use relative time with @.

Anchor Points

Instead of using absolute or relative time on an absolute time you can define a time as an anchor point by using the as keyword and starting the name with a :.

@XX as :<anchor point name>

Anchor Points with decimal offset

[Ref. QA-17885]

Participant oriented

Rather than declare the diagram in chronological order, you can define it by participant.

Setting scale

You can also set a specific scale.

When using absolute Times/Dates, 1 "tick" is equivalent to 1 second.

Initial state

You can also define an inital state.

Intricated state

A signal could be in some undefined state.

Intricated or undefined robust state

Intricated or undefined binary state

[Ref. QA-11936 and QA-15933]

Hidden state

It is also possible to hide some state.

[Ref. QA-12222]

Negative time value

[Ref. QA-7698]

Hide time axis

It is possible to hide time axis.

Using Time and Date

It is possible to use time or date.

[Ref. QA-7019]

Change Date Format

It is also possible to change date format.

Manage time axis labels

You can manage the time-axis labels.

Label on each tick (by default)

Manual label (only when the state changes)

[Ref. GH-1020]

Adding constraint

It is possible to display time constraints on the diagrams.

Zeitbereich hervorheben

Im Diagramm kann mit ''highlight'' ein Zeitbereich definiert werden, der farblich hervorgehoben wird.

[Ref. QA-10868]

WARNING
 This translation need to be updated. 
WARNING

Using notes

You can use the note top of and note bottom of keywords to define notes related to a single object or participant (available only for concise or binary object).

[Ref. QA-6877, GH-1465]

Adding texts

You can optionally add a title, a header, a footer, a legend and a caption:

Complete example

Thanks to Adam Rosien for this example.

Digitales Beispiel

Adding color

You can add color.

[Ref. QA-5776]

Using (global) style

Without style (by default)

With style

You can use style to change rendering of elements.

[Ref. QA-14340]

Applying Colors to specific lines

You can use the <style> tags and sterotyping to give a name to line attributes.

[Ref. QA-15870]

Compact mode

You can use compact command to compact the timing layout.

By default

Global mode with mode compact

Local mode with only compact on element

[Ref. QA-11130]

Scaling analog signal

You can scale analog signal.

Without scaling: 0-max (by default)

With scaling: min-max

[Ref. QA-17161]

Customise analog signal

Without any customisation (by default)

With customisation (on scale, ticks and height)

[Ref. QA-11288]

Order state of robust signal

Without order (by default)

With order

With order and label

[Ref. QA-6651]

Defining a timing diagram

By Clock (@clk)

By Signal (@S)

By Time (@time)

[Ref. QA-9053]

Annotate signal with comment

[Ref. QA-15762, and QH-888]