Skip to main content
QUICK REVIEW

[论文解读] Towards Architectural Programming of Embedded Systems

Arne Haber, Jan Oliver Ringert|arXiv (Cornell University)|Sep 8, 2014
Advanced Software Engineering Methodologies参考文献 16被引用 7
一句话总结

本文通过将架构描述直接集成到Java中,提出了一种用于嵌入式系统的架构编程方法,实现了在单一语言视图中统一建模架构、数据结构和行为。一个原型编译器展示了该方法的可行性和挑战,消除了架构视图与实现视图之间分离映射的需求。

ABSTRACT

Integrating architectural elements with a modern programming language is essential to ensure a smooth combination of architectural design and programming. In this position statement, we motivate a combination of architectural description for distributed, asynchronously communicating systems and Java as an example for such an integration. The result is an ordinary programming language, that exhibits architecture, data structure and behavior within one view. Mappings or tracing between different views is unnecessary. A prototypical implementation of a compiler demonstrates the possibilities and challenges of architectural programming.

研究动机与目标

  • 解决嵌入式系统中架构设计与底层实现之间的脱节问题。
  • 实现架构元素与Java等现代编程语言的无缝集成。
  • 消除对架构视图与代码视图之间可追溯性或映射的需求。
  • 通过原型编译器展示架构编程的可行性。
  • 探索架构编程在类型安全、模块化和工具支持方面的实际挑战。

提出的方法

  • 扩展Java,引入组件、连接器和接口等架构构造,以表达系统结构。
  • 在Java中引入领域特定语言(DSL),在相同源代码中描述系统架构。
  • 使用编译器流水线同时分析和类型检查架构代码与行为代码。
  • 应用组件化分解和事件驱动通信等设计模式,支持分布式系统。
  • 采用元建模方法,将架构元素作为语言中的一等公民进行表示。
  • 通过针对异步通信嵌入式系统的原型实现验证该方法。

实验结果

研究问题

  • RQ1如何将架构描述原生集成到Java等通用编程语言中?
  • RQ2在单一编程视图中统一架构、数据和行为有何优势与权衡?
  • RQ3编译器能否有效强制保证架构结构与实现逻辑之间的一致性?
  • RQ4架构编程在类型安全、模块化和工具支持方面面临哪些实际挑战?
  • RQ5架构编程如何影响分布式嵌入式系统的开发与验证?

主要发现

  • 将架构构造集成到Java中,可在无需单独建模工件的情况下,实现系统结构、数据和行为的统一视图。
  • 原型编译器成功地联合验证了架构代码与行为代码,降低了不一致性的风险。
  • 该方法消除了对架构视图与实现视图之间可追溯性或映射的需求,简化了开发流程。
  • 在类型安全和模块化方面识别出挑战,特别是在处理异步通信和组件组合方面。
  • 该方法通过支持形式化验证和从架构模型生成代码,符合模型驱动开发原则。
  • 评估结果证实,架构编程在嵌入式系统中是可行且有益的,尤其在复杂、分布式环境中。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。