一句话:提出面向方面框架 DAL,将汽车 MDD 软件中重复的 I/O 关注点模块化并与核心逻辑解耦。
汽车软件常以模型驱动开发(MDD)实现,但业务逻辑常与 I/O 处理及防御性编程关注点(信号映射、范围检查、诊断等)紧密耦合,导致跨平台复用、可维护性与可扩展性受限。对工业车辆动力学平台的分析显示,重复 I/O 关注点造成大量建模产物与生成代码重复,单个组件内代码重复率可达 30%,并在数十个组件中反复出现。为解决该问题,作者提出 DAL,一个面向方面的框架,将重复 I/O 关注点模块化并与核心应用逻辑清晰解耦,据称是 AOP 在汽车软件 I/O 纠缠问题上的首次工业应用。评估在量产底盘 ECU 所用微控制器上进行,对比朴素方法与基线实现;结果表明 DAL 性能保持竞争力,相较于朴素方法栈使用减少 18%,而静态代码大小相较基线仅有适度增加,并满足生产汽车系统的实时与资源约束。
Large automotive organizations develop application software for multiple target platforms while aiming to preserve and reuse core functional logic as critical intellectual property, in line with the vision of Software-Defined Vehicles (SDVs). In current industrial practice, business logic is frequently developed using Model-Driven Development (MDD) and becomes tightly coupled with input/output (I/O) handling and defensive programming concerns, such as signal mapping, range checking, and diagnostics. This coupling violates fundamental software engineering principles, including Separation of Concerns and Don’t Repeat Yourself, and limits reuse, maintainability and scalability across platforms. Based on an empirical analysis of an industrial vehicle dynamics platform (VDP), we observe substantial duplication of modeling artifacts and generated code caused by recurring I/O concerns, with up to 30% code duplication within individual components and similar patterns recurring across dozens of components. To address this challenge, we propose DAL, an aspect-oriented framework that modularizes recurring I/O concerns and cleanly decouples them from core application logic in MDD-based automotive software. To the best of our knowledge, this is the first industrial application of aspect-oriented programming (AOP) to systematically address I/O entanglement in this class of automotive software. We evaluate DAL on the same microcontroller used in a production chassis Electronic Control Unit (ECU), comparing it with both a naïve approach and a baseline implementation. The production-grade proof of concept shows that DAL remains performance-competitive, reduces stack usage by 18% relative to the naïve approach, and incurs only a modest increase in static code size compared to the baseline implementation under the evaluated compiler and linker configurations. These results demonstrate that DAL effectively modularizes automotive application software, promotes separation of concerns and software reuse and does so while preserving the real-time and resource constraints required for production automotive systems.
@inproceedings{paperbot12503,
title = {DAL: Decoupled Aspect-Based Layering of I/O Processing for Automotive Software},
author = {Muhammet Uslu and Atif Imran Penkar and Robert Rasche and Olaf Spinczy and Marc Fessler and Michael Unterreiner},
booktitle = {ASE},
year = {2026},
doi = {10.1145/3832783.3834514}
}