Files
logseq/assets/JSSOFTWARE-D-22-00977_reviewer.edn
T
2025-06-05 22:07:12 +02:00

3039 lines
169 KiB
Clojure
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{:highlights [{:id #uuid "63b59e92-3ad2-42cb-94b7-c3d93d0d9235",
:page 2,
:position {:bounding {:x1 177.2578125,
:y1 589.5234375,
:x2 321.6999816894531,
:y2 610.0234375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 177.2578125,
:y1 589.5234375,
:x2 321.6999816894531,
:y2 610.0234375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 2},
:content {:text "Runtime monitoring"},
:properties {:color "green"}}
{:id #uuid "63b59ec1-e257-4f69-b01e-07f8193a10a5",
:page 2,
:position {:bounding {:x1 0,
:y1 189,
:x2 707.3241729736328,
:y2 550.015625,
:width 805,
:height 1138.4995363495252},
:rects ({:x1 0,
:y1 189,
:x2 0,
:y2 210.5,
:width 805,
:height 1138.4995363495252}
{:x1 217.34071350097656,
:y1 515.1953125,
:x2 707.3241729736328,
:y2 531.6953125,
:width 805,
:height 1138.4995363495252}
{:x1 143.8203125,
:y1 533.515625,
:x2 189.01882934570312,
:y2 550.015625,
:width 805,
:height 1138.4995363495252}),
:page 2},
:content {:text "reating probes to instrument the system, and defining constraints to be checked at runtime"},
:properties {:color "green"}}
{:id #uuid "63b59ecb-f5b8-4703-8193-76afe7140b3a",
:page 2,
:position {:bounding {:x1 0,
:y1 221,
:x2 707.3231811523438,
:y2 586.6640625,
:width 805,
:height 1138.4995363495252},
:rects ({:x1 0,
:y1 221,
:x2 0,
:y2 242.5,
:width 805,
:height 1138.4995363495252}
{:x1 287.3182067871094,
:y1 551.8359375,
:x2 707.3231811523438,
:y2 568.3359375,
:width 805,
:height 1138.4995363495252}
{:x1 143.8203125,
:y1 570.1640625,
:x2 292.3157043457031,
:y2 586.6640625,
:width 805,
:height 1138.4995363495252}),
:page 2},
:content {:text " generic monitoring platforms do not adequately cover domain-specific monitoring requirements"},
:properties {:color "green"}}
{:id #uuid "63b59ede-98fd-4f0c-bb07-714729f53973",
:page 2,
:position {:bounding {:x1 148.734375,
:y1 643.453125,
:x2 359.0954895019531,
:y2 659.953125,
:width 805,
:height 1138.4995363495252},
:rects ({:x1 148.734375,
:y1 643.453125,
:x2 359.0954895019531,
:y2 659.953125,
:width 805,
:height 1138.4995363495252}),
:page 2},
:content {:text "Generating CPS Runtime Monitors"},
:properties {:color "green"}}
{:id #uuid "63b59f13-a778-48f7-ac2f-eb660328dee8",
:page 2,
:position {:bounding {:x1 0,
:y1 381,
:x2 707.3306274414062,
:y2 788.2109375,
:width 805,
:height 1138.4995363495252},
:rects ({:x1 0,
:y1 381,
:x2 0,
:y2 402.5,
:width 805,
:height 1138.4995363495252}
{:x1 0,
:y1 397,
:x2 0,
:y2 418.5,
:width 805,
:height 1138.4995363495252}
{:x1 408.25244140625,
:y1 735.0703125,
:x2 707.3306274414062,
:y2 751.5703125,
:width 805,
:height 1138.4995363495252}
{:x1 143.8203125,
:y1 753.390625,
:x2 707.3167114257812,
:y2 769.890625,
:width 805,
:height 1138.4995363495252}
{:x1 143.8203125,
:y1 771.7109375,
:x2 368.5933837890625,
:y2 788.2109375,
:width 805,
:height 1138.4995363495252}),
:page 2},
:content {:text "esults show that GRuM facilitates the creation and evolution of a runtime monitoring platform with little effort and that the platform can handle a substantial amount of events and data."},
:properties {:color "green"}}
{:id #uuid "63b59f6e-a0c7-44cb-a21e-5ad1da709790",
:page 2,
:position {:bounding {:x1 0,
:y1 285,
:x2 871.7537231445312,
:y2 858.421875,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 285,
:x2 0,
:y2 306.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 301,
:x2 0,
:y2 322.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 317,
:x2 0,
:y2 338.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 733.8390502929688,
:y1 770.1796875,
:x2 871.7442626953125,
:y2 790.6796875,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 792.7578125,
:x2 871.7528076171875,
:y2 813.2578125,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 815.34375,
:x2 871.7537231445312,
:y2 835.84375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 837.921875,
:x2 220.56561279296875,
:y2 858.421875,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 2},
:content {:text "we present GRuM(Generating CPS Runtime Monitors), a framework that combines model-driven techniques and runtime monitoring, to automatically generate a customized monitoring platform for a given SuM. "},
:properties {:color "green"}}
{:id #uuid "63b5a322-ec86-4fb2-b674-ed9494c1278d",
:page 3,
:position {:bounding {:x1 0,
:y1 93,
:x2 814.8792114257812,
:y2 494.8203125,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 93,
:x2 0,
:y2 114.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 109,
:x2 0,
:y2 130.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 125,
:x2 0,
:y2 146.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 141,
:x2 0,
:y2 162.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 746.6331176757812,
:y1 383.9921875,
:x2 814.877685546875,
:y2 404.4921875,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 406.5703125,
:x2 814.8792114257812,
:y2 427.0703125,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 429.15625,
:x2 814.8782958984375,
:y2 449.65625,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 451.734375,
:x2 814.8786010742188,
:y2 472.234375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 474.3203125,
:x2 377.4780578613281,
:y2 494.8203125,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 3},
:content {:text "nmanned Aerial Vehicles (UAVs) are engaged in search-and-rescue flights in close proximity to humans, or when robots operate on a factory floor, precautionary measures need to be taken to ensure that the CPS adheres to its specified requirements and operates within its predefined safety envelope"},
:properties {:color "green"}}
{:id #uuid "63b5a327-e314-4079-af26-4d302f7c526a",
:page 3,
:position {:bounding {:x1 0,
:y1 157,
:x2 814.580810546875,
:y2 517.3984375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 157,
:x2 0,
:y2 178.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 634.7945556640625,
:y1 474.3203125,
:x2 814.580810546875,
:y2 494.8203125,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 496.8984375,
:x2 295.7618713378906,
:y2 517.3984375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 3},
:content {:text "monitoring diverse properties at runtime"},
:properties {:color "green"}}
{:id #uuid "63b5a32f-9a3c-47e1-9e52-4aa47a591e4f",
:page 3,
:position {:bounding {:x1 0,
:y1 173,
:x2 814.8827514648438,
:y2 585.1484375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 173,
:x2 0,
:y2 194.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 189,
:x2 0,
:y2 210.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 205,
:x2 0,
:y2 226.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 438.159912109375,
:y1 496.8984375,
:x2 814.8811645507812,
:y2 517.3984375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 519.484375,
:x2 814.8827514648438,
:y2 539.984375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 542.0625,
:x2 814.87890625,
:y2 562.5625,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 564.6484375,
:x2 211.09918212890625,
:y2 585.1484375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 3},
:content {:text "eterogeneity of hardware and software components within a CPS means that creating and implementing monitors, and subsequently collecting, processing, and checking the required data is often an arduous and time-consuming task."},
:properties {:color "green"}}
{:id #uuid "63b5e945-127f-4b55-9d7a-3cce21698738",
:page 3,
:position {:bounding {:x1 193.08767700195312,
:y1 488.0520935058594,
:x2 368.6729736328125,
:y2 504.0520935058594,
:width 793.7013333333332,
:height 1122.52},
:rects ({:x1 193.08767700195312,
:y1 488.0520935058594,
:x2 368.6729736328125,
:y2 504.0520935058594,
:width 793.7013333333332,
:height 1122.52}),
:page 3},
:content {:text "source code instrumentation"},
:properties {:color "green"}}
{:id #uuid "63b5e968-b2fb-49e8-8e52-e8580b947151",
:page 3,
:position {:bounding {:x1 0,
:y1 301.33333587646484,
:x2 782.3078002929688,
:y2 691.90625,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 301.33333587646484,
:x2 0,
:y2 322.6666717529297,
:width 952.4415999999999,
:height 1347.024}
{:x1 584.0472106933594,
:y1 650.8958435058594,
:x2 782.3078002929688,
:y2 670.2291870117188,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.16666793823242,
:y1 672.5729370117188,
:x2 230.4744873046875,
:y2 691.90625,
:width 952.4415999999999,
:height 1347.024}),
:page 3},
:content {:text "off-the-shelf monitoring approache"},
:properties {:color "green"}}
{:id #uuid "63b5e96e-d017-4521-b952-57c85266e0b3",
:page 3,
:position {:bounding {:x1 0,
:y1 333.3333435058594,
:x2 782.4022827148438,
:y2 735.265625,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 333.3333435058594,
:x2 0,
:y2 354.6666717529297,
:width 952.4415999999999,
:height 1347.024}
{:x1 361.259033203125,
:y1 694.2552185058594,
:x2 782.4022827148438,
:y2 713.5885620117188,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.16666793823242,
:y1 715.9323120117188,
:x2 228.4610595703125,
:y2 735.265625,
:width 952.4415999999999,
:height 1347.024}),
:page 3},
:content {:text "often provide inadequate support for instrumenting custom systems"},
:properties {:color "green"}}
{:id #uuid "63b5e998-f6f6-4e35-88ae-01e73e73dd23",
:page 3,
:position {:bounding {:x1 0,
:y1 429.33333587646484,
:x2 782.4022636413574,
:y2 887.015625,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 429.33333587646484,
:x2 0,
:y2 450.6666717529297,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 445.33333587646484,
:x2 0,
:y2 466.6666717529297,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.16666793823242,
:y1 824.328125,
:x2 782.4022636413574,
:y2 843.6614685058594,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.16666793823242,
:y1 846.0052185058594,
:x2 782.4005546569824,
:y2 865.3385620117188,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.16666793823242,
:y1 867.6823120117188,
:x2 203.56744384765625,
:y2 887.015625,
:width 952.4415999999999,
:height 1347.024}),
:page 3},
:content {:text "Few approaches have addressed the challenge of automatically generating customized, system-specific, runtime monitoring solutions and their maintenance and evolution support."},
:properties {:color "green"}}
{:id #uuid "63b6dd9d-7eec-4314-9823-1fcf1c4f484a",
:page 3,
:position {:bounding {:x1 0,
:y1 493,
:x2 711.28515625,
:y2 904.8984375,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 493,
:x2 0,
:y2 514.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 0,
:y1 509,
:x2 0,
:y2 530.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 0,
:y1 525,
:x2 0,
:y2 546.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 490.92083740234375,
:y1 827.765625,
:x2 711.28515625,
:y2 845.765625,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 847.4765625,
:x2 710.492919921875,
:y2 865.4765625,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 867.1875,
:x2 711.2833862304688,
:y2 885.1875,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 886.8984375,
:x2 382.1460876464844,
:y2 904.8984375,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 3},
:content {:text "When a new feature or functionality is introduced, the model is updated, and its respective code regenerated. As a result, MDE has been shown to improve productivity by enabling developers to specify a system at a higher level of abstraction"},
:properties {:color "green"}}
{:id #uuid "63b6dda5-192a-4345-9070-7ee6d73084f9",
:page 3,
:position {:bounding {:x1 0,
:y1 541,
:x2 711.282958984375,
:y2 924.609375,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 541,
:x2 0,
:y2 562.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 390.40765380859375,
:y1 886.8984375,
:x2 711.282958984375,
:y2 904.8984375,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 906.609375,
:x2 668.846435546875,
:y2 924.609375,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 3},
:content {:text "However, the application of MDE has fallen short of enabling the generation and evolution of a complete monitoring platform [16]."},
:properties {:color "purple"}}
{:id #uuid "63b6ddd2-46eb-41c4-a61d-3387b2c0d3f4",
:page 3,
:position {:bounding {:x1 253.234375,
:y1 946.03125,
:x2 486.11944580078125,
:y2 964.03125,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 253.234375,
:y1 946.03125,
:x2 486.11944580078125,
:y2 964.03125,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 3},
:content {:text "Generating CPS Runtime Monitors"},
:properties {:color "green"}}
{:id #uuid "63b6dddf-5ecb-45d7-b5b8-393724736bf6",
:page 3,
:position {:bounding {:x1 0,
:y1 621,
:x2 711.2811279296875,
:y2 1023.1640625,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 621,
:x2 0,
:y2 642.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 263.58685302734375,
:y1 985.453125,
:x2 711.2811279296875,
:y2 1003.453125,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 1005.1640625,
:x2 189.07431030273438,
:y2 1023.1640625,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 3},
:content {:text "readily extended and updated when changes to the monitored system occur"},
:properties {:color "purple"}}
{:id #uuid "63b6de2a-ca80-4a46-a6bc-ab999d7b0aca",
:page 4,
:position {:bounding {:x1 190.1663818359375,
:y1 206.5703125,
:x2 630.7471313476562,
:y2 224.5703125,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 190.1663818359375,
:y1 206.5703125,
:x2 630.7471313476562,
:y2 224.5703125,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 4},
:content {:text " parts of the system that are relevant for the monitoring infrastructure"},
:properties {:color "purple"}}
{:id #uuid "63b6de38-c645-47c6-bc9a-90e54cc15ecb",
:page 4,
:position {:bounding {:x1 0,
:y1 29,
:x2 711.2794189453125,
:y2 283.703125,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 29,
:x2 0,
:y2 50.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 310.4313049316406,
:y1 245.9921875,
:x2 711.0121459960938,
:y2 263.9921875,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 265.703125,
:x2 711.2794189453125,
:y2 283.703125,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 4},
:content {:text " This paper builds upon our earlier work [17, 18], in which we collected requirements for model-driven monitoring and derived an initial architecture."},
:properties {:color "yellow"}}
{:id #uuid "63b6dea8-1a08-44f5-8911-b86abc792f77",
:page 4,
:position {:bounding {:x1 0,
:y1 93,
:x2 711.2825317382812,
:y2 382.2578125,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 93,
:x2 0,
:y2 114.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 0,
:y1 109,
:x2 0,
:y2 130.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 448.9227600097656,
:y1 324.8359375,
:x2 711.2821655273438,
:y2 342.8359375,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 344.546875,
:x2 711.2825317382812,
:y2 362.546875,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 364.2578125,
:x2 370.5745544433594,
:y2 382.2578125,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 4},
:content {:text "e evaluate our approach against a system for deploying UAVs for search-and-rescue and a second system that uses a set of mobile robots to assess indoor air quality."},
:properties {:color "green"}}
{:id #uuid "63b6deb4-c1eb-4a3e-bc87-57c1348dcb07",
:page 4,
:position {:bounding {:x1 0,
:y1 141,
:x2 711.283447265625,
:y2 441.3984375,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 141,
:x2 0,
:y2 162.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 0,
:y1 157,
:x2 0,
:y2 178.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 483.54046630859375,
:y1 383.9765625,
:x2 711.2757568359375,
:y2 401.9765625,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 403.6875,
:x2 711.283447265625,
:y2 421.6875,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 423.3984375,
:x2 388.8962097167969,
:y2 441.3984375,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 4},
:content {:text "irst, we present a monitoring metamodel that enables us to generate a custom monitoring platform with a runtime model, instead of implementing it manually"},
:properties {:color "purple"}}
{:id #uuid "63b6debe-f03c-4254-a86b-06f38ac4d5eb",
:page 4,
:position {:bounding {:x1 0,
:y1 189,
:x2 711.27978515625,
:y2 480.8203125,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 189,
:x2 0,
:y2 210.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 502.0608825683594,
:y1 443.109375,
:x2 711.27978515625,
:y2 461.109375,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 462.8203125,
:x2 377.2283020019531,
:y2 480.8203125,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 4},
:content {:text "econd, probes are automatically generated for the target technology"},
:properties {:color "purple"}}
{:id #uuid "63b6df15-7ea3-43af-aebb-795cf2f86360",
:page 4,
:position {:bounding {:x1 0,
:y1 205,
:x2 711.2734985351562,
:y2 500.53125,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 205,
:x2 0,
:y2 226.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 523.2796020507812,
:y1 462.8203125,
:x2 711.2734985351562,
:y2 480.8203125,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 482.53125,
:x2 607.89697265625,
:y2 500.53125,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 4},
:content {:text "e can leverage different types of (off-the-shelf) constraint engines depending on the monitoring needs,"},
:properties {:color "green"}}
{:id #uuid "63b6df23-1605-4d30-8f03-71afeea590a0",
:page 4,
:position {:bounding {:x1 0,
:y1 253,
:x2 711.2853393554688,
:y2 599.0859375,
:width 866.0000000000001,
:height 1224.7709297871913},
:rects ({:x1 0,
:y1 253,
:x2 0,
:y2 274.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 0,
:y1 269,
:x2 0,
:y2 290.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 0,
:y1 285,
:x2 0,
:y2 306.5,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 448.09759521484375,
:y1 521.953125,
:x2 711.28369140625,
:y2 539.953125,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 541.6640625,
:x2 711.273193359375,
:y2 559.6640625,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 561.375,
:x2 711.2853393554688,
:y2 579.375,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 302.5546875,
:y1 579.3203125,
:x2 309.0078125,
:y2 592.3203125,
:width 866.0000000000001,
:height 1224.7709297871913}
{:x1 154.71875,
:y1 581.0859375,
:x2 313.4921875,
:y2 599.0859375,
:width 866.0000000000001,
:height 1224.7709297871913}),
:page 4},
:content {:text "nce a probe generator for a specific technology has been implemented, evolving the monitoring framework alongside the SuM is greatly simplified and only requires a few steps to update the model and automatically regenerate the platform1."},
:properties {:color "green"}}
{:id #uuid "63b84bca-3d81-462d-8bbe-66989d750b4c",
:page 5,
:position {:bounding {:x1 0,
:y1 -2.6666641235351562,
:x2 782.4006195068359,
:y2 268.8541793823242,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 -2.6666641235351562,
:x2 0,
:y2 18.666664123535156,
:width 952.4415999999999,
:height 1347.024}
{:x1 196.75328063964844,
:y1 227.84375762939453,
:x2 782.4006195068359,
:y2 247.17708587646484,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 249.52083587646484,
:x2 539.0622100830078,
:y2 268.8541793823242,
:width 952.4415999999999,
:height 1347.024}),
:page 5},
:content {:text " existing approaches are typically customized for a specific type of system, application domain, or support particular types of constraints"},
:properties {:color "green"}}
{:id #uuid "63b84c07-ed8b-4501-bd4e-384ff614c0da",
:page 5,
:position {:bounding {:x1 0,
:y1 29.333335876464844,
:x2 782.3980560302734,
:y2 333.89063262939453,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 29.333335876464844,
:x2 0,
:y2 50.66666793823242,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 45.333335876464844,
:x2 0,
:y2 66.66666793823242,
:width 952.4415999999999,
:height 1347.024}
{:x1 571.4004135131836,
:y1 271.1979293823242,
:x2 781.5056381225586,
:y2 290.53125762939453,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 292.88021087646484,
:x2 782.3980560302734,
:y2 312.2135543823242,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 314.5573043823242,
:x2 645.0635528564453,
:y2 333.89063262939453,
:width 952.4415999999999,
:height 1347.024}),
:page 5},
:content {:text "significant upfront investment is required to implement and maintain custom monitoring infrastructures, often without inbuilt support for maintenance and evolution after deploymen"},
:properties {:color "purple"}}
{:id #uuid "63b84c53-bb7f-484f-88c2-537eaf2e33b2",
:page 5,
:position {:bounding {:x1 0,
:y1 253.33334350585938,
:x2 791.1396102905273,
:y2 615.7135620117188,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 253.33334350585938,
:x2 0,
:y2 274.66667556762695,
:width 952.4415999999999,
:height 1347.024}
{:x1 433.91146087646484,
:y1 574.7031555175781,
:x2 791.1396102905273,
:y2 594.0364685058594,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 596.3802185058594,
:x2 572.9585113525391,
:y2 615.7135620117188,
:width 952.4415999999999,
:height 1347.024}),
:page 5},
:content {:text "Dronology, an open-source, multi-UAV system [31] with support for planning and executing UAV missions"},
:properties {:color "green"}}
{:id #uuid "63b84c87-e7ab-40aa-967c-266d2f0124f6",
:page 5,
:position {:bounding {:x1 0,
:y1 397.3333435058594,
:x2 782.4005966186523,
:y2 832.5000305175781,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 397.3333435058594,
:x2 0,
:y2 418.6666793823242,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 413.3333435058594,
:x2 0,
:y2 434.6666793823242,
:width 952.4415999999999,
:height 1347.024}
{:x1 532.5705184936523,
:y1 769.8125305175781,
:x2 782.4005966186523,
:y2 789.1458435058594,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 791.4895935058594,
:x2 782.3992767333984,
:y2 810.8229370117188,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 813.1666870117188,
:x2 552.5033111572266,
:y2 832.5000305175781,
:width 952.4415999999999,
:height 1347.024}),
:page 5},
:content {:text " constraint engine needs to be configured to check constraints, such as whether the UAVs remain within their designated altitude band, avoid no-fly zones, and are flight-worthy"},
:properties {:color "purple"}}
{:id #uuid "63b84cf3-71d7-4f10-ad68-ab7b8300fad8",
:page 5,
:position {:bounding {:x1 0,
:y1 461.3333740234375,
:x2 782.3994598388672,
:y2 919.2188110351562,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 461.3333740234375,
:x2 0,
:y2 482.6667022705078,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 477.3333740234375,
:x2 0,
:y2 498.6667022705078,
:width 952.4415999999999,
:height 1347.024}
{:x1 385.86702728271484,
:y1 856.5260925292969,
:x2 782.3767318725586,
:y2 875.8594207763672,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 878.2031707763672,
:x2 782.3994598388672,
:y2 897.5364990234375,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 899.8854675292969,
:x2 257.5506057739258,
:y2 919.2188110351562,
:width 952.4415999999999,
:height 1347.024}),
:page 5},
:content {:text " if a new water sampling capability were introduced to Dronology, it would require additions and modifications to the hardware and software components"},
:properties {:color "purple"}}
{:id #uuid "63b84d01-b9bc-45ea-9aa3-4515958337f9",
:page 5,
:position {:bounding {:x1 0,
:y1 493.3333740234375,
:x2 782.3999099731445,
:y2 940.8958740234375,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 493.3333740234375,
:x2 0,
:y2 514.6667022705078,
:width 952.4415999999999,
:height 1347.024}
{:x1 266.4584426879883,
:y1 899.8854675292969,
:x2 782.3999099731445,
:y2 919.2188110351562,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 921.5625610351562,
:x2 667.4116363525391,
:y2 940.8958740234375,
:width 952.4415999999999,
:height 1347.024}),
:page 5},
:content {:text "New downward-facing sensors would be required to ensure that the UAV maintains a stable distance from the water during the collection process."},
:properties {:color "purple"}}
{:id #uuid "63b84d29-556c-4ed6-b174-8d1c904de7b5",
:page 5,
:position {:bounding {:x1 0,
:y1 557.3333740234375,
:x2 782.3982391357422,
:y2 1114.3229675292969,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 557.3333740234375,
:x2 0,
:y2 578.6667022705078,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 573.3333740234375,
:x2 0,
:y2 594.6667022705078,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 589.3333740234375,
:x2 0,
:y2 610.6667060852051,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 605.3333740234375,
:x2 0,
:y2 626.6667060852051,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 621.3333740234375,
:x2 0,
:y2 642.6667060852051,
:width 952.4415999999999,
:height 1347.024}
{:x1 381.9518356323242,
:y1 986.5989990234375,
:x2 782.3202743530273,
:y2 1005.9323425292969,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 1008.2760925292969,
:x2 782.3051376342773,
:y2 1027.6094360351562,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 1029.9531860351562,
:x2 782.3982391357422,
:y2 1049.2864990234375,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 1051.6354675292969,
:x2 782.2898788452148,
:y2 1070.9688110351562,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 1073.3125610351562,
:x2 782.3656539916992,
:y2 1092.6458740234375,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 1094.9896240234375,
:x2 426.2604293823242,
:y2 1114.3229675292969,
:width 952.4415999999999,
:height 1347.024}),
:page 5},
:content {:text "to reduce the cost and effort of creating and maintaining a runtime monitor as illustrated for Dronology, it is necessary to (i) provide automated support for creating a system-specific solution, including the setup and configuration of the monitoring system and specification of its respective constraints, and (ii) avoid the additional effort of maintaining the monitoring system itself by enabling the infrastructure to co-evolve alongside the SuM."},
:properties {:color "purple"}}
{:id #uuid "63b84d3c-6ba7-4474-b84f-b57b7b8d25dd",
:page 6,
:position {:bounding {:x1 278.5177536010742,
:y1 263.86458587646484,
:x2 338.54845428466797,
:y2 283.1979293823242,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 278.5177536010742,
:y1 263.86458587646484,
:x2 338.54845428466797,
:y2 283.1979293823242,
:width 952.4415999999999,
:height 1347.024}),
:page 6},
:content {:text "support "},
:properties {:color "purple"}}
{:id #uuid "63b84d40-9e02-4247-87ae-b3ef322b30c7",
:page 6,
:position {:bounding {:x1 527.2063217163086,
:y1 263.86458587646484,
:x2 750.7749862670898,
:y2 283.1979293823242,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 527.2063217163086,
:y1 263.86458587646484,
:x2 750.7749862670898,
:y2 283.1979293823242,
:width 952.4415999999999,
:height 1347.024}),
:page 6},
:content {:text "runtime monitoring architecture"},
:properties {:color "purple"}}
{:id #uuid "63b84d44-5f07-4517-a9ac-8f92143e2f6a",
:page 6,
:position {:bounding {:x1 188.0369110107422,
:y1 285.54688262939453,
:x2 571.4050445556641,
:y2 304.88021087646484,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 188.0369110107422,
:y1 285.54688262939453,
:x2 571.4050445556641,
:y2 304.88021087646484,
:width 952.4415999999999,
:height 1347.024}),
:page 6},
:content {:text "ease the task of maintaining and co-evolving monitors"},
:properties {:color "purple"}}
{:id #uuid "63b84d5f-e656-4b1d-ac2b-e1594fb26ac1",
:page 6,
:position {:bounding {:x1 0,
:y1 93.33334350585938,
:x2 782.3092880249023,
:y2 434.9531555175781,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 93.33334350585938,
:x2 0,
:y2 114.66667556762695,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 109.33334350585938,
:x2 0,
:y2 130.66667556762695,
:width 952.4415999999999,
:height 1347.024}
{:x1 243.9808807373047,
:y1 372.26043701171875,
:x2 782.2902450561523,
:y2 391.5937805175781,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 393.9427185058594,
:x2 782.3092880249023,
:y2 413.27606201171875,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 415.61981201171875,
:x2 480.2347869873047,
:y2 434.9531555175781,
:width 952.4415999999999,
:height 1347.024}),
:page 6},
:content {:text "one of the novel characteristics of GRuM is that for a SuM, both a Set of Probes, as well as a fully customized Monitoring Platform can be generated based on a model describing the parts to be monitored"},
:properties {:color "purple"}}
{:id #uuid "63b8504a-bc50-42b1-a9e5-4bd230b6cb07",
:page 7,
:position {:bounding {:x1 0,
:y1 13.333335876464844,
:x2 782.3990325927734,
:y2 316.9947967529297,
:width 952.4415999999999,
:height 1347.024},
:rects ({:x1 0,
:y1 13.333335876464844,
:x2 0,
:y2 34.66667175292969,
:width 952.4415999999999,
:height 1347.024}
{:x1 0,
:y1 29.333335876464844,
:x2 0,
:y2 50.66667175292969,
:width 952.4415999999999,
:height 1347.024}
{:x1 197.265625,
:y1 254.30209350585938,
:x2 782.3859252929688,
:y2 273.6354217529297,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 275.98439025878906,
:x2 782.3990325927734,
:y2 295.3177185058594,
:width 952.4415999999999,
:height 1347.024}
{:x1 170.1666717529297,
:y1 297.6614685058594,
:x2 458.96324157714844,
:y2 316.9947967529297,
:width 952.4415999999999,
:height 1347.024}),
:page 7},
:content {:text "MDE has been used extensively to generate applications and system components across a wide variety of domains, including automotive, railroad systems, business process engineering, and embedded system"},
:properties {:color "green"}}
{:id #uuid "63b8521a-5f39-43f0-b96f-b70cac48551a",
:page 7,
:position {:bounding {:x1 0,
:y1 61.333335876464844,
:x2 717.0829315185547,
:y2 330.18231201171875,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 0,
:y1 61.333335876464844,
:x2 0,
:y2 82.66666793823242,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 592.2057037353516,
:y1 292.6458435058594,
:x2 717.0829315185547,
:y2 310.3125,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98438262939453,
:y1 312.515625,
:x2 678.8095550537109,
:y2 330.18231201171875,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 7},
:content {:text "It only requires the parts of the SuM that need monitoring to be modeled, instead of the entire SuM"},
:properties {:color "purple"}}
{:id #uuid "63b852a7-7364-4891-8f12-2dcb7a9de705",
:page 7,
:position {:bounding {:x1 0,
:y1 205.33334350585938,
:x2 717.0808563232422,
:y2 509.03125,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 0,
:y1 205.33334350585938,
:x2 0,
:y2 226.6666717529297,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 222.25000762939453,
:y1 471.49481201171875,
:x2 717.0808563232422,
:y2 489.1614685058594,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98438262939453,
:y1 491.3645935058594,
:x2 615.6968154907227,
:y2 509.03125,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 7},
:content {:text "GRuM Monitoring Setup specifies exactly what parts of the system should be monitored and provides the mechanisms for performing the monitoring."},
:properties {:color "green"}}
{:id #uuid "63b852c6-cddb-49b5-bf32-bcc6037f341c",
:page 7,
:position {:bounding {:x1 0,
:y1 285.33333587646484,
:x2 717.0889358520508,
:y2 628.265625,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 0,
:y1 285.33333587646484,
:x2 0,
:y2 306.6666717529297,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 0,
:y1 301.33333587646484,
:x2 0,
:y2 322.6666717529297,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 397.2467498779297,
:y1 570.8541870117188,
:x2 716.8162689208984,
:y2 588.5208435058594,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98438262939453,
:y1 590.7239685058594,
:x2 717.0889358520508,
:y2 608.390625,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98438262939453,
:y1 610.5989685058594,
:x2 478.62598419189453,
:y2 628.265625,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 7},
:content {:text "monitors are typically defined and developed individually for each type of system or technology, such as byte-code instrumentation or dedicated service busses in service-based systems"},
:properties {:color "purple"}}
{:id #uuid "63b852eb-9e43-4bf6-bfa9-68d88785b9ff",
:page 7,
:position {:bounding {:x1 0,
:y1 381.3333320617676,
:x2 717.0913772583008,
:y2 787.2448120117188,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 0,
:y1 381.3333320617676,
:x2 0,
:y2 402.66666412353516,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 0,
:y1 397.3333320617676,
:x2 0,
:y2 418.6666660308838,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 0,
:y1 413.3333320617676,
:x2 0,
:y2 434.6666660308838,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 0,
:y1 429.3333330154419,
:x2 0,
:y2 450.6666669845581,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 365.26564025878906,
:y1 690.0885467529297,
:x2 717.0804901123047,
:y2 707.7552185058594,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98438262939453,
:y1 709.9583435058594,
:x2 717.0899963378906,
:y2 727.625,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98438262939453,
:y1 729.8333435058594,
:x2 716.8339309692383,
:y2 747.5,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98438262939453,
:y1 749.703125,
:x2 717.0913772583008,
:y2 767.3698120117188,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98438262939453,
:y1 769.578125,
:x2 215.9844207763672,
:y2 787.2448120117188,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 7},
:content {:text "GRuM leverages MDE to describe the components of the SuM that need to be monitored, and then subsequently generates the monitoring infrastructure. To support this process we have created a dedicated MMM that can be used to define the relevant parts of the system for the resulting probes and the Monitoring Platform."},
:properties {:color "purple"}}
{:id #uuid "63b85327-1a50-4bce-beae-3d3166e02e8e",
:page 8,
:position {:bounding {:x1 184.66666412353516,
:y1 255,
:x2 691.6666641235352,
:y2 555,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects (),
:page 8},
:content {:text "[:span]", :image 1673024292567},
:properties {:color "green"}}
{:id #uuid "63b85343-2435-47bd-87ef-301dfe08d591",
:page 7,
:position {:bounding {:x1 351.85765075683594,
:y1 868.0573120117188,
:x2 500.99061584472656,
:y2 885.7239685058594,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 351.85765075683594,
:y1 868.0573120117188,
:x2 500.99061584472656,
:y2 885.7239685058594,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 7},
:content {:text " monitoring configuratio"},
:properties {:color "green"}}
{:id #uuid "63b853d1-3270-4151-af33-442d8dc3f2aa",
:page 7,
:position {:bounding {:x1 294.6306915283203,
:y1 967.421875,
:x2 717.0833587646484,
:y2 985.421875,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 294.6306915283203,
:y1 967.421875,
:x2 717.0833587646484,
:y2 985.421875,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 7},
:content {:text "ach agent has its own set of monitorable properties (MoProperty)"},
:properties {:color "green"}}
{:id #uuid "63b8544c-d455-4466-bbf7-dfcbc74bc71c",
:page 8,
:position {:bounding {:x1 197.53720092773438,
:y1 835.5052185058594,
:x2 370.93101501464844,
:y2 853.171875,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 197.53720092773438,
:y1 835.5052185058594,
:x2 370.93101501464844,
:y2 853.171875,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 8},
:content {:text "Weaved Monitoring Model"},
:properties {:color "green"}}
{:id #uuid "63b8545c-7686-4e60-8ef5-b3e7585ea5b1",
:page 8,
:position {:bounding {:x1 257.94313049316406,
:y1 936.328125,
:x2 326.1694641113281,
:y2 953.9948120117188,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 257.94313049316406,
:y1 936.328125,
:x2 326.1694641113281,
:y2 953.9948120117188,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 8},
:content {:text "determine "},
:properties {:color "green"}}
{:id #uuid "63b85462-8942-47e0-a124-c2b18e70dba7",
:page 8,
:position {:bounding {:x1 253.27688598632812,
:y1 956.1979370117188,
:x2 315.1919860839844,
:y2 973.8645935058594,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 253.27688598632812,
:y1 956.1979370117188,
:x2 315.1919860839844,
:y2 973.8645935058594,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 8},
:content {:text "Fragment"},
:properties {:color "green"}}
{:id #uuid "63b8546a-5a46-4bfd-96cb-585c2e5cb51d",
:page 8,
:position {:bounding {:x1 155.98438262939453,
:y1 956.1979370117188,
:x2 209.8557586669922,
:y2 973.8645935058594,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 155.98438262939453,
:y1 956.1979370117188,
:x2 209.8557586669922,
:y2 973.8645935058594,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 8},
:content {:text "Domain "},
:properties {:color "green"}}
{:id #uuid "63bc209d-5ea9-44aa-8d25-7a9ab6c963c4",
:page 8,
:position {:bounding {:x1 449.9305217266083,
:y1 1040.8940200805664,
:x2 698.7018840312958,
:y2 1061.449562072754,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 449.9305217266083,
:y1 1040.8940200805664,
:x2 698.7018840312958,
:y2 1061.449562072754,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 8},
:content {:text "Weaved Monitoring Model (WM)"},
:properties {:color "green"}}
{:id #uuid "63bc20c2-f803-4aa9-817f-6b7efdf1124c",
:page 9,
:position {:bounding {:x1 369.878458738327,
:y1 684.5746154785156,
:x2 502.7417094707489,
:y2 705.1301574707031,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 369.878458738327,
:y1 684.5746154785156,
:x2 502.7417094707489,
:y2 705.1301574707031,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 9},
:content {:text "MonitorableAgent"},
:properties {:color "green"}}
{:id #uuid "63bc20da-6333-4e6e-8105-ee54459adbd3",
:page 9,
:position {:bounding {:x1 640.7291057109833,
:y1 707.1614074707031,
:x2 795.1656901836395,
:y2 727.7169494628906,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 640.7291057109833,
:y1 707.1614074707031,
:x2 795.1656901836395,
:y2 727.7169494628906,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 9},
:content {:text "MonitorableProperty"},
:properties {:color "green"}}
{:id #uuid "63bc2108-6456-410f-a2d1-c1be07754983",
:page 9,
:position {:bounding {:x1 0,
:y1 301.189208984375,
:x2 814.8221843242645,
:y2 1091.3540954589844,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 301.189208984375,
:x2 0,
:y2 322.3003234863281,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 681.8307292461395,
:y1 1048.2117309570312,
:x2 814.8221843242645,
:y2 1068.7673034667969,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693774223328,
:y1 1070.7985534667969,
:x2 462.48505663871765,
:y2 1091.3540954589844,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 9},
:content {:text "a set of probes for collecting information from the system"},
:properties {:color "green"}}
{:id #uuid "63bc210e-3e69-402f-82a3-567964e08b39",
:page 9,
:position {:bounding {:x1 0,
:y1 317.1874694824219,
:x2 814.8003947734833,
:y2 1113.9321899414062,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 317.1874694824219,
:x2 0,
:y2 338.298583984375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 528.5821940898895,
:y1 1070.7985534667969,
:x2 814.8003947734833,
:y2 1091.3540954589844,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693774223328,
:y1 1093.3766784667969,
:x2 263.0908000469208,
:y2 1113.9321899414062,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 9},
:content {:text "an instance of the Monitoring Platform for the SuM"},
:properties {:color "green"}}
{:id #uuid "63bc2121-6652-4fe7-b050-b8cdad6ab34d",
:page 10,
:position {:bounding {:x1 328.5416362285614,
:y1 239.9131622314453,
:x2 663.5525920391083,
:y2 256.57984924316406,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 328.5416362285614,
:y1 239.9131622314453,
:x2 663.5525920391083,
:y2 256.57984924316406,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 10},
:content {:text "Listing 1: Excerpt of the WM for the Dronology system"},
:properties {:color "red"}}
{:id #uuid "63bc23b3-6bcd-4642-b9a2-6f19513b316f",
:page 10,
:position {:bounding {:x1 389.6921489238739,
:y1 679.0624771118164,
:x2 729.7997844219208,
:y2 699.6180191040039,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 389.6921489238739,
:y1 679.0624771118164,
:x2 729.7997844219208,
:y2 699.6180191040039,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 10},
:content {:text "technology and language-specific set of probes"},
:properties {:color "green"}}
{:id #uuid "63bc23da-0963-4981-ae5c-53430a12cd50",
:page 10,
:position {:bounding {:x1 458.1270549297333,
:y1 746.8141860961914,
:x2 779.1214396953583,
:y2 767.3697280883789,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 458.1270549297333,
:y1 746.8141860961914,
:x2 779.1214396953583,
:y2 767.3697280883789,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 10},
:content {:text " can be reused for other Java-based systems"},
:properties {:color "yellow"}}
{:id #uuid "63bc2806-ba39-469d-bb8f-3f38e407f847",
:page 10,
:position {:bounding {:x1 533.7412996292114,
:y1 965.7724914550781,
:x2 667.7972078323364,
:y2 983.5502624511719,
:width 865.6791503267972,
:height 1224.317156862745},
:rects ({:x1 533.7412996292114,
:y1 965.7724914550781,
:x2 667.7972078323364,
:y2 983.5502624511719,
:width 865.6791503267972,
:height 1224.317156862745}),
:page 10},
:content {:text "Model Query Engine"},
:properties {:color "green"}}
{:id #uuid "63bc2832-d384-4ab8-ab4a-532998064a8d",
:page 11,
:position {:bounding {:x1 523.6728792190552,
:y1 580.0954437255859,
:x2 652.8498811721802,
:y2 597.8732147216797,
:width 865.6791503267972,
:height 1224.317156862745},
:rects ({:x1 523.6728792190552,
:y1 580.0954437255859,
:x2 652.8498811721802,
:y2 597.8732147216797,
:width 865.6791503267972,
:height 1224.317156862745}),
:page 11},
:content {:text "monitoring platform"},
:properties {:color "green"}}
{:id #uuid "63bc28e1-fadf-48da-86b8-ca5657cc5886",
:page 11,
:position {:bounding {:x1 443.3953247219324,
:y1 694.1145324707031,
:x2 577.0732422024012,
:y2 708.5589599609375,
:width 717,
:height 1014.0424441771548},
:rects ({:x1 443.3953247219324,
:y1 694.1145324707031,
:x2 577.0732422024012,
:y2 708.5589599609375,
:width 717,
:height 1014.0424441771548}),
:page 11},
:content {:text "Domain Model Fragment"},
:properties {:color "green"}}
{:id #uuid "63bc28ec-84f8-492c-a609-61078e074c0a",
:page 11,
:position {:bounding {:x1 144.43498231470585,
:y1 726.75341796875,
:x2 252.87850953638554,
:y2 741.1978454589844,
:width 717,
:height 1014.0424441771548},
:rects ({:x1 144.43498231470585,
:y1 726.75341796875,
:x2 252.87850953638554,
:y2 741.1978454589844,
:width 717,
:height 1014.0424441771548}),
:page 11},
:content {:text " monitoring concepts"},
:properties {:color "green"}}
{:id #uuid "63bc2905-d93e-4942-8736-3ac187f3af8d",
:page 12,
:position {:bounding {:x1 145.1700287014246,
:y1 171.16317749023438,
:x2 321.9821167141199,
:y2 185.6076202392578,
:width 717,
:height 1014.0424441771548},
:rects ({:x1 145.1700287014246,
:y1 171.16317749023438,
:x2 321.9821167141199,
:y2 185.6076202392578,
:width 717,
:height 1014.0424441771548}),
:page 12},
:content {:text ". Platform and Probe Generation"},
:properties {:color "green"}}
{:id #uuid "63bc290b-1633-4f88-b90b-fea5bdea3f31",
:page 12,
:position {:bounding {:x1 152.2453003078699,
:y1 336.0416564941406,
:x2 360.91024781763554,
:y2 350.486083984375,
:width 717,
:height 1014.0424441771548},
:rects ({:x1 152.2453003078699,
:y1 336.0416564941406,
:x2 360.91024781763554,
:y2 350.486083984375,
:width 717,
:height 1014.0424441771548}),
:page 12},
:content {:text "Platform Usage & Runtime Monitoring"},
:properties {:color "green"}}
{:id #uuid "63bc295d-550f-4de2-b1cb-73509e58fa22",
:page 12,
:position {:bounding {:x1 0,
:y1 173.20312118530273,
:x2 717.0877532958984,
:y2 491.2065734863281,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 0,
:y1 173.20312118530273,
:x2 0,
:y2 194.3142318725586,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 651.3454437255859,
:y1 453.55902099609375,
:x2 717.0877532958984,
:y2 471.3367919921875,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98089218139648,
:y1 473.4288024902344,
:x2 658.2426109313965,
:y2 491.2065734863281,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 12},
:content {:text "integrated directly by the developers, or as part of the continuous integration process"},
:properties {:color "green"}}
{:id #uuid "63bc2975-3d85-4834-88ce-664f9e25dad5",
:page 12,
:position {:bounding {:x1 508.2638702392578,
:y1 593.4288024902344,
:x2 609.0699920654297,
:y2 611.7621154785156,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 508.2638702392578,
:y1 593.4288024902344,
:x2 609.0699920654297,
:y2 611.7621154785156,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 12},
:content {:text "MoProperties"},
:properties {:color "green"}}
{:id #uuid "63bc29c7-2d78-45e7-b64b-6960153edc1b",
:page 12,
:position {:bounding {:x1 588.0693511962891,
:y1 652.2742614746094,
:x2 663.2075653076172,
:y2 670.0520629882812,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 588.0693511962891,
:y1 652.2742614746094,
:x2 663.2075653076172,
:y2 670.0520629882812,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 12},
:content {:text "middleware"},
:properties {:color "red"}}
{:id #uuid "63bc2c03-c483-48ce-9129-94f69843e64d",
:page 13,
:position {:bounding {:x1 184.67809295654297,
:y1 265.93749237060547,
:x2 298.64259338378906,
:y2 283.7152633666992,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 184.67809295654297,
:y1 265.93749237060547,
:x2 298.64259338378906,
:y2 283.7152633666992,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 13},
:content {:text "System Evolution"},
:properties {:color "green"}}
{:id #uuid "63bc2c1a-34b8-4d0b-be34-e1cbb7837ab6",
:page 13,
:position {:bounding {:x1 0,
:y1 61.21527099609375,
:x2 717.0795745849609,
:y2 347.71700286865234,
:width 873.0714666666667,
:height 1234.7720000000002},
:rects ({:x1 0,
:y1 61.21527099609375,
:x2 0,
:y2 82.32638168334961,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 377.8538360595703,
:y1 310.06941986083984,
:x2 717.0795745849609,
:y2 327.84720611572266,
:width 873.0714666666667,
:height 1234.7720000000002}
{:x1 155.98089218139648,
:y1 329.93921661376953,
:x2 183.15774536132812,
:y2 347.71700286865234,
:width 873.0714666666667,
:height 1234.7720000000002}),
:page 13},
:content {:text " easily incorporated into the monitoring platform as well"},
:properties {:color "yellow"}}
{:id #uuid "63bc2c88-d71f-4f10-b24a-a1f90473d7f0",
:page 13,
:position {:bounding {:x1 0,
:y1 157.20484924316406,
:x2 814.8019371032715,
:y2 553.151008605957,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 157.20484924316406,
:x2 0,
:y2 178.31595611572266,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 173.20310974121094,
:x2 0,
:y2 194.31422424316406,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 734.9741172790527,
:y1 487.43921661376953,
:x2 814.8019371032715,
:y2 507.99475860595703,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 510.01734161376953,
:x2 814.7996025085449,
:y2 530.572883605957,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 532.5954360961914,
:x2 586.4167900085449,
:y2 553.151008605957,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 13},
:content {:text " if an additional property of an existing agent needs to be added to the set of monitored properties, this change can be directly performed at the model level"},
:properties {:color "green"}}
{:id #uuid "63bc2c96-14c6-4b29-b36d-ecb07f300a72",
:page 13,
:position {:bounding {:x1 0,
:y1 221.1978988647461,
:x2 814.8043174743652,
:y2 620.9027481079102,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 221.1978988647461,
:x2 0,
:y2 242.30901336669922,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 264.65929794311523,
:y1 577.760383605957,
:x2 814.8043174743652,
:y2 598.3159255981445,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 600.3471755981445,
:x2 380.60525131225586,
:y2 620.9027481079102,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 13},
:content {:text " probes and platform code can be completely regenerated without the need to manually adapt the code."},
:properties {:color "green"}}
{:id #uuid "63bc2cc9-913c-4875-ba32-16a44e4ca432",
:page 13,
:position {:bounding {:x1 0,
:y1 365.1822814941406,
:x2 814.8573570251465,
:y2 871.6318969726562,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 365.1822814941406,
:x2 0,
:y2 386.2933807373047,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 381.1805419921875,
:x2 0,
:y2 402.29164123535156,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 647.8265953063965,
:y1 805.9114379882812,
:x2 813.8725547790527,
:y2 826.4669799804688,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 828.4895629882812,
:x2 814.8573570251465,
:y2 849.0451049804688,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 851.0763549804688,
:x2 726.927059173584,
:y2 871.6318969726562,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 13},
:content {:text " we used XText [48] to define a textual domain-specific language (DSL) for the WM (see example in Listing 1) which allows easy creation and modification of the WM for a specific SuM."},
:properties {:color "green"}}
{:id #uuid "63bc2cf1-9729-4c1a-b1f4-935e9a74f5b9",
:page 13,
:position {:bounding {:x1 0,
:y1 493.1683654785156,
:x2 814.8016319274902,
:y2 1029.704833984375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 493.1683654785156,
:x2 0,
:y2 514.2794799804688,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 503.7604331970215,
:y1 986.5624389648438,
:x2 814.8016319274902,
:y2 1007.1179809570312,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 1009.1492309570312,
:x2 489.78466415405273,
:y2 1029.704833984375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 13},
:content {:text "two distinct code generators to support two different target languages and technologies"},
:properties {:color "green"}}
{:id #uuid "63bc34c6-ecf6-4257-949c-8cc6368eedbd",
:page 14,
:position {:bounding {:x1 0,
:y1 61.21527099609375,
:x2 813.8647422790527,
:y2 818.5156021118164,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 61.21527099609375,
:x2 0,
:y2 82.32638168334961,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 706.508358001709,
:y1 775.3818740844727,
:x2 813.8647422790527,
:y2 795.9374771118164,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 797.9599990844727,
:x2 773.8547172546387,
:y2 818.5156021118164,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 14},
:content {:text "At runtime, an instance of the Domain Model Fragment is created and used as the runtime mod"},
:properties {:color "green"}}
{:id #uuid "63bc34ef-60cb-4d02-9f1d-5c650e421622",
:page 14,
:position {:bounding {:x1 0,
:y1 285.19095611572266,
:x2 814.801326751709,
:y2 1134.661376953125,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 285.19095611572266,
:x2 0,
:y2 306.3020706176758,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 253.74187850952148,
:y1 1091.5277099609375,
:x2 814.801326751709,
:y2 1112.083251953125,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 1114.1058349609375,
:x2 595.5119438171387,
:y2 1134.661376953125,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 14},
:content {:text "while Viatra provides tools and incremental evaluation [50, 51], it does not support more complex constraints, such as temporal ones"},
:properties {:color "green"}}
{:id #uuid "63bc34f6-af00-4441-b614-31c647f4bfae",
:page 14,
:position {:bounding {:x1 563.3472862243652,
:y1 1136.692626953125,
:x2 814.5021324157715,
:y2 1157.2481689453125,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 563.3472862243652,
:y1 1136.692626953125,
:x2 814.5021324157715,
:y2 1157.2481689453125,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 14},
:content {:text " Complex Event Processing (CEP)"},
:properties {:color "green"}}
{:id #uuid "63bc350a-20f4-4023-b84c-a21d3d59637f",
:page 15,
:position {:bounding {:x1 0,
:y1 45.217010498046875,
:x2 814.7995567321777,
:y2 419.9912967681885,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 45.217010498046875,
:x2 0,
:y2 66.3281192779541,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 784.6596031188965,
:y1 376.84893226623535,
:x2 814.7995567321777,
:y2 397.40447425842285,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 399.43572425842285,
:x2 275.8750877380371,
:y2 419.9912967681885,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 15},
:content {:text "reasonable effort"},
:properties {:color "green"}}
{:id #uuid "63bc3520-d8e4-428d-94ad-1d061aca2075",
:page 15,
:position {:bounding {:x1 677.1607627868652,
:y1 489.765588760376,
:x2 814.8608360290527,
:y2 510.3211612701416,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 677.1607627868652,
:y1 489.765588760376,
:x2 814.8608360290527,
:y2 510.3211612701416,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 15},
:content {:text "ssessing the effort"},
:properties {:color "green"}}
{:id #uuid "63bc353c-0697-49fe-b5b0-7201729e3258",
:page 15,
:position {:bounding {:x1 390.08938217163086,
:y1 376.8489456176758,
:x2 671.6732749938965,
:y2 397.4044876098633,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 390.08938217163086,
:y1 376.8489456176758,
:x2 671.6732749938965,
:y2 397.4044876098633,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 15},
:content {:text " create a runtime monitoring platform "},
:properties {:color "green"}}
{:id #uuid "63bc3554-ca84-4bd0-aafa-bccd035bf95d",
:page 15,
:position {:bounding {:x1 0,
:y1 173.20310974121094,
:x2 814.8566246032715,
:y2 605.6249465942383,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 173.20310974121094,
:x2 0,
:y2 194.31422424316406,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 636.3746299743652,
:y1 562.4912796020508,
:x2 814.8566246032715,
:y2 583.0468521118164,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 585.0694046020508,
:x2 339.9283103942871,
:y2 605.6249465942383,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 15},
:content {:text "efficiently monitor timesensitive runtime data "},
:properties {:color "green"}}
{:id #uuid "63bc355c-1fe9-4c95-b898-c3da06873b95",
:page 15,
:position {:bounding {:x1 0,
:y1 253.19441986083984,
:x2 814.8048667907715,
:y2 718.5329360961914,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 253.19441986083984,
:x2 0,
:y2 274.30553436279297,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 736.9086875915527,
:y1 675.3992691040039,
:x2 814.8048667907715,
:y2 695.9548110961914,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 697.9773941040039,
:x2 532.3852348327637,
:y2 718.5329360961914,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 15},
:content {:text "measuring the model-set-latency of the monitoring platform"},
:properties {:color "green"}}
{:id #uuid "63bc35c8-e461-49f2-bb21-0894eb707c50",
:page 15,
:position {:bounding {:x1 156,
:y1 355.666015625,
:x2 836,
:y2 427.21983337402344,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects (),
:page 15},
:content {:text "[:span]", :image 1673278967744},
:properties {:color "green"}}
{:id #uuid "63bc35db-b13e-4b50-8786-1b1247c510ae",
:page 15,
:position {:bounding {:x1 154,
:y1 553.666015625,
:x2 837.9930419921875,
:y2 613.7701721191406,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects (),
:page 15},
:content {:text "[:span]", :image 1673278963252},
:properties {:color "blue"}}
{:id #uuid "63bc3625-fdfd-41bb-8927-1eb4ae8a2a23",
:page 16,
:position {:bounding {:x1 0,
:y1 13.220489501953125,
:x2 814.502742767334,
:y2 302.4305419921875,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 13.220489501953125,
:x2 0,
:y2 34.331573486328125,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 304.18383407592773,
:y1 259.28814697265625,
:x2 814.502742767334,
:y2 279.84375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 281.875,
:x2 569.2347831726074,
:y2 302.4305419921875,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 16},
:content {:text "One was assigned to Dronology and one to the TurtleBot system. We then recorded the time taken to complete each activity"},
:properties {:color "green"}}
{:id #uuid "63bc36b3-4eda-4775-b6be-0c8f7c49ad99",
:page 16,
:position {:bounding {:x1 0,
:y1 365.1822967529297,
:x2 814.8026695251465,
:y2 799.2360687255859,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 365.1822967529297,
:x2 0,
:y2 386.2933807373047,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 289.95336532592773,
:y1 756.0937347412109,
:x2 814.8026695251465,
:y2 776.6492767333984,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 778.6805267333984,
:x2 423.2567710876465,
:y2 799.2360687255859,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 16},
:content {:text "“thinking-time” which is expected to be similar whether the monitor is built from scratch or using GRuM"},
:properties {:color "green"}}
{:id #uuid "63bc36d5-0483-4755-a056-2791ccff2036",
:page 16,
:position {:bounding {:x1 177.25693893432617,
:y1 304.4531021118164,
:x2 333.31985092163086,
:y2 325.00865936279297,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 177.25693893432617,
:y1 304.4531021118164,
:x2 333.31985092163086,
:y2 325.00865936279297,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 16},
:content {:text "Case 1 Dronology"},
:properties {:color "yellow"}}
{:id #uuid "63bc373d-6509-4c88-b90f-92461a5feab0",
:page 16,
:position {:bounding {:x1 0,
:y1 621.1544799804688,
:x2 813.861629486084,
:y2 1160.5467834472656,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 621.1544799804688,
:x2 0,
:y2 642.2655944824219,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 468.0035972595215,
:y1 1117.4044494628906,
:x2 813.861629486084,
:y2 1137.9599914550781,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25693893432617,
:y1 1139.9912414550781,
:x2 561.0646781921387,
:y2 1160.5467834472656,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 16},
:content {:text ". Altogether, the implementation of constraints and extensions was completed within about 20 hours"},
:properties {:color "green"}}
{:id #uuid "63bc8375-d23b-4bbc-9243-2d09308bbaf7",
:page 17,
:position {:bounding {:x1 157.578125,
:y1 451.85546875,
:x2 329.2349853515625,
:y2 469.7721252441406,
:width 882,
:height 1247.3994920003495},
:rects ({:x1 157.578125,
:y1 451.85546875,
:x2 329.2349853515625,
:y2 469.7721252441406,
:width 882,
:height 1247.3994920003495}),
:page 17},
:content {:text "Case 2 ROS TurtleBot"},
:properties {:color "yellow"}}
{:id #uuid "63bc8640-7bfa-4af3-907b-46e1ac2035c9",
:page 17,
:position {:bounding {:x1 172.83853149414062,
:y1 572.3111877441406,
:x2 593.438720703125,
:y2 590.2278442382812,
:width 882,
:height 1247.3994920003495},
:rects ({:x1 172.83853149414062,
:y1 572.3111877441406,
:x2 593.438720703125,
:y2 590.2278442382812,
:width 882,
:height 1247.3994920003495}),
:page 17},
:content {:text " MQTT-Forwarder for sending data to the monitoring platform"},
:properties {:color "green"}}
{:id #uuid "63bc8656-7c76-4036-95f7-b7ce1c5b9db4",
:page 17,
:position {:bounding {:x1 0,
:y1 157.5260467529297,
:x2 724.4678344726562,
:y2 670.52734375,
:width 882,
:height 1247.3994920003495},
:rects ({:x1 0,
:y1 157.5260467529297,
:x2 0,
:y2 178.359375,
:width 882,
:height 1247.3994920003495}
{:x1 632.5947875976562,
:y1 632.5325317382812,
:x2 724.4678344726562,
:y2 650.44921875,
:width 882,
:height 1247.3994920003495}
{:x1 157.578125,
:y1 652.6106567382812,
:x2 713.716796875,
:y2 670.52734375,
:width 882,
:height 1247.3994920003495}),
:page 17},
:content {:text "we developed this application from scratch without prior experience with the system or technolog"},
:properties {:color "green"}}
{:id #uuid "63bc8664-4d45-4a74-8799-cb3b5ffcda16",
:page 17,
:position {:bounding {:x1 0,
:y1 221.53644561767578,
:x2 723.9796752929688,
:y2 750.8268127441406,
:width 882,
:height 1247.3994920003495},
:rects ({:x1 0,
:y1 221.53644561767578,
:x2 0,
:y2 242.36978149414062,
:width 882,
:height 1247.3994920003495}
{:x1 447.6432189941406,
:y1 712.8385314941406,
:x2 723.9796752929688,
:y2 730.7551574707031,
:width 882,
:height 1247.3994920003495}
{:x1 157.578125,
:y1 732.9101257324219,
:x2 469.1507263183594,
:y2 750.8268127441406,
:width 882,
:height 1247.3994920003495}),
:page 17},
:content {:text "Domain Model Fragment (1) for the TurtleBot consisted of 10 properties with 23 attributes"},
:properties {:color "green"}}
{:id #uuid "63bc8676-efb4-451c-9da0-1b829fa35207",
:page 17,
:position {:bounding {:x1 0,
:y1 301.5494613647461,
:x2 724.4486083984375,
:y2 851.2044067382812,
:width 882,
:height 1247.3994920003495},
:rects ({:x1 0,
:y1 301.5494613647461,
:x2 0,
:y2 322.3827934265137,
:width 882,
:height 1247.3994920003495}
{:x1 186.40762329101562,
:y1 813.2161254882812,
:x2 724.4486083984375,
:y2 831.1327819824219,
:width 882,
:height 1247.3994920003495}
{:x1 157.578125,
:y1 833.2877197265625,
:x2 200.22830200195312,
:y2 851.2044067382812,
:width 882,
:height 1247.3994920003495}),
:page 17},
:content {:text "5 hours were spent implementing the GRuM monitor after properties had been selected."},
:properties {:color "green"}}
{:id #uuid "63bc8686-dc99-41a6-82de-3a2ce739f55c",
:page 17,
:position {:bounding {:x1 506.2953186035156,
:y1 893.5155639648438,
:x2 592.0145874023438,
:y2 911.4322509765625,
:width 882,
:height 1247.3994920003495},
:rects ({:x1 506.2953186035156,
:y1 893.5155639648438,
:x2 592.0145874023438,
:y2 911.4322509765625,
:width 882,
:height 1247.3994920003495}),
:page 17},
:content {:text "7 constraints"},
:properties {:color "yellow"}}
{:id #uuid "63bc86cb-beb5-48e0-994c-f4f7cf397cff",
:page 18,
:position {:bounding {:x1 0,
:y1 477.5781059265137,
:x2 724.51416015625,
:y2 910.2603759765625,
:width 882,
:height 1247.3994920003495},
:rects ({:x1 0,
:y1 477.5781059265137,
:x2 0,
:y2 498.41143798828125,
:width 882,
:height 1247.3994920003495}
{:x1 0,
:y1 493.58070945739746,
:x2 0,
:y2 514.414041519165,
:width 882,
:height 1247.3994920003495}
{:x1 0,
:y1 509.58331298828125,
:x2 0,
:y2 530.4166450500488,
:width 882,
:height 1247.3994920003495}
{:x1 382.16815185546875,
:y1 832.1158447265625,
:x2 724.4854125976562,
:y2 850.0325317382812,
:width 882,
:height 1247.3994920003495}
{:x1 157.578125,
:y1 852.1939697265625,
:x2 724.51416015625,
:y2 870.1106567382812,
:width 882,
:height 1247.3994920003495}
{:x1 157.578125,
:y1 872.2655944824219,
:x2 724.4761352539062,
:y2 890.1822509765625,
:width 882,
:height 1247.3994920003495}
{:x1 157.578125,
:y1 892.3437194824219,
:x2 200.35919189453125,
:y2 910.2603759765625,
:width 882,
:height 1247.3994920003495}),
:page 18},
:content {:text " add monitorable properties to a system, perform constraint checks using the newly collected data, update an existing element (e.g., change the information and/or type of a property) and remove an existing element from the model."},
:properties {:color "green"}}
{:id #uuid "63bc871e-d222-4e37-b7ad-e572d117e3ce",
:page 18,
:position {:bounding {:x1 411.5910949707031,
:y1 1116.578125,
:x2 546.6282958984375,
:y2 1137.078125,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 411.5910949707031,
:y1 1116.578125,
:x2 546.6282958984375,
:y2 1137.078125,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 18},
:content {:text "(i) a new property "},
:properties {:color "green"}}
{:id #uuid "63bc8722-c6fd-439a-a364-7f2ed534e90e",
:page 18,
:position {:bounding {:x1 261.8680114746094,
:y1 1139.15625,
:x2 523.9407348632812,
:y2 1159.65625,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 261.8680114746094,
:y1 1139.15625,
:x2 523.9407348632812,
:y2 1159.65625,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 18},
:content {:text "(ii) an existing property is modified"},
:properties {:color "green"}}
{:id #uuid "63bc8729-ad90-49ff-85c2-13e801b16ecd",
:page 19,
:position {:bounding {:x1 458.02166748046875,
:y1 658.2890625,
:x2 652.471435546875,
:y2 678.7890625,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 458.02166748046875,
:y1 658.2890625,
:x2 652.471435546875,
:y2 678.7890625,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 19},
:content {:text "(iii) a property is removed"},
:properties {:color "green"}}
{:id #uuid "63bc8844-2328-4e0e-a762-242a28dabef1",
:page 20,
:position {:bounding {:x1 0,
:y1 62,
:x2 814.8682250976562,
:y2 370.2890625,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 62,
:x2 0,
:y2 81.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 308.3984375,
:y1 327.203125,
:x2 814.8682250976562,
:y2 347.703125,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 349.7890625,
:x2 764.0948486328125,
:y2 370.2890625,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 20},
:content {:text " GRuM provides a high degree of automation, reducing the manual effort that is required to adopt changes in the SuM in the monitoring platform"},
:properties {:color "green"}}
{:id #uuid "63bc88ce-0356-485a-b835-9fb0758039e8",
:page 20,
:position {:bounding {:x1 228.44708251953125,
:y1 916.65625,
:x2 445.8431396484375,
:y2 937.15625,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 228.44708251953125,
:y1 916.65625,
:x2 445.8431396484375,
:y2 937.15625,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 20},
:content {:text "UAV search mission scenario"},
:properties {:color "green"}}
{:id #uuid "63bc88d3-7c15-48e1-b7a2-577a904f39dd",
:page 20,
:position {:bounding {:x1 0,
:y1 462,
:x2 814.8790893554688,
:y2 959.7421875,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 462,
:x2 0,
:y2 481.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 500.7298583984375,
:y1 916.65625,
:x2 814.8790893554688,
:y2 937.15625,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 939.2421875,
:x2 317.99957275390625,
:y2 959.7421875,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 20},
:content {:text "multiple UAVs search for a missing person in a predefined are"},
:properties {:color "green"}}
{:id #uuid "63bc8a4b-25b3-4de5-8282-ec5ba0a98ec1",
:page 20,
:position {:bounding {:x1 0,
:y1 526,
:x2 814.8805541992188,
:y2 1095.234375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 526,
:x2 0,
:y2 545.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 542,
:x2 0,
:y2 561.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 558,
:x2 0,
:y2 577.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 430.0028076171875,
:y1 1006.9921875,
:x2 814.5873413085938,
:y2 1027.4921875,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 1029.5703125,
:x2 814.8799438476562,
:y2 1050.0703125,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 1052.15625,
:x2 814.8805541992188,
:y2 1072.65625,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.2578125,
:y1 1074.734375,
:x2 413.44195556640625,
:y2 1095.234375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 20},
:content {:text "he monitoring infrastructure was set up on a standard Desktop Computer, with 16GB of RAM, running Ubuntu 20, using Java 11, and Ecore2.23. We randomly assigned 5 flight routes to each UAV, and then collected runtime data and performed constraint checks"},
:properties {:color "green"}}
{:id #uuid "63bc8a59-5a7e-42df-9bfb-8d4907972f2a",
:page 20,
:position {:bounding {:x1 510.05706787109375,
:y1 1119.8984375,
:x2 752.6354370117188,
:y2 1140.3984375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 510.05706787109375,
:y1 1119.8984375,
:x2 752.6354370117188,
:y2 1140.3984375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 20},
:content {:text " violations were reported correctly"},
:properties {:color "yellow"}}
{:id #uuid "63bc8ab5-04aa-41e8-874a-2daabadc35cb",
:page 21,
:position {:bounding {:x1 0,
:y1 830,
:x2 670.1461181640625,
:y2 979.84375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 830,
:x2 0,
:y2 849.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 203.51846313476562,
:y1 945.078125,
:x2 670.1461181640625,
:y2 961.578125,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 218.953125,
:y1 963.34375,
:x2 415.5935974121094,
:y2 979.84375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 21},
:content {:text "8 Speed Reduction: When the bot operates below 25% battery level, the speed must not exceed 2.0m/s anymore"},
:properties {:color "yellow"}}
{:id #uuid "63bc8abf-1f59-4501-b889-c24a41460417",
:page 21,
:position {:bounding {:x1 0,
:y1 926,
:x2 669.9021606445312,
:y2 1052.90625,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 926,
:x2 0,
:y2 945.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 211.2890625,
:y1 1018.140625,
:x2 669.9021606445312,
:y2 1034.640625,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 218.953125,
:y1 1036.40625,
:x2 569.44775390625,
:y2 1052.90625,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 21},
:content {:text " Measurements Accuracy: To ensure accurate measurements, an alert should be raised when measurements are transmitted while movin"},
:properties {:color "yellow"}}
{:id #uuid "63bd3b61-ad54-4cd7-ac3b-dc9e9e023335",
:page 17,
:position {:bounding {:x1 358.46588134765625,
:y1 1027.7291870117188,
:x2 595.5667724609375,
:y2 1048.3958740234375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 358.46588134765625,
:y1 1027.7291870117188,
:x2 595.5667724609375,
:y2 1048.3958740234375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 17},
:content {:text "temporal constraints with Esper"},
:properties {:color "yellow"}}
{:id #uuid "63bd3dac-e5ae-49f4-85e9-8f01bca6086b",
:page 19,
:position {:bounding {:x1 751.8864135742188,
:y1 592.53125,
:x2 814.8670654296875,
:y2 609.1979370117188,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 751.8864135742188,
:y1 592.53125,
:x2 814.8670654296875,
:y2 609.1979370117188,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 19},
:content {:text "properties"},
:properties {:color "red"}}
{:id #uuid "63bd3e0b-459b-451d-b8b6-9cf6a59f5ccb",
:page 25,
:position {:bounding {:x1 0,
:y1 30,
:x2 814.873779296875,
:y2 325.4583740234375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 30,
:x2 0,
:y2 49.333343505859375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 542.486083984375,
:y1 282.2083740234375,
:x2 814.873779296875,
:y2 302.875,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25,
:y1 304.79168701171875,
:x2 324.4781188964844,
:y2 325.4583740234375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 25},
:content {:text "While these were created by several authors of this paper"},
:properties {:color "red"}}
{:id #uuid "63bd3e3b-ce26-459a-be0d-55e85b21618c",
:page 25,
:position {:bounding {:x1 0,
:y1 254,
:x2 814.8602905273438,
:y2 641.6041870117188,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 254,
:x2 0,
:y2 273.3333435058594,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 453.5204772949219,
:y1 598.3541870117188,
:x2 814.8602905273438,
:y2 619.0208740234375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25,
:y1 620.9375,
:x2 428.69921875,
:y2 641.6041870117188,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 25},
:content {:text "differences in terms of the technology used, their architectural styles, and propertie"},
:properties {:color "red"}}
{:id #uuid "63bd3eaf-efaf-4f43-8f73-1d18b7c7e705",
:page 25,
:position {:bounding {:x1 0,
:y1 574,
:x2 814.8768310546875,
:y2 1138.40625,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 574,
:x2 0,
:y2 593.3333740234375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 590,
:x2 0,
:y2 609.3333740234375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 0,
:y1 606,
:x2 0,
:y2 625.3333740234375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 707.7616577148438,
:y1 1049.9896240234375,
:x2 814.8676147460938,
:y2 1070.65625,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25,
:y1 1072.572998046875,
:x2 813.957275390625,
:y2 1093.2396240234375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25,
:y1 1095.15625,
:x2 814.8768310546875,
:y2 1115.822998046875,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25,
:y1 1117.7396240234375,
:x2 520.9371337890625,
:y2 1138.40625,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 25},
:content {:text "While we have been using a simulator for the Dronology use case, Ardupilot is a high-fidelity simulator providing a realistic execution environment, and our previous experience has confirmed that this closely resembles real-world scenarios"},
:properties {:color "green"}}
{:id #uuid "63bd3ee0-946a-4865-b841-e943c61cdb66",
:page 26,
:position {:bounding {:x1 383.8500671386719,
:y1 293.8333740234375,
:x2 622.3651123046875,
:y2 314.5,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 383.8500671386719,
:y1 293.8333740234375,
:x2 622.3651123046875,
:y2 314.5,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 26},
:content {:text " (1) describe relevant properties"},
:properties {:color "green"}}
{:id #uuid "63bd3ee6-1d8a-4d48-99ca-d62b084570eb",
:page 26,
:position {:bounding {:x1 0,
:y1 30,
:x2 814.87109375,
:y2 337.07293701171875,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 30,
:x2 0,
:y2 49.333343505859375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 655.23828125,
:y1 293.8333740234375,
:x2 814.87109375,
:y2 314.5,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25,
:y1 316.40625,
:x2 666.7373046875,
:y2 337.07293701171875,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 26},
:content {:text " (2) collect and check runtime data via the automatically generated monitoring platform"},
:properties {:color "green"}}
{:id #uuid "63bd3f87-6ff3-4b79-b468-02c18c85df1b",
:page 28,
:position {:bounding {:x1 0,
:y1 558,
:x2 814.8693237304688,
:y2 1115.4896240234375,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 0,
:y1 558,
:x2 0,
:y2 577.3333740234375,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 627.6280517578125,
:y1 1072.2396240234375,
:x2 814.8693237304688,
:y2 1092.90625,
:width 992.1266666666666,
:height 1403.1499999999999}
{:x1 177.25,
:y1 1094.822998046875,
:x2 304.29510498046875,
:y2 1115.4896240234375,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 28},
:content {:text "automatically generating runtime monitors"},
:properties {:color "green"}}
{:id #uuid "63bd3f97-8395-4b79-b765-50f7e9ffe7fb",
:page 28,
:position {:bounding {:x1 177.25,
:y1 1139.9896240234375,
:x2 483.16082763671875,
:y2 1160.65625,
:width 992.1266666666666,
:height 1403.1499999999999},
:rects ({:x1 177.25,
:y1 1139.9896240234375,
:x2 483.16082763671875,
:y2 1160.65625,
:width 992.1266666666666,
:height 1403.1499999999999}),
:page 28},
:content {:text "SuMs technology and architectural style"},
:properties {:color "yellow"}}],
:extra {:page 1}}