系统集成 包括获取组成利益系统 (SoI)的已实施系统元素,将这些已实施元素组装在一起,并在组装过程中执行验证和确认操作(V&V 操作)。 系统集成的最终目标是确保各个系统元素作为一个整体正常运行并满足系统的设计属性或特性。 系统集成是实现工作的一部分,仅与开发项目有关。 集成不应与生产线上的最终产品组装相混淆。 为了执行生产,装配线使用与集成不同的顺序。
定义和目的
系统集成包括一个“迭代地组合已实现的系统元素以形成完整或部分系统配置以构建产品或服务的过程”。 它递归地用于系统层次结构的连续级别。” (ISO/IEC 15288 2015, 68)。 该流程扩展到任何一种产品系统、 服务系统和企业系统。 系统集成的目的是让 SoI 为最终验证和过渡做好准备,以供使用或生产。 集成包括逐步组装构成 SoI 的已实现元素的聚合,这些组件在设计期间构建,并检查已实现元素之间接口的静态和动态方面的正确性。
美国国防采办大学 (DAU) 提供了以下集成环境:将使用集成过程。 .用于将最终系统整合到其操作环境中,以确保系统正确集成到所有定义的外部接口中。 接口管理流程对于集成流程的成功尤为重要,两个流程之间会发生迭代(DAU 2010)。
系统集成的目的可以概括如下:
- 完全组装实现的元素以确保它们彼此兼容。
- 证明已实施元素的集合执行预期的功能并满足性能/有效性的衡量标准。
- 通过将聚合提交给重点 V&V 操作,检测与设计和组装活动相关的缺陷/故障。
注意:在系统工程文献中,有时在 比本主题更大的上下文中使用术语集成。在这个更大的意义上,它涉及通过同时考虑所有生命周期阶段、需求和能力来同时设计和开发系统以及开发系统的过程的技术努力。 这种方法需要“整合”众多技能、活动或流程。
原则
整合活动的边界
集成可以理解为Vee模型的整个自下而上的分支,包括组装任务和相应的验证任务。 请参见下面的图 1:
![](images/2022051811.png)
图 1. 集成活动的限制。 (SEBoK 原创)
组装活动将实施的元素结合在一起,并在物理上链接。 在进入集成之前,每个实施的元素都经过单独验证和验证。 集成然后将验证活动添加到组装活动中,不包括最终验证。
最终验证会执行操作测试,以授权过渡以供使用或过渡以供生产。 请记住,系统集成只是努力获得相关产品、服务或企业的预生产原型。 如果产品、服务或企业是作为一个独特的示例交付的,那么最终的验证活动将作为交付的验收和使用的转移。 如果必须在多个示例中生产原型,则最终验证可作为开始生产的验收。 将在生产线上进行的优化组装操作的定义与制造过程有关,而不是与集成过程有关。
集成活动有时可以揭示需要修改系统设计的问题或异常情况。 修改设计不是集成过程的一部分,而只涉及设计过程。 集成仅涉及已实现元素的组装以及根据设计的属性验证系统。 在组装过程中,可以执行需要同时使用多个实施元素的最后润色任务(例如,在组装后对整体进行涂漆、校准生化组件等)。 这些任务必须在集成的背景下进行规划,而不是在单独的实现元素上执行,并且不包括与设计相关的修改。
已实现元素的聚合
集成用于从已实现的低级系统(已实现的系统元素)系统地组装更高级别的系统。 集成通常从分析和模拟(例如,各种类型的原型)开始,并通过越来越现实的系统和系统元素进行,直到实现最终产品、服务或企业。
系统集成基于 聚合概念——系统的一个子集,由几个已实现的元素(已实现的系统元素和物理接口)组成,在这些元素上应用了一组 V&V 操作。 每个聚合都由一个配置来表征,该配置指定要物理组装的已实现元素及其配置状态。
要执行 V&V 操作,需要构建一个 包含聚合和V&V 工具的V&V 配置 。 V&V 工具是使能产品,可以是模拟器(模拟实现的元素)、存根或帽、激活器(发射器、驱动器)、线束、测量设备等。
按系统级别集成
根据 Vee 模型,系统定义(自上而下的分支)是通过逐级分解来完成的; 每个级别对应于系统和系统元素的物理架构。 集成(自下而上的分支)采用与组合相反的方法(即逐级方法)。在给定级别上,集成是在系统定义 期间定义的物理架构的基础上完成的 。
整合战略
实现元素的集成通常根据预定义的策略执行。 集成策略的定义基于系统的体系结构,并依赖于系统体系结构的设计方式。 该策略在集成计划中进行了描述,该计划定义了预期聚合的最小配置、这些聚合的组装顺序以支持有效的后续验证和确认操作(例如,检查和/或测试)、检查或评估接口的技术,以及集成环境中支持聚合组合的必要功能。 因此,从选定的验证和确认策略开始详细说明集成策略。 请参阅系统验证和 系统验证主题。
为了定义集成策略,有几种可能的集成方法/技术可以单独使用或组合使用。 集成技术的选择取决于几个因素; 特别是系统元素的类型、交付时间、交付顺序、风险、约束等。每种集成技术都有优点和缺点,应在 SoI 的上下文中加以考虑。 下表 1 总结了一些集成技术。
表 1. 集成技术。 (SEBoK 原创)
集成技术 | 描述 |
全球一体化 |
也称为大爆炸整合; 所有交付的实施元素只需一步即可组装。
这种技术很简单,不需要模拟当时不可用的实现元素。
难以检测和定位故障; 接口故障检测较晚。
应该保留给简单的系统,交互很少,实现的元素很少,没有技术风险。
|
“与流”集成 |
交付的实施元素在可用时进行组装。
允许快速启动集成。
由于需要模拟尚不可用的已实现元素,因此实现起来很复杂。 无法控制端到端的“功能链”; 因此,全球测试被推迟到很晚的时间。
应保留给没有技术风险的知名和受控系统。
|
增量集成 |
以预定义的顺序,将一个或极少数已实现的元素添加到已集成的已实现元素的增量中。
故障的快速定位:新故障通常定位在最近集成的实现元素中或依赖于故障接口。
需要模拟器来缺少已实现的元素。 需要许多测试用例,因为每个实现的元素添加都需要验证新配置和回归测试。
适用于任何类型的架构。
|
子集集成 |
实现的元素由子集组装,然后子集组装在一起(子集是聚合); 也可以称为“功能链集成”。
由于子集的并行集成而节省时间; 可以交付部分产品。 与增量集成相比,需要更少的手段和更少的测试用例。
子集应在设计期间定义。
适用于由子系统组成的架构。
|
自上而下的集成 |
已实现的元素或聚合按照它们的激活或使用顺序进行集成。
框架的可用性和架构故障的早期检测、接近现实的测试用例定义以及测试数据集的重用成为可能。
需要创建许多存根/上限; 难以定义叶实现元素的测试用例(最低级别)。
主要用于软件领域。 从更高层次的实现元素开始; 添加较低级别的已实现元素,直到叶实现元素。
|
自下而上的整合 |
已实现的元素或聚合以与其激活或使用相反的顺序集成。
轻松定义测试用例; 早期检测故障(通常位于叶子实现的元素中); 减少要使用的模拟器的数量。 聚合可以是子系统。
每个步骤都需要重新定义测试用例,驱动难以定义和实现,较低级别的实现元素被“过度测试”,无法快速检测到架构故障。
主要用于软件领域,但可用于任何类型的系统。
|
标准驱动的集成 |
与所选标准相比,最关键的实施要素首先被整合(可靠性、复杂性、技术创新等)。 标准通常与风险有关。
允许对关键实施的元素进行早期和密集的测试; 设计选择的早期验证。
测试用例和测试数据集很难定义。
|
通常,选择混合集成技术作为上面列出的不同技术之间的权衡,允许优化工作并使过程适应正在开发的系统。 优化考虑了实施元素的实现时间、它们的交付计划订单、它们的复杂程度、技术风险、装配工具的可用性、成本、截止日期、特定人员能力等。
过程方法
进程的活动
在此过程中执行的主要活动和任务包括:
- 建立集成计划 (此活动与系统的设计活动同时进行),其中定义:
- 优化的集成策略——使用适当的集成技术的聚合组装顺序。
- 为整合而要处理的 V&V 操作。
- 要组装和验证的聚合体的配置。
- 集成手段和验证手段(专用使能产品),可能包括组装程序 、 组装工具(线束、专用工具)、V&V工具(模拟器、短管/帽、发射器、测试台、测量设备等)和 V&V程序。
- 获取 集成计划中定义的集成方式和验证方式。 手段的获取可以通过采购、开发、再利用、分包等多种方式完成; 通常整套获取手段是这些方法的混合。
- 接收 每个已实现的元素:
- 打开包装并重新组装已实施的元件及其附件。
- 检查交付的配置、实现元素的一致性和接口的兼容性,并确保存在强制性文档。
- 将实现的元素组装 成聚合:
- 收集要组装的实施元素、集成手段(组装工具、组装程序)和验证手段(V&V工具和程序)。
- 使用组装工具将实施的元素相互连接,以按照集成计划和组装程序规定的顺序构成聚合。
- 将 V&V 工具添加或连接到预定义的聚合。
- 进行焊接、粘合、钻孔、攻丝、调整、调整、喷漆、参数设置等最终操作。
- 验证每个聚合 :
- 检查骨料是否按照既定程序正确组装。
- 执行使用验证和确认程序的验证过程,并检查聚合是否显示正确的设计属性/指定要求。
- 记录集成结果/报告和潜在问题报告、变更请求等。
工件和本体元素
此过程可能会创建多个工件,例如:
- 一个集成系统
- 装配工具
- 组装程序
- 整合计划
- 整合报告
- 问题/异常/故障报告
- 变更请求(关于设计)
此过程利用表 2 中讨论的本体元素。
表 2. 系统集成中处理的主要本体元素。 (SEBoK 原创)
元素 | 定义
属性 |
总计的 |
聚合是系统的子集,由应用了一组验证操作的几个系统元素或系统组成。
标识符、名称、描述 |
组装程序 |
组装过程将一组基本组装动作组合在一起,以构建已实施系统元素的集合。
标识符、名称、描述、持续时间、时间单位 |
装配工具 |
组装工具是一种物理工具,用于连接、组装或链接多个已实现的系统元素以构建聚合(特定工具、线束等)。
标识符、名称、描述 |
风险 |
具有发生概率和对其对系统任务或其他特性的影响(用于工程中的技术风险)的严重程度的事件。 风险是脆弱性和危险或威胁的结合。
标识符、名称、描述、状态 |
基本原理 |
为选择工程元素提供理由的论据。
标识符、名称、描述(基本原理、定义聚合的原因、组装过程、组装工具) |
注意:验证和验证本体元素在系统验证和 系统验证主题中进行了描述。
本体元素之间的主要关系如图 2 所示。
![](images/2022051821.png)
图 2. 集成元素与其他工程元素的关系。 (SEBoK 原创)
集成的检查和正确性
集成过程中需要检查的主要项目包括:
- 整合计划尊重其模板。
- 预期的装配顺序(集成策略)是现实的。
- 没有忘记系统设计文档中列出的系统元素和物理接口。
- 已实现元素之间的每个接口和交互都经过验证。
- 组装程序和组装工具在开始组装之前可用并经过验证。
- V&V 程序和工具在开始验证之前可用并经过验证。
- 记录集成报告。
方法和技术
上面的集成策略 部分总结了几种不同的方法,这些方法 可用于集成,但还存在其他方法。 特别是密集型软件系统的重要集成策略包括:垂直集成、水平集成和星型集成。
耦合矩阵和 N 方图
定义聚合和积分顺序的最基本方法之一是使用 N 平方图 (Grady 1994, 190)。
在集成上下文中,耦合矩阵可用于优化接口的聚合定义和验证:
- 通过重新组织耦合矩阵来定义和优化集成策略,以便将已实现的元素分组到聚合中,从而最大限度地减少聚合之间要验证的接口数量(参见图 3)。
![](images/2022051831.png)
图 3. 左侧聚合的初始排列; 右侧重组后的最终安排。 (SEBoK 原创)
- 在验证聚合之间的相互作用时,矩阵是故障检测的辅助工具。 如果通过将已实现的元素添加到聚合中检测到错误,则故障可能与已实现的元素、聚合或接口有关。 如果故障与聚合有关,则它可能与聚合内部的任何已实现元素或已实现元素之间的任何接口有关。
应用于产品系统、服务系统和企业系统
由于这些类型的系统实现的系统元素和物理接口的性质不同,因此聚合、组装工具和 V&V 工具也不同。 一些集成技术更适合特定类型的系统。 下面的表 3 提供了一些示例。
表 3. 产品、服务和企业系统的不同集成元素。 (SEBoK 原创)
元素 | 产品体系 | 服务体系 | 企业系统 |
系统元素 |
五金零件(机械、电子、电气、塑料、化工等)
操作员角色
软件件 |
流程、数据库、程序等
操作员角色
软件应用 |
公司、方向、部门、部门、项目、技术团队、领导等
IT 组件 |
物理接口 |
硬件部件、协议、程序等 |
协议、文件等 |
协议、程序、文件等 |
装配工具 |
线束、机械工具、专用工具
软件链接器 |
文档、学习课程等 |
文件、学习、办公室搬迁 |
验证工具 |
测试台、模拟器、发射器、存根/电容 |
活动/场景模型、模拟器、角色排练、电脑等。
熟练的专家 |
活动/场景模型、模拟器、人员角色排练 |
验证工具 |
操作环境 |
操作环境 |
操作环境 |
推荐的集成技术 |
自顶向下集成技术
自底向上集成技术 |
子集集成技术(功能链) |
全球整合技术
增量集成 |
实际考虑
与系统集成相关的关键缺陷和良好实践将在接下来的两节中描述。
缺陷
表 4 提供了在规划和执行 SE 测量过程中遇到的一些关键缺陷。
表 4. 系统集成的主要缺陷。 (SEBoK 原创)
缺陷 | 描述 |
预期元素的延迟 |
经验表明,实施的元素总是没有按预期的顺序到达,并且测试永远不会按预期进行或产生结果; 因此,集成策略应具有很大的灵活性。 |
大爆炸不合适 |
“大爆炸”集成技术不适用于快速检测故障。 因此,最好在整个集成过程中逐步验证接口。 |
整合计划为时已晚 |
集成活动的准备在项目进度表中计划得太晚,通常是在交付第一个实施的元素时。 |
良好实践
表 5 提供了从参考文献中收集的一些良好实践。
表 5. 经验证的系统集成实践。 (SEBoK 原创)
实践 | 描述 |
开始早期开发手段 |
组装工具和验证和确认工具的开发可以与系统开发本身一样长。 一旦初步设计接近冻结,就应该尽早开始。 |
集成意味着被视为使能系统 |
集成手段(组装工具、验证和确认工具)的开发可以被视为支持系统,使用本 SEBoK 中描述的系统定义和系统实现过程,并作为项目进行管理。 这些项目可以由相应的感兴趣系统的项目领导,但分配给特定的系统块,或者可以分包为单独的项目。 |
使用耦合矩阵 |
一个好的做法是逐步集成聚合,以便更容易地检测故障。 耦合矩阵的使用适用于所有策略,尤其是自下而上的集成策略。 |
灵活的集成计划和时间表 |
复杂系统的集成过程难以预见,其进度控制难以观察。 这就是为什么建议以特定的边距来规划集成,使用灵活的技术,并通过类似的技术集成集合。 |
集成和设计团队 |
负责集成的人应该是设计团队的一部分。 |
|