● 摘要
随着软件系统实现的功能持续增多,各个领域对软件的依赖越来越高。软件经常被应用于安全相关领域,失效会导致严重的后果。软件可靠性成为了如今软件工程关注的重点。作为一种安全关系软件系统,机载软件系统要求在适航认证或投入实际使用前提供证据证明系统是安全可靠的。
本文针对机载嵌入式软件的可靠性评估要求,提出了数据模型以明确并收集可靠性评估所需的过程数据,并在模型和多种检验规则的基础上,对数据进行有效性和一致性的检验。可靠性评估所需的软件测试过程数据涉及多种数据源,散布在各种不同的测试过程文档、软件开发过程文档和相关数据库中。不仅数据种类多,而且数据间存在复杂的关联关系。不仅如此,针对标准软件开发过程模型或者开发指南,例如RTCA DO-178B,每个软件项目都会在开发与测试过程中有个性化的活动。如何适应这些个性化的差异从而收集相应的数据,并分析数据源中数据可能存在的不一致、数据重复、数据不完整等问题是本文研究的重点研究内容。
本文依据RTCA DO-178B标准设计了面向可靠性评估的软件测试过程数据模型。该模型提供了一个整体视图,确保可靠性评估时的数据完整性,定义了数据类型和数据之间的关联,确保数据的有效性和一致性。数据模型需要与相应的支持工具进行配合才可以用于数据收集和管理。通过数据模型,该工具可将数据收集中产生的中间数据导入数据库,简化数据管理。数据元模型为工具的核心,可表示和存储数据模型及数据实例,以支持在数据模型和数据实例中进行数据分析。
本文针对可靠性评估关注的数据有效性要求及测试有效性要求,提出了5种数据检验手段,并参考RTCA DO-178B和相关研究,选取了3种测试充分性准则分析软件测试过程,包括代码结构覆盖分析、需求覆盖分析、测试工作量和代码复杂度相关性分析。本文研制的数据管理平台支持数据建模、收集、管理和分析。通过实际的案例分析,原型工具的有效性得到了验证。