Requirement Package
UART
Requirements for the UART functionality
Requirement Package
Requirements for the UART functionality
Testing Warnings for ReqPackage UART
Testing warnings are related to the tests in the testing layer and their depedencies.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Requirements Warnings for ReqPackage UART
Requirements warnings are related to the requirements layer.
![]() |
![]() |
Required | |
---|---|
![]() |
SIL_1 |
Base | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
![]() | UART | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | ![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | Requirements for the UART functionality |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | ReqPackage_93 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | _jgdtEOc_EeyMHMAOoLxcsQ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
top level package | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Content | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Hazard Scenario | Parent | Hazard Events |
---|---|---|
This would be very sad. |
Hazardous Events in this package.
Hazardous Event | Parent | Probability | Controllability | Effect | SIL | Safety-Goals |
---|---|---|---|---|---|---|
The user might think µRTE is hard to use. |
QM | |||||
The customer might not see the full spectrum of features µRTE comes with. |
QM |
Safety-Goals in this package.
Safety Goal | Parent | Function Type | SIL derived | SIL manual | SIL required | Safe State | Safety Requirements |
---|---|---|---|---|---|---|---|
An small demo model with the most important features shall show the most important features of µRTE. |
System_Function | QM | derived | QM | Show slides |
|
(Safety)Requirements contained in this package.
(Safety)Requirement | Parent | User-ID | Author | Creation Date | Start Date | Deadline | Expense | Responsibe | Category | Type | Status | Justification | Function Type | SIL derived | SIL manual | SIL required | Tests | Technical Functions | Software | Other SW | Hardware | Signals | Global variables | Activation events | Use-Cases | User-Stories | Refining | Conflicting | refined by | conflicted by |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
When the button is pressed, the system-state shall change from Blink into UART mode. |
Requirement_95 | Thomas Barth | Wed Jun 08 17:56:19 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | - | - | - | - |
|
|||||||||||||||||
How to read and write data form and to hardware. |
SafetyRequirement_110 | Thomas Barth | Thu Jun 09 20:50:22 CEST 2022 | 0.0 | Thomas Barth | product | functional | approved | System_Function | QM | derived | QM | ||||||||||||||||||
Demonstrate the use of scalers and validators. |
SafetyRequirement_111 | Thu Jun 09 20:52:41 CEST 2022 | 0.0 | product | functional | approved | System_Function | QM | derived | QM | ||||||||||||||||||||
Show how protection sets can be used to grant access to hardware. |
SafetyRequirement_115 | Fri Jun 10 14:24:52 CEST 2022 | 0.0 | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||||
Runnables can be activated by signal (onData/onError) events. |
SafetyRequirement_93 | Thomas Barth | Wed Jun 08 17:34:15 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | System_Function | QM | derived | QM |
|
|||||||||||||||||
Global variables can store data for Runnables and other Software Functions. |
SafetyRequirement_94 | Thomas Barth | Wed Jun 08 17:34:15 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||
Runnables can be activated by cyclic events. |
SafetyRequirement_95 | Thomas Barth | Wed Jun 08 17:34:15 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | System_Function | QM | SIL_1 | SIL_1 |
|
|||||||||||||||||
µRTE easily can transmit events and data between tasks |
SafetyRequirement_96 | Thomas Barth | Wed Jun 08 17:46:14 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | System_Function | QM | derived | QM |
|
|||||||||||||||||
Signals can either be global data objects of local objects on the task stack. |
SafetyRequirement_97 | Wed Jun 08 17:49:01 CEST 2022 | 0.0 | product | non_functional | implemented | System_Function | QM | derived | QM |
|
|||||||||||||||||||
uRTE allows the definition of multiple system-states where each state has an own data-flow. |
SafetyRequirement_98 | Wed Jun 08 17:52:52 CEST 2022 | 0.0 | product | functional | implemented | System_Function | QM | derived | QM |
All HazardScenarios below this package.
Hazard Scenario | Parent | Hazard Events |
---|---|---|
This would be very sad. |
All HazardEvents below this package.
Hazardous Event | Parent | Probability | Controllability | Effect | SIL | Safety-Goals |
---|---|---|---|---|---|---|
The user might think µRTE is hard to use. |
QM | |||||
The customer might not see the full spectrum of features µRTE comes with. |
QM |
All SafetyGoals below this package.
Safety Goal | Parent | Function Type | SIL derived | SIL manual | SIL required | Safe State | Safety Requirements |
---|---|---|---|---|---|---|---|
An small demo model with the most important features shall show the most important features of µRTE. |
System_Function | QM | derived | QM | Show slides |
|
All (Safety)Requirements below this package.
(Safety)Requirement | Parent | User-ID | Author | Creation Date | Start Date | Deadline | Expense | Responsibe | Category | Type | Status | Justification | Function Type | SIL derived | SIL manual | SIL required | Tests | Technical Functions | Software | Other SW | Hardware | Signals | Global variables | Activation events | Use-Cases | User-Stories | Refining | Conflicting | refined by | conflicted by |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Global variables can store data for Runnables and other Software Functions. |
SafetyRequirement_94 | Thomas Barth | Wed Jun 08 17:34:15 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||
How to read and write data form and to hardware. |
SafetyRequirement_110 | Thomas Barth | Thu Jun 09 20:50:22 CEST 2022 | 0.0 | Thomas Barth | product | functional | approved | System_Function | QM | derived | QM | ||||||||||||||||||
µRTE easily can transmit events and data between tasks |
SafetyRequirement_96 | Thomas Barth | Wed Jun 08 17:46:14 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | System_Function | QM | derived | QM |
|
|||||||||||||||||
uRTE allows the definition of multiple system-states where each state has an own data-flow. |
SafetyRequirement_98 | Wed Jun 08 17:52:52 CEST 2022 | 0.0 | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||||
Show how protection sets can be used to grant access to hardware. |
SafetyRequirement_115 | Fri Jun 10 14:24:52 CEST 2022 | 0.0 | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||||
Runnables can be activated by cyclic events. |
SafetyRequirement_95 | Thomas Barth | Wed Jun 08 17:34:15 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | System_Function | QM | SIL_1 | SIL_1 |
|
|||||||||||||||||
Runnables can be activated by signal (onData/onError) events. |
SafetyRequirement_93 | Thomas Barth | Wed Jun 08 17:34:15 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | System_Function | QM | derived | QM |
|
|||||||||||||||||
Demonstrate the use of scalers and validators. |
SafetyRequirement_111 | Thu Jun 09 20:52:41 CEST 2022 | 0.0 | product | functional | approved | System_Function | QM | derived | QM | ||||||||||||||||||||
When the button is pressed, the system-state shall change from Blink into UART mode. |
Requirement_95 | Thomas Barth | Wed Jun 08 17:56:19 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | - | - | - | - |
|
|||||||||||||||||
Signals can either be global data objects of local objects on the task stack. |
SafetyRequirement_97 | Wed Jun 08 17:49:01 CEST 2022 | 0.0 | product | non_functional | implemented | System_Function | QM | derived | QM |
|
Technical Functions associated with (Safety)Requirements of this package.
Function | LFB | Software | Hardware | Other Software | SIL required | SIL achieved | SIL justification | sub Technical Functions | Requirements | sub Requirements |
---|---|---|---|---|---|---|---|---|---|---|
If the button is pressed, UART messages indicating the press duration are sent. |
SIL_1 | QM | ||||||||
An LED shall blink to indicate that the system is alive and responding. |
SIL_1 | QM |
Technical Functions associated with (Safety)Requirements of this package or any of its sub-packages.
Function | LFB | Software | Hardware | Other Software | SIL required | SIL achieved | SIL justification | sub Technical Functions | Requirements | sub Requirements |
---|---|---|---|---|---|---|---|---|---|---|
If the button is pressed, UART messages indicating the press duration are sent. |
SIL_1 | QM | ||||||||
An LED shall blink to indicate that the system is alive and responding. |
SIL_1 | QM |
Logical Function Blocks associated with (Safety)Requirements of this package.
Function | Type | Technical functions |
---|---|---|
An binary HMI |
Input | |
The MCU implementing the logic |
Service | |
A PC receiving UART messages |
Monitor | |
An LED to indicate a binary state |
Output |
Logical Function Blocks associated with (Safety)Requirements of this package or any of its sub-packages.
Function | Type | Technical functions |
---|---|---|
An binary HMI |
Input | |
The MCU implementing the logic |
Service | |
A PC receiving UART messages |
Monitor | |
An LED to indicate a binary state |
Output |
Sofware Functions associated with (Safety)Requirements of this package.
Unit | Parent | Function calls | other Software Elements | Technical Functions | Requirements | Type | Tasks | WCET | Stack | ROM | Globals | ProtectionSets | SIL required | SIL achieved | sub Technical Functions (R) | sub Requirements (R) | Has a return value (R) | SystemStates (R) | Ingoing Trigger Ports (R) | Outgoing Trigger Ports (R) | Ingoing Data Ports (R) | Outgoing Data Ports (R) | Signals (D) | Runnables (D) | DataType (D) | Is Synchronous (D) | Hardware (D) | Ports (G) | Callers (F) | Return Type (F) | Parameters (F) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Sends UART messages periodically via the UART signal |
![]() |
Runnable | 0 | 0 | 0 | SIL_1 | QM | true |
|
|
|
- | - | - | - | - | - | - | - | - | |||||||||||
Runnable to switch into the UART state if there is an event in the Blink State. |
![]() |
Runnable | 0 | 0 | 0 | SIL_1 | QM | true |
|
- | - | - | - | - | - | - | - | - | |||||||||||||
Reads the current button state from hardware |
![]() |
InDriver | 0 | 0 | 0 | SIL_1 | QM | - | - | - | - | - | - | - | - | ![]() |
true | - | - | - | - | ||||||||||
Hardware write-Interface towards the LED |
![]() |
OutDriver | 0 | 0 | 0 | SIL_1 | QM | - | - | - | - | - | - | - | - | ![]() |
true | - | - | - | - | ||||||||||
Acquires the button state periodically and provides button signals |
![]() |
Runnable | 0 | 0 | 0 | SIL_1 | QM | false |
|
|
|
|
- | - | - | - | - | - | - | - | - |
Sofware Functions associated with (Safety)Requirements of this package or any of its sub-packages.
Unit | Parent | Function calls | other Software Elements | Technical Functions | Requirements | Type | Tasks | WCET | Stack | ROM | Globals | ProtectionSets | SIL required | SIL achieved | sub Technical Functions (R) | sub Requirements (R) | Has a return value (R) | SystemStates (R) | Ingoing Trigger Ports (R) | Outgoing Trigger Ports (R) | Ingoing Data Ports (R) | Outgoing Data Ports (R) | Signals (D) | Runnables (D) | DataType (D) | Is Synchronous (D) | Hardware (D) | Ports (G) | Callers (F) | Return Type (F) | Parameters (F) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Acquires the button state periodically and provides button signals |
![]() |
Runnable | 0 | 0 | 0 | SIL_1 | QM | false |
|
|
|
|
- | - | - | - | - | - | - | - | - | ||||||||||
Reads the current button state from hardware |
![]() |
InDriver | 0 | 0 | 0 | SIL_1 | QM | - | - | - | - | - | - | - | - | ![]() |
true | - | - | - | - | ||||||||||
Hardware write-Interface towards the LED |
![]() |
OutDriver | 0 | 0 | 0 | SIL_1 | QM | - | - | - | - | - | - | - | - | ![]() |
true | - | - | - | - | ||||||||||
Sends UART messages periodically via the UART signal |
![]() |
Runnable | 0 | 0 | 0 | SIL_1 | QM | true |
|
|
|
- | - | - | - | - | - | - | - | - | |||||||||||
Runnable to switch into the UART state if there is an event in the Blink State. |
![]() |
Runnable | 0 | 0 | 0 | SIL_1 | QM | true |
|
- | - | - | - | - | - | - | - | - |
Signals associated with (Safety)Requirements of this package.
Signal | Type | Storage | Runnables OUT | Runnables IN | Tasks | SystemStates | Requirements | miminum Age | maximum Age | Checksum | Force Sync | Inline | ISR API | effective inline | SIL required | SIL achieved | Initial value (D) | Pointer access (D) | Datatype (D) | Alt-In (D) | Alt-Out (D) | In-Driver (D) | Out-Driver (D) | OnData (D) | OnError (D) | OnTrigger (E) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Hardware Out interface for UART. |
Data | local in |
0 | 0 | false | false | false | false | false | QM | QM | true | ![]() |
- | - | |||||||||||
contains the number of seconds, the button has been pressed |
Data | global in ![]() |
0 | 202 | true | false | false | false | false | QM | QM | 0 | false | ![]() |
- | - | ||||||||||
A representation of the current button state |
Data | local in |
0 | 105 | false | false | false | false | false | SIL_1 | QM | false | false | ![]() |
- |
|
- | |||||||||
Fired whenever the button is pressed (but not if it is released) |
Event | local in |
0 | 0 | false | false | false | false | false | QM | QM | - | - | - | - | - | - | - | - | - |
|
Signals associated with (Safety)Requirements of this package or any of its sub-packages.
Signal | Type | Storage | Runnables OUT | Runnables IN | Tasks | SystemStates | Requirements | miminum Age | maximum Age | Checksum | Force Sync | Inline | ISR API | effective inline | SIL required | SIL achieved | Initial value (D) | Pointer access (D) | Datatype (D) | Alt-In (D) | Alt-Out (D) | In-Driver (D) | Out-Driver (D) | OnData (D) | OnError (D) | OnTrigger (E) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
A representation of the current button state |
Data | local in |
0 | 105 | false | false | false | false | false | SIL_1 | QM | false | false | ![]() |
- |
|
- | |||||||||
contains the number of seconds, the button has been pressed |
Data | global in ![]() |
0 | 202 | true | false | false | false | false | QM | QM | 0 | false | ![]() |
- | - | ||||||||||
Fired whenever the button is pressed (but not if it is released) |
Event | local in |
0 | 0 | false | false | false | false | false | QM | QM | - | - | - | - | - | - | - | - | - |
|
|||||
Hardware Out interface for UART. |
Data | local in |
0 | 0 | false | false | false | false | false | QM | QM | true | ![]() |
- | - |
Global variables associated with (Safety)Requirements of this package.
Global Variable | Container | DataType | Requirements | public (S) | InitValue | Storage | Protection Set (S) | SIL required | SIL achieved |
---|---|---|---|---|---|---|---|---|---|
internal counter for button press duration |
![]() |
![]() |
- | 0 | ![]() |
- | SIL_1 | QM |
Global variables associated with (Safety)Requirements of this package or any of its sub-packages.
Global Variable | Container | DataType | Requirements | public (S) | InitValue | Storage | Protection Set (S) | SIL required | SIL achieved |
---|---|---|---|---|---|---|---|---|---|
internal counter for button press duration |
![]() |
![]() |
- | 0 | ![]() |
- | SIL_1 | QM |
Activation Events associated with (Safety)Requirements of this package.
Event | Type | Cycle Time (C) | Offset (C) | Task-Init (S) | Requirements | Ports | Runnables | Tasks | SystemStates | SIL required | SIL achieved |
---|---|---|---|---|---|---|---|---|---|---|---|
Timebase for button read operations |
CyclicEvent | 200 | 0 | - |
|
SIL_1 | QM |
Activation Events associated with (Safety)Requirements of this package or any of its sub-packages.
Event | Type | Cycle Time (C) | Offset (C) | Task-Init (S) | Requirements | Ports | Runnables | Tasks | SystemStates | SIL required | SIL achieved |
---|---|---|---|---|---|---|---|---|---|---|---|
Timebase for button read operations |
CyclicEvent | 200 | 0 | - |
|
SIL_1 | QM |
Tests associated associated with (Safety)Requirements of this package.
Test | User-ID | Group | Priority | Status | Procedure and Input-Data | Expected Results | gen Name | gen Props | SIL | Requirements | Technical-Functions | Software-Units | Signals | Global variables | Activation-Events | Hardware-Components |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tests the UART functionality at the system level |
Test_134 | 0 | approved | Regular power-on with a terminal connected to UART. The Button is pressed for 10 seconds. | The string '--- UART WakeUp ----' is send whenever the button is pressed, followed by 'Button pressed for %d seconds.' messages, where '%d' represents the integer number of seconds the button already has been pressed. |
Tests associated associated with (Safety)Requirements of this package or any of its sub-packages.
Test | User-ID | Group | Priority | Status | Procedure and Input-Data | Expected Results | gen Name | gen Props | SIL | Requirements | Technical-Functions | Software-Units | Signals | Global variables | Activation-Events | Hardware-Components |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tests the UART functionality at the system level |
Test_134 | 0 | approved | Regular power-on with a terminal connected to UART. The Button is pressed for 10 seconds. | The string '--- UART WakeUp ----' is send whenever the button is pressed, followed by 'Button pressed for %d seconds.' messages, where '%d' represents the integer number of seconds the button already has been pressed. |