
基于模型开发(MBD)场合,模型设计可以等同于软件详细设计吗?
控制类ECU的软件开发的趋势是标准化、工具化和专业化,这样会缩短Delivery时间和提高Delivery质量。
在这个趋势下,越来越多的应用层软件,采用了基于模型开发(MBD)的方式。
应用层软件工程师们经常纠结的一个问题是:
“基于模型开发(MBD)的场合,模型设计可以等同于软件详细设计吗?”
本文来讨论下这个Topic
详细设计需要包括哪些内容?
如下图所示:软件架构设计活动中,设计了SW Component及Interface、SW Component需要实现的软件功能性需求和非功能性需求。
软件详细设计,是基于软件架构设计中的对SW Component的如上要求。设计了:
① 软件单元
② 软件单元的内部逻辑
③ 软件单元间的交互逻辑
此外,软件详细设计中,还需要体现:
④设计理由(设计逻辑)
- ④-1:功能性需求的设计理由(设计逻辑)
- ④-2:非功能性需求的设计 & 设计理由(设计逻辑)
模型设计:
模型设计中,可以部分或完全体现上述的①,②,③,④-1:
① 软件单元
② 软件单元的内部逻辑
③ 软件单元间的交互逻辑
④-1 功能性需求的设计理由(设计逻辑)
之所以说是“部分或完全体现”,是因为当模型规模较大,逻辑较复杂时,软件单元间的交互逻辑、设计理由等如果仅仅通过模型设计,较难清晰&完整的展现。
模型设计中,较难体现上述的④-2:
④-2 非功能性需求的设计 & 设计理由(设计逻辑)
说明:非功能性需求,如:RAM Usage、设计质量要求(如:复杂度、交互性等)等。
在较难体现的场合,解决方案主要是两种:
- 模型设计中,增加说明。或者
- 另外的文档来说明。
总结:
软件详细设计需要体现如下内容,当模型设计无法完全体现的场合,就需要通过“另外的说明文档”或”模型设计中增加说明“的方式来补充。
① 软件单元
② 软件单元的内部逻辑
③ 软件单元间的交互逻辑
④-1 功能性需求的设计理由(设计逻辑)
④-2 非功能性需求的设计 & 设计理由(设计逻辑)
推荐阅读:
- 基于模型开发的活动及与ASPICE过程的映射
- 代码/模型指标和测试覆盖度指标的疑问举例
- Automotive SPICE和Automotive SPICE评估的那些事
- 如何达到并维持Automotive SPICE能力度级别
- 浅谈Automotive SPICE Level 3
- 上海先起之仨人谈起公众号文章合集下载!
文章转载自公众号:仨人谈起
