系统工程是从航空、航天等系统的开发过程中总结出来、用于指导复杂工程项目开展的方法论,是协调庞大团队完成复杂任务的技术和管理要素的综合,最新的国际标准将系统工程定义为“管控整个技术和管理活动的跨学科的方法,这些活动将一组客户的需求、期望和约束转化为一个解决方案,并在全寿命周期中对该方案进行支持”。在当前的系统工程方法中,系统工程活动的产出是一系列基于自然语言的文档,例如用户的需求、设计方案等,可称之为“基于文档的系统工程”(document-based system engineering, DBSE)。随着系统变得日益庞大和复杂、使命任务日益艰巨、研制节奏日益加快,同时伴随信息技术的发展,“基于模型的系统工程”(model-based system engineering,MBSE)方法逐渐发展起来,并被认为是一种新的发展趋势。但随着 MBSE的实践不断深入,越来越多的问题也暴露了出来,这些问题包括:概念抽象难以理解、实施的投资回报比存疑、存量信息转换困难、缺少成熟方法和工具、缺少有经验的实施人员等。越来越多的实践证明,作为一门实践科学和方法论,MBSE要真正发挥作用,就必须能够找到具体的途径落地并指导实践。
本研究从分析 MBSE的关键概念入手,力图寻找到转向“模型”的根本动力,并推导出实现 MBSE转型的可行方向和途径。
“模型”的深入理解
系统的设计和开发的本质是将人们头脑中的构想转变为现实存在的过程,而在其转化为现实之前,必须依靠某种媒介作为思维和现实沟通的桥梁,将思维表达出来,并作为付诸行动的依据记录和保存下来,无论是文档、图表、算式、图纸或是形式,其角色都是这样一种媒介。“DBSE”与“MBSE”之间最显而易见的区别就是它们采用了不同的媒介:DBSE以文档为媒介,而 MBSE使用模型作为媒介。因此,要理解和实践 MBSE,首先必须对“模型”的概念进行深入的分析。
最常用的模型是数学模型,例如“鸡兔同笼”问题可表述为
如此,就利用二元一次方程组这种数学语言建立了这个问题的数学模型,其优势是显而易见的,这个模型以其简洁的形式、高度的准确性和抽象性为这个问题的理解和解决创造了先决条件。
根据数学模型在解决实际问题中扮演的角色,“模型”的概念可定义为:模型是出于特定目的,从特定视角对研究对象的抽象描述。
从这个概念定义中,可以得出模型的 3个特性,凡是具有这3个特性的描述形式都可以称之为“模型”。
1)目的性。由于研究对象是复杂的,同时认识活动是有目的的,因此模型一定是从某个特定视角出发,为了达到特定目的而对问题某一方面(或部分)的描述。只有这样,才能将复杂问题简单化,实现认知降维,再通过多个视角模型的结合,才有可能对复杂问题给出清晰、全面的描述。这就像给立体的现实问题拍平面照,每张照片上只反映拍摄者关心的那个视角。
2)抽象性。模型是对研究对象的抽象描述。通过抽象,一方面可以忽略不重要的细节从而揭示问题的本质;另一方面,抽象将特殊的问题一般化,从而可以使用通用的方法解决同一类的问题,实现“举一反三”。这个特性就像给物体画速写,只刻画出最关键的画面线条。
3)直观性。模型的直观性是指它能够将问题以更容易观察和理解的形式表述出来的特性。无论是照片还是速写,人们一看到它就能想到它所描述的是什么,能够迅速获得形状、尺寸、颜色等信息,这就是直观性。
对于模型的理解,哲学家Alfred Korzybski 的名言巧妙地反映了模型和研究对象之间的关系:“地图并非地域”(The map is not the territory)。地图作为某个地域的模型,是以特定目的绘制的,对该地理区域抽象的、直观的表述形式,以上 3个特性在这个例子中得到充分印证。
对复杂系统的认知升级
实际上,在现实生活中,人们无时无刻不在利用模型来解决遇到的现实问题。可以说,模型是思维世界和现实世界沟通的桥梁:我们总是通过建立模型理解现实问题的,也是通过模型把我们的想法变成现实的。我们可以将模型视为现实问题在认知空间中的一个“孪生兄弟”,当我们面对的问题是复杂的系统时,不可能依靠直觉完成系统的描述、认知和设计,而必须依靠模型完成对系统的认知。这个“孪生兄弟”是从以下2个方面帮我们认识复杂系统的。
1)模型为研究复杂系统提供了科学的认知方法。首先通过建立模型,对问题进行定义,抓住问题的根本和关键;其次,利用研究问题得到的新信息和新认识不断维护和更新模型,使其不断逼近问题的真实存在;最后,在面对类似问题或新问题时,通过模型的重用和链接,可以重构出新的模型。
2)模型为研究复杂系统拓展了新的认知维度。模型不仅描述问题本身,同时描述了问题的边界、环境和内在联系。如果将观察问题的每一个视角理解为认知的一个“维度”,那么模型就为我们拓展了一个新的认知维度——“联系维度”。这个维度让不同侧面的画面能够联系起来,才构成了整个问题的全貌。
因此,认识和解决复杂系统问题的过程实际上是一个降维-升维的过程,先把复杂的问题通过分解、简化和抽象形成“低维模型”,逐个解决后,再根据低维模型间的相互联系将这些低维模型重构成更贴近现实问题的“高维模型”。完成了这个过程,就对系统有了更深刻的认识,就完成了一次认知升级。在这个过程中,模型就是认知系统的工具和载体,而模型的质量(定义是否准确、简化是否合理、逻辑是否自洽、关键信息是否完备以及是否直观可理解)对这个认知升级过程的效果和效率有着直接的、决定性的影响。
所以,从 DBSE转向 MBSE,本质上是从以自然语言为载体的认知方式转向以模型为载体的认知方式。这里所说的模型,泛指符合前述 3个特征的任意形式的模型,这些模型通常可以分为 2大类:一类是从不同领域角度对具体存在物及其行为的描述,可称之为“专业模型”,例如结构设计领域的三维模型、自动控制领域的系统框图和 Simulink模型、力学分析的有限元模型等;另一类则更关注描述组成系统的元素间以及系统与环境间关系的描述,称为逻辑模型,如产品分解结构(PBS)、接口表、N2图等。这 2类模型结合起来,用统一、规范的语言描述就构成了系统模型。虽然理论上只要能够对研究对象进行有目的的抽象描述,模型的形式可以是任意的,但是作为一套用于指导工程实践的方法论,MBSE的模型必须通过简洁的、一致的、成体系的描述方法来建立,这种描述方法就是“建模语言”。目前应用较为广泛的建模语言标准包括SysML、IDEF0、Modelica等,它们出发点不同,各有侧重,并无优劣之分。除此之外,建模的过程中所遵循的方法(视角、逻辑和过程等)也对建模的效率和效果有着重大的影响,目前主要的建模方法有 Harmony、OOSEM、State Analysis method、Vitech Method等,这些方法在不同的产业和业务背景中诞生,都带有比较强的业务特点,因此也并非是放之四海皆准的方法,事实上,实践证明最好的方法也正是与业务特点和企业组织形式相适应的方法。
传统系统工程面临的新形势和新问题
为了研究如何从传统系统工程转向基于模型的系统工程,就必须弄明白为什么要转向“模型”,也就是必须弄清楚传统系统工程究竟出现了什么问题。
从 20世纪 60年代发展而来的传统系统工程方法,曾经在中国航天事业的特定时期发挥了巨大的作用,很多理念深入人心,也为国际系统工程的发展和标准制定做出了突出贡献。它通过制定流程、规则、方法等约束性文件,将系统工程的实践经验固化下来,通过在工程系统的全生命周期贯彻这套规则体系,保证系统目标和质量的实现。但近年来,面对市场竞争日益激烈和开发节奏日益加快的新形势,传统的系统工程方法已经暴露出了许多问题,大致可以归为以下2类:
1)传统系统工程方法成本高企。在近 20 年的时间中,航天产品的研制周期普遍缩短了一半以上,多个型号一齐开工已成为大多数单位的常态。由于工作量陡增,大部分的研制工作都存在超流程研制、文件签署不及时、校对不充分等情况,这种现象无法简单解释为设计师责任心问题,更根本的原因可能是现行的管理体系和系统工程方法的成本(包括时间成本)超过了任务所能接受的范围。在传统的系统工程方法中,为了保证技术、质量、经费、进度等多维度目标的实现,人们创造出了复杂的方法、流程和规则体系,其根本目的就是“控制”,控制质量、控制风险、控制进度,实质上就是一种通过更多的“控制”减小不确定性的行为逻辑。然而,任何控制都是有成本的,不断复杂化的控制系统本身让工作变得更加难以应付,直接结果就是响应速度的降低、工作效率的下降,以及管理成本的上升(当前有些产品成本中甚至有一半是管理成本)。这也是越来越多的企业开始尝试“敏捷开发”等新的研制模式的主要原因。
2)基于文档的知识管理能力不足。在传统的基于文档的系统工程环境中,由于信息通过文件的形式记录和传递,存在着严重的信息遗失。信息的遗失表现出两种截然相反的形式:一方面,大量的过程信息、设计师当时的考虑和决策往往不能被记录下来,保存下来的只是最终结果,久而久之这些宝贵的知识信息就遗失了,同时,文件中引用的其他文件不具备链接的性质,常常无法随文件下发,也造成了一种信息丢失;另一方面,由于要遵循大量的行文规范,研制文件中的有用信息常常淹没在大量的低价值文字中,阅读者不仅需要从大量的文字内容中抽取有用信息,还需要努力理解编写者的思维逻辑,不仅费时费力还容易造成误解和曲解,这同样是一种信息遗失。
另外,近年来,基本上每个新型号都伴随着跨代性质的技术应用,随着专业领域的深度细分,总体设计师越来越感觉难以把握这些高度专业化的新技术。这反映出知识的爆发性增长和专业分工深入的趋势同个人认知能力之间的矛盾,靠总体设计师的经验和记忆去把握系统已经越来越不现实,紧张的研制进度也不允许总体设计师通过研究技术资料开展深入学习,传统的系统工程方法无法提供高效的知识管理和辅助决策能力。
以上两种情况都反映出传统基于文档的系统工程方法在信息(知识)的记录、传播、管理和应用上存在的问题。
转向“基于模型”的动力
虽然传统基于文档的系统工程方法遇到了以上亟需解决的新问题,而理论上MBSE在这些方面有一定的优势,但是现实情况说明,当前在 MBSE的实践中遇到的阻力几乎是难以克服的。在新事物的发展过程中,初始阶段大都会遇到重大的阻力,而它最终为大众所接受的根本原因是因为社会需求的内生动力超过了阻碍其发展的种种阻力。因此,系统工程要向基于模型发展,也必须找到这种动力。
在许多专业学科中,向“基于模型”的转型实际上已经发生,例如在机械设计领域,从二维图纸和公式计算向基于三维模型的CAD设计和CAE验证早已非常普遍。通过对这个成功特例的分析,我们尝试总结出转向“模型”的一般规律。
首先,从二维图纸转向三维模型大大降低了成本。主要体现在以下3个方面:(1)可视化降低了对空间想象能力的要求,缩短了设计师单位产品的设计时间,提高了劳动生产率,设计师的设计工作也更为轻松,主观接受意愿高;(2)基于三维模型虚拟装配更容易发现干涉等结构不协调现象,节约了结构协调时间;基于三维模型的 CAE仿真手段更使得在硬件生产前能够开展足够的验证工作,保证一次成功,从而加快了迭代速度,减少了迭代次数,降低了研制成本;(3)强大的计算机辅助工具的出现降低了行业门槛,使更多的人可以参与到分工协作中,从而使成本进一步降低。人类活动总是有着向更低成本方向前进的趋势,因此可以说成本因素是转向模型的最底层推动因素。
此外,除了成本的推力外,还有一种拉力将在未来加速这种趋势。当前,由于金属件的生产环节依然大量依靠普通机床的减材制造实现,三维模型在生产环节没有明显的优势。但是 3D打印为代表的增材制造设备和数控机床、机器人等更先进的智能制造设备的普及将为三维模型的应用打开一个新的维度,这些设备能够让设计师建立的三维模型直接用于产品的生产制造过程,并可以通过互联网实现跨越地理空间的设计制造协作,这必将对整个设计-制造链条上的成本产生革命性的影响。这就是转向模型的第二个动力:新技术带来的发展维度牵引。
因此,向“基于模型”转型的动力是:成本驱动的“推力”与发展驱动的“拉力”一起形成的“合力”。
基于模型的系统工程将带来系统研发模式和知识管理技术的重大转型
MBSE的实现形式必须能够大幅降低开发成本,尤其是管理成本;MBSE的实现有赖于新技术的牵引,系统模型的具体形式也必须符合这种新技术的需要。针对这2个趋势,可提出2个可行的方向。
成本驱动:去中心化的开发模式
基于文档的系统开发模式可以抽象为图 1所示的模型:每个人都利用自己所学的专业学科工具和“模型”(CAD、CAE 模型、程序代码、表格、文本等)开展设计开发活动,再将设计开发的结果以文件的形式表达出来。
图1 基于文档的开发模式
在这种研发模式中,设计师从文件管理系统中获取设计输入,系统中下一层级产品的开发以上一层级给出的设计输入文件为依据。而这种设计输入合法性是通过文件的逐级审签机制保证的,这实际上构成了一种自上而下的中心化、层级式的研制模式。在基于文档的环境下,对系统和产品设计的控制往往退化为对文件的控制,因此,在这种研制模式下,为了不断加强对文件正确性和有效性的控制,文件的签署和更改手续变得复杂而冗长。同时,由于签署完整的文件才是合法的有效文件,效率与合法性之间的矛盾就凸显了出来:为了保证研制合法,就必须等待上一层级签署设计输入再开展设计工作,这样研制程序就变成了串行的瀑布模型,而一旦输入文件需要更改,又必须重新履行复杂的审批程序,效率难以保证;若要求较短的研制周期,就必须并行开展各层级的设计工作,这样就会缺少设计依据合法性的保证,研制团队中传递的各种信息难以得到有效的管控。现实的工程实践中,这样的超流程工作、合法设计依据缺位的现象大量存在。
这种矛盾的根源就在于“控制思维”。更多的控制导致更慢的响应,这与变化更快的市场需求形成了矛盾。为了根本上解决这个问题,就需要改变这种“控制思维”,这实质上就是需要系统研发模式发生转型。
现代设计手段和仿真技术的方法为研发模式的转型准备了条件。传统的文件管理方法的产生背景是传统工业时代,由于文件(图纸)是用于直接指导硬件样机和产品生产的,因此,必须用复杂的流程保证其准确性,以减少废品和返工。而在以信息技术高度发达的现代工业背景下,计算机辅助设计(computer aided design,CAD)、计算机辅助工程(computeraided engineering,CAE)工具日益强大,数字化的设计和仿真能力已经覆盖了几乎所有工业领域,对硬件验证的需求越来越低,设计变更变得非常容易验证,变更的成本大大降低。在此背景下,可以大胆设想一种新的研制模式,从“畏惧变化”的“控制思维”转向“拥抱变化”的“进化思维”。
在数字模型高度发达的背景下,可以设想图 2所示的研发模式。
图2 基于模型的开发模式
通过建立系统逻辑关系模型,将各个相关的专业模型联系起来,专业模型通过定义好的接口进行信息一致性的自动维护,设计师更加关注的是不断完善接口的定义和描述方法,而非接口间传递的信息本身。
那么工作的模式就成为:所有的设计师都围绕一个统一的、由各人负责的部分组成的整体模型工作,模型信息的变化通过定义好的接口实现同步。在这个过程中,所有的信息交互和状态变更都能实时地被利益相关方确认,也能够被信息系统记录下来。就像“区块链”一样,系统的每一次状态演进被所有相关节点确认,也就实现了其一致性、唯一性和不可伪造性,从而也就形成了一种不依赖权威的区中心化的“合法性”。这样一来,系统中的每一次变化都像“突变”一样被写入“基因”,不再需要因为随机出现的变化反复走复杂的文件审批和变更流程,从而大大提高系统开发的效率,降低管理成本。系统在这种不依赖权威的合法性框架下不断进化,始终维持着各相关方的共同认可,直到研制计划规定的时间节点,基线得到自然的确定。
生产关系变革的需求需要由生产力的发展来满足,而生产力的发展又依赖更高效的生产工具为其提供动力。MBSE 这种系统工程活动的新工具的发展方向就是要通过这种方法的应用,促进系统开发模式的深刻变革。通过这种成本驱动的变革,解决了 MBSE推广过程中的阻力问题,也就更容易通过更广泛的实践促进发展。
发展驱动:知识管理与智能应用
MBSE 发展的第 2 个动力就是新技术带来的发展“拉力”。这种拉力将来自于智能知识管理与应用技术的发展。
系统设计和开发工作面临知识管理能力不足的问题:一是知识的捕获能力不足,二是知识的应用能力不足。其中,知识捕获能力不足主要包括设计过程中产生的碎片化知识捕获能力不足和联系信息的捕获能力不足。在这个方面,MBSE的各种系统建模语言都提供了大量描述“联系”的手段,利用这些语言,通过系统建模开展设计开发活动,如果配合类似网页 cookies 的信息捕获机制就可以实现对知识的有效捕获和联系信息的维护。
建模技术仅仅解决了知识捕获问题,构成了相互联系的知识体系,但建模仅仅是 MBSE的起点,基于人工智能的系统知识应用技术则将从需求方向为 MBSE的打开新的发展维度。正如AlphaGo 人工智能能够利用海量的数据和围棋知识体系做出胜率最高的决策,基于人工智能技术的知识应用技术将使计算机拥有系统辅助设计的能力,为系统设计师的方案权衡提供最优方案建议。这种能力大大拓展了人类对系统的认知能力和设计能力,无疑在效率和效益上都具有无可比拟的优势。基于 SysML等系统建模语言建立起来的系统模型具有简洁、规范、无二义性等特点,既能够被人理解更容易被计算机理解,这种优势使系统模型可以直接用于知识的智能分析和应用,因此,随着基于人工智能的系统知识应用技术的发展,对基于模型的系统描述将产生巨大的牵引作用,而这项技术本身也将成为基于模型的系统工程方法不可或缺的一部分。
MBSE不仅仅是理论更是实践,为了让这种基于模型的思维能够付诸实践,可能要同时从两个方向为它找到落地之路:一方面要从“成本驱动”的角度去思考MBSE可以解决的现实问题,以研发模式转型为目标探索它的实践途径;另一方面,要从“发展驱动”的角度思考,在“如何利用模型”上下功夫,围绕模型提供的知识体系探索基于人工智能化的系统知识应用技术,用下游新技术的发展为MBSE的普及创造更大的发展空间。