The Time Viewpoint focuses on the specific requirements and constraints of real-time event-driven systems, ensuring that they meet timing and performance criteria. This design viewpoint frames the following design concerns:
Time Event Life Cycle
Figure SDS-TE-LIFE illustrates the time event life cycle:
[0]
Time Event constructed but disarmed.
[1a]
the armX()
operation with the 'interval' argument of 0 arms a one-shot time event
[1b]
the armX()
operation with the 'interval' argument of non-zero arms a periodic time event
[2]
a one-shot Time Event is automatically disarmed after it expires
[3a]
a one-shot Time Event can be disarmed while it is armed and still timing out (the disarm()
operation returns 'true').
[3b]
a periodic Time Event can be disarmed when it is armed (the disarm()
operation returns 'true')
[3c]
an already disarmed Time Event can be disarmed (the disarm()
operation returns 'false')
[4a]
a one-shot Time Event can be rearmed while it is armed and still timing out (the rearm()
operation returns 'true').
[4b]
a periodic Time Event can be rearmed while it is armed (the rearm()
operation returns 'true').
[4c]
a disarmed Time Event can be rearmed (the rearm()
operation returns 'false').
[5a]
arming an already armed one-shot Time Event is NOT allowed (QP framework asserts)
[5b]
arming an already armed periodic Time Event is NOT allowed (QP framework asserts)