根据DO-178B DO-178C标准,耦合验证是安全关键型航空电子软件的一项强制性要求。VectorCAST/Coupling通过首先利用静态分析识别耦合关系,然后在应用程序运行期间对其进行运行时验证,从而满足这些要求。
VectorCAST/Coupling可在现有的VectorCAST/QA项目或VectorCAST Cover环境中运行,无需单独配置。静态分析和运行时分析均针对软件组件进行,这些组件是由一个或多个C或C++源文件组成的用户自定义集合。
VectorCAST/Coupling适用于哪些人群?
VectorCAST/Coupling适用设计保证级别A、B或C,遵循DO-178B或DO-178C标准的航空电子项目中的验证工程师和软件负责人。它需要现有的VectorCAST/QA环境。
DO-178耦合要求
DO-178C定义两种必须进行验证的耦合类型。
数据耦合
软件组件依赖于并非完全由该组件自身控制的数据。
(DO-178C附录B,术语表)
控制耦合
一个软件组件影响另一个软件组件执行的方式或程度。
(DO-178C附录B,术语表)
从DO-178B到DO-178C,要求是如何加强的
DO-178B要求确认数据与控制耦合是否按预期存在。DO-178C进一步强化这一要求,规定团队必须确认基于需求的测试确实验证了数据与控制耦合。若要符合DO-178C规定的DAL A、B或C级别要求,必须证明以下三点。
- 数据与控制耦合符合要求且符合预期设计
- 在执行基于需求的测试后,已对数据与控制耦合进行覆盖率分析
- 已实施动态覆盖率分析,仅靠静态分析已不再足够
VectorCAST/Coupling可满足上述所有三项要求。
VectorCAST/Coupling的优势
将原本需要手动完成的分析工作自动化
在C或C++代码库中手动识别和验证耦合关系既耗时又容易出错。VectorCAST/Coupling能够自动完成静态识别和运行时验证,从而显著节省时间并提高准确性。
利用现有的VectorCAST环境
VectorCAST/Coupling可直接与现有的VectorCAST/QA项目或VectorCAST Cover环境集成。无需单独配置或并行基础设施。
满足DO-178C动态分析要求
仅靠静态分析无法满足DO-178C的耦合验证要求。VectorCAST/Coupling提供运行时验证组件,可完善合规性证明。
自动生成符合审计要求的报告
耦合覆盖率报告、访问顺序完整报告以及访问顺序错误报告均会自动生成,并按认证审查要求进行结构化整理。
工作原理
耦合分析的目标是证明两点:一是实现中架构组件之间的控制流和数据流与预期设计相符;二是这些流已经通过测试得到验证。VectorCAST/Coupling通过一个两阶段的过程来提供这一证明。
第一阶段:静态分析
VectorCAST/Coupling对您C或C++源文件进行静态分析,以识别软件组件之间的数据和控制耦合关系。组件是指由一个或多个源文件组成的用户定义集合。静态分析会生成组件报告,列出每个组件的全局数据对象和函数,并建立基线耦合图。
第二阶段:运行时验证
在应用程序执行过程中,VectorCAST/Coupling会对已识别的耦合关系进行插桩,并验证其行为是否符合设计意图。系统会捕获运行时结果,并将其与静态分析生成的耦合图进行对比。这种动态验证正是DO-178C除静态分析之外所要求的。
耦合覆盖率报告
VectorCAST/Coupling会生成三份报告,每份报告在验证和审核工作流程中都发挥着不同的作用。
耦合覆盖率报告
将静态分析和运行时分析的结果整合在一起,形成对整个应用程序中耦合覆盖率的高层级概览。其中包括组件报告,列出每个组件的全局数据对象和函数。
耦合访问令完整报告
显示所有配对组合按测试结果排序的访问顺序,以验证所有测试均正确遵循软件架构。用于证明耦合行为的全面覆盖。
耦合访问顺序错误报告
仅针对存在错误的配对,按测试结果显示访问顺序。这使验证工程师能够高效地追踪访问顺序违规情况,而无需逐一分析完整的结果集。
常见问题

