购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1

什么是MBSE

理解MBSE方法的最好方式是,首先理解另一种形式:建模实践者在工程中称为 基于文档的方法 ,非实践者则称为“我们一直以来处理此事的方式”。不管他们是应用基于文档的方法,还是MBSE,系统功能工程师都会执行《INCOSE系统工程手册》(INCOSE指的是国际系统工程委员会)所描述的生命周期活动。然而,两种方法之间最关键的区别在于生命周期活动的主要产出物的特质。

使用基于文档的方法,系统工程师会手动生成以下一种或多种产出物:操作概念(Concept of Operations,ConOps)文档、需求说明书、需求跟踪和验证矩阵(Requirement Traceability and Verification Matrice,RTVM)、接口定义文档(Interface Definition Dacument,IDD)、N 2 表(也叫做N平方表——结构化接口的矩阵)、架构说明文档(Architecture Description Document,ADD)、系统设计说明书、测试案例说明书、特性工程分析(例如:对可靠性、可用性、可排程性、吞吐量以及响应时间的分析)。基于文档的系统工程会以多个文本文档、电子表格、图表和演示文档(以及配置——用来在各个地方管理他们)的形式来创建这些产出物。

问题在于:对于系统工程来说,基于文档的方法非常昂贵。更准确的说法是,它本没有必要那么昂贵;你会花费整个生命周期的很大一部分成本来维护那些彼此分离的产出物。如果你不付出那些代价,那么产出物就会变得不一致,并最终被废弃。

考虑一下下面这个会在日常生活中出现的场景。一位系统架构师决定对设计做第四次迭代,重构系统层次关系中的一个单独模块,把它分割成两个模块,从而实现对关注点更好地分离。他决定重命名最初的模块,更好地表明、更窄的新关注点。为了完全且一致地实现这项变更,他需要定位所有包含那个模块的文本文档、表格、矩阵、图表以及演示文档,从各种各样的文件服务器、内部网站以及配置管理库打开每个文件,然后手动把相同的变更输入到所有那些产出物中。

这种方法会花费大量时间,而且很容易出错。架构师可能会把新模块的名称敲错。更重要的是,他需要提前知道所有需要更改的产出物,这可能会有很多。他很可能会遗漏很多,那样就会导致它们与其他部分不一致。以那些文档作为生命周期阶段输入的开发团队就会因此产生问题。这对于项目经理也是个问题,他必须负责修改日程安排,增加生命周期的成本,以修正传播到生产环境中的缺陷。

这种场景在采用基于文档的传统方法来执行系统工程的组织中非常常见。不一致性是问题所在。而MBSE——当正确实践的时候——就是解决方案。

使用MBSE方法,系统工程师会执行同样的生命周期活动,并创建同样的交付物。但是交付物并不是生命周期活动的直接输出,它们也不是主要的产出物。使用MBSE方法,那些活动的主要产出物是一份集成、清晰并且一致的 系统模型 ,它是使用专门的系统建模工具创建的。所有其他产出物都是次要的——使用同样的建模工具从系统模型自动生成。

系统模型是设计的中心;设计中做出的每个决定都被捕获为一个 模型元素 (或者元素之间的关系),它只位于系统模型的单一位置。使用MBSE方法,所有图表和自动生成的文字产出物都只是底层系统模型的视图;它们并不是模型本身。由此而来的最大区别就是,MBSE所获得的投资回报率要远远高于传统方法。

让我们回到日常情境中,这次使用MBSE方法。系统架构师决定重命名最初的(已经重构完毕)的模块,更好地表明更窄的新关注点。为了完整而一致地实现这项变更,他在系统模型层次关系中找到那个模块(通常可以在建模工具中使用关键字搜索),并为那个模块键入新的名称。就这么简单。

建模工具会自动(且立即)把变更传递给所有出现过这个模块的图表,而不管那个集合有多大。毕竟那些图表只是底层模型的视图。如果模型发生了变更,那么图表就会随之而变。建模工具还会在架构师下次从模型导出文字产出物的时候,把变更插入其中。这样,模型的各种视图之间就不会产生任何不一致的情况。

MBSE之所以能够承诺不断提升质量和可提供性,就是因为一个简单的原因:有了成功的预防,修复缺陷的代价可以降到最低。这种方法的核心是一种新的工程产出物,我们把它叫做系统模型。

我刚刚描述的方法实际上是一种混合形式,它填补了MBSE和基于文档的方法之间的鸿沟。在客户要求提供文字产出物作为交付物以进行评审和批准的时候,基于模型的工程组织就需要采用这种混合的方法。然而,没有这种约束的组织可以以纯粹的方式来实践MBSE。

获得最高级别MBSE成熟度等级的组织会完全放弃创建文字产出物的想法。系统模型本身就是可以评审和批准的产出物。当设计从一个阶段到另一个阶段,它也是可以传递、改善和进化的产出物。

生产软件系统的组织甚至可以使用(足够稳健的)建模工具,把系统模型转换成软件模型,并最终转换成符合生产环境质量要求的源代码。这种级别的MBSE成熟度模糊了设计和开发之间的界限,让我们可以更快地创建原型以及进行系统模拟。然而,在任何时候,模型都是最重要的产出物,当客户需求发生改变或者做出新的设计决定时候,都会进行修改。所有其他产出物,包括源代码,都是通过模型的产出物自动生成的,持续与模型以及其他产出物保持一致。

这就是MBSE。 Tvs+6pYzs5M8NSFrtwvYegevbYE8QTyA1I0V2WppHt2iCeS/BmIkWcSTEDPQU6/w

点击中间区域
呼出菜单
上一章
目录
下一章
×