ASPICE-SYSSWE

文章主要内容:

Automotive SPICE 过程参考模型

SYS.1 需求挖掘

过程ID

SYS.1

过程名称

需求挖掘

过程目的

需求挖掘过程的目的是:在产品和/或服务的整个生命周期内收集、处理和跟踪不断变化的利益相关方的需要和需求,从而建立一个需求基线,作为定义所需工作产品的基础。

过程成果

成功实施这个过程的结果如下:

1)建立了与利益相关方的持续沟通;

2)定义和基线化了约定的利益相关方需求;

3)建立了变更机制,以便基于利益相关方需要的变化,评估利益相关方需求的变更并将其纳入需求基线;

4)建立了持续监控利益相关方需要的机制;

5)建立了机制,以确保客户可以容易地判定其要求的状态和处置结果

6)识别了因技术或利益相关方需要的变化而引发的变更评估相关的风险管理其带来的影响

基本实践

SYS.1.BP1:获得利益相关方需求和要求

通过直接征求客户意见并通过评审客户业务提案(相关部分),目标运行硬件环境以及其它影响客户需求的文档来获取并定义利益相关方的需求和要求。[成果1,4]

注 1:需求挖掘可能需要客户和供应商的参与

注 2:约定的利益相关方需求和对变更的评估可基于可行性研究和/或成本和时间分析。

注 3:必须收集并记录保持每个客户需求可追溯性所需的信息。

SYS.1.BP2:理解利益相关方的期望

确保供应商和客户对每个需求有同样的理解。[成果 2]

注 4:与客户一起评审需求和要求有助于更好的理解客户需要和期望。参见过程 SUP.4 联合评审。

SYS.1.BP3:达成需求共识

获得所有相关方关于需求的明确协议,以便于开展工作。[成果2]

SYS.1.BP4:建立利益相关方需求基线

将利益相关方的需求正式化,并建立基线以便项目使用和依照利益相关方需要进行监控。供应商应确定利益相关方未说明的但对指定和预期用途有必要的需求,并将其包括在基线中。[成果23]

SYS.1.BP5:管理利益相关方的需求变更

依照利益相关方需求基线来管理所有利益相关方需求的变更,以确保识别技术和利益相关方需要的变化而带来的改进,以及确保受变化影响的人能够评估影响和风险,并启动适当的变更控制和缓解措施。[成果3.6]

注 5:需求变化可有不同的来源,例如技术和利益相关方需求的变化、法律约束。

注 6:在定义约定的利益相关方需求时所获的和所需的信息可能需要信息管理系统来进行管理,存储和引用.

SYS.1.BP6:建立客户_供应商查询沟通机制

给客户提供可以了解其需求变更状态和外置结果的方法,供应商能够以客户指定的语言和形式沟通包括数据在内的必要信息。[成果 5]

输出工作产品

08-19风险管理计划→[成果6]

08-20风险缓解计划→[成果6]

13-04沟通记录    →[成果1,4]

13-19评审记录    →[成果4,5]

13-21变更控制记录→[成果3,4]

15-01需求分析报告    →[成果2,3,6]

17-03利益相关方需求→[成果1,2]

SYS.2 系统需求分析

过程ID

SYS.2

过程名称

系统需求分析

过程目的

系统需求分析过程的目的是:将已定义的利益相关方需求转换成一组系统需求,以指导系统设计。

过程成果

成功实施这个过程的结果如下;

1)建立了一组定义系统需求;

2)对系统需求进行分类,并分析了其正确性和可验证性;

3)分析了系统需求对运行环境的影响;

4)定义了系统需求实施的优先级;

5)根据需要更新系统需求;

6)建立了利益相关方需求系统需求之间的一致性和双向可追溯性;

7)从成本、进度和技术影响来评估系统需求;

8)约定了系统需求,并与所有受影响方沟通

基本实践

SYS.2.BP1:定义系统需求。

使用利益相关方需求及其变更,以识别系统所需的功能和能力。在系统需求规范中定义功能性和非功能性系统需求。[成果 1,5,7]

注 1:影响功能和能力的应用参数是系统需求的一部分。

注 2:关于利益相关方需求的变更,适用SUP.10

SYS.2.BP2:结构化系统需求。

系统需求规范中结构化系统需求,例如:

  1. 按项目相关集群进行分组
  2. 按项目中逻辑顺序排序
  3. 基于项目相关准则进行分类
  4. 根据利益相关方需要进行优先级排序

[成果24]

注 3:优先级排序通常包括将功能性内容分配给已发布的计划。参见 SPL.2.BP1。

SYS.2.BP3:分析系统需求。

分析已定义的系统需求(包括它们的相互依赖关系),确保正确性技术可行性可验证性,并且支持风险识别分析成本、进度和技术影响。[成果 1,2,7]

注4:对成本和进度的影响分析有助于项目估算的调整。参见MAN.3.BP5

SYS.2.BP4:分析对运行环境的影响

识别定义的系统运行环境中其他要素之间的接口。分析系统需求对这些接口和运行环境的影响。 [成果 3,7]

SYS.2.BP5:制订验证准则。

对每一个系统需求制订验证准则,定义定性的和定量的措施用于需求验证。 [成果 2,7]

注 5:验证准则证明了需求可以在约定的约束范围内得到验证,并且通常被用作系统测试用例开发或其它证明符合系统需求的验证措施的输入。

注 6:测试不能覆盖的验证由 SUP.2 覆盖。

SYS.2.BP6:建立双向可追溯性。

建立利益相关方需求和系统需求之间的双向可追溯性。[成果 6]

注 7:双向可追溯性有助于覆盖率, 一致性和影响分析。

SYS.2.BP7:确保一致性。

确保利益相关方需求和系统需求之间的一致性。[成果 6]

注 8:一致性由双向可迫溯性支持,并可通过评审记录来证明。

SYS.2.BP8:沟通约定的系统需求。

与所有相关方沟通约定的系统需求及对系统需求的更新。[成果8]

输出工作产品

04-06 系统架构设计→[成果 1,2,3,45]

13-04沟通记录→[成果6]

13-19评审记录→[成果5]

13-22追溯记录→[成果5]

17-08 接口需求规范→[成果3]

过程ID

SYS.3

过程名称

系统架构设计

过程目的

建立系统架构,确定哪些需求分配给哪些系统元素,并根据定义的标准评估所设计的系统架构。

过程成果

  1. 提供所有系统的设计;
  2. 描述系统元素之间的相互关系;
  3. 描述系统元素与软件之间的相互关系;
  4. 详细说明每个必需系统元素的设计,需要考虑到以下内容:内存和容量的需求、硬件接口需求、用户接口需求、外部系统接口需求、性能需求、指令结构、安全及数据保护特性、系统参数设定、人工操作、可重用组件等
  5. 系统元素与需求之间的映射关系
  6. 描述系统组件运行模式(启动、停止、睡眠模式、诊断模式等)
  7. 描述在不同运行模式下各个系统组件之间依赖关系;
  8. 描述系统和系统组件的动态行为。

输出工作产品

1.     沟通记录;

2.     审查记录;

3.     跟踪记录

4.     系统架构设计

Note:系统架构设计

a. 已经定义了系统架构设计,并已经标识了系统元素;

b. 系统需求已经被分配给了系统元素;

c. 系统元素的每个接口已经定义;

d. 已经定义了系统的动态行为目标;

e. 在系统需求和系统架构设计之间已经建立了一致性和双向可追溯性;

f. 系统架构设计已经传达给受影响的各方并且达成了一致。

SYS.4 系统集成与集成测试

过程ID

SYS.4

过程名称

系统集成与集成测试

过程目的

系统集成与集成测试过程的目的是:集成系统项以产生与系统架构设计相一致的集成系统,并确保系统项得到测试,以提供集成的系统项符合系统架构设计(包括系统项之间的接口)的证据。

过程成果

成功实施这个过程的结果如下;

1) 制订了与项目计划发布计划系统架构设计相一致的系统集成策略,以集成系统项;

2) 制订了包括回归测试策略在内的系统集成测试策略,以测试系统项之间的交互;

3) 根据系统集成测试策略,制订系统集成测试规范,以适于提供集成的系统项符合系统架构设计(包括系统项之间的接口)的证据;

4) 根据集成策略将系统项集成为完整的集成系统;

5) 根据系统集成测试策略发布计划选择了系统集成测试规范中的测试用例;

6) 使用选定的测试用例测试了系统项之间的交互,并记录了系统集成测试结果;

7) 建立了系统架构设计的要素系统集成测试规范中的测试用例之间的一致性和双向可追溯性,并建立了测试用例和测试结果之间的双向可追溯性;

8) 总结了系统集成测试结果,并与所有受影响方沟通。

基本实践

SYS.4.BP1:制订系统集成策略

制订与项目计划和发布计划相一致的系统项集成策略。基于系统架构设计识别系统项,并定义其集成顺序。[成果 1]

SYS.4.BP2:制订包括回归测试策略在内的系统集成测试策略.

遵循集成策略,制订集成系统项的测试策略。该策略包括当系统项变更时对集成的系统项实施再测试的回归测试策略。[成果 2]

SYS.4.BP3:开发系统集成测试规范.

根据系统集成测试策略,开发系统集成测试规范(包括系统项的各集成步骤的测试用例)。测试规范应话于提供集成的系统项符合系统架构设计的证据。[成果 3]

注 1:系统要素之间的接口描述是系统集成测试用例的输入。

注 2:符合系统架构设计是指,定义的集成测试适于证明系统项之间的接口满足系统架构设计的规范。

注 3:系统集成测试用例可关注:

  1. 系统项之间的正确信号流
  2. 系统项之间信号流的时效性和时序依赖性
  3. 使用接口正确解释所有系统项的信号
  4. 系统项之间的动态交互

注 4:可使用仿真环境(例如:硬件在环仿真,车载网络仿真,数字原型)支持系统集成测试。

SYS.4.BP4:集成系统项

根据系统集成策略,将系统项集成为集成系统,[成果4]

注 5:系统集成可逐步集成系统项(例如:作为原型硬件的硬件要素,外设(传感器和执行器),机械和集成软件),以产生与系统架构设计相一致的系统。

SYS.4.BP5:选择测试用例.

从系统集成测试规范中选择测试用例,测试用例的选择应根据系统集成测试策略和发布计划具备足够的要盖率。[成果 5]

SYS.4.BP6:执行系统集成测试.

使用选定的测试用例执行系统集成测试。记录华成测试结果和日志。[成果6]

注 6:不符合项的处理,见SUP.9

SYS.4.BP7:建立双向可追溯性.

建立系统架构设计要素与系统集成测试规范中的测试用例之间的双向可追溯性,建立系统集成测试规范中的测试用例与系统集成测试结果之间的双向可追溯性。[成果7]

注 7:双向可追溯性有助于覆盖率、一致性和影响分析。

SYS.4.BP8:确保一致性.

确保系统架构设计要素与系统集成测试规范中的测试用例之间的一致性。[成果 7]

注 8:一致性由双向可追溯性支持,并可通过评审记录来证明。

SYS.4.BP9:总结和沟通结果

总结系统集成测试结果,并与所有受影响方沟通。[成果 8]

注 9:在总结中提供来自测试用例执行的所有必要信息,以便其他方判断结果。

输出工作产品

08-50 测试规范→[成果3,5]

08-52 测试计划→[成果 1,2]

11-06 系统→[成果4]

13-04 沟通记录→[成果 8]

13-19评审记录→[成果7]

13-22 追溯记录→[成果 7]

13-50测试结果→[成果6,8]

SYS.5 系统合格性测试

过程ID

SYS.5

过程名称

系统合格测试

过程目的

系统合格性测试过程的目的是:确保集成系统得到测试,以提供符合系统需求的证据,并确保系统可用于交付。

过程成果

成功实施这个过程的结果如下;

1)制订了与项目计划发布计划相一致的系统合格性测试策略(包括回归测试策略),用以测试已集成的系统。

2) 根据系统合格性测试策略,制订了已集成系统的系统合格性测试规范以适于提供符合系统需求的证据。

3) 根据系统合格性测试策略和发布计划,选择了系统合格性测试规范中的测试用例

4)使用选择的测试用例测试了已集成的系统,并记录了系统合格性测试的结果

5)建立了系统需求与系统合格性测试规范中测试用例之间的一致性和双向可追溯性,并建立了测试用例与测试结果之间的一致性和双向可追溯性。

6)总结了系统合格性测试结果,并与所有受影响方沟通

基本实践

SYS.5.BP1:制订包括回归测试策略在内的系统合格性测试策略。

制订项目计划发布计划相一致的系统合格性测试策略。该策略包括当系统项变更时,对已集成系统实施再测试的回归测试策略。[成果1]

SYS.5.BP2: 开发系统合格性测试规范。

根据系统合格性测试策略开发系统合格性测试规范(包括基于验证准则的测试用例)。该规范应适于提供集成系统符合系统需求的证据。[成果2]

SYS.5.BP3:选择测试用例。

从系统合格性测试规范中选择测试用例。对于系统合格性测试策略和发布计划而言,所选择的测试用例应具备足够的覆盖率。[成果3]

SYS.5.BP4: 测试已集成的系统。

使用已选择的测试用例测试已集成的系统。记录系统合格性测试的结果和日志。[成果4]

注 1:不符合项的处理,见 SUP.9。

SYS.5.BP5:建立双向可追溯性

建立系统需求与系统合格性测试规范中的测试用例之间的双向可追溯性。建立系统合格性测试规范中的测试用例与系统合格性测试结果之间的双向可追溯性。[成果5]

注 2:双向可追溯性有助于覆盖率、一致性和影响分析。

SYS.5.BP6:确保一致性。

确保系统需求和系统合格性测试规范中的测试用例之间的一致性。 [成果5]

注 3:一致性由双向可追溯性支持,并可通过评审记录来证明。

SYS.5.BP7:总结和沟通结果

总结系统合格性测试结果,并与所有受影响方沟通。[成果6]

注 4:在总结中提供来自测试用例执行的所有必要信息,以便其他方判断结果。

输出工作产品

08-50测试规范→[成果2,3]

08-52测试计划→[成果1]

13-04沟通记录→[成果6]

13-19评审记录→[成果5]

13-22追溯记录→[成果5]

13-50测试结果→[成果4,6]

SWE.1软件需求分析

过程ID

SWE.1

过程名称

软件需求分析

过程目的

软件需求分析过程的目的是:将系统需求中与软件相关的部分转化为一组软件需求。

过程成果

成功实施这个过程的结果如下:

1)定义了系统中分配给软件要素的软件需求及其接口;

2)将软件需求进行分类,并分析了其正确性和可验证性;

3)分析了软件需求对运行环境的影响;

4)定义了软件需求实现的优先级;

5)根据需要更新了软件需求:

6)在系统需求与软件需求之间、在系统架构设计与软件需求之间建立了一致性和双向可追溯性;

7)从成本、进度和技术影响评估软件需求;

8)约定了软件需求,并与所有受影响方沟通。

基本实践

SWE.1.BP1:定义软件需求。

使用系统需求系统架构及其变更识别软件所需的功能和能力。在软件需求规范中定义功能性非功能性软件需求。[成果1,5,7]

注1:影响功能和能力的应用参数是系统需求的一部分。

注2: 如果只有软件开发,系统需求和系统架构是指给定的运行环境(参见注5)。在这种情况下,应将利益相关方需求作为识别软件所需功能和能力以及识别影响软件功能和能力的应用参数的基础。

SWE.1.BP2:结构化软件需求。

在软件需求规范中结构化软件需求,例如:

  • 按项目相关集群进行分组,
  • 按项目中逻辑顺序排序,
  • 基于项目相关准则进行分类,
  • 根据利益相关方需要进行优先级排序。

[成果2, 4]

注3: 优先级排序通常包括将软件内容分配给已计划的发布。参见SPL.2.BP1。

SWE.1.BP3:分析软件需求

分析已定义的软件需求,包括其相互依赖关系,以确保正确性、技术可行性和可验证性并支持风险识别,分析对成本、进度和技术的影响。[成果2, 7]

SWE.1.BP4:分析对运行环境的影响

分析软件需求对系统要素接口运行环境的影响。[成果3, 7]

注5: 运行环境是指软件运行所在的系统(例如:硬件、操作系统等) 。

SWE.1.BP5:制订验证准则。

对每个软件需求制订验证准则,定义定性的和定量的措施以用于需求验证。 [成果2, 7]

注6: 验证准则证明了需求可以在约定的约束范围内得到验证,并且通常被用作软件测试用例开发或其他证明符合软件需求的验证措施的输入。

注7:测试不能覆盖的验证由SUP.2覆盖。

SWE.1.BP6:建立双向可追溯性。

建立系统需求软件需求之间的双向可追溯性,建立系统架构设计软件需求之间的双向追溯性。[成果 6]

注8: 应通过建立同时满足项目和组织要求的方法来避免冗余。

注9:双向可追溯性有助于覆盖率、一致性和影响分析。

SWE.1.BP7:确保一致性。

确保系统需求软件需求之间的一致性,确保系统架构软件需求之间的一致性。[成果 6]

注10:一致性由双向可追溯性支持,并可通过评审记录来证明。

注11:如果只有软件开发,必须确保利益相关方需求与软件需求之间的一致性和双向可追溯性。

SWE.1.BP8:沟通约定的软件需求。

与所有相关方沟通约定的软件需求及对软件需求的更新。[成果 8]

输出

工作产品

  1. 沟通记录    -> [成果8]
  2. 评审记录    -> [成果6]
  3. 追溯记录    -> [成果1,6]
  4. 变更控制记录-> [成果5,7]
  5. 分析报告    -> [成果2,3,4,7]
  6. 接口需求规范-> [成果1,3]
  7. 软件需求规范-> [成果1]
  8. 验证准则    -> [成果2]

Note:

分析报告Analysis Record:分析的内容、分析人、所采用的分析准则(选择的准则或采用的优先级计划、决策准则、质量准则)、记录结果(决定或选择的内容、选择的原因、做出的假定、潜在风险)、正确性分析的方面(完整性、可理解性、可测试性、可验证性、可行性、有效性、一致性、内容的充分性)

软件需求说明书(Software Requirement Specification):识别适用的标准、识别软件架构考虑及约束条件、识别必需的软件元素、识别软件元素之间的关联关系、考虑给出以下信息(必需的软件性能特性、必需的软件接口、必需的安全特性、数据库设计需求、必需的错误处理及属性恢复机制、必需的资源消耗特性)

SWE.2软件架构设计

过程ID

SWE.2

过程名称

软件架构设计

过程目的

软件架构设计过程的目的是:建立软件架构设计,识别将哪些软件需求分配给软件的哪些要素,并依照定义的准则来评估软件架构设计。

过程成果

成功实施这个过程的结果如下:

1)定义了识别软件要素的软件架构设计;

2)将软件需求分配给软件的要素;

3)定义了每个软件要素的接口;

4)定义了软件要素的动态行为和资源消耗目标;

5)建立了软件需求与软件架构设计之间的一致性和双向可追溯性;

6)约定了软件架构设计,并与所有受影响方沟通。

基本实践

SWE.2.BP1: 开发软件架构设计。

开发并文档化软件架构设计,该设计基于软件功能性需求非功能性需求定义软件要素。[成果1]

注1: 将软件分解为适当的各层级上的要素,直至软件架构设计的最低层级要素,即详细设计种描述的软件组件。

SWE.2.BP2:分配软件需求。

将软件需求分配到软件架构设计的要素。 [成果2]

SWE.2.BP3:定义软件要素的接口。

识别、开发并记录软件要素的接口。[成果3]

SWE.2.BP4:描述动态行为。

评估并记录软件要素的时序和动态交互,以满足系统所需的动态行为。[成果4]

注2:动态行为取决于运行模式(例如:启动、关机、正常模式、标定、诊断等)、进程及进程间相互通信、任务、线程、时间片、中断等。

注3: 在评估动态行为时,宜考虑目标平台和目标对象的潜在负载。

SWE.2.BP5:定义资源消耗目标。

在适当的层级上确定并文档化软件架构设计的所有相关要素的资源消耗目标。[成果4]

注4:资源消耗通常取决于资源,如:内存(ROM、RAM、外部/内部EEPROM或数据闪存)、CPU负载等。

SWE.2.BP6:评估备选的软件架构。

定义架构的评估准则。根据定义的准则评估备选的软件架构,记录被选定的软件架构的选择理由。[成果1,2,3,4,5]

注5:评估准则可包括质量特性(模块性、可维护性、可扩展性、可扩缩性、可靠性、安全security可实现性和易用性)以及开发-购买-重用分析的结果。

SWE.2.BP7:建立双向可追溯性。

建立软件需求与软件架构设计要素之间的双向可追溯性。 [成果5]

注6:双向可追溯性覆盖软件需求向软件架构设计的要素的分配。

注7:双向可追溯性有助于覆盖率、一致性和影响分析。

SWE.2.BP8:确保一致性。

确保软件需求与软件架构设计之间的一致性。[成果1,2,5,6]

注8:一致性由双向可追溯性支持,并可通过评审记录来证明。

SWE.2.BP9:沟通约定的软件架构设计。

与所有相关方沟通已约定的软件架构设计及对软件架构设计的更新。[成果6]

输出

工作产品

  1. 软件架构设计->[成果1,2,3,4,5]
  2. 沟通记录    ->[成果6]
  3. 评审记录    ->[成果5]
  4. 追溯记录    ->[成果5]
  5. 接口需求规范->[成果3]

Note

软件架构设计包括内容有:

a. 软件架构整体描述;

b. 包含任务结构的运行系统描述;

c. 确定任务与进程之间的通信;

d. 识别必需的软件元素;

e. 识别自主开发及供应方提供的代码;

f. 识别软件元素之间的关联及依赖关系;

g. 确定数据存储及灾备方案;

h. 描述不同模型系列或配置如何衍生出产品变体;

i. 描述软件的动态行为(启动、关闭、软件升级、错误处理、恢复);

j. 确定数据存储位置及数据损坏的预防办法;

k. 描述哪些数据是在什么情况下是持续存在的;

l. 还要充分考虑以下内容(软件必需的性能特性、软件必需的接口、软件必需的安全特性、数据库设计需求)

SWE.3软件详细设计和单元构建

过程ID

SWE.3

过程名称

软件详细设计和单元构建

过程目的

软件详细设计和单元构建过程的目的是:为软件组件提供经过评估的详细设计,并定义和生成软件单元

过程成果

成功实施这个过程的结果如下:

1)开发了描述软件单元的详细设计

2)定义了各软件单元的接口;

3)定义了软件单元的动态行为;

4) 建立了软件需求软件单元之间的一致性和双向可追溯性;

建立了软件架构设计软件详细设计之间的一致性和双向可追溯性;

建立了软件详细设计软件单元之间一致性和双向可追溯性;

5)约定了软件详细设计该设计与软件架构设计的关系,并和所有受影响方沟通;

6)生成了软件详细设计所定义的软件单元

过程成果

SWE.3.BP1: 开发软件详细设计。

开发软件架构设计中定义的各软件组件的详细设计,该设计基于软件功能性需求非功能性需求定义软件单元。[成果1]

SWE.3.BP2:定义软件单元的接口。

识别、定义和文档化各软件单元的接口。[成果2]

SWE.3.BP3:描述动态行为。

评估文档化相关软件单元之间的动态行为和交互。[成果3]

注1:并非所有的软件单元都有动态行为可描述。

SWE.3.BP4:评估软件详细设计。

互操作性、交互、关键性、技术复杂性、风险和可测试性方面对软件详细设计进行评估。[成果1,2,3,4]

注2:评估结果能作为软件单元验证的输入。

SWE.3.BP5:建立双向可追溯性。

建立软件需求软件单元之间的双向可追溯性。

建立软件架构设计软件详细设计之间的双向可追溯性。

建立软件详细设计软件单元之间的双向可追溯性。[成果4]

注3:对以上方法进行组合,覆盖项目和组织需要,避免冗余。

注4:双向可追溯性有助于覆盖率、一致性和影响分析。

SWE.3.BP6:确保一致性。

确保软件需求软件单元之间的一致性。

确保软件架构设计、软件详细设计及软件单元之间的一致性。[成果4]

注5:一致性由双向可追溯性支持,并可通过评审记录来证明。

SWE.3.BP7:沟通约定的软件详细设计。

与所有相关方沟通已约定的软件详细设计及对软件详细设计的更新。[成果5]

SWE.3.BP8:开发软件单元。

根据软件详细设计,开发并文档化各软件单元的可执行形式。[成果6]

输出

工作产品

  1. 软件详细设计->[成果1,2,3]
  2. 软件单元    ->[成果6]
  3. 沟通记录    ->[成果5]
  4. 评审记录    ->[成果4]
  5. 追溯记录    ->[成果4]

SWE.4软件单元验证

过程ID

SWE.4

过程名称

软件单元验证

过程目的

软件单元验证过程的目的是:验证软件单元,以提供软件单元符合软件详细设计非功能性软件需求的证据

过程成果

成功实施这个过程的结果如下:

1)制订了包括回归策略在内的软件单元验证策略,以验证软件单元;

2)根据软件单元验证策略,制订了软件单元验证准则,以适于提供软件单元符合软件详细设计及非功能性软件需求的证据;

3)根据软件单元验证策略及软件单元验证准则,验证了软件单元并记录了结果;

4)建立了软件单元、验证准则及验证结果之间的双向可追溯性和一致性;

5)总结了单元验证结果,并与所有受影响方沟通

基本实践

SWE.4.BP1: 制订包括回归策略在内的软件单元验证策略。

制订软件单元验证策略(包括软件单元变更时实施再验证的回归策略)。验证策略应定义如何提供软件单元符合软件详细设计和非功能性需求的证据。[成果1]

注1:可能的单元验证的方法包括静态/动态分析、代码评审、单元测试等。

SWE.4.BP2:制订单元验证准则。

根据验证策略,制订单元验证准则,以适于提供软件单元及其在组件内的交互符合软件详细设计及非功能性需求的证据。对单元测试而言,该准则应定义在单元测试规范中。[成果2]

注2:可能的单元验证准则包括单元测试用例、单元测试数据、静态验证、覆盖率目标及编码规范(如MISRA规则)。

注3:单元测试规范的实施形式可为:例如自动测试台上的脚本。

SWE.4.BP3:执行软件单元的静态验证。

使用已定义的验证准则来验证软件单元的正确性记录静态验证的结果。[成果3]

注4:静态验证可包括静态分析、代码评审、依照编码规范和指南的检查、及其它方法。

注5: 不符合项的处理,见SUP.9.

SWE.4.BP4:测试软件单元。

根据软件单元验证策略,使用单元测试规范测试软件单元记录测试结果和日志。[成果3]

注6: 不符合项的处理,见SUP.9.

SWE.4.BP5:建立双向可追溯性。

建立软件单元与静态验证结果之间的双向可追溯性。

建立软件详细设计与单元测试规范之间的双向可追溯性。

建立单元测试规范与单元测试结果之间的双向可追溯性。 [成果4]

注7:双向可追溯性有助于覆盖率、一致性和影响分析。

SWE.4.BP6:确保一致性。

确保软件详细设计与单元测试规范之间的一致性。[成果4]

注8:一致性由双向可追溯性支持,并可通过评审记录来证明。

SWE.4.BP7:总结并沟通结果。

总结单元测试结果和静态验证结果,并与所有受影响方沟通。[成果5]

注9:在总结中提供来自测试用例执行的所有必要信息,以便其他方得以判断结果。

输出

工作产品

  1. 测试规范->[成果2]
  2. 测试计划->[成果1]
  3. 沟通记录->[成果5]
  4. 评审记录->[成果3,4]
  5. 追溯记录->[成果4]
  6. 验证结果->[成果3,5]
  7. 测试结果->[成果3,5]
  8. 分析报告->[成果3]

Note

测试规范说明书 Test Specification:包括测试设计规格书、测试用例规格书、测试过程规格书、识别回归测试的测试用例;对于系统集成测试,要识别必需的系统要素,例如硬件要素、接线要素、参数设定和数据库等;识别系统元素集成必要的序列或排序

测试计划Test Plan:分级的测试计划、测试策略(黑盒/白盒测试、系统边界测试、回归测试策略等);如有必要,编制综合测试计划

验证结果及测试报告Verification Result and Test Report:验证checklist、通过的项、失败的项、待验证的项、发现的问题issue、风险分析、解决方案、结论、签名确认。测试报告按照要求,形成测试日志分级、形成异常报告、形成测试报告分级。

SWE.5软件集成和集成测试

过程ID

SWE.5

过程名称

软件集成和集成测试

过程目的

软件集成和集成测试过程的目的是:将软件单元集成到更大的软件项,直至与软件架构设计相一致的完整的集成软件,并确保集成的软件项得到测试,以提供集成的软件项符合软件架构设计(包括软件单元之间和软件项之间的接口)的证据。

过程成果

成功实施这个过程的结果如下:

1)制订了与项目计划、发布计划和软件架构设计相一致的软件集成策略,以集成软件项;

2)制订了包括软件回归测试策略在内的软件集成测试策略,以测试软件单元之间和软件项之间的交互;

3)根据软件集成测试策略,开发了软件集成测试规范,以适于提供集成的软件项符合软件架构设计(包括软件单元之间和软件项之间的接口)的证据

4)根据集成策略集成了软件单元和软件项直至完整的集成软件

5)根据软件集成测试策略和发布计划选择了软件集成测试规范中的测试用例

6)使用选定的测试用例测试了集成的软件项,并记录了测试结果

7)建立了软件架构设计要素软件集成测试规范中的测试用例之间的一致性和双向可追溯性,并建立了测试用例与测试结果之间的一致性和双向可追溯性;

8)总结了软件集成测试结果,并与所有受影响方沟通

基本实践

SWE.5.BP1:制订软件集成策略

制订与项目计划和发布计划相一致的软件项集成策略。基于软件架构设计识别软件项,并定义其集成顺序。[成果1]

SWE.5.BP2:制订包含回归测试策略在内的软件集成测试策略

遵循集成策略,制订集成的软件项的测试策略。该策略包括当软件项发生变更时,对集成的软件项实施再测试的回归测试策略。[成果2]

SWE.5.BP3:开发软件集成测试规范。

根据软件集成测试策略,为各集成的软件项开发测试规范(包括各集成的软件项的测试用例)。测试规范应适于提供集成的软件项符合软件架构设计的证据。[成果3]

注1:符合架构设计是指,定义的集成测试适于证明软件单元之间的接口以及软件项之间的接口满足软件架构设计的规范。

注2:软件集成测试用例可关注:

  • 软件项之间正确的数据流
  • 软件项之间数据流的时效和时序依赖性
  • 所有软件项接口的数据的正确解释
  • 软件想之间的动态交互
  • 与接口的资源消耗目标的符合性

SWE.5.BP4:集成软件单元和软件项。

根据软件集成策略,将软件单元集成到软件项,进而将软件项集成到集成软件。[成果4]

SWE.5.BP5:选择测试用例。

软件集成测试规范中选择测试用例。根据软件合格性测试策略发布计划选定的测试用例应具备足够的覆盖率。[成果5]

SWE.5.BP6:执行软件集成测试。

使用选定的测试用例执行软件集成测试,并记录集成测试结果和日志。 [成果6]

注4:不符合项的处理,见SUP.9

注5:可用硬件的调试接口或仿真环境(例如,软件在环仿真)支持软件集成测试。

SWE.5.BP7:建立双向可追溯性。

建立软件架构设计要素软件集成测试规范中的测试用例之间的双向可追溯性。

建立软件集成测试规范中的测试用例软件集成测试结果之间的双向可追溯性。[成果7]

注7:一致性由双向可追溯性支持,并可通过评审记录来证明。

SWE.5.BP8:确保一致性。

确保软件架构设计要素软件集成测试规范中的测试用例之间的一致性。[成果7]

注8:在总结中提供来自测试用例执行的所有必要信息,以便其他地方可以判断结果。

SWE.5.BP9:总结和沟通测试结果。

总结软件集成测试结果,并与所有受影响方沟通。[成果8]

注8:在总结中提供来自测试用例执行的所有必要信息,以便其他方可以判断结果。

输出

工作产品

  1. 软件项  ->[成果4]
  2. 集成软件->[成果4]
  3. 测试规范->[成果3,5]
  4. 测试计划->[成果1,2]
  5. 沟通记录->[成果8]
  6. 评审记录->[成果7]
  7. 追溯记录->[成果7]
  8. 测试结果->[成果6,8]
  9. 编译清单->[成果4,7]

Note

软件项,两大块,一个是集成的软件,一个是文档。集成的软件可分为:源代码、软件元素、可执行代码、配置文件;文档包括:描述和识别源代码、描述和识别软件元素、描述和识别配置文件、描述和识别可执行代码、描述软件生命周期状态、描述归档和发布标准、描述软件单元编译、描述软件组件的构建

集成的软件:多个软件组件的集合。这里的软件一般是针对某一特定ECU配置的一组可执行文件以及有关的文档和数据。

构建列表Build list: 识别软件应用系统的聚合、识别所需的系统元素(参数设定、宏程序库、基本数据、作业控制语言等)、识别软件编译时必需的顺序序列、识别输入输出资源库。

SWE.6软件合格性测试

过程ID

SWE.6

过程名称

软件合格性测试

过程目的

软件合格性测试的目的是: 确保集成软件得到测试,以提供符合软件需求的证据。

过程成果

成功实施这个过程的结果如下:

1)制订了与项目计划和发布计划相一致的包括回归测试策略在内的软件合格性测试策略,以测试集成软件;

2)根据软件合格性测试策略,开发了集成软件的软件合格性测试规范,以适于提供符合软件需求的证据;

3)根据软件合格性测试策略和发布计划,选择了软件合格性测试规范中的测试用例

4)使用选定的测试用例测试了集成软件,并记录了软件合格性测试结果

5)建立了软件需求软件合格性测试规范中的测试用例之间的一致性和双向可追溯性,

建立了测试用例测试结果之间的一致性和双向的可追溯性;

6)总结了软件合格性测试结果,并与所有受影响方沟通。

基本实践

SWE.6.BP1: 制订包括回归测试策略在内的软件合格性测试策略

制订与项目计划和发布计划相一致的软件合格性测试策略。该策略包括当软件项发生变更时,对集成软件实施再测试的回归测试策略。[成果1]

SWE.6.BP2: 开发软件合格性测试规范。

根据软件合格性测试策略,基于验证准则,开发包含测试用例在内的软件合格性测试规范。测试规范应适于提供集成软件符合软件需求的证据。[成果2]

SWE.6.BP3:选择测试用例。

从测试规范中选择测试用例。根据软件合格性测试策略发布计划,选定的测试用例应具备足够的覆盖率。[成果3]

SWE.6.BP4:测试集成软件。

使用选定的测试用例测试集成软件。记录测试结果和日志。[成果4]

注1:不符合项的处理,见SUP.9。

SWE.6.BP5:建立双向可追溯性。

建立软件需求软件合格性测试规范中的测试用例之间的双向可追溯性。

建立软件合格性测试规范中的测试用例软件合格性测试结果之间的双向可追溯性。[成果5]

注2:双向可追溯性有助于覆盖率、一致性和影响分析。

SWE.6.BP6:确保一致性。

确保软件需求软件合格性测试规范中的测试用例的一致性。 [成果5]

注3:一致性由双向可追溯性支持,并可通过评审记录来证明。

SWE.6.BP7:总结和沟通结果。

总结软件合格性测试结果,并与所有受影响方沟通。[成果6]

注4:在总结中提供来自测试用例执行的所有必要信息,以便其他方判断结果。

输出

工作产品

  1. 测试规范->[成果2,3]
  2. 测试计划->[成果1]
  3. 沟通记录->[成果6]
  4. 评审记录->[成果5]
  5. 追溯记录->[成果5]
  6. 测试结果->[成果4,6]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/745897.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

交换机/路由器的存储介质-思科

交换机/路由器的存储介质-思科 本文主要介绍网络设备的存储介质组成。 RAM(random-accessmemory,随机访问存储器) RAM中内容断电丢失,主要用于运行操作系统、运行配置文件、IP 路由表:、ARP 缓存、数据包缓存区。 ROM(read-only memory,只…

uniapp遇到的问题

【uniapp】小程序中input输入框的placeholder-class不生效解决办法 解决:写在scope外面 uniapp设置底部导航 引用:https://www.jianshu.com/p/738dd51a0162 【微信小程序】moveable-view / moveable-area的使用 https://blog.csdn.net/qq_36901092/…

持续创新引领计算机行业在数字经济时代的航向

受2024年政府工作报告的启发,计算机行业正站在新的发展十字路口。政府报告不仅为计算机行业的未来描绘了清晰的轮廓,更为行业的实践提供了扎实的政策支撑和发展空间。本文将深入分析计算机行业在数字化经济大潮中的新机遇与挑战,并对企业和从…

服务器数据恢复—raid5热备盘上线同步数据失败的如何恢复数据

服务器数据恢复环境&故障&分析: 一台存储上有一组由多块硬盘组建的raid5阵列,该raid5阵列中的一块硬盘掉线,热备盘自动上线同步数据的过程中,raid阵列中又有一块硬盘掉线,热备盘的数据同步被中断,r…

【刷题训练】LeetCode:557. 反转字符串中的单词 III

557. 反转字符串中的单词 III 题目要求 示例 1: 输入:s “Let’s take LeetCode contest” 输出:“s’teL ekat edoCteeL tsetnoc” 示例 2: 输入: s “Mr Ding” 输出:“rM gniD” 思路: 第一步&am…

Android studio 性能调试

一、概述 Android studio 的Profiler可用来分析cpu和memory问题,下来进行说明介绍。 二、Android studio CPU调试 从开发模拟器或设备中启动应用程序; 在 Android Studio 中,通过选择View > Tool Windows > Profiler启动分析器。 应…

Mac-自动操作 实现双击即可执行shell脚本

背景 在Mac上运行shell脚本,总是需要开启终端窗口执行,比较麻烦 方案 使用Mac上自带的“自动操作”程序,将shell脚本打包成可运行程序(.app后缀),实现双击打开即可执行shell脚本 实现细节 找到Mac上 应用程序中的 自动操作&am…

Selenium 学习(0.20)——软件测试之单元测试

我又(浪完)回来了…… 很久没有学习了,今天忙完终于想起来学习了。没有学习的这段时间,主要是请了两个事假(5工作日和10工作日)放了个年假(13天),然后就到现在了。 看了下…

【大模型系列】图片生成(DDPM/VAE/StableDiffusion/ControlNet/LoRA)

文章目录 1 DDPM(UC Berkeley, 2020)1.1 如何使用DDPM生成图片1.2 如何训练网络1.3 模型原理 2 VAE:Auto-Encoding Variational Bayes(2022,Kingma)2.1 如何利用VAE进行图像增广2.2 如何训练VAE网络2.3 VAE原理2.3.1 Auto-Encoder2.3.2 VAE编码器2.3.3 VAE解码器 3 …

【UE5】持枪状态站立移动的动画混合空间

项目资源文末百度网盘自取 创建角色在持枪状态站立移动的动画混合空间 在BlendSpace文件夹中单击右键选择动画(Animation)中的混合空间(Blend Space) 选择SK_Female_Skeleton 命名为BS_RifleStand 打开 水平轴表示角色的方向,命名为Direction,方…

CASIA-HWDB手写体数据集gnt生成为png格式

👑一、数据集获取 1.1 官方链接获取gnt文件 http://www.nlpr.ia.ac.cn/databases/download/feature_data/HWDB1.1trn_gnt.ziphttp://www.nlpr.ia.ac.cn/databases/download/feature_data/HWDB1.1tst_gnt.zip 1.2 百度网盘获取gnt文件 链接:https://pan.baidu.com/s/1pKa…

Redis 的并发竞争问题是什么?如何解决这个问题?了解 Redis 事务的 CAS 方案吗?

目录 一、面试官心理分析 二、面试题剖析 一、面试官心理分析 这个也是线上非常常见的一个问题,就是多客户端同时并发写一个key,可能本来应该先到的数据后到了,导致数据版本错了;或者是多客户端同时获取一个 key,修改值之后再写回…

KKVIEW: 远程控制软件哪个好用

远程控制软件哪个好用 随着科技的发展和工作方式的改变,远程控制软件越来越受到人们的关注和需求。无论是在家中远程办公,还是技术支持人员为远程用户提供帮助,选择一款高效稳定的远程控制软件至关重要。在众多选择中,有几款远程…

51-30 World Model | 自动驾驶的世界模型:综述

24年3月,澳门大学和夏威夷大学联合发布的工作,World Models for Autonomous Driving: An Initial Survey。花时间反复看了几遍,刚开始觉得世界模型没用,空洞无序,根本不可能部署到实车上,后面逐渐相信&…

idea 导入项目

idea 导入项目并运行 导入设置设置 jdk查看maven 设置 导入 在项目首页 或者 file 选择 open, 然后选择项目根路径 设置 设置 jdk 查看maven 设置

基于java实用的音乐软件微信小程序的设计与实现【附项目源码】分享

基于实用的音乐软件微信小程序的设计与实现: 源码地址:https://download.csdn.net/download/weixin_43894652/88842586 一、引言 随着移动互联网的普及和微信小程序的兴起,音乐类小程序成为了用户随时随地享受音乐的重要工具。本需求文档旨在详细阐述一…

c++简单使用

取消同步流是为了解决C有时遇到空格或回车&#xff08;不到\0&#xff09;就会停下的问题 #include<bits/stdc.h> using namespace std; int main() {//取消同步流ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);int a, b;cin >> a>> b;cout << …

拦截器和过滤器(原理区别)

目录 一、拦截器 拦截器是什么 拦截器的使用 拦截器的实现 导入依赖 实现HandlerInterceptor接口 注册拦截器 拦截器的生命周期 拦截器的执行顺序 拦截器的生命周期 多个拦截器的执行流程 拦截器的实际使用 拦截器实现日志记录 实现接口幂等性校验 拦截器的性能…

STL——map set

文章将解决一下几个问题&#xff1a; 1.什么是set 2.什么是map 3.set应用场景 4.map应用场景 序列式容器和关联式容器 数据结构有序列式容器和关联式容器&#xff0c;序列式容器一般有vector,list,deque…&#xff0c;但关联式容器中就有map&#xff0c;关联式容器也是用来存…

Gis导航控件

收费工具&#xff0c;白嫖党、学生党、闹眼子党勿扰 收费金额为100元 1 概述 最近研究了一下电子海图相关内容&#xff0c;发现海图解析和显示相关的功能&#xff0c;都没有好用的开源工具… 在Gis地图显示那一块&#xff0c;有一个导航控件小控件&#xff0c;好像还没有人专门…