Polyspace - Polyspace

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

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

Общее использование

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

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

Возможности

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

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

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

Рекомендации

  1. ^ Пеле, Анн-Франсуаза (25 апреля 2007 г.). «Mathworks приобретает PolySpace Technologies». EETimes. Архивировано из оригинал на 2012-02-11. Получено 2010-08-13.
  2. ^ The MathWorks - Polyspace - Требования
  3. ^ Дойч, Ален (27 ноября 2003 г.). «Статическая проверка динамических свойств» (PDF). Polyspace Technologies. Архивировано из оригинал (PDF) на 2012-03-13. Получено 2014-05-17.
  4. ^ Брат, Гийом (2004). «Экспериментальная оценка средств верификации и валидации программного обеспечения марсианского вездехода». Формальные методы в системном дизайне. 25 (2/3): 167–198. Дои:10.1023 / B: FORM.0000040027.28662.a4. HDL:2060/20040010327.
  5. ^ а б Экспонента (24 сентября 2012 г.). "Расследование Exponent аппаратного и программного обеспечения автомобилей Toyota ETCS-i". Экспонента. Архивировано из оригинал в 2014-07-27. Получено 2010-09-07.
  6. ^ MathWorks: статический анализ кода.
  7. ^ Джонс, Пол; Джетли, Рауль; Авраам, Джей (09.02.2010). «Основанный на формальных методах подход к проверке программного обеспечения медицинского устройства». Проектирование встроенных систем. Получено 2010-08-16.
  8. ^ Виссинг, Клаус (27 сентября 2007). «Статический анализ динамических свойств - автоматическая проверка программы для доказательства отсутствия динамических ошибок выполнения» (PDF). Семинар по прикладному программному анализу. Получено 2010-08-13.
  9. ^ «Программные метрики-MATLAB». Индия: MathWorks. Получено 2015-08-27.

внешняя ссылка