Modeltron-logo-black-transparent-3444x1908.png

Hello!

Welcome to Modeltron, the elements of systems modeling.

No Buffer versus Overwrite

No Buffer versus Overwrite

The «nobuffer» and «ovewrwrite» stereotypes can be applied to object nodes to model whether incoming object tokens are discarded if an object token is already present or overwrite the existing object token in the object node.

According to the SysML Specification, when “fast or continuously flowing data” values are entering an object node, the «nobuffer» stereotype may be placed on the object node to prevent a buffer overrun.  In the example, Transmissions are continuously received, but any new Transmissions are discarded if the current Transmission on the action pin has not yet been displayed.

In the example, incoming Transmissions are not buffered; in other words, if a Transmission already exists on the action pin, the incoming Transmission is discarded.

In the example, incoming Transmissions are not buffered; in other words, if a Transmission already exists on the action pin, the incoming Transmission is discarded.

The «overwrite» stereotype differs from «nobuffer» in that any incoming object tokens overwrite the existing object token in the object node.  This effectively provides the “newest” object token to the receiving activity or action.  In the example, only the latest Status received is provided to the Display Latest Status action.  Any older Status object tokens are overwritten.

In the example, the current Status token in the action pin is overwritten by the latest Status token when it arrives.

In the example, the current Status token in the action pin is overwritten by the latest Status token when it arrives.

Both «nobuffer» and «overwrite» stereotypes are displayed on the activity diagram next to the object node (e.g., activity parameter or action pin).

For obvious reasons,  «overwrite» and «nobuffer» cannot be applied to the same object node at the same time, however, for object nodes which receive «continuous» flows, «overwrite» and «nobuffer» have the same effect.

Reference:

Object Management Group (2019) OMG Systems Modeling Language Version 1.6. Needham, MA: OMG. Para 11.3.2.4, 11.3.2.5.

Parameter Sets

Parameter Sets

State Constraints on Object Nodes

State Constraints on Object Nodes