Полиспейс

Инструмент статического анализа программ
Полиспейс
Разработчик(и)MathWorks [1]
Стабильный релиз
R2022b / 15 сентября 2022 г. ; 2 года назад ( 2022-09-15 )
Операционная системаКроссплатформенность [2]
Типстатический анализ кода
ЛицензияЗапатентованный
Веб-сайтwww.mathworks.com/products/polyspace.html 

Polyspace — это инструмент статического анализа кода для крупномасштабного анализа с помощью абстрактной интерпретации для обнаружения или доказательства отсутствия определенных ошибок времени выполнения в исходном коде для языков программирования C , C++ и Ada . Инструмент также проверяет исходный код на соответствие соответствующим стандартам кода. [3]

История

Polyspace изначально был разработан французской компанией PolySpace Technologies , которая была приобретена MathWorks в 2007 году. [4] Впоследствии продукт был интегрирован в MATLAB.

Распространенное использование

Polyspace проверяет исходный код, чтобы определить, где могут возникнуть потенциальные ошибки времени выполнения, такие как арифметическое переполнение , переполнение буфера , деление на ноль и другие. Разработчики программного обеспечения и менеджеры по контролю качества используют эту информацию, чтобы определить, какие части кода являются неисправными или доказано надежными. Другие части кода помечены для неподтвержденных проверок и заслуживают индивидуального обзора. [5] [6]

Стандарты кода или руководства, такие как MISRA C, пытаются решить проблему качества кода, переносимости и надежности. Продукт проверяет исходный код C и C++ на соответствие подмножеству правил в этих стандартах кодирования. [7]

Возможности

Семейство продуктов состоит из Polyspace Code Prover и Polyspace Bug Finder. Модуль Code Prover аннотирует исходный код с помощью цветовой схемы кодирования, чтобы указать статус каждого элемента в коде. [8] Он использует формальные методы статического анализа кода для проверки выполнения программы на уровне языка. [6] Инструмент проверяет каждую инструкцию кода, принимая во внимание все возможные значения каждой переменной в каждой точке кода, предоставляя формальную диагностику для каждой операции в коде как в нормальных, так и в ненормальных условиях использования. [9]

Модуль Bug Finder выявляет ошибки программного обеспечения, выполняя статический анализ исходного кода. Он находит дефекты, такие как ошибки численных вычислений, программирования, памяти и другие. Он также выдает метрики программного обеспечения, такие как плотность комментариев исходного файла, цикломатическая сложность, количество строк, параметров, уровней вызовов и т. д. в функции, выявленные ошибки времени выполнения в программном обеспечении. [10]

Смотрите также

Ссылки

  1. ^ Пеле, Анн-Франсуаза (2007-04-25). "Mathworks приобретает PolySpace Technologies". EETimes. Архивировано из оригинала 2012-02-11 . Получено 2010-08-13 .
  2. ^ MathWorks - Polyspace - Требования
  3. ^ Deutsch, Alain (2003-11-27). "Статическая проверка динамических свойств" (PDF) . Polyspace Technologies. Архивировано из оригинала (PDF) 2012-03-13 . Получено 2014-05-17 .
  4. ^ Пеле, Анн-Франсуаза (2007-04-25). «Mathworks приобретает PolySpace Technologies». EE Times . Получено 2024-07-12 .
  5. ^ Брат, Гийом (2004). «Экспериментальная оценка инструментов проверки и валидации программного обеспечения марсохода». Формальные методы в проектировании систем . 25 (2/3): 167– 198. doi :10.1023/B:FORM.0000040027.28662.a4. hdl : 2060/20040010327 .
  6. ^ ab Exponent (2012-09-24). "Исследование Exponent аппаратного и программного обеспечения автомобиля Toyota ETCS-i". Exponent. Архивировано из оригинала 2014-07-27 . Получено 2010-09-07 .
  7. ^ MathWorks: статический анализ кода.
  8. ^ Джонс, Пол; Джетли, Рауль; Абрахам, Джей (2010-02-09). "Подход к проверке на основе формальных методов для анализа программного обеспечения медицинских устройств". Embedded Systems Design . Получено 2010-08-16 .
  9. ^ Виссинг, Клаус (27.09.2007). "Статический анализ динамических свойств - автоматическая проверка программ для доказательства отсутствия динамических ошибок во время выполнения" (PDF) . Практикум по прикладному анализу программ . Получено 13.08.2010 .
  10. ^ "Software Metrics-MATLAB". Индия: MathWorks . Получено 2015-08-27 .
  • Официальный сайт
Взято с "https://en.wikipedia.org/w/index.php?title=Polyspace&oldid=1237916986"