0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

代码重用的架构可视化关键

星星科技指导员 来源:嵌入式计算设计 作者:GWYN FISHER 2022-11-07 14:50 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

军事和航空电子软件系统的开发人员可以做些什么来利用软件重用,同时确保软件尽可能无错误和安全?

在所有行业中,软件正变得越来越普遍。以波音喷气式飞机为例。波音 787 飞机飞行控制系统的代码数为 650 万行,是 777 的三倍。鉴于这种增长趋势,为每个新项目从头开始重写整个系统既不现实也不切实际。

代码的重用已成为一种通用的软件开发最佳实践。它通过提高开发效率来加快上市时间,同时最大限度地降低与全新开发相关的成本。代码重用的实践还使开发组织能够利用从现有代码库中吸取的经验教训。

但是,通过代码重用,必须在风险和回报之间取得平衡。当旧软件移植到新的操作系统或与新代码结合使用时,以前潜在的错误可能会成为活动的关键缺陷或高风险的安全漏洞。在关键任务的军事和航空电子系统中,软件缺陷可能导致伤害、代价高昂的故障,甚至生命损失。

事实上,不当的遗留代码重用是1996年阿丽亚娜5号(无人驾驶)航天器自毁的根本原因。该代码在飞机以前的版本中安全运行,但执行上下文发生了变化,将阿丽亚娜4中的潜在错误转变为导致其继任者在发射后37秒爆炸的关键错误。

建筑分析的强大功能

在具有大型且极其复杂的代码库的行业中,例如军事和航空电子设备,成功重用遗留代码的一个关键要素是可视化和分析软件系统架构的能力。领先的源代码分析 (SCA) 工具为软件系统架构师、开发经理和个人软件开发人员提供了直接从现有源代码进行软件设计的图形视图。此图形视图提供了对应用程序结构和设计的全面了解,使团队能够评估接口、关系和逻辑流,以确定在何处以及如何重用现有代码。清楚地了解系统的组件及其相互关系和依赖关系对于提高软件的质量和安全性至关重要。此外,还需要能够记录系统架构,以便在航空电子空间内实现符合DO-178B标准。

重用旧代码时,系统架构的全面视图可以通过以下方式帮助开发团队。

隔离可重复使用的组件

将旧版软件应用程序中的组件重用于新应用程序时,有必要最大程度地减少这些组件对软件系统其他部分的依赖。为此,设计人员必须确保组件仅包含与组件功能相关的实体。系统架构在各个级别的完整视图使开发人员能够隔离可重用的组件并重新组织它们,以实现最有效的代码重用。

评估和提高软件系统设计的质量

软件系统的物理设计可能与其高级逻辑设计几乎没有相似之处。通过系统架构的详细视图,可以:

导航系统层次结构并探索其结构

查看组件对其他组件的依赖关系

查看系统中不同组件之间的关系

通过这种观点,可以发现当前实现和设计意图之间的不一致,包括不适当的关系和依赖关系,以及在软件层次结构的不同级别中重复的错误。这种理解水平使开发团队能够评估物理软件系统的质量,并在系统上实现所需的逻辑设计。

可移植到新平台

回收代码经常用于为最初开发本机代码的平台以外的平台设计的系统中。确保内部或第三方代码在新平台上按设计执行具有挑战性。但是,全面的系统体系结构视图可以通过揭示应用程序对外部环境的依赖关系来提供帮助。通过准确理解代码及其设计,开发团队可以快速确定移植工作的范围和所需的操作。

重用的架构

对于军事和航空电子软件开发团队来说,全面了解和分析其软件系统架构对于确保在重用旧软件时获得高质量、安全的结果至关重要。使用源代码分析工具的体系结构功能,大大降低了与代码重用相关的风险,通过更全面的设计规划提高了生产率,并简化了实现 DO-178B 合规性所需的工作。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制系统
    +关注

    关注

    41

    文章

    6893

    浏览量

    113544
  • 无人驾驶
    +关注

    关注

    99

    文章

    4255

    浏览量

    126020
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于 HT 技术的园区元宇宙可视化管理平台

    在数字转型浪潮下,园区管理对智能可视化的需求日益迫切。本文基于 HT(Hightopo)技术栈,不依赖任何第三方插件,从技术开发视角,详细阐述园区元宇宙智慧综合治理可视化管理平台
    的头像 发表于 11-07 14:54 142次阅读
    基于 HT 技术的园区元宇宙<b class='flag-5'>可视化</b>管理平台

    光伏电站可视化的实现

    实现光伏电站可视化,核心是在于通过直观的视觉界面,解决传统运维中低效巡检、数据孤岛、被动响应等痛点,从而提升运营效率并提供决策支持。这是一种有效的技术手段,通过数字孪生、三维建模、数据融合等技术
    的头像 发表于 10-21 17:29 856次阅读
    光伏电站<b class='flag-5'>可视化</b>的实现

    如何使用协议分析仪进行数据分析与可视化

    使用协议分析仪进行数据分析与可视化,需结合数据捕获、协议解码、统计分析及可视化工具,将原始数据转化为可解读的图表和报告。以下是详细步骤及关键方法,涵盖从数据采集到可视化的全流程:一、数
    发表于 07-16 14:16

    结构可视化:利用数据编辑器剖析数据内在架构

    结构可视化聚焦于展示数据的内部结构和各部分之间的关系,使企业能够深入理解数据的组织方式和层次体系,从而更好地进行数据管理和分析。通过结构可视化,企业可以清晰地看到数据的层次结构、关联关系以及数据流
    的头像 发表于 05-07 18:42 406次阅读

    VirtualLab Fusion应用:3D系统可视化

    描述和F-Theta透镜的应用示例。 光学系统的3D-可视化 VirtualLab Fusion提供的工具可以实现光学系统的3D可视化,因此可以用于检查元件的位置,以及快速了解系统内部的光传播情况
    发表于 04-30 08:47

    可视化组态物联网平台是什么

    可视化组态物联网平台是物联网技术与组态技术相结合的产物,是通过提供丰富的图形组件和可视化元素,让用户能够以直观、便捷的方式对物联网数据进行监控、分析和管理的平台。以下是其具体介绍: 定义 组态
    的头像 发表于 04-21 10:40 693次阅读

    可视化数据大屏:连线构建视觉新秩序 #数据可视化 #可视化大屏

    可视化
    阿梨是苹果
    发布于 :2025年03月18日 16:12:04

    工业可视化监控平台可以接入哪些设备数据

    设备运行状态、生产流程等信息,以直观、可视化的方式呈现出来,为企业的生产决策、设备管理、安全保障等提供关键支持。那么,工业可视化监控平台可以接入哪些设备数据呢? 以下是一些常见的设备类型及其数据: 1. 传感器:包括温度传
    的头像 发表于 02-25 16:29 639次阅读
    工业<b class='flag-5'>可视化</b>监控平台可以接入哪些设备数据

    VirtualLab Fusion中的可视化设置

    摘要 VirtualLab Fusion中的全局选项对话框可以轻松定制软件的外观和感觉。还可以保存和加载全局选项文件,以便可以轻松地将偏好设置从一个设备转移到另一个设备。本文档说明了与可视化和结果
    发表于 02-25 08:51

    VirtualLab Fusion应用:光波导k域布局可视化(“神奇的圆环”)

    特定光波导布局的光导和耦合条件。 概念 方向转换器计算器 可以通过“开始”>“计算器”找到方向转换器计算器,这有助于演示指定角度的不同方式。 k域可视化 k域可视化:平面波的传播
    发表于 02-21 08:53

    七款经久不衰的数据可视化工具!

    数据量的激增,单纯通过数字和文本来分析数据已不再高效。数据可视化则提供了一种直观、互动性强的方式,帮助人们通过视觉元素,如柱状图、折线图、饼图、热力图等图表形式,理解复杂的数据关系。 二、数据可视化
    发表于 01-19 15:24

    光学系统的3D可视化

    **摘要 ** 为了从根本上了解光学系统的特性,对其组件进行可视化并显示光的传播情况大有帮助。为此,VirtualLab Fusion 提供了显示光学系统三维可视化的工具。这些工具还可用于检查元件
    发表于 01-06 08:53

    什么是大屏数据可视化?特点有哪些?

    大屏数据可视化是指通过大屏幕展示大量数据和信息,以直观、可视化的方式帮助用户理解和分析数据。这种展示方式通常用于展示复杂的数据集、实时监控系统、企业管理仪表盘等。以下是关于 大屏数据可视化 的详细
    的头像 发表于 12-16 16:59 999次阅读

    如何找到适合的大屏数据可视化系统

    选择合适的大屏数据可视化系统是企业或组织在数字转型过程中至关重要的一步。一个优秀的大屏数据可视化系统能够实时呈现关键业务数据,提升决策效率,同时提供直观、易于理解的视觉呈现,助力企业
    的头像 发表于 12-13 15:47 799次阅读