Skip to content

Recurrence Property Pattern

Marc Carwehl edited this page Dec 16, 2021 · 4 revisions

Description

  • Pattern in the original catalog
  • Structured English Specification: [Scope], P [holds] repeatedly every t timeunits.
  • Pattern Intent: This pattern describes a portion of a system's execution that contains an unspecified number of instances of a designated state, which must not be absent longer than the timebound.
  • In the observers below, t is the time bound.

State-Based Pattern

Untimed

Globally

START --> GOAL

Recurrence State Globally Untimed

Before R

START --> GOAL

Recurrence State Before Untimed

After Q

START --> GOAL

Recurrence State After Untimed

Between Q and R

This scope is hardly applicable.

VALIDATION --> (P_ or INIT)

Recurrence State Between Untimed

After Q Until R

VALIDATE --> (P or R)

Recurrence State Until Untimed

Timed

Globally

The following observer reaches an ERROR state when P is not true repeatedly in time. Whenever P is left, the clock is reset.

A[] not ERROR

Recurrence property state globally

Before R

The following observer reaches an ERROR state when P is not true repeatedly in time and afterwards it observes an R. Whenever P is left, the clock is reset. The ERROR state is unreachable once R happened.

A[] not ERROR

Recurrence property state before R

After Q

After observing Q, the following observer reaches an ERROR state when P is not true repeatedly in time. Whenever P is left, the clock is reset.

A[] not ERROR

Recurrence property state after Q

Between Q and R

A[] not ERROR

Recurrence property state between Q R

After Q Until R

A[] not ERROR

Recurrence property state after Q until R

Clone this wiki locally