Refactoring Software in the Automotive Domain for Execution on Heterogeneous Platforms
Paper i proceeding, 2020

The most important way to achieve higher performance in computer systems is through heterogeneous computing, i.e., by adopting hardware platforms containing more than one type of processor, such as CPUs, GPUs, and FPGAs. Several types of algorithms can be executed significantly faster on a heterogeneous platform. However, migrating CPU-executable software to other types of execution platforms poses a number of challenges to software engineering. Significant efforts are required in such type of migration, particularly for re-architecting and re-implementing the software. Further, optimizing it in terms of performance and other runtime properties can be very challenging, making the process complex, expensive, and errorprone. Therefore, a systematic approach based on explicit and justified architectural decisions is needed for a successful refactoring process from a homogeneous to a heterogeneous platform. In this paper, we propose a decision framework that supports engineers when refactoring software systems to accommodate heterogeneous platforms. It includes the assessment of important factors in order to minimize the risk of recurrent problems in the process. Through a set of questions, practitioners are able to formulate answers that will help in making appropriate architectural decisions to accommodate heterogeneous platforms. The contents of the framework have been developed and evolved based on discussions with architects and developers in the automotive domain.

architectural decisions

software engineering


heterogeneous computing


Hugo Sica de Andrade

Chalmers, Data- och informationsteknik, Software Engineering

Ivica Crnkovic

Chalmers, Data- och informationsteknik, Software Engineering

Jan Bosch

Chalmers, Data- och informationsteknik, Software Engineering

Proceedings - 2020 IEEE 44th Annual Computers, Software, and Applications Conference, COMPSAC 2020

9781728173030 (ISBN)

2020 IEEE 44th Annual Computers, Software, and Applications Conference (COMPSAC)
Madrid, Spain,

HELPING: Modellering av heterogena plattformar av inbyggda system

Vetenskapsrådet (VR), 2014-10-01 -- 2016-12-31.

HoliDev - Holistic DevOps Framework

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


Informations- och kommunikationsteknik



Inbäddad systemteknik




Mer information

Senast uppdaterat