Verify native behavior creation recovery and source authoring contracts

This commit is contained in:
2026-09-11 04:21:56 -07:00
parent 4bb4aaf3dc
commit 2ec72d4241
199 changed files with 19752 additions and 85 deletions
@@ -0,0 +1,344 @@
arcadia 7;
project alarm_response "Alarm response" id "a0f5c4c2-f39c-4095-9816-71f1862e24d8" {
description "A complete small OA/SA source-authoring example. Numerical annotations are descriptive.";
oa_exchange_item alarm_report "Alarm report" id "0a48a460-964a-4578-97c4-428707e8b201" {
description "";
kind Information;
mechanism Flow;
parent none;
supertype none;
}
oa_data_field reported_pressure "Reported pressure" id "0bf7f442-cc8d-4782-ba65-f357e91fd477" {
default none;
description "";
direction Unspecified;
maximum 1;
minimum 1;
parent @alarm_report;
storage Value;
type_ref Real;
unit "kPa";
}
oa_lifeline assessor_line "Assessor" id "1b421446-9d17-4c8b-90f1-6fbe8b513a04" {
description "";
parent @notification;
represented @assess_alarm;
}
oa_activity manage_alarm "Manage a pressure alarm" id "4154bf39-9fd5-490e-aebf-fba3d67b697c" {
description "";
parent none;
}
sa_state console_alerting "Alerting" id "4d167878-2bbe-4acd-abd6-ee7dcd42ec50" {
description "";
do_activity "";
entry "";
exit "";
kind State;
parent @console_region;
}
oa_occurrence assess_once "Assess this alarm" id "528d1c78-62d9-4e45-bb4a-cf529d8ed4a9" {
body {
Action {
action @assess_alarm;
lifeline none;
};
};
description "";
parent @triage;
postcondition "";
precondition "";
}
sa_functional_chain classification_flow "Alarm classification" id "578dbcd5-3c28-43d8-913e-af27bc51ebde" {
description "";
parent none;
steps [@classify_once];
}
oa_lifeline detector_line "Detector" id "57c62024-6d19-4818-ac8c-66fb4a9b3da7" {
description "";
parent @notification;
represented @detect_alarm;
}
sa_initial console_start "Start" id "5a92c3a8-6af5-452a-849e-c2a17dc33260" {
description "";
do_activity "";
entry "";
exit "";
kind Initial;
parent @console_region;
}
oa_actor plant_operator "Plant operator" id "60539571-2921-4e7d-ab83-bae670d0cb15" {
description "";
parent none;
}
oa_scenario notification "Alarm notification" id "69e23f04-7bb3-4db1-a2a3-d8e65101c546" {
context @safe_response;
description "";
parent none;
postcondition "";
precondition "";
steps [@notify_once];
viewpoint OperationalActivity;
}
oa_entity maintenance "Maintenance team" id "6af96577-1b04-4ba1-b91b-6cef61adc6d6" {
description "";
parent none;
}
oa_occurrence detect_once "Detect this alarm" id "6ca87cbe-9579-49b3-884e-e6ee63ba8c5b" {
body {
Action {
action @detect_alarm;
lifeline none;
};
};
description "";
parent @triage;
postcondition "";
precondition "";
}
sa_event alarm_received "Alarm received" id "7fba860a-721f-4da2-8315-010de2e9c69e" {
body {
Signal {
items [];
};
};
description "";
parent none;
}
oa_activity assess_alarm "Assess alarm" id "8cbd5a4f-1c31-49c9-8a01-987144ce962e" {
description "";
parent @manage_alarm;
}
sa_state console_ready "Ready" id "9064a197-96ea-4bdf-9dd6-2e9ef66856d8" {
description "";
do_activity "";
entry "";
exit "";
kind State;
parent @console_region;
}
oa_process triage "Alarm triage" id "9888d781-09f3-4861-b9dc-7a97080d24d6" {
description "";
parent none;
steps [@detect_once, @assess_once];
}
sa_system alarm_console "Alarm console" id "9ea585b5-be12-4204-8909-02ea9bed49f0" {
description "";
parent none;
}
oa_occurrence notify_once "Report this pressure" id "a1c37b31-41ed-4e16-a243-a50702ff1bc1" {
body {
Exchange {
exchange @alarm_message;
message_kind Asynchronous;
receiver @assessor_line;
reply_to none;
sender @detector_line;
values [{
expression "420";
field @reported_pressure;
path [];
}];
};
};
description "";
parent @notification;
postcondition "";
precondition "";
}
sa_occurrence classify_once "Classify this alarm" id "a6c37863-8e72-44f9-a8a3-fea06341c714" {
body {
Action {
action @classify_alarm;
lifeline none;
};
};
description "";
parent @classification_flow;
postcondition "";
precondition "";
}
sa_state_machine console_status "Console status" id "a6c6f463-5c80-4b02-a2e6-67cd0088b2f2" {
description "";
parent @alarm_console;
}
sa_function classify_alarm "Classify alarm" id "ad6941ee-f900-4a2b-a368-d8879f1ffece" {
description "";
parent none;
}
oa_activity detect_alarm "Detect alarm" id "bf9e9d8a-edb2-47f4-93f9-7ae373c42160" {
description "";
parent @manage_alarm;
}
oa_capability safe_response "Respond safely" id "c097b1b5-45dc-49de-bcf6-89b5ccb752d1" {
description "";
parent none;
}
sa_region console_region "Main region" id "e8b62edc-2233-4ec4-a811-2e8baf81a6e9" {
description "";
parent @console_status;
}
interaction alarm_message "Pressure alarm report" id "269e5bdd-2478-4a43-9c77-84d99ac4e8a6" {
description "";
items [@alarm_report];
source @detect_alarm;
target @assess_alarm;
}
capability_involvement assessment_supports_response "Assessment supports safe response" id "27633a6d-d962-4d19-9367-9ca3f00de0b0" {
description "";
source @assess_alarm;
target @safe_response;
}
allocation console_classifies "Console classifies" id "294d4262-303f-41db-b01e-fe47c1647693" {
description "";
source @alarm_console;
target @classify_alarm;
}
chain_involvement triage_supports_response "Triage supports safe response" id "2aeba184-bf69-49c7-87ff-cc2da82b006c" {
description "";
source @triage;
target @safe_response;
}
state_transition initialize_console "Initialize" id "839d4359-c78f-414b-867e-5b40b1f145cc" {
description "";
effect "";
effects [];
guard "";
source @console_start;
target @console_ready;
transition_kind External;
trigger "";
triggers [];
}
allocation operator_detects "Operator detects" id "8653fb7d-529d-495d-abde-897dee36b4bb" {
description "";
source @plant_operator;
target @detect_alarm;
}
allocation team_assesses "Team assesses" id "bb36afbf-9878-401b-b172-d04b08ecf603" {
description "";
source @maintenance;
target @assess_alarm;
}
sequence_link assessment_after_detection "Assess after detecting" id "bfd9c0e7-832b-4983-90aa-fc37d23193e2" {
description "";
guard "";
source @detect_once;
target @assess_once;
}
state_transition display_alarm "Display alarm" id "dd383165-1b89-46b9-8ae3-80a6b6406a4e" {
description "";
effect "";
effects [];
guard "";
source @console_ready;
target @console_alerting;
transition_kind External;
trigger "";
triggers [@alarm_received];
}
diagram response_view "Operational work" id "a44d9d69-78a0-49de-8eb8-3757aa6c0919" {
description "";
layer Oa;
projection FunctionalDataflow;
routes [];
view_options {
coverage "All";
exchange_labels "Name";
hidden_edges [];
participant_categories "All";
relation_kinds "All";
work_categories "All";
work_contexts "All";
};
}
node detector_card id "45f016f4-3558-45b9-9559-da8ef9d5dcad" {
collapsed false;
diagram @response_view;
element @detect_alarm;
position {
x 40.0;
y 40.0;
};
size {
height 94.0;
width 224.0;
};
}
node assessor_card id "6ee7a0cc-013b-4a0f-8cff-513872e028b7" {
collapsed false;
diagram @response_view;
element @assess_alarm;
position {
x 400.0;
y 40.0;
};
size {
height 94.0;
width 224.0;
};
}
artifact response_procedure "Response procedure" id "6ba54037-c6f1-495b-ba96-6f2e910a218c" {
description "";
fragment none;
owner @assess_alarm;
relation References;
revision "review-1";
uri "procedures/alarm-response.md";
}
trace assessment_refinement "Alarm classification refines assessment" id "34142333-67c2-4972-a64f-47e140ed93ca" {
baseline {
oa {
description "";
name "Assess alarm";
};
sa {
description "";
name "Classify alarm";
};
};
description "";
kind Refinement;
oa @assess_alarm;
sa @classify_alarm;
}
}
@@ -0,0 +1 @@
oa_actor plant_operator "Plant operator" id "60539571-2921-4e7d-ab83-bae670d0cb15" {}
@@ -0,0 +1,110 @@
arcadia 7;
project alarm_response "Alarm response" id "a0f5c4c2-f39c-4095-9816-71f1862e24d8" {
description "A complete small OA/SA source-authoring example. Numerical annotations are descriptive.";
oa_actor plant_operator "Plant operator" id "60539571-2921-4e7d-ab83-bae670d0cb15" {}
oa_entity maintenance "Maintenance team" id "6af96577-1b04-4ba1-b91b-6cef61adc6d6" {}
oa_activity manage_alarm "Manage a pressure alarm" id "4154bf39-9fd5-490e-aebf-fba3d67b697c" {
oa_activity detect_alarm "Detect alarm" id "bf9e9d8a-edb2-47f4-93f9-7ae373c42160" {}
// Assessing the alarm is work decomposition, independently allocated below.
oa_activity review_alarm "Assess alarm" id "8cbd5a4f-1c31-49c9-8a01-987144ce962e" {}
}
oa_capability safe_response "Respond safely" id "c097b1b5-45dc-49de-bcf6-89b5ccb752d1" {}
oa_exchange_item alarm_report "Alarm report" id "0a48a460-964a-4578-97c4-428707e8b201" {
mechanism Flow;
oa_data_field reported_pressure "Reported pressure" id "0bf7f442-cc8d-4782-ba65-f357e91fd477" {
type_ref Real;
unit "kPa";
}
}
allocation operator_detects "Operator detects" id "8653fb7d-529d-495d-abde-897dee36b4bb" {
source @plant_operator; target @detect_alarm;
}
allocation team_assesses "Team assesses" id "bb36afbf-9878-401b-b172-d04b08ecf603" {
source @maintenance; target @review_alarm;
}
interaction alarm_message "Pressure alarm report" id "269e5bdd-2478-4a43-9c77-84d99ac4e8a6" {
source @detect_alarm; target @review_alarm; items [@alarm_report];
}
capability_involvement assessment_supports_response "Assessment supports safe response" id "27633a6d-d962-4d19-9367-9ca3f00de0b0" {
source @review_alarm; target @safe_response;
}
oa_process triage "Alarm triage" id "9888d781-09f3-4861-b9dc-7a97080d24d6" {
steps [@detect_once, @assess_once];
oa_occurrence detect_once "Detect this alarm" id "6ca87cbe-9579-49b3-884e-e6ee63ba8c5b" {
body { Action { action @detect_alarm; lifeline none; }; };
}
oa_occurrence assess_once "Assess this alarm" id "528d1c78-62d9-4e45-bb4a-cf529d8ed4a9" {
body { Action { action @review_alarm; lifeline none; }; };
}
}
sequence_link assessment_after_detection "Assess after detecting" id "bfd9c0e7-832b-4983-90aa-fc37d23193e2" {
source @detect_once; target @assess_once;
}
chain_involvement triage_supports_response "Triage supports safe response" id "2aeba184-bf69-49c7-87ff-cc2da82b006c" {
source @triage; target @safe_response;
}
oa_scenario notification "Alarm notification" id "69e23f04-7bb3-4db1-a2a3-d8e65101c546" {
viewpoint OperationalActivity;
context @safe_response;
steps [@notify_once];
oa_lifeline detector_line "Detector" id "57c62024-6d19-4818-ac8c-66fb4a9b3da7" { represented @detect_alarm; }
oa_lifeline assessor_line "Assessor" id "1b421446-9d17-4c8b-90f1-6fbe8b513a04" { represented @review_alarm; }
oa_occurrence notify_once "Report this pressure" id "a1c37b31-41ed-4e16-a243-a50702ff1bc1" {
body { Exchange {
exchange @alarm_message; sender @detector_line; receiver @assessor_line;
message_kind Asynchronous; reply_to none;
values [{ field @reported_pressure; path []; expression "420"; }];
}; };
}
}
sa_system alarm_console "Alarm console" id "9ea585b5-be12-4204-8909-02ea9bed49f0" {
sa_state_machine console_status "Console status" id "a6c6f463-5c80-4b02-a2e6-67cd0088b2f2" {
sa_region console_region "Main region" id "e8b62edc-2233-4ec4-a811-2e8baf81a6e9" {
sa_initial console_start "Start" id "5a92c3a8-6af5-452a-849e-c2a17dc33260" {}
sa_state console_ready "Ready" id "9064a197-96ea-4bdf-9dd6-2e9ef66856d8" {}
sa_state console_alerting "Alerting" id "4d167878-2bbe-4acd-abd6-ee7dcd42ec50" {}
}
}
}
sa_function classify_alarm "Classify alarm" id "ad6941ee-f900-4a2b-a368-d8879f1ffece" {}
sa_functional_chain classification_flow "Alarm classification" id "578dbcd5-3c28-43d8-913e-af27bc51ebde" {
steps [@classify_once];
sa_occurrence classify_once "Classify this alarm" id "a6c37863-8e72-44f9-a8a3-fea06341c714" {
body { Action { action @classify_alarm; lifeline none; }; };
}
}
allocation console_classifies "Console classifies" id "294d4262-303f-41db-b01e-fe47c1647693" {
source @alarm_console; target @classify_alarm;
}
sa_event alarm_received "Alarm received" id "7fba860a-721f-4da2-8315-010de2e9c69e" {}
state_transition initialize_console "Initialize" id "839d4359-c78f-414b-867e-5b40b1f145cc" {
source @console_start; target @console_ready;
}
state_transition display_alarm "Display alarm" id "dd383165-1b89-46b9-8ae3-80a6b6406a4e" {
source @console_ready; target @console_alerting; triggers [@alarm_received];
}
trace assessment_refinement "Alarm classification refines assessment" id "34142333-67c2-4972-a64f-47e140ed93ca" {
oa @review_alarm; sa @classify_alarm;
baseline {
oa { name "Assess alarm"; description ""; };
sa { name "Classify alarm"; description ""; };
};
}
artifact response_procedure "Response procedure" id "6ba54037-c6f1-495b-ba96-6f2e910a218c" {
owner @review_alarm; uri "procedures/alarm-response.md"; revision "review-1";
}
diagram response_view "Operational work" id "a44d9d69-78a0-49de-8eb8-3757aa6c0919" { projection FunctionalDataflow; }
node detector_card id "45f016f4-3558-45b9-9559-da8ef9d5dcad" {
diagram @response_view; element @detect_alarm;
position { x 40; y 40; };
}
node assessor_card id "6ee7a0cc-013b-4a0f-8cff-513872e028b7" {
diagram @response_view; element @review_alarm;
position { x 400; y 40; };
}
}
@@ -0,0 +1,114 @@
arcadia 7;
project alarm_response "Alarm response" id "a0f5c4c2-f39c-4095-9816-71f1862e24d8" {
description "A complete small OA/SA source-authoring example. Numerical annotations are descriptive.";
oa_actor plant_operator "Plant operator" id "60539571-2921-4e7d-ab83-bae670d0cb15" {}
oa_entity maintenance "Maintenance team" id "6af96577-1b04-4ba1-b91b-6cef61adc6d6" {}
oa_activity manage_alarm "Manage a pressure alarm" id "4154bf39-9fd5-490e-aebf-fba3d67b697c" {
oa_activity detect_alarm "Detect alarm" id "bf9e9d8a-edb2-47f4-93f9-7ae373c42160" {}
}
oa_capability safe_response "Respond safely" id "c097b1b5-45dc-49de-bcf6-89b5ccb752d1" {}
oa_exchange_item alarm_report "Alarm report" id "0a48a460-964a-4578-97c4-428707e8b201" {
mechanism Flow;
oa_data_field reported_pressure "Reported pressure" id "0bf7f442-cc8d-4782-ba65-f357e91fd477" {
type_ref Real;
unit "kPa";
}
}
allocation operator_detects "Operator detects" id "8653fb7d-529d-495d-abde-897dee36b4bb" {
source @plant_operator; target @detect_alarm;
}
allocation team_assesses "Team assesses" id "bb36afbf-9878-401b-b172-d04b08ecf603" {
source @maintenance; target @assess_alarm;
}
interaction alarm_message "Pressure alarm report" id "269e5bdd-2478-4a43-9c77-84d99ac4e8a6" {
source @detect_alarm; target @assess_alarm; items [@alarm_report];
}
capability_involvement assessment_supports_response "Assessment supports safe response" id "27633a6d-d962-4d19-9367-9ca3f00de0b0" {
source @assess_alarm; target @safe_response;
}
oa_process triage "Alarm triage" id "9888d781-09f3-4861-b9dc-7a97080d24d6" {
steps [@detect_once, @assess_once];
oa_occurrence detect_once "Detect this alarm" id "6ca87cbe-9579-49b3-884e-e6ee63ba8c5b" {
body { Action { action @detect_alarm; lifeline none; }; };
}
oa_occurrence assess_once "Assess this alarm" id "528d1c78-62d9-4e45-bb4a-cf529d8ed4a9" {
body { Action { action @assess_alarm; lifeline none; }; };
}
}
sequence_link assessment_after_detection "Assess after detecting" id "bfd9c0e7-832b-4983-90aa-fc37d23193e2" {
source @detect_once; target @assess_once;
}
chain_involvement triage_supports_response "Triage supports safe response" id "2aeba184-bf69-49c7-87ff-cc2da82b006c" {
source @triage; target @safe_response;
}
oa_scenario notification "Alarm notification" id "69e23f04-7bb3-4db1-a2a3-d8e65101c546" {
viewpoint OperationalActivity;
context @safe_response;
steps [@notify_once];
oa_lifeline detector_line "Detector" id "57c62024-6d19-4818-ac8c-66fb4a9b3da7" { represented @detect_alarm; }
oa_lifeline assessor_line "Assessor" id "1b421446-9d17-4c8b-90f1-6fbe8b513a04" { represented @assess_alarm; }
oa_occurrence notify_once "Report this pressure" id "a1c37b31-41ed-4e16-a243-a50702ff1bc1" {
body { Exchange {
exchange @alarm_message; sender @detector_line; receiver @assessor_line;
message_kind Asynchronous; reply_to none;
values [{ field @reported_pressure; path []; expression "420"; }];
}; };
}
}
sa_system alarm_console "Alarm console" id "9ea585b5-be12-4204-8909-02ea9bed49f0" {
sa_state_machine console_status "Console status" id "a6c6f463-5c80-4b02-a2e6-67cd0088b2f2" {
sa_region console_region "Main region" id "e8b62edc-2233-4ec4-a811-2e8baf81a6e9" {
sa_initial console_start "Start" id "5a92c3a8-6af5-452a-849e-c2a17dc33260" {}
sa_state console_ready "Ready" id "9064a197-96ea-4bdf-9dd6-2e9ef66856d8" {}
sa_state console_alerting "Alerting" id "4d167878-2bbe-4acd-abd6-ee7dcd42ec50" {}
}
}
}
sa_function classify_alarm "Classify alarm" id "ad6941ee-f900-4a2b-a368-d8879f1ffece" {}
sa_functional_chain classification_flow "Alarm classification" id "578dbcd5-3c28-43d8-913e-af27bc51ebde" {
steps [@classify_once];
sa_occurrence classify_once "Classify this alarm" id "a6c37863-8e72-44f9-a8a3-fea06341c714" {
body { Action { action @classify_alarm; lifeline none; }; };
}
}
allocation console_classifies "Console classifies" id "294d4262-303f-41db-b01e-fe47c1647693" {
source @alarm_console; target @classify_alarm;
}
sa_event alarm_received "Alarm received" id "7fba860a-721f-4da2-8315-010de2e9c69e" {}
state_transition initialize_console "Initialize" id "839d4359-c78f-414b-867e-5b40b1f145cc" {
source @console_start; target @console_ready;
}
state_transition display_alarm "Display alarm" id "dd383165-1b89-46b9-8ae3-80a6b6406a4e" {
source @console_ready; target @console_alerting; triggers [@alarm_received];
}
trace assessment_refinement "Alarm classification refines assessment" id "34142333-67c2-4972-a64f-47e140ed93ca" {
oa @assess_alarm; sa @classify_alarm;
baseline {
oa { name "Assess alarm"; description ""; };
sa { name "Classify alarm"; description ""; };
};
}
artifact response_procedure "Response procedure" id "6ba54037-c6f1-495b-ba96-6f2e910a218c" {
owner @assess_alarm; uri "procedures/alarm-response.md"; revision "review-1";
}
diagram response_view "Operational work" id "a44d9d69-78a0-49de-8eb8-3757aa6c0919" { projection FunctionalDataflow; }
node detector_card id "45f016f4-3558-45b9-9559-da8ef9d5dcad" {
diagram @response_view; element @detect_alarm;
position { x 40; y 40; };
}
node assessor_card id "6ee7a0cc-013b-4a0f-8cff-513872e028b7" {
diagram @response_view; element @assess_alarm;
position { x 400; y 40; };
}
// Assessing the alarm is work decomposition, independently allocated below.
oa_activity assess_alarm "Assess alarm" id "8cbd5a4f-1c31-49c9-8a01-987144ce962e" {}
}
@@ -0,0 +1,111 @@
arcadia 7;
project alarm_response "Alarm response" id "a0f5c4c2-f39c-4095-9816-71f1862e24d8" {
description "A complete small OA/SA source-authoring example. Numerical annotations are descriptive.";
oa_entity maintenance "Maintenance team" id "6af96577-1b04-4ba1-b91b-6cef61adc6d6" {}
oa_activity manage_alarm "Manage a pressure alarm" id "4154bf39-9fd5-490e-aebf-fba3d67b697c" {
oa_activity detect_alarm "Detect alarm" id "bf9e9d8a-edb2-47f4-93f9-7ae373c42160" {}
// Assessing the alarm is work decomposition, independently allocated below.
oa_activity assess_alarm "Assess alarm" id "8cbd5a4f-1c31-49c9-8a01-987144ce962e" {}
}
oa_capability safe_response "Respond safely" id "c097b1b5-45dc-49de-bcf6-89b5ccb752d1" {}
oa_exchange_item alarm_report "Alarm report" id "0a48a460-964a-4578-97c4-428707e8b201" {
mechanism Flow;
oa_data_field reported_pressure "Reported pressure" id "0bf7f442-cc8d-4782-ba65-f357e91fd477" {
type_ref Real;
unit "kPa";
}
}
allocation operator_detects "Operator detects" id "8653fb7d-529d-495d-abde-897dee36b4bb" {
source @plant_operator; target @detect_alarm;
}
allocation team_assesses "Team assesses" id "bb36afbf-9878-401b-b172-d04b08ecf603" {
source @maintenance; target @assess_alarm;
}
interaction alarm_message "Pressure alarm report" id "269e5bdd-2478-4a43-9c77-84d99ac4e8a6" {
source @detect_alarm; target @assess_alarm; items [@alarm_report];
}
capability_involvement assessment_supports_response "Assessment supports safe response" id "27633a6d-d962-4d19-9367-9ca3f00de0b0" {
source @assess_alarm; target @safe_response;
}
oa_process triage "Alarm triage" id "9888d781-09f3-4861-b9dc-7a97080d24d6" {
steps [@detect_once, @assess_once];
oa_occurrence detect_once "Detect this alarm" id "6ca87cbe-9579-49b3-884e-e6ee63ba8c5b" {
body { Action { action @detect_alarm; lifeline none; }; };
}
oa_occurrence assess_once "Assess this alarm" id "528d1c78-62d9-4e45-bb4a-cf529d8ed4a9" {
body { Action { action @assess_alarm; lifeline none; }; };
}
}
sequence_link assessment_after_detection "Assess after detecting" id "bfd9c0e7-832b-4983-90aa-fc37d23193e2" {
source @detect_once; target @assess_once;
}
chain_involvement triage_supports_response "Triage supports safe response" id "2aeba184-bf69-49c7-87ff-cc2da82b006c" {
source @triage; target @safe_response;
}
oa_scenario notification "Alarm notification" id "69e23f04-7bb3-4db1-a2a3-d8e65101c546" {
viewpoint OperationalActivity;
context @safe_response;
steps [@notify_once];
oa_lifeline detector_line "Detector" id "57c62024-6d19-4818-ac8c-66fb4a9b3da7" { represented @detect_alarm; }
oa_lifeline assessor_line "Assessor" id "1b421446-9d17-4c8b-90f1-6fbe8b513a04" { represented @assess_alarm; }
oa_occurrence notify_once "Report this pressure" id "a1c37b31-41ed-4e16-a243-a50702ff1bc1" {
body { Exchange {
exchange @alarm_message; sender @detector_line; receiver @assessor_line;
message_kind Asynchronous; reply_to none;
values [{ field @reported_pressure; path []; expression "420"; }];
}; };
}
}
sa_system alarm_console "Alarm console" id "9ea585b5-be12-4204-8909-02ea9bed49f0" {
sa_state_machine console_status "Console status" id "a6c6f463-5c80-4b02-a2e6-67cd0088b2f2" {
sa_region console_region "Main region" id "e8b62edc-2233-4ec4-a811-2e8baf81a6e9" {
sa_initial console_start "Start" id "5a92c3a8-6af5-452a-849e-c2a17dc33260" {}
sa_state console_ready "Ready" id "9064a197-96ea-4bdf-9dd6-2e9ef66856d8" {}
sa_state console_alerting "Alerting" id "4d167878-2bbe-4acd-abd6-ee7dcd42ec50" {}
}
}
}
sa_function classify_alarm "Classify alarm" id "ad6941ee-f900-4a2b-a368-d8879f1ffece" {}
sa_functional_chain classification_flow "Alarm classification" id "578dbcd5-3c28-43d8-913e-af27bc51ebde" {
steps [@classify_once];
sa_occurrence classify_once "Classify this alarm" id "a6c37863-8e72-44f9-a8a3-fea06341c714" {
body { Action { action @classify_alarm; lifeline none; }; };
}
}
allocation console_classifies "Console classifies" id "294d4262-303f-41db-b01e-fe47c1647693" {
source @alarm_console; target @classify_alarm;
}
sa_event alarm_received "Alarm received" id "7fba860a-721f-4da2-8315-010de2e9c69e" {}
state_transition initialize_console "Initialize" id "839d4359-c78f-414b-867e-5b40b1f145cc" {
source @console_start; target @console_ready;
}
state_transition display_alarm "Display alarm" id "dd383165-1b89-46b9-8ae3-80a6b6406a4e" {
source @console_ready; target @console_alerting; triggers [@alarm_received];
}
trace assessment_refinement "Alarm classification refines assessment" id "34142333-67c2-4972-a64f-47e140ed93ca" {
oa @assess_alarm; sa @classify_alarm;
baseline {
oa { name "Assess alarm"; description ""; };
sa { name "Classify alarm"; description ""; };
};
}
artifact response_procedure "Response procedure" id "6ba54037-c6f1-495b-ba96-6f2e910a218c" {
owner @assess_alarm; uri "procedures/alarm-response.md"; revision "review-1";
}
diagram response_view "Operational work" id "a44d9d69-78a0-49de-8eb8-3757aa6c0919" { projection FunctionalDataflow; }
node detector_card id "45f016f4-3558-45b9-9559-da8ef9d5dcad" {
diagram @response_view; element @detect_alarm;
position { x 40; y 40; };
}
node assessor_card id "6ee7a0cc-013b-4a0f-8cff-513872e028b7" {
diagram @response_view; element @assess_alarm;
position { x 400; y 40; };
}
include "participants.arcadia";
}
@@ -0,0 +1,110 @@
arcadia 7;
project alarm_response "Alarm response" id "a0f5c4c2-f39c-4095-9816-71f1862e24d8" {
description "A complete small OA/SA source-authoring example. Numerical annotations are descriptive.";
oa_actor plant_operator "Plant operator" id "60539571-2921-4e7d-ab83-bae670d0cb15" {}
oa_entity maintenance "Maintenance team" id "6af96577-1b04-4ba1-b91b-6cef61adc6d6" {}
oa_activity manage_alarm "Manage a pressure alarm" id "4154bf39-9fd5-490e-aebf-fba3d67b697c" {
oa_activity detect_alarm "Detect alarm" id "bf9e9d8a-edb2-47f4-93f9-7ae373c42160" {}
// Assessing the alarm is work decomposition, independently allocated below.
oa_activity assess_alarm "Assess alarm" id "8cbd5a4f-1c31-49c9-8a01-987144ce962e" {}
}
oa_capability safe_response "Respond safely" id "c097b1b5-45dc-49de-bcf6-89b5ccb752d1" {}
oa_exchange_item alarm_report "Alarm report" id "0a48a460-964a-4578-97c4-428707e8b201" {
mechanism Flow;
oa_data_field reported_pressure "Reported pressure" id "0bf7f442-cc8d-4782-ba65-f357e91fd477" {
type_ref Real;
unit "kPa";
}
}
allocation operator_detects "Operator detects" id "8653fb7d-529d-495d-abde-897dee36b4bb" {
source @plant_operator; target @detect_alarm;
}
allocation team_assesses "Team assesses" id "bb36afbf-9878-401b-b172-d04b08ecf603" {
source @maintenance; target @assess_alarm;
}
interaction alarm_message "Pressure alarm report" id "269e5bdd-2478-4a43-9c77-84d99ac4e8a6" {
source @detect_alarm; target @assess_alarm; items [@alarm_report];
}
capability_involvement assessment_supports_response "Assessment supports safe response" id "27633a6d-d962-4d19-9367-9ca3f00de0b0" {
source @assess_alarm; target @safe_response;
}
oa_process triage "Alarm triage" id "9888d781-09f3-4861-b9dc-7a97080d24d6" {
steps [@detect_once, @assess_once];
oa_occurrence detect_once "Detect this alarm" id "6ca87cbe-9579-49b3-884e-e6ee63ba8c5b" {
body { Action { action @detect_alarm; lifeline none; }; };
}
oa_occurrence assess_once "Assess this alarm" id "528d1c78-62d9-4e45-bb4a-cf529d8ed4a9" {
body { Action { action @assess_alarm; lifeline none; }; };
}
}
sequence_link assessment_after_detection "Assess after detecting" id "bfd9c0e7-832b-4983-90aa-fc37d23193e2" {
source @detect_once; target @assess_once;
}
chain_involvement triage_supports_response "Triage supports safe response" id "2aeba184-bf69-49c7-87ff-cc2da82b006c" {
source @triage; target @safe_response;
}
oa_scenario notification "Alarm notification" id "69e23f04-7bb3-4db1-a2a3-d8e65101c546" {
viewpoint OperationalActivity;
context @safe_response;
steps [@notify_once];
oa_lifeline detector_line "Detector" id "57c62024-6d19-4818-ac8c-66fb4a9b3da7" { represented @detect_alarm; }
oa_lifeline assessor_line "Assessor" id "1b421446-9d17-4c8b-90f1-6fbe8b513a04" { represented @assess_alarm; }
oa_occurrence notify_once "Report this pressure" id "a1c37b31-41ed-4e16-a243-a50702ff1bc1" {
body { Exchange {
exchange @alarm_message; sender @detector_line; receiver @assessor_line;
message_kind Asynchronous; reply_to none;
values [{ field @reported_pressure; path []; expression "420"; }];
}; };
}
}
sa_system alarm_console "Alarm console" id "9ea585b5-be12-4204-8909-02ea9bed49f0" {
sa_state_machine console_status "Console status" id "a6c6f463-5c80-4b02-a2e6-67cd0088b2f2" {
sa_region console_region "Main region" id "e8b62edc-2233-4ec4-a811-2e8baf81a6e9" {
sa_initial console_start "Start" id "5a92c3a8-6af5-452a-849e-c2a17dc33260" {}
sa_state console_ready "Ready" id "9064a197-96ea-4bdf-9dd6-2e9ef66856d8" {}
sa_state console_alerting "Alerting" id "4d167878-2bbe-4acd-abd6-ee7dcd42ec50" {}
}
}
}
sa_function classify_alarm "Classify alarm" id "ad6941ee-f900-4a2b-a368-d8879f1ffece" {}
sa_functional_chain classification_flow "Alarm classification" id "578dbcd5-3c28-43d8-913e-af27bc51ebde" {
steps [@classify_once];
sa_occurrence classify_once "Classify this alarm" id "a6c37863-8e72-44f9-a8a3-fea06341c714" {
body { Action { action @classify_alarm; lifeline none; }; };
}
}
allocation console_classifies "Console classifies" id "294d4262-303f-41db-b01e-fe47c1647693" {
source @alarm_console; target @classify_alarm;
}
sa_event alarm_received "Alarm received" id "7fba860a-721f-4da2-8315-010de2e9c69e" {}
state_transition initialize_console "Initialize" id "839d4359-c78f-414b-867e-5b40b1f145cc" {
source @console_start; target @console_ready;
}
state_transition display_alarm "Display alarm" id "dd383165-1b89-46b9-8ae3-80a6b6406a4e" {
source @console_ready; target @console_alerting; triggers [@alarm_received];
}
trace assessment_refinement "Alarm classification refines assessment" id "34142333-67c2-4972-a64f-47e140ed93ca" {
oa @assess_alarm; sa @classify_alarm;
baseline {
oa { name "Assess alarm"; description ""; };
sa { name "Classify alarm"; description ""; };
};
}
artifact response_procedure "Response procedure" id "6ba54037-c6f1-495b-ba96-6f2e910a218c" {
owner @assess_alarm; uri "procedures/alarm-response.md"; revision "review-1";
}
diagram response_view "Operational work" id "a44d9d69-78a0-49de-8eb8-3757aa6c0919" { projection FunctionalDataflow; }
node detector_card id "45f016f4-3558-45b9-9559-da8ef9d5dcad" {
diagram @response_view; element @detect_alarm;
position { x 40; y 40; };
}
node assessor_card id "6ee7a0cc-013b-4a0f-8cff-513872e028b7" {
diagram @response_view; element @assess_alarm;
position { x 400; y 40; };
}
}