Постройте крупные проекты из модулей в пользовательском интерфейсе рабочего стола Polyspace

Когда вы добавляете исходные файлы в проект в Polyspace® настольный пользовательский интерфейс, по умолчанию, все файлы анализируются в одном запуске. Анализ целой кодовой базы для отдельного приложения может занять много времени, в зависимости от размера приложения.

Для крупного приложения Polyspace позволяет вам:

  • Разделите приложение в модули, которые индивидуально требуют, чтобы меньше времени проверило.

  • Задайте количество модулей в компромиссе между скоростью верификации и точностью.

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

Разделить ваше приложение в модули:

  1. Запустите начальную верификацию, которая выполняет ограниченный анализ, но процессы все файлы вашего приложения. Например, запустите верификацию со следующими настройками панели Precision:

    • Precision level0

    • Verification levelSoftware Safety Analysis level 0

  2. В представлении Project Browser выберите папку результатов.

  3. Выберите Tools> Run Modularize. Программное обеспечение анализирует ваш код приложения и отображает два графика в новом окне выбора Модуляризации.

    Plot that allows you to pick a number of modules.

    Графики показывают следующую информацию:

    • Красный — Максимальная сложность модуля по сравнению с количеством модулей, которое описывается как процент общей сложности приложения.

    • Синий — Количество общедоступных переменных и функций, когда модули ограничиваются данной сложностью.

  4. Из графиков идентифицируйте количество модулей, в которые должно быть разделено ваше приложение. В этом примере подходящий номер равняется 2 или 4.

    Количество разделенных модулей, которые вы выбираете, включает компромисс между следующим:

    • Время — Чем меньший максимальная сложность, тем короче время требуется для верификации. Эта экономия времени является четной больше, если различные модули проверяются параллельно.

    • Точность — Чем меньший количество общедоступных переменных и функций, тем больше точность верификации.

    Выберите номер сразу после большого понижения максимальной сложности и перед большим увеличением количества публичных функций и переменных. Точность модульной верификации может быть очень чувствительна к количеству общедоступных переменных. Если серия горизонтальных синих линий возрастает так постепенно, что нет никакого ясного выбора номера, то:

    1. На панели инструментов выберите Public Entities> Separate functions and variables. Программное обеспечение отображает количество общедоступных переменных и функций отдельно.

      Plot showing number of public variables and functions separately.

    2. Выберите точку непосредственно перед большим скачком в количестве общедоступных переменных. В этом примере необходимо кликнуть по серой области, сопоставленной с 2.

  5. Кликните по вертикальной серой области, сопоставленной с количеством модулей, что вы выбираете, например, 2. Диалоговое окно открывается.

    Popup dialog asking whether to overwrite the existing modular configuration.

  6. Нажмите Yes. Программное обеспечение генерирует новый проект с двумя модулями, содержащими разделенный код.