系统工程基础知识:系统工程流程

文章简介:本文是MBSE方法论系列文章的第一篇,系统工程流程主要定义实施系统工程的首要活动(“做什么”)。包括ANSI/EIA 623系统工程流程标准、IEEE 1220系统工程流程的应用和管理标准及ISO/IEC 15288系统工程-系统生命周期流程等。

一般来说,方法论(Methodology)的定义来源于Martin在1996年的定义,方法论指用于支持特定学科的相关流程、方法和工具的集合。MBSE方法论是指Estefan在2008年的定义,MBSE方法论是指支持系统工程学科在“基于模型”或“模型驱动”背景下的相关流程、方法和工具的集合。

MBSE方法论是流程、方法和工具的集合,但它与环境、人员和技术密切相关,如图- 1所示。

▲图- 1 PMTE元素和技术、人员的影响

流程(P)是为了实现一个特定目标所执行任务的逻辑序列。它定义将要做“什么”,而不是指定“如何”做每一项任务。

方法(M)是指执行一项任务的诸多技能组成,它定义“如何”执行每项任务。这里方法一词通常可以和技能、实践和程序等词互换。

工具(T)是一种仪器,当被应用于特定方法时,可增强执行任务的效率。广义上讲,工具增强做“什么”和“如何”做。用于支持系统工程的工具通常是基于计算机的或者基于软件的,一般指计算机辅助工程(CAE)工具。

环境(E)与上述定义的流程、方法和工具密切相关,它包括影响物体、个人或集体的周边环境、外部事物、条件和因素。这些条件可以是社会的、文化的、私人的、物理的、组织的或者功能性的。项目环境的目的应该是集成或支持运用在项目上的工具和方法,所以环境主要是使能(失效)做“什么”和“如何”做。

在形成一个MBSE开发环境时,必须考虑技术的能力和限制。技术不应“只是为了技术”而使用,技术也可有助于或阻碍系统工程的努力。

在选择PMTE元素的正确组合时,我们必须考虑涉及人员的知识、技能和能力(KSA)。当应用新的PMTE元素时,往往通过特定的培训和作业练习来提高人员的KSAs。

本文主要是从流程角度,这是开展系统工程的第一步:系统工程流程定义做什么。

1 系统工程流程综述

系统工程流程主要定义实施系统工程的首要活动(“做什么”)。系统工程流程涉及采办生命周期的各个阶段,一般开始于系统生命周期的早期。目前不同的国际标准机构已经提出了各种系统工程流程标准,如ANSI/EIA 623系统工程流程标准、IEEE 1220系统工程流程的应用和管理标准和ISO/IEC 15288系统工程-系统生命周期流程,而这些流程标准都是从早期DoD提出MIL-STD-499演化而来的,如图- 2所示。

▲图- 2 系统工程流程标准的继承关系

2 MIL-STD-499

MIL-STD-499系列标准是美国军方标准,对系统工程的早期发展和流程标准化产生了深远的影响。该系列标准始于1969年,最早由美国空军发布,后进行了更新,于1974年重新发布,作为MIL-STD-499A,命名为“工程管理”,其目的是:“协助政府和承包商人员定义系统工程工作,以支持防务项目。”系统工程流程包括:

(1)任务需求分析;

(2)功能分析和分配;

(3)设计综合,如图- 3所示。

▲图- 3 MIL-STD-499A系统工程流程

美国军方进一步扩展和升级MIL-STD-499A为MIL-STD-499B,命名为“系统工程”。虽然该标准未正式出版,但它的影响是巨大的。作为1990年的美国军方采购改革,该标准取代了几乎所有的DoD独有军用规范。后来MIL-STD-499B被撤销了,取而代之是EIA/IS-632行业标准,它是MIL-STD-499B 1994年5月版的“商业化”版本,于1994年12月发布。

3 ANSI/EIA 632系统工程流程标准

ANSI/EIA 632标准最早于1994年作为临时标准发布,作为MIL-STD-499B的商业镜像版本。后来进行了大量的修订,增加了摘要和概述,并于1999年1月重新发布,命名为“系统工程的流程”,其目的是:“提供一套基本流程集合,以辅助系统工程或旧系统的重新设计。”

ANSI/EIA 632标准的目的是提供一套基本流程集合,以辅助系统工程或旧系统的重新设计。本标准的使用目的在于帮助开发人员:

(1)建立和逐渐形成一套完整而且一致的需求库,以促使交付可行的且有成本效益的解决方案;

(2)在成本、进度和风险约束范围内满足需求;

(3)在构建系统的产品生命周期中,提供系统或者系统的任何部分来满足利益攸关者;

(4)提供安全的和/或有成本效益的系统处置或报废方案。

ANSI/EIA 632标准定义系统工程的流程组,这些流程可以分为5组,共13个流程。这些流程适用于组成一个系统的最终产品的工程设计或再工程设计,或为系统或产品提供生命周期支持所需的使能产品的开发,这些流程之间的关系如图- 4所示。

▲图- 4 ANSI/EIA 632定义的流程间的关系

4 IEEE 1220系统工程流程的应用

IEEE 1220最早作为试用标准于1995年发布,根据该标准的应用经验,进行了修订,作为完整标准于1998年重新发布。该标准的题目为“系统工程的应用和管理”,提供了在EIA 632中定义的系统工程流程的更底层级的详细描述。其目的是:“提供一套从最初概念到开发、运行和退出的系统管理标准。”

本标准定义了整个系统生命周期中所需的多学科任务,包括将利益攸关者的需要、需求和约束转化为系统解决方案。旨在指导在商业、政府、军队和太空应用领域的系统开发。该标准内定义的内容适用于企业内的项目,企业负责开发产品设计和建立维持生命周期的所需的生命周期基础设施。

本标准规定了系统工程流程的应用要求和在整个产品生命周期中的应用方法,本标准不是定义每个系统生命周期流程的实施,而是解决在产品开发早期和设计阶段中的定义和建立合适的生命周期流程的相关问题。本标准重点关注指导产品开发所需的工程活动,同时确保产品设计合理,使其能够适用于生产、拥有、运行、维护和最终处置阶段,而不对健康或环境造成不良的风险。

企业应该采用系统工程流程的规范性条款,以产生规范、基线和相关产品。系统工程流程是一个通用的问题解决流程,它提供了一套机制来识别和演进系统的产品和流程定义。系统工程流程适用于整个系统生命周期的所有活动,包括产品开发、验证/测试、制造、培训、运行、支持、分配、处置和人机工程。本标准中定义的系统工程流程的子流程集,如图- 5所示,图中展示了如何迭代生成一致的需求集、功能分配和设计方案。

▲图- 5 IEEE 1220系统工程流程

5 ISO/IEC/IEEE 15288系统工程-系统

生命周期流程

ISO/IEC 15288最早版本于2002年发布,ISO/IEC 15288 2002现在已经撤销了。题目为:“系统工程-系统生命周期流程”,适用范围极广,其适用于“系统整个生命周期,包括系统的概念、开发、生产、使用、支持和退出阶段,以及采购和供应。”

取代ISO/IEC 15288 2002标准是ISO/IEC 15288 2008,题目为“系统工程-系统生命周期流程”,和前任标准一样,它的适用范围非常广泛。该标准“为了描述人造系统生命周期,建立了一套通用的流程框架。并描述了全生命周期的流程集和相关术语,包括概念、开发、生产、使用、支持和退出阶段,并支持这些流程的定义、控制评估和改进。”

最新的标准为ISO/IEC/IEEE 15288: 2015,题目为“系统工程和软件工程-系统生命周期流程”,系统工程手册第4版根据其编写。

本章参照ISO/IEC/IEEE 15288 2015编写,该国际标准建立了一套顶层流程的共同框架,用于描述人造系统的生命周期。它从工程的视角定义了一组流程和相关的术语,这些流程可以应用于系统结构层级中的任意层级。在整个生命周期中,可以应用选定的流程组来管理和执行系统生命周期的各个阶段,通过所有利益攸关者的参与得以实现,最终实现客户满意的终极目标。

该国际标准还提供运用在组织或项目组内部的一些流程,来支持系统生命周期流程的定义、控制和改进。当组织和项目组采购和供应系统时,也可以使用这些流程。

该国际标准主要关注人造系统,这些系统通常具有一个或多个系统元素组成:硬件、软件、数据、人员、流程(如为用户提供服务的流程)、程序(如操作员指令)、设施、材料和自然实体。

该国际标准将系统生命周期内可执行的活动分为四大类流程组:技术类流程组、技术管理类流程组、协议类流程组和组织的项目使能类流程组。这些流程组内的每一个生命周期流程都按照目的、期望的成果来描述,并列出为了实现这些成果要执行的活动和任务。

▲图- 6 ISO/IEC/IEEE 15288系统生命周期流程

6 小结

一个组织在实施系统工程时,需要根据这些标准中定义的流程进行裁剪。这里所说的组织指为实现一定的目标,相互协作结合而成的集体或团体,包括公司、集团、商行、企事业单位、研究机构、慈善机构、个体户、社团等。对这些流程进行剪裁的目的是调整ISO/IEC 15288、ANSI/EIA 632、IEEE 1220等标准定义的流程来满足特定的情况或因素。剪裁的原则是确保能够缩减流程到可承受的风险水平来执行系统生命周期流程活动来满足项目的需要。系统工程流程的裁剪是项目风险紧密相关的,如图- 7所示。如果系统工程流程活动执行不充分,项目通常伴随着高风险,如成本超支和进度延迟;如果执行太多严格的或没必要的流程活动,项目也会出现高风险,如项目成本增加、进度受影响,而且没有太多附加值。

▲图- 7 裁剪需平衡流程和风险

在系统工程流程标准的应用过程中,ISO/IEC 15288、ANSI/EIA 632、IEEE 1220要结合起来并统一考虑。因为这三个系统工程标准是相辅相成的,没法用其中一个标准来替代其他标准。

ISO/IEC 15288是系统全生命周期的流程,覆盖范围最广,包括概念定义、需求工程、架构设计、系统分析、系统实现与集成、验证与确认、运行、维护和处置、技术管理和组织级项目使能管理等各个阶段、各个环节的流程都有定义,但是该标准定义的流程是最顶层的,没有太多细则,也没有定义在系统工程应用中这些流程间的关系,适合组织用来制定顶层的系统工程流程活动。ANSI/EIA 632相比ISO/IEC 15288来说,要更具体些,而且该标准来源于MIL STD 499,是在美国军方多年项目经验积累出来的,比较结合实际工程,特别是对系统设计、需求确认、系统验证和最终产品的确认流程做了详细的阐述,这些在系统生命周期的开发阶段特别有帮助,但该标准未覆盖到系统全生命周期,在技术管理、组织项目使能管理方面体现不够全面。IEEE 1220是一个系统工程流程应用的更细的标准,里面定义了很多子流程,如在该标准中需求分析流程,包括:1) 定义利益攸关者的期望;2) 定义项目和企业的约束;3) 定义外部约束;4) 定义运行场景;5) 定义效能测度;6) 定义系统边界;7) 定义接口;8) 定义使用环境;9) 定义生命周期流程概念;10) 定义功能需求;11) 定义性能需求;12) 定义运行场景模型;13) 定义技术性能测度;14) 定义设计特征;15) 定义人因;16) 建立需求基线-运行视角、功能视角和设计视角。这些细则对系统工程师在项目中实施系统工程很有帮助,特别在系统生命周期中的开发阶段,该标准定义的需求分析、需求确认、功能分析、功能验证、设计综合、设计验证、系统分析和控制流程活动的细则任务。

这三个标准ISO/IEC 15288、ANSI/EIA 632、IEEE 1220在广度和深度的比较,如图- 8所示,在组织级、项目级定义系统工程流程规范或实施系统工程工作时,要配合使用。

▲图- 8 系统工程流程标准的广度和深度

参考文献

[1]张新国译. 系统工程手册:系统生命周期流程和活动指南[M]. 机械工业出版社, 2017.

[2]https://www.incose.org/systems-engineering.

[3]Estefan, J.A.编著,张新国译,基于模型的系统工程(MBSE)方法论综述(中英对照)[M],机械工业出版社, 2014.

[4]http://www.omgwiki.org/MBSE/doku.php?id=mbse:methodology

[5]ANSI/EIA-632-2003, Processes for Engineering a System [S].

[6]IEEE Std 1220-2005, IEEE Standard for Application and Management of the Systems Engineering Process [S].

[7]ISO/IEC/IEEE 15288:2015, Systems and software engineering — System life cycle processes [S].

Simcenter 1D 系统仿真

(0)

相关推荐