{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,13]],"date-time":"2026-03-13T09:27:36Z","timestamp":1773394056479,"version":"3.50.1"},"reference-count":51,"publisher":"Association for Computing Machinery (ACM)","issue":"2","funder":[{"name":"Sweden\u2019s Innovation Agency","award":["2019-02743"],"award-info":[{"award-number":["2019-02743"]}]},{"name":"TRANSFORM - Design transformation for correct-by-construction design methodology and the Advanced and innovative digitalization","award":["2021-02484"],"award-info":[{"award-number":["2021-02484"]}]},{"name":"EARLY BIRD - Seamless System Design from Concept Phase to Implementation"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2026,3,31]]},"abstract":"<jats:p>Raising the level of abstraction is considered key to addressing the ever-increasing complexity of embedded system design, but it causes additional challenges due to the larger abstraction gap between the initial specification and the final implementation. This article addresses the current lack of systematic design methods by extending existing design-transformation-based approaches and wrapping them into a rule-based transformational design methodology for heterogeneous multi-processor platforms. The methodology cross-fertilizes embedded system design with program transformation techniques while taking into account the interplay of tight constraints and platform heterogeneity inherent in such systems. It advocates step-wise transformations starting from initial requirements to yield a final refined model that is efficient for implementation.<\/jats:p>\n                  <jats:p>\n                    To consider the effect of transformations on different properties of the system at each step, the system is specified with a set of requirements, an application model, a platform model, and a set of mapping decisions; referred to as the\n                    <jats:italic toggle=\"yes\">RAMP<\/jats:italic>\n                    view of the system. The RAMP view and its carefully selected underlying unified\n                    <jats:italic toggle=\"yes\">abstract graph representation<\/jats:italic>\n                    lay the foundations for mechanizing and potentially automating design transformations. A\n                    <jats:italic toggle=\"yes\">pattern matching<\/jats:italic>\n                    technique is introduced and a proof-of-concept tool is implemented that automatically detects all possible transformations by matching the patterns defined by the transformation rules to the abstract graph representation of the system model. The underlying graph representation enables complex transformations on different aspects of the design, resulting in an improved design space definition. The design space can be explored by application-platform co-exploration techniques, yielding the most promising sequence of application transformations alongside the best matching platform. The applicability and potential of the proposed methodology are showcased through the design of both an image processing system and a cloud detection system.\n                  <\/jats:p>","DOI":"10.1145\/3714412","type":"journal-article","created":{"date-parts":[[2025,1,21]],"date-time":"2025-01-21T06:23:07Z","timestamp":1737440587000},"page":"1-33","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Bridging the Abstraction Gap: A Systematic Approach to Rule-Based Transformational Design for Embedded Systems"],"prefix":"10.1145","volume":"25","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-5897-4962","authenticated-orcid":false,"given":"Fahimeh","family":"Bahrami","sequence":"first","affiliation":[{"name":"EECS, Kungliga Tekniska Hogskolan","place":["Stockholm, Sweden"]}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1277-3903","authenticated-orcid":false,"given":"Rodolfo","family":"Jord\u00e3o","sequence":"additional","affiliation":[{"name":"Kungliga Tekniska Hogskolan","place":["Stockholm, Sweden"]}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4859-3100","authenticated-orcid":false,"given":"Ingo","family":"Sander","sequence":"additional","affiliation":[{"name":"Kungliga Tekniska Hogskolan","place":["Stockholm, Sweden"]}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9863-9985","authenticated-orcid":false,"given":"Ingemar","family":"S\u00f6derquist","sequence":"additional","affiliation":[{"name":"Business Area Avionics, Saab AB","place":["Link\u00f6ping, Sweden"]}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2026,3,2]]},"reference":[{"key":"e_1_3_2_2_2","volume-title":"Refinement Calculus: A Systematic Introduction","author":"Back Ralph-Johan","year":"2012","unstructured":"Ralph-Johan Back and Joakim Wright. 2012. Refinement Calculus: A Systematic Introduction. Springer Science & Business Media."},{"key":"e_1_3_2_3_2","doi-asserted-by":"publisher","DOI":"10.1145\/359576.359579"},{"key":"e_1_3_2_4_2","doi-asserted-by":"publisher","DOI":"10.1109\/FDL63219.2024.10673845"},{"key":"e_1_3_2_5_2","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2003.1193228"},{"key":"e_1_3_2_6_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-92188-2_9"},{"key":"e_1_3_2_7_2","doi-asserted-by":"publisher","DOI":"10.1023\/A:1008899229802"},{"key":"e_1_3_2_8_2","volume-title":"Specification and Development of Interactive Systems: Focus on Streams, Interfaces, and Refinement","author":"Broy Manfred","year":"2012","unstructured":"Manfred Broy and Ketil St\u00f8len. 2012. Specification and Development of Interactive Systems: Focus on Streams, Interfaces, and Refinement. Springer Science & Business Media."},{"key":"e_1_3_2_9_2","volume-title":"Algorithmic Skeletons: Structured Management of Parallel Computation","author":"Cole Murray","year":"1989","unstructured":"Murray Cole. 1989. Algorithmic Skeletons: Structured Management of Parallel Computation. Pitman, London."},{"key":"e_1_3_2_10_2","doi-asserted-by":"publisher","DOI":"10.1145\/503272.503290"},{"key":"e_1_3_2_11_2","volume-title":"Parallel Computer Architecture: A Hardware\/Software Approach","author":"Culler David","unstructured":"David Culler, Jaswinder Pal Singh, and Anoop Gupta. [n.d.]. Parallel Computer Architecture: A Hardware\/Software Approach. Gulf Professional Publishing. googlebooks:MHfHC4Wf3K0C"},{"key":"e_1_3_2_12_2","first-page":"68","volume-title":"Proceedings of the 15th International Symposium on System Synthesis","author":"Kock Erwin A. de","year":"2002","unstructured":"Erwin A. de Kock. 2002. Multiprocessor mapping of process networks: A JPEG decoding case study. In Proceedings of the 15th International Symposium on System Synthesis. 68\u201373."},{"key":"e_1_3_2_13_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-14279-6"},{"key":"e_1_3_2_14_2","doi-asserted-by":"publisher","DOI":"10.1007\/BF01933419"},{"key":"e_1_3_2_15_2","doi-asserted-by":"publisher","DOI":"10.1109\/54.679207"},{"key":"e_1_3_2_16_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICCD.1999.808256"},{"key":"e_1_3_2_17_2","doi-asserted-by":"publisher","DOI":"10.5555\/1795651"},{"key":"e_1_3_2_18_2","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2009.2026356"},{"key":"e_1_3_2_19_2","unstructured":"G. Kahn. 1974. The semantics of a simple language for parallel programming. In Proceedings of the IFIP Congress 74 (Amsterdam The Netherlands). 471\u2013475."},{"key":"e_1_3_2_20_2","volume-title":"System Requirements Analysis","author":"Grady Jeffrey O.","year":"2010","unstructured":"Jeffrey O. Grady. 2010. System Requirements Analysis. Elsevier."},{"key":"e_1_3_2_21_2","first-page":"207","volume-title":"Proceedings of the 12th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications","author":"Ha Soonhoi","year":"2006","unstructured":"Soonhoi Ha, Choonseung Lee, Youngmin Yi, Seongnam Kwon, and Young-Pyo Joo. 2006. Hardware-software codesign of multimedia embedded systems: The peace. In Proceedings of the 12th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications. IEEE, 207\u2013214."},{"key":"e_1_3_2_22_2","doi-asserted-by":"publisher","DOI":"10.1109\/FDL56239.2022.9925666"},{"key":"e_1_3_2_23_2","doi-asserted-by":"publisher","DOI":"10.1109\/FDL63219.2024.10673877"},{"key":"e_1_3_2_24_2","doi-asserted-by":"crossref","unstructured":"R. Jord\u00e3o M. Becker and I. Sander. 2024. IDeSyDe: Systematic design space exploration via design space identification. ACM Transactions on Design Automation of Electronic Systems 29 5 (2024) 1\u201345.","DOI":"10.1145\/3647640"},{"key":"e_1_3_2_25_2","doi-asserted-by":"publisher","DOI":"10.1109\/DATE.2009.5090700"},{"key":"e_1_3_2_26_2","doi-asserted-by":"publisher","DOI":"10.1145\/1151074.1151077"},{"key":"e_1_3_2_27_2","doi-asserted-by":"publisher","DOI":"10.1109\/43.898830"},{"key":"e_1_3_2_28_2","doi-asserted-by":"crossref","unstructured":"B. Kienhuis F. Deprettere P. van der Wolf and K. Vissers. 2022. A methodology to design programmble embedded systems: The y-chart approach. Embedded Processor Design Challenges Ser. Lecture Notes in Computer Science Berlin Germany: Springer-Verlag 2002 2268 (2022) 18\u201337.","DOI":"10.1007\/3-540-45874-3_2"},{"key":"e_1_3_2_29_2","doi-asserted-by":"publisher","DOI":"10.1109\/TC.1987.5009446"},{"key":"e_1_3_2_30_2","doi-asserted-by":"publisher","DOI":"10.1109\/43.736561"},{"key":"e_1_3_2_31_2","doi-asserted-by":"publisher","DOI":"10.1109\/DATE.2007.364486"},{"key":"e_1_3_2_32_2","doi-asserted-by":"publisher","DOI":"10.1145\/1629435.1629441"},{"key":"e_1_3_2_33_2","doi-asserted-by":"publisher","DOI":"10.1109\/DATE.2010.5456953"},{"key":"e_1_3_2_34_2","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2015.2453253"},{"key":"e_1_3_2_35_2","doi-asserted-by":"publisher","DOI":"10.1145\/356914.356917"},{"key":"e_1_3_2_36_2","doi-asserted-by":"publisher","DOI":"10.1145\/234528.234529"},{"key":"e_1_3_2_37_2","unstructured":"Steffen Prochnow and Reinhard von Hanxleden. 2007. The use of complex stateflow-charts with KIEL\u2013an automotive case study. In Proceedings of 5th GI-Workshop Automotive Software Engineering (ASE\u201907). Bremen Germany."},{"key":"e_1_3_2_38_2","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2008.923249"},{"key":"e_1_3_2_39_2","volume-title":"Realtime signal processing","author":"Reekie Hideki John","year":"1995","unstructured":"Hideki John Reekie. 1995. Realtime signal processing. Ph. D. Dissertation. University of Technology at Sydney, Australia."},{"key":"e_1_3_2_40_2","unstructured":"John Reekie and John Potter. 1993. Process network transformation. In Parallel Computing and Transputers (PCAT-93) David Arnold (Eds.). IOS Press 376\u2013383."},{"key":"e_1_3_2_41_2","volume-title":"System modeling and design refinement in ForSyDe","author":"Sander Ingo","year":"2003","unstructured":"Ingo Sander. 2003. System modeling and design refinement in ForSyDe. Ph. D. Dissertation. KTH Royal Institute of Technology."},{"key":"e_1_3_2_42_2","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2003.819898"},{"key":"e_1_3_2_43_2","doi-asserted-by":"publisher","unstructured":"C. Schwartz I. Sander R. Jord\u00e3o F. Bruhn M. Persson J. Ekblad and C. Fuglesang. 2022. On-board satellite data processing to achieve smart information collection. In Optics Photonics and Digital Technologies for Imaging Applications VII P. Schelkens and T. Kozacki (Eds.). vol. 12138 International Society for Optics and Photonics. SPIE 2022. 121380I. [Online]. Available: 10.1117\/12.2620955","DOI":"10.1117\/12.2620955"},{"key":"e_1_3_2_44_2","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2015.2484060"},{"key":"e_1_3_2_45_2","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511526626"},{"key":"e_1_3_2_46_2","doi-asserted-by":"publisher","DOI":"10.1145\/774789.774792"},{"key":"e_1_3_2_47_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-94-017-7267-9_30"},{"key":"e_1_3_2_48_2","volume-title":"Proceedings of the 3rd Workshop on High-Performance and Real-time Embedded Systems","author":"Stegmeier Alexander","year":"2015","unstructured":"Alexander Stegmeier, Martin Frieb, Ralf Jahr, and Theo Ungerer. 2015. Algorithmic skeletons for parallelization of embedded real-time systems. In Proceedings of the 3rd Workshop on High-Performance and Real-time Embedded Systems."},{"key":"e_1_3_2_49_2","doi-asserted-by":"publisher","DOI":"10.1145\/3424667"},{"key":"e_1_3_2_50_2","unstructured":"Jonne Van Wijngaarden and Eelco Visser. 2003. Program transformation mechanics. a classification of mechanisms for program transformation with a survey of existing transformation systems. (Technical report UU-CS May2003)."},{"key":"e_1_3_2_51_2","doi-asserted-by":"crossref","unstructured":"S. Verdoolaege H. Nikolov and T. Stefanov. 2007. PN: a tool for improved derivation of process networks. EURASIP Journal on Embedded Systems 2007 (2007).","DOI":"10.1155\/2007\/75947"},{"key":"e_1_3_2_52_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jsc.2004.12.011"}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3714412","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,3,13]],"date-time":"2026-03-13T08:15:49Z","timestamp":1773389749000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3714412"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026,3,2]]},"references-count":51,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2026,3,31]]}},"alternative-id":["10.1145\/3714412"],"URL":"https:\/\/doi.org\/10.1145\/3714412","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"value":"1539-9087","type":"print"},{"value":"1558-3465","type":"electronic"}],"subject":[],"published":{"date-parts":[[2026,3,2]]},"assertion":[{"value":"2024-02-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2025-01-09","order":2,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2026-03-02","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}