Specify baseline analysis and verified library contract compatibility
This commit is contained in:
@@ -0,0 +1,425 @@
|
||||
{
|
||||
"model": {
|
||||
"alias": "response_budget",
|
||||
"artifact_links": {},
|
||||
"definition_mounts": {},
|
||||
"definitions": {
|
||||
"188b911c-5f8b-431c-9eea-2d41f3953767": {
|
||||
"alias": "duration",
|
||||
"body": {
|
||||
"QuantityKind": {
|
||||
"algebra": "Linear",
|
||||
"dimension": [
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "188b911c-5f8b-431c-9eea-2d41f3953767",
|
||||
"name": "Duration"
|
||||
},
|
||||
"39053f37-fec9-4708-9f0a-3959d223f891": {
|
||||
"alias": "millisecond",
|
||||
"body": {
|
||||
"Unit": {
|
||||
"kind": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
},
|
||||
"offset": {
|
||||
"denominator": "1",
|
||||
"numerator": "0"
|
||||
},
|
||||
"scale": {
|
||||
"denominator": "1000",
|
||||
"numerator": "1"
|
||||
},
|
||||
"symbol": "ms"
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "39053f37-fec9-4708-9f0a-3959d223f891",
|
||||
"name": "Millisecond"
|
||||
},
|
||||
"534f4672-1ba5-4157-8b0a-b9cf41d0a3ce": {
|
||||
"alias": "second",
|
||||
"body": {
|
||||
"Unit": {
|
||||
"kind": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
},
|
||||
"offset": {
|
||||
"denominator": "1",
|
||||
"numerator": "0"
|
||||
},
|
||||
"scale": {
|
||||
"denominator": "1",
|
||||
"numerator": "1"
|
||||
},
|
||||
"symbol": "s"
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "534f4672-1ba5-4157-8b0a-b9cf41d0a3ce",
|
||||
"name": "Second"
|
||||
},
|
||||
"fd7ce7ab-f789-40bc-b699-0c37f1b6902f": {
|
||||
"alias": "combine",
|
||||
"body": {
|
||||
"Calculation": {
|
||||
"body": {
|
||||
"Expression": {
|
||||
"Binary": {
|
||||
"left": {
|
||||
"Parameter": "28ff40b0-1b8f-4735-8536-5a6ab21b56cb"
|
||||
},
|
||||
"op": "Add",
|
||||
"right": {
|
||||
"Parameter": "7a47cc1e-8ae5-4551-b2d8-8a68108e0976"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"parameters": [
|
||||
{
|
||||
"id": "28ff40b0-1b8f-4735-8536-5a6ab21b56cb",
|
||||
"name": "a",
|
||||
"value_type": {
|
||||
"Scalar": {
|
||||
"Quantity": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "7a47cc1e-8ae5-4551-b2d8-8a68108e0976",
|
||||
"name": "b",
|
||||
"value_type": {
|
||||
"Scalar": {
|
||||
"Quantity": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"result": {
|
||||
"Scalar": {
|
||||
"Quantity": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "fd7ce7ab-f789-40bc-b699-0c37f1b6902f",
|
||||
"name": "Combine durations"
|
||||
}
|
||||
},
|
||||
"description": "A complete proposed analysis model. Schema 8 and the new declarations are not implemented source7 syntax.",
|
||||
"diagrams": {},
|
||||
"elements": {
|
||||
"38036c65-16d4-449c-837b-91eb141c1d93": {
|
||||
"alias": "degraded",
|
||||
"body": {
|
||||
"Oa": {
|
||||
"Shared": {
|
||||
"AnalysisCase": {
|
||||
"base": "ModelBaseline",
|
||||
"overrides": {
|
||||
"63a931c2-675a-4fce-89e5-04361cb99450": {
|
||||
"Expression": {
|
||||
"Quantity": {
|
||||
"magnitude": {
|
||||
"denominator": "1",
|
||||
"numerator": "1250"
|
||||
},
|
||||
"unit": {
|
||||
"Local": "39053f37-fec9-4708-9f0a-3959d223f891"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": null
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "38036c65-16d4-449c-837b-91eb141c1d93",
|
||||
"name": "Degraded radio",
|
||||
"parent": null
|
||||
},
|
||||
"437bedbb-2cf4-44ee-a139-6563cc5086ec": {
|
||||
"alias": "limit",
|
||||
"body": {
|
||||
"Oa": {
|
||||
"Shared": {
|
||||
"EngineeringProperty": {
|
||||
"base": {
|
||||
"Expression": {
|
||||
"Quantity": {
|
||||
"magnitude": {
|
||||
"denominator": "1",
|
||||
"numerator": "2"
|
||||
},
|
||||
"unit": {
|
||||
"Local": "534f4672-1ba5-4157-8b0a-b9cf41d0a3ce"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"display_unit": {
|
||||
"Local": "534f4672-1ba5-4157-8b0a-b9cf41d0a3ce"
|
||||
},
|
||||
"subject": {
|
||||
"Element": "cabec6a1-7d5d-48f3-8d2d-a7fc8cf78f59"
|
||||
},
|
||||
"value_type": {
|
||||
"Scalar": {
|
||||
"Quantity": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "437bedbb-2cf4-44ee-a139-6563cc5086ec",
|
||||
"name": "Allowed duration",
|
||||
"parent": null
|
||||
},
|
||||
"4ab9a8a7-7552-488d-9862-e14b89e7b353": {
|
||||
"alias": "receive",
|
||||
"body": {
|
||||
"Oa": "Activity"
|
||||
},
|
||||
"description": "",
|
||||
"id": "4ab9a8a7-7552-488d-9862-e14b89e7b353",
|
||||
"name": "Receive",
|
||||
"parent": "cabec6a1-7d5d-48f3-8d2d-a7fc8cf78f59"
|
||||
},
|
||||
"63a931c2-675a-4fce-89e5-04361cb99450": {
|
||||
"alias": "receive_time",
|
||||
"body": {
|
||||
"Oa": {
|
||||
"Shared": {
|
||||
"EngineeringProperty": {
|
||||
"base": {
|
||||
"Expression": {
|
||||
"Quantity": {
|
||||
"magnitude": {
|
||||
"denominator": "1",
|
||||
"numerator": "750"
|
||||
},
|
||||
"unit": {
|
||||
"Local": "39053f37-fec9-4708-9f0a-3959d223f891"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"display_unit": {
|
||||
"Local": "39053f37-fec9-4708-9f0a-3959d223f891"
|
||||
},
|
||||
"subject": {
|
||||
"Element": "4ab9a8a7-7552-488d-9862-e14b89e7b353"
|
||||
},
|
||||
"value_type": {
|
||||
"Scalar": {
|
||||
"Quantity": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "63a931c2-675a-4fce-89e5-04361cb99450",
|
||||
"name": "Receive time",
|
||||
"parent": null
|
||||
},
|
||||
"6df991ba-4c5e-4535-99e2-524ae274ee8b": {
|
||||
"alias": "dispatch",
|
||||
"body": {
|
||||
"Oa": "Activity"
|
||||
},
|
||||
"description": "",
|
||||
"id": "6df991ba-4c5e-4535-99e2-524ae274ee8b",
|
||||
"name": "Dispatch",
|
||||
"parent": "cabec6a1-7d5d-48f3-8d2d-a7fc8cf78f59"
|
||||
},
|
||||
"99d3e09a-0ec3-4194-9dd4-9f3de6625cde": {
|
||||
"alias": "unmeasured",
|
||||
"body": {
|
||||
"Oa": {
|
||||
"Shared": {
|
||||
"AnalysisCase": {
|
||||
"base": "ModelBaseline",
|
||||
"overrides": {
|
||||
"63a931c2-675a-4fce-89e5-04361cb99450": "Unbound"
|
||||
},
|
||||
"subject": null
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "99d3e09a-0ec3-4194-9dd4-9f3de6625cde",
|
||||
"name": "Unmeasured radio",
|
||||
"parent": null
|
||||
},
|
||||
"bac0de99-9d2f-4e53-9158-d424ecac61bf": {
|
||||
"alias": "budget",
|
||||
"body": {
|
||||
"Oa": {
|
||||
"Shared": {
|
||||
"AnalysisCheck": {
|
||||
"documented_constraint": null,
|
||||
"predicate": {
|
||||
"Expression": {
|
||||
"Binary": {
|
||||
"left": {
|
||||
"Property": "bd5b68e8-65fc-4e35-9071-a73061316a4b"
|
||||
},
|
||||
"op": "LessOrEqual",
|
||||
"right": {
|
||||
"Property": "437bedbb-2cf4-44ee-a139-6563cc5086ec"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": null
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "bac0de99-9d2f-4e53-9158-d424ecac61bf",
|
||||
"name": "Response budget",
|
||||
"parent": null
|
||||
},
|
||||
"bd5b68e8-65fc-4e35-9071-a73061316a4b": {
|
||||
"alias": "total_time",
|
||||
"body": {
|
||||
"Oa": {
|
||||
"Shared": {
|
||||
"EngineeringProperty": {
|
||||
"base": {
|
||||
"Expression": {
|
||||
"Call": {
|
||||
"arguments": {
|
||||
"28ff40b0-1b8f-4735-8536-5a6ab21b56cb": {
|
||||
"Property": "63a931c2-675a-4fce-89e5-04361cb99450"
|
||||
},
|
||||
"7a47cc1e-8ae5-4551-b2d8-8a68108e0976": {
|
||||
"Property": "c33fc772-2a60-4044-9af9-73c61c563ace"
|
||||
}
|
||||
},
|
||||
"definition": {
|
||||
"Local": "fd7ce7ab-f789-40bc-b699-0c37f1b6902f"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"display_unit": {
|
||||
"Local": "534f4672-1ba5-4157-8b0a-b9cf41d0a3ce"
|
||||
},
|
||||
"subject": {
|
||||
"Element": "cabec6a1-7d5d-48f3-8d2d-a7fc8cf78f59"
|
||||
},
|
||||
"value_type": {
|
||||
"Scalar": {
|
||||
"Quantity": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "bd5b68e8-65fc-4e35-9071-a73061316a4b",
|
||||
"name": "Total time",
|
||||
"parent": null
|
||||
},
|
||||
"c33fc772-2a60-4044-9af9-73c61c563ace": {
|
||||
"alias": "dispatch_time",
|
||||
"body": {
|
||||
"Oa": {
|
||||
"Shared": {
|
||||
"EngineeringProperty": {
|
||||
"base": {
|
||||
"Expression": {
|
||||
"Quantity": {
|
||||
"magnitude": {
|
||||
"denominator": "1",
|
||||
"numerator": "1"
|
||||
},
|
||||
"unit": {
|
||||
"Local": "534f4672-1ba5-4157-8b0a-b9cf41d0a3ce"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"display_unit": {
|
||||
"Local": "534f4672-1ba5-4157-8b0a-b9cf41d0a3ce"
|
||||
},
|
||||
"subject": {
|
||||
"Element": "6df991ba-4c5e-4535-99e2-524ae274ee8b"
|
||||
},
|
||||
"value_type": {
|
||||
"Scalar": {
|
||||
"Quantity": {
|
||||
"Local": "188b911c-5f8b-431c-9eea-2d41f3953767"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": "",
|
||||
"id": "c33fc772-2a60-4044-9af9-73c61c563ace",
|
||||
"name": "Dispatch time",
|
||||
"parent": null
|
||||
},
|
||||
"cabec6a1-7d5d-48f3-8d2d-a7fc8cf78f59": {
|
||||
"alias": "respond",
|
||||
"body": {
|
||||
"Oa": "Activity"
|
||||
},
|
||||
"description": "",
|
||||
"id": "cabec6a1-7d5d-48f3-8d2d-a7fc8cf78f59",
|
||||
"name": "Respond",
|
||||
"parent": null
|
||||
}
|
||||
},
|
||||
"id": "4210b9f2-7046-47f0-aa3b-153f626a579d",
|
||||
"imports": {},
|
||||
"library_instances": {},
|
||||
"name": "Response budget",
|
||||
"relations": {},
|
||||
"schema_version": 8,
|
||||
"traces": {}
|
||||
},
|
||||
"packages": {},
|
||||
"source": {
|
||||
"entry": "active.arcadia",
|
||||
"files": {
|
||||
"active.arcadia": "arcadia 8;\nproject response_budget \"Response budget\" id \"4210b9f2-7046-47f0-aa3b-153f626a579d\" {\n description \"A complete proposed analysis model. Schema 8 and the new declarations are not implemented source7 syntax.\";\n\n quantity_kind duration \"Duration\" id \"188b911c-5f8b-431c-9eea-2d41f3953767\" {\n dimension { time: 1; }\n algebra Linear;\n }\n unit second \"Second\" id \"534f4672-1ba5-4157-8b0a-b9cf41d0a3ce\" {\n kind @duration; scale 1; offset 0; symbol \"s\";\n }\n unit millisecond \"Millisecond\" id \"39053f37-fec9-4708-9f0a-3959d223f891\" {\n kind @duration; scale ratio(1, 1000); offset 0; symbol \"ms\";\n }\n calculation combine \"Combine durations\" id \"fd7ce7ab-f789-40bc-b699-0c37f1b6902f\" {\n input a id \"28ff40b0-1b8f-4735-8536-5a6ab21b56cb\" : Quantity(@duration);\n input b id \"7a47cc1e-8ae5-4551-b2d8-8a68108e0976\" : Quantity(@duration);\n result Quantity(@duration);\n body $a + $b;\n }\n\n oa_activity respond \"Respond\" id \"cabec6a1-7d5d-48f3-8d2d-a7fc8cf78f59\" {\n oa_activity receive \"Receive\" id \"4ab9a8a7-7552-488d-9862-e14b89e7b353\" {}\n oa_activity dispatch \"Dispatch\" id \"6df991ba-4c5e-4535-99e2-524ae274ee8b\" {}\n }\n oa_property receive_time \"Receive time\" id \"63a931c2-675a-4fce-89e5-04361cb99450\" {\n subject @receive; type Quantity(@duration); display_unit @millisecond;\n base 750 [@millisecond];\n }\n oa_property dispatch_time \"Dispatch time\" id \"c33fc772-2a60-4044-9af9-73c61c563ace\" {\n subject @dispatch; type Quantity(@duration); display_unit @second;\n base 1 [@second];\n }\n oa_property total_time \"Total time\" id \"bd5b68e8-65fc-4e35-9071-a73061316a4b\" {\n subject @respond; type Quantity(@duration); display_unit @second;\n // The formula is shared. Every read uses the requested evaluation context.\n base @combine(a: @receive_time, b: @dispatch_time);\n }\n oa_property limit \"Allowed duration\" id \"437bedbb-2cf4-44ee-a139-6563cc5086ec\" {\n subject @respond; type Quantity(@duration); display_unit @second;\n base 2 [@second];\n }\n oa_check budget \"Response budget\" id \"bac0de99-9d2f-4e53-9158-d424ecac61bf\" {\n subject none; documented_constraint none;\n predicate @total_time <= @limit;\n }\n oa_analysis degraded \"Degraded radio\" id \"38036c65-16d4-449c-837b-91eb141c1d93\" {\n subject none; base ModelBaseline;\n overrides { @receive_time = 1250 [@millisecond]; }\n }\n oa_analysis unmeasured \"Unmeasured radio\" id \"99d3e09a-0ec3-4194-9dd4-9f3de6625cde\" {\n subject none; base ModelBaseline;\n overrides { @receive_time = unbound; }\n }\n}\n"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user