// Operational Analysis describes the need without choosing a technical solution. oa_actor vessel "Vessel in distress" id "00000000-0000-4000-8000-000000000101" { description "The vessel's crew needs to communicate its position and obtain assistance."; } oa_entity rescue_team "Rescue coordination" id "00000000-0000-4000-8000-000000000102" { description "The coordination team assesses the report and decides on a response."; } // This is work decomposition. It does not assign either activity to a participant. oa_activity respond "Respond to distress" id "00000000-0000-4000-8000-000000000103" { // Keep the crew's reporting responsibility visible when decomposing the need. oa_activity report_distress "Report distress" id "00000000-0000-4000-8000-000000000104" { description "Provide the vessel's situation and last known position."; } oa_activity assess_incident "Assess incident" id "00000000-0000-4000-8000-000000000105" { description "Decide which assistance is needed using the received report."; } } oa_capability protect_life "Protect life at sea" id "00000000-0000-4000-8000-000000000106" {} oa_exchange_item oa_report_data "Distress report" id "00000000-0000-4000-8000-000000000107" { kind Information; oa_data_field reported_latitude "Reported latitude" id "00000000-0000-4000-8000-000000000108" { type_ref Real; unit "degrees north"; } } // Allocation remains explicit even though the saved architecture view nests work. allocation crew_reports "Crew reports distress" id "00000000-0000-4000-8000-000000000201" { source @vessel; target @report_distress; } allocation team_assesses "Team assesses incident" id "00000000-0000-4000-8000-000000000202" { source @rescue_team; target @assess_incident; } interaction distress_signal "Distress signal" id "00000000-0000-4000-8000-000000000203" { source @report_distress; target @assess_incident; items [@oa_report_data]; } capability_involvement operational_contribution "Assessment supports rescue" id "00000000-0000-4000-8000-000000000204" { source @assess_incident; target @protect_life; }