国家航空航天实验室证明了基于模型的设计对DO-178B飞行软件开发的好处

挑战

加快DO-178B A级认证的飞行软件的开发

完成使用Simulink和嵌入式编码,开发效率提高进行量化失速警告系统试点项目,并采用基于模型的设计为未金宝app来的DO-178项目

结果

  • 代码分析和设计时间减半
  • 建立集成的工作流
  • 生成一致的高质量代码

“金宝appSimulink和基于模型的设计减少为安全关键嵌入式系统升级功能,代码分析时间和设计时间所需的工作量。Simulink中与DO-178过程中的兼金宝app容性让我们放心地使用基于模型的设计为我们即将推出的DO-178项目。”

Manju Nanda,国家航空航天实验室

国家航空航天实验室是印度民用部门唯一的政府航空航天研发实验室。csil - nal由美国科学与工业研究委员会(Council of Scientific and Industrial Research)建立,有三重使命:开发具有强大科学内涵的航空航天技术,设计和制造中小型民用飞机,并支持所有国家航空航天项目。金宝app

作为这一任务的一部分,csil - nal公司开发了一种14座、多用途轻型运输飞机SARAS。SARAS配备了最先进的失速警报系统和飞机接口计算机(SWS/AIC),当飞机有失速危险时,它会向飞行员发出警报。最近,CSIR-NAL工程师完成了一个SWS/AIC试点项目,在该项目中,他们量化了基于模型的设计相对于DO-178B a级软件开发的传统方法的优势。除此之外,他们还发现了MATLAB的基于模型的设计®和Sim金宝appulink®减少了75%,进行功能升级所需的工作量。

“在过去,功能升级需要手工迭代进行设计更改、代码修改、重新测试和生成报告,”CSIR-NAL的高级首席科学家J. Jayanthi说。使用基于模型的设计,升级变得很简单,因为需求、模型、代码、测试和报告之间的联系已经建立起来了。我们只是在模型层次上做了一些改变,所有的事情——包括生成的代码——都到位了。”

挑战

CSIR-NAL最初是由手工编码中C.算法虽然软件最终认证DO-178B A级实施的SARAS SWS / AIC体系,努力花的时间比原计划。该小组归因于延迟的要求,实现的代码,并进行验证进行的试验之间的差距。为了弥补这些差距,球队不得不进行大量的人工活动,包括跟踪代码发回的要求,进行覆盖分析,以及生产认证所需的文档。

CSIR-NAL工程师寻求一个,纳入他们现有的工具进行需求管理和测试工作流程中的这些手工活动自动化。

CSIR-NAL工程师使用Simulink、Stateflow完成了SWS试验项目金宝app®,以及嵌入式编码器®

他们设计的SWS在Simulink,Statefl金宝appow的使用模型来决策逻辑。

当他们开发的模型,他们坚持MathWorks的汽车顾问委员会(MAAB)和DO-178B高完整性建模标准。他们使用的模型标准检查Simulink中检查™,以确保符合标准。金宝app

CSIR-NAL工程师使用Simulink De金宝appsign Verifier™从Simulink和Stateflow模型生成测试用例,并在运行模拟以执行测试时执行模型覆盖率分析。

有关从他们的模型5000行C代码生成的团队使用嵌入式编码器。对于每一个SWS子系统,他们比较了代码,它们已手写初步实施生成的代码。

通过Sim金宝appulink需求,工程师们将SWS模型的元素与Microsoft中的需求联系起来®词。生成的代码包括需求标签作为注释,使它们能够跟踪需求到模型和最终代码。

团队利用Simulink和LDRA工具套件之间的集成来简化代码覆盖率分析和其他软件级测试活动,并建立模金宝app型和测试用例之间的可跟踪性。

最后,团队使用Simulink Report 金宝appGenerator™来记录认证信用所需的模型和代码覆盖率结果。

根据试点项目的成功,CSIR-NAL计划使用基于模型的设计为未来的DO-178B和DO-178C A级项目。

结果

  • 代码分析和设计时间减半。“对于SWS试点项目,我们收集的度量标准与我们的传统方法相比,”馒头南大,首席科学家说。“除了进行功能升级所需的工作量减少75%,我们看到了代码分析时间缩短了48%,而在设计时减少使用基于模型的设计50%,使我们能够用更少的人做更多。”

  • 建立集成的工作流。“随着基于模型的设计,我们有一个明确的DO-178工作流程,与我们现有的工具集成,”贾雅说。“我们可以跟踪Word或Telelogic的要求®®在LD金宝appRA中模拟模型、生成的代码和代码级测试。我们可以使用Simulink报金宝app告生成器和DO鉴定工具包来获得DO-178认证。”

  • 生成一致的高质量代码。“与嵌入式编码生成的代码是一样好,我们的手写代码,而且往往更紧凑,以及,”贾雅说。“我们可以跟踪代码回我们的模式和要求,因为它是从我们的模型产生的,它是更加一致和显著更易于维护比手写代码。”