Add named behavior creation and verified textual authoring examples

This commit is contained in:
2026-09-11 01:54:55 -07:00
parent d114a271c5
commit 4bb4aaf3dc
57 changed files with 6920 additions and 379 deletions
+24
View File
@@ -0,0 +1,24 @@
# Start a model in text
Open `project.arcadia`, then choose **Textual model**. The model describes who
reports distress, who assesses it, and the information passing between those
activities. It needs no diagram or handwritten UUIDs.
1. Read each declaration as **kind, alias, display name**. References such as
`@assess` use the alias. The two allocations state responsibility; the
interaction states the direction of the exchange.
2. Change `"Assess incident"` to a name suited to your project. Use **Apply all**,
then **Save all**. Keep the identity clauses added to the accepted source:
they preserve the same model objects in later edits.
3. Add work and exchanges as your understanding grows. Behavior coverage checks
identify activities and exchanges that still need process or scenario context;
these advisory checks allow you to save the intermediate model.
Changing a display name keeps references intact. Changing an alias requires
updating every `@alias` use. Nesting expresses decomposition; an allocation
expresses who performs work. Neither implies the other.
For a larger example with behavior, ports, views and OA/SA correspondence, use
[the water-pressure walkthrough](../release1/README.md). The
[language reference](../../docs/language.rst) defines all declarations and the
rules for splitting a project into included files.
+10
View File
@@ -0,0 +1,10 @@
arcadia 7;
project distress "Distress response" {
oa_actor vessel "Vessel in distress" {}
oa_entity rescue "Rescue coordination" {}
oa_activity report "Report distress" {}
oa_activity assess "Assess incident" {}
allocation vessel_reports "Crew reports" { source @vessel; target @report; }
allocation rescue_assesses "Team assesses" { source @rescue; target @assess; }
interaction distress_report "Distress report" { source @report; target @assess; }
}