在Simulink模型中支持模块化
Supporting Modularity in Simulink Models
摘要:
基于模型的开发(MBD)广泛用于嵌入式控件开发,Matlab Simulink是工业中最常用的建模环境之一。与所有软件一样,Simulink模型在其生命周期中会不断演变,必须加以维护。模块化是促进复杂软件构造的基本软件工程原则,并且在文本语言(例如C)中使用。然而,由于Simulink是一种图形化建模语言,目前还不清楚如何在Simulink开发中利用模块化,也不清楚当前的Simulink建模结构是否支持模块化。通过引入Simulink模块的概念,提出了一种在Simulink中实现模块化的有效方法。该方法的有效性是使用著名的模块化指标,包括耦合和内聚,圈复杂度,信息隐藏能力。定义了一个语法接口,以表示跨模块边界的所有数据流。还提出了四个建模准则,以鼓励最佳做法。此外,一个自定义的工具,支持Simulink模块的建模描述。最后,这项工作是证明和评估一个真实世界的例子,从核领域。
英文摘要:
Model-Based Development (MBD) is widely used for embedded controls development, with Matlab Simulink being one of the most used modelling environments in industry. As with all software, Simulink models are subject to evolution over their lifetime and must be maintained. Modularity is a fundamental software engineering principle facilitating the construction of complex software, and is used in textual languages such as C. However, as Simulink is a graphical modelling language, it is not currently well understood how modularity can be leveraged in development with Simulink, nor whether it can be supported with current Simulink modelling constructs. This paper presents an effective way of achieving modularity in Simulink by introducing the concept of a Simulink module. The effectiveness of the approach is measured using well-known indicators of modularity, including coupling and cohesion, cyclomatic complexity, and information hiding ability. A syntactic interface is defined in order to represent all data flow across the module boundary. Four modelling guidelines are also presented to encourage best practice. Also, a custom tool that supports the modelling of Simulink modules is described. Finally, this work is demonstrated and evaluated on a real-world example from the nuclear domain.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。