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

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

3天内不再提示

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

星星科技指导员 来源:嵌入式计算设计 作者:GWYN FISHER 2022-11-07 14:50 次阅读

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

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

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

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

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

建筑分析的强大功能

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

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

隔离可重复使用的组件

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

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

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

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

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

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

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

可移植到新平台

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

重用的架构

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

审核编辑:郭婷

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

    关注

    41

    文章

    6548

    浏览量

    110495
  • 无人驾驶
    +关注

    关注

    98

    文章

    4036

    浏览量

    120306
收藏 人收藏

    评论

    相关推荐

    智慧楼宇可视化的优点

    智慧楼宇可视化是指通过数据可视化技术来展示和分析楼宇的各种数据,为楼宇管理者和用户提供直观、清晰的信息展示和决策支持。以下是智慧楼宇可视化的优点,详细介绍其在楼宇管理和运营中的重要作用: 1.实时
    的头像 发表于 11-19 14:25 122次阅读

    工业数据可视化管理平台是什么

    数据可视化管理平台应运而生,它以其独特的功能和优势,正在成为工业数字转型的重要工具。 工业数据可视化管理平台的定义 工业数据可视化管理平台是一种集成了数据采集、处理、分析和展示功能的
    的头像 发表于 08-28 14:21 257次阅读

    智慧地铁站可视化建设的意义

    地铁站 可视化建设的意义、关键技术和应用场景。 智慧地铁站可视化的意义 智慧地铁站可视化建设是指通过信息技术、物联网技术和大数据分析等手段,实现地铁站内设备、乘客流动、安全状况等各类数
    的头像 发表于 07-26 14:16 224次阅读

    大屏数据可视化 开源

    在当今信息爆炸的时代,数据已经成为各个行业决策制定和业务发展的关键。为了更直观、准确地理解和利用海量数据, 大屏数据可视化 成为一种强大的工具。通过将数据以图表、图形等形式展示在大屏幕上,不仅
    的头像 发表于 06-27 16:06 378次阅读
    大屏数据<b class='flag-5'>可视化</b> 开源

    如何实现园区大屏可视化

    孪生可视化 构建平台利用Web三维可视化技术对现实场景进行仿真,实现园区级业务场景 的可视化呈现,助力企业快速完成项目的实施。实现园区场景立体可先,极致可视。那么,今天古河云科技就来给
    的头像 发表于 06-19 15:39 385次阅读
    如何实现园区大屏<b class='flag-5'>可视化</b>?

    态势数据可视化技术有哪些

    智慧华盛恒辉态势数据可视化技术是一种将数据以图形、图像、动画等视觉形式展现出来的技术,特别是在处理和分析态势数据时,该技术能够将复杂的数据转化为直观、易于理解的视觉表现。以下是态势数据可视化技术
    的头像 发表于 06-11 15:47 352次阅读

    智慧大屏是如何实现数据可视化的?

    智慧大屏,作为数据可视化的重要载体,已在城市管理、交通监控、商业运营等领域广泛应用。本文旨在阐述智慧大屏实现数据可视化关键技术和方法,包括数据源管理、数据处理、视觉编码、用户界面与交互设计等。
    的头像 发表于 06-04 15:02 571次阅读
    智慧大屏是如何实现数据<b class='flag-5'>可视化</b>的?

    大屏数据可视化的作用和意义

    大屏数据可视化是指利用大屏幕设备展示数据信息,通过图表、图像、动画等视觉手段将数据呈现出来,以便用户能够直观、清晰地理解数据背后的含义和关联。在信息化时代,数据已经成为企业决策和运营的重要依托,而
    的头像 发表于 06-03 17:56 634次阅读

    讯维智能可视化综合平台在智慧城市建设中的关键作用

    讯维智能可视化综合平台在智慧城市建设中扮演着关键的角色,主要体现在以下几个方面: 数据整合与可视化展示:智慧城市的建设涉及到大量数据的收集、处理和分析。讯维智能可视化综合平台能够将城市
    的头像 发表于 05-11 16:32 359次阅读

    FUXA基于Web的过程可视化软件案例

    FUXA——基于Web的过程可视化软件
    发表于 04-24 18:32 2次下载

    态势数据可视化技术有哪些

    智慧华盛恒辉态势数据可视化技术是一种将复杂、动态的态势数据以直观、易于理解的方式展现出来的技术手段。以下是几种主要的态势数据可视化技术: 网络安全态势指标可视化分析系统及方法,针对安全态势指标不准
    的头像 发表于 04-22 15:17 382次阅读

    迎接数智时代:数字经济引领可视化转型

    数字经济和数字转型正推动企业进行变革,可视化和数智化成为关键驱动力。NFC技术为企业提供了更便捷、更安全的数据传输途径,加速数字转型。企业应打造
    的头像 发表于 01-15 17:59 512次阅读
    迎接数智时代:数字经济引领<b class='flag-5'>可视化</b>转型

    可视化全程追溯,可视化资产管理系统

    摘要:本文将从应用价值、系统功能、资产盘点、资产出入库、资产定位以及系统实现能效等几个方面,阐述新导物联可视化资产管理系统为企业提供的优势,以提升资产管理的效率和准确度。 一、应用价值 可视化资产
    的头像 发表于 01-11 13:54 463次阅读
    <b class='flag-5'>可视化</b>全程追溯,<b class='flag-5'>可视化</b>资产管理系统

    一键生成可视化图表/大屏 这13款数据可视化工具很强大

    选择何种数据可视化工具。那么你来对地方了,往下看。 什么是数据可视化? 数据可视化是创建数据集趋势、模式和关键见解的可视化表示的过程。数据
    的头像 发表于 12-19 17:27 5268次阅读
    一键生成<b class='flag-5'>可视化</b>图表/大屏 这13款数据<b class='flag-5'>可视化</b>工具很强大

    数字时代:关于数据可视化的定义/优势及示例

    毫无意义和难以管理。这就是数据可视化发挥关键作用的地方。 数据可视化的定义 “数据可视化”的定义是广泛的。但大多数定义侧重于数据与计算机技术之间的联系,以便将数据转换为视觉形式。不管如
    的头像 发表于 12-12 18:04 837次阅读
    数字时代:关于数据<b class='flag-5'>可视化</b>的定义/优势及示例