首页> 外文期刊>Программирование >ОБРАТНАЯ СОВМЕСТИМОСТЬ ПРОГРАММНЫХ ИНТЕРФЕЙСОВ: ШАГИ К АВТОМАТИЧЕСКОЙ ВЕРИФИКАЦИИ
【24h】

ОБРАТНАЯ СОВМЕСТИМОСТЬ ПРОГРАММНЫХ ИНТЕРФЕЙСОВ: ШАГИ К АВТОМАТИЧЕСКОЙ ВЕРИФИКАЦИИ

机译:软件界面向后兼容性:自动验证的步骤

获取原文
获取原文并翻译 | 示例
           

摘要

В данной статье рассматриваются проблемы контроля обратной совместимости между новыми и старыми версиями базовых программных компонентов (библиотек). Окружение Linux рассматривается в качестве основного примера. Нарушение обратной совместимости в новых версиях программных компонентов может привести к некорректной работе (на бинарном уровне) или невозможности перекомпиляции (на уровне исходных кодов) пользовательских приложений, нацеленных на использование предыдущих версий, при попытке перехода на новую версию компонента. В статье описаны типичные причины, приводящие к нарушению обратной совместимости на бинарном уровне, а также представлен новый подход к автоматическому выявлению этих причин на стадии разработки программных компонентов (основное внимание уделено анализу изменений в структуре интерфейсов). Языки Си/С++ взяты за основу для демонстрации подхода, хотя предлагаемый подход может быть применен и к другим языкам программирования, таким как Java или языкам из Microsoft Visual Studio (C#, Visual Basic и др.). В отличие от существующих аналогов, предлагаемый подход может выявлять широкий спектр проблем обратной совместимости благодаря анализу изменений в сигнатурах функций и определений типов данных, извлекаемых из заголовочных файлов компонентов в дополнение к анализу символов исполняемых файлов. Также в данной статье рассмотрен инструмент, реализующий предлагаемый подход, и результаты практического применения этого инструмента. Шаги к дальнейшему улучшению качества автоматической верификации обратной совместимости обсуждаются в заключении.
机译:本文讨论了控制基本软件组件(库)的新旧版本之间的向后兼容性的问题。以Linux环境为基本示例。在新版本的软件组件中违反向后兼容性可能会导致错误的操作(在二进制级别)或无法重新编译(在源代码级的)自定义应用程序,这些自定义应用程序在尝试升级到组件的新版本时会使用以前的版本。本文介绍了导致在二进制级别违反向后兼容性的典型原因,并提出了一种在软件组件开发阶段自动识别这些原因的新方法(主要关注接口结构的更改分析)。尽管建议的方法可以应用于其他编程语言,例如Java或Microsoft Visual Studio的语言(C#,Visual Basic等),但C / C ++语言是演示该方法的基础。与现有的方法不同,所提出的方法除了分析可执行文件符号之外,还可以通过分析从组件头文件提取的功能签名和数据类型定义的变化来检测各种向后兼容性问题。本文还讨论了一种工具,该工具可实现所提出的方法以及该工具的实际应用结果。结论中讨论了进一步提高自动向后兼容性验证质量的步骤。

著录项

获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号