Ein Pufferknoten (engl. CentralBufferNode) ist ein Modellelement in der Unified Modeling Language (UML), einer Modellierungssprache für Software und andere Systeme.
Pufferknoten sind spezielle Objektknoten in Aktivitäten der UML2. Der Pufferknoten ist nahe verwandt mit dem Pin, einem anderen Objektknoten. Sowohl der Pin als auch der Pufferknoten können entsprechend ihrer Kapazität eine bestimmte Anzahl Objekte zwischenspeichern, das heißt, beide haben die Möglichkeit, Objekte im Fluss durch eine Aktivität zu puffern.
Im Unterschied zu einem Pin muss ein Pufferknoten jedoch nicht zwingend zu einer Aktion gehören. Der Pufferknoten kann irgendwo in der Aktivität als Puffer eingefügt werden. Er ist über ein- und ausgehenden Objektflüsse mit umgebenden Objektknoten verbunden.
Notation
Um einen Pufferknoten von einem anderen Objektknoten in einer Aktivität zu unterscheiden, besitzt er das Stereotyp «centralBuffer»
.
In der Abbildung links ist ein Pufferknoten dargestellt, der über zwei Objektflüsse Objekte von zwei Aktionen erhält. Er ist über zwei ausgehende Objektflüsse mit zwei weiteren Aktionen verbunden. Diese Aktivität modelliert die Tatsache, dass zwei Aktionen nebenläufig Werkstücke fräsen und in einem Zwischenlager ablegen, aus dem sich zwei weitere Aktionen für den nachfolgenden Arbeitsschritt bedienen.
Unterschiede zur UML 1.x
Der Pufferknoten wurde neu in der UML2 eingeführt.