Introduction
如今车辆功能及其网络节点的数量在增加,对可靠性、可用性、变型处理和可扩展性有了更高的要求,若没有一套合适的方法论及工具进行管理,势必会对整车E/E架构开发及相关工作造成一定的影响。为了管理高度复杂的汽车E/E系统并跟踪这些系统,PREEvision的产品线工程提供了基于项目和产品线的开发方法。
这里我们简单介绍下变型管理。
Variant management
PREEvision通过变型管理功能实现了平台的定义及基于平台提取车型数据的功能。Product Line作为模型的集合定义了150%的模型库,之后就可以将模型库拆解为不同的变型单元并通过变型管理的方法获取某车型的高、中、低配数据。详情请见《基于PREEvision的变型管理解决方案》。
System
顾名思义就是系统,在PREEvision中是一个特殊的构件,它不同于各层中各类构件,System是一个集合,可以将各层中的构件整合在一起形成一个涵盖需求、逻辑、软件、通信、硬件等内容的小单元,用来进行系统边界的界定及变型单元的划分。在变型管理中,多数将其用作某个以功能/配置为单位所划分的变型单元,相较于传统的Set,System最大的好处是提供了图形化的界面,可以让工程师更直观的查看System是否符合要求。如下图所示,图中体现了LED大灯变型单元所包含的软件及硬件模块。
System打包构件方法:
1、通过 Set Content View
2、通过System中的Property View→Artifacts页面添加构件
3、通过右键菜单添加
4、通过快捷键 [F10]
最方便的方法,在Set Content View中,选择对应的System,模型树中选中构件,按快捷键 [F10]即可打包此构件。
5、通过Diagram Sections
但无论哪种方法,用户都要面临两大难题:
1、需要不断地联想,打包的构件关联的其它构件也需要打包,数量极其庞大,并且十分容易遗漏,导致System打包不完整。
2、需要频繁地使用快捷键,构件数量成千上万,人力成本难以接受。
Solution
为了解决这两大问题,我们开发了“System自动打包”工具。只需在System下,画好软件及硬件对应的System Diagram,执行Metrics,即可完成打包工作。(小编内心OS:请把大写的方便打在评论区)
PS:该Metrics功能类似于变型传导规则,但传导规则受模型层级及结构影响较多,后续有机会再向大家介绍<( ̄︶ ̄)>。
下面介绍此工具的使用方法及效果:
1、在Product Line Management→Variant Package(可随意分包管理)下,创建System。
2、在System下,创建或Refactoring生成对应的System Diagram:
软件层:Software System Architecture Diagram。
硬件层:Network System Diagram、Component System Diagram(optional)。
原理层:Electric Circuit System Diagram(optional)。
通信层:通过软件层和硬件层的Diagram打包。
3、选中模型中的Variant Package或System构件;鼠标右键→Metrics→变型管理打包→对各层级依次进行打包。
Example:
看似简单的操作,里面包含了很多挑战。让我们激活变型,看下有哪些亮点。
视频加载中...
Challenge
(注:图中高亮部分为打包构件,Property View中蓝色字体为未打包构件)
- 内部信号的处理
低配为内部信号,高配为总线信号。
视频加载中...
- 多发多收信号的处理
视频加载中...
- SOA CP+AP 建模内容
值得关注的是,打包方面我们还考虑了SOA设计的功能,CP、AP、甚至混合建模均可识别。
视频加载中...
从以上场景中可以看到,【System自动打包】小工具泛用性强、抓取准确、使用方便,可以大大减轻变型管理操作的复杂度,并且支持客户个性化开发,如有需要,可以将需求发送到邮箱[email protected]。