A Process-oriented Approach for Migrating Software to Heterogeneous Platforms
Doctoral thesis, 2021

Context: Heterogeneous computing, i.e., computing performed on processors of different types - such as combination of CPUs and GPUs, or CPUs and FPGAs - has shown to be a feasible path towards higher performance and less energy consumption. However, this approach imposes a number of challenges on the software side that must be addressed in order to achieve the aforementioned advantages.

Objective: The objective of this thesis is to improve the process of software deployment on heterogeneous platforms. Through a detailed analysis of the state-of-the-art and state-of-the-practice, we aim to provide a reasoning framework for engineers to migrate software to be executed on such platforms.

Method: To achieve our goal, we conducted: (i) a literature review in the form of a systematic mapping study on software deployment on heterogeneous platforms; (ii) a multiple case study in industry that highlights the main challenges and concerns in the state-of-the-practice in the area; and (iii) a study in which we propose and evaluate a decision framework to guide engineers in migrating software for execution on heterogeneous platforms, with a case study in the automotive domain.

Results: In the mapping study, we provided a thorough classification of the identified concerns and approaches to deploying software on heterogeneous platforms. Among other findings, we discovered a lack of holistic approaches that include development processes, as well as few validation studies in industrial contexts. In the second study, we discovered and analyzed common practices and challenges that companies face when using heterogeneous platforms. One of such challenges is related to the lack of approaches that cover the software development lifecycle. In the third study, we proposed a decision framework that guides engineers in the process of reasoning for migrating software for execution on heterogeneous platforms. It consists of five stages (assessing, re-architecting, developing, deploying, evaluating), each containing a set of aspects to be addressed through the answers to predefined questions.

Conclusions: This thesis addresses a gap that was identified in both theory and practice concerning the lack of holistic approaches to migrate software for execution on heterogeneous platforms. Our proposed approach addresses the problem through systematic guidance for engineers.

Future work: In the future, we intend to further refine the proposed framework through case studies in domains other than automotive. We will explore its integration with existing software engineering processes in industrial contexts, performing in-depth analysis of the required adaptations and providing detailed solutions within the stages of the framework.

Heterogeneous Platforms

Software Engineering

Software Architecture

Software Deployment

Room 473, Jupiter Building Hörselgången 5, Chalmers University of Technology, Campus Lindholmen
Opponent: Prof. Stefan Biffl, Technische Universität Wien, Austria


Hugo Sica de Andrade

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

Software Deployment on Heterogeneous Platforms: A Systematic Mapping Study

IEEE Transactions on Software Engineering,; Vol. 47(2021)p. 1683-1707

Journal article

A Review on Software Architectures for Heterogeneous Platforms

2018 25th Asia-Pacific Software Engineering Conference (APSEC),; Vol. 2018-December(2018)p. 209-218

Paper in proceeding

Software Challenges in Heterogeneous Computing: A Multiple Case Study in Industry

Proceedings - 45th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2019,; (2019)p. 148-155

Paper in proceeding

Principles for Re-architecting Software for Heterogeneous Platforms

Proceedings - Asia-Pacific Software Engineering Conference, APSEC,; Vol. 2020-December(2020)p. 405-414

Paper in proceeding

HPM-Frame: A Decision Framework for Executing Software on Heterogeneous Platforms

HoliDev - Holistic DevOps Framework

VINNOVA (2017-05218), 2018-01-01 -- 2019-12-31.

HELPING: Modellering av heterogena plattformar av inbyggda system

Swedish Research Council (VR), 2014-10-01 -- 2016-12-31.

Areas of Advance

Information and Communication Technology

Subject Categories

Software Engineering

Computer Science

Computer Systems



Doktorsavhandlingar vid Chalmers tekniska högskola. Ny serie: 4906



Room 473, Jupiter Building Hörselgången 5, Chalmers University of Technology, Campus Lindholmen


Opponent: Prof. Stefan Biffl, Technische Universität Wien, Austria

More information

Latest update