Simulink® и Stateflow® являются отдельными инструментами, используемыми в разработке моделей. Simulink может использоваться без Stateflow, но когда Stateflow используется, Simulink также требуется. Simulink и Stateflow тесно интегрируются и весьма зависимы друг из друга. Нет требования для Simulink и Stateflow, чтобы быть независимым, поскольку они оба используются вместе в качестве части разработки разработки ПО. Simulink API, на который ссылаются в этом документе, обеспечивает интерфейс для других инструментов, которые не могут получить доступ в данных оперативной памяти непосредственно, чтобы получить данные из модели при помощи этого интерфейса. Например, пользователь может получить данные из модели с помощью get_param
команда в MATLAB® или установленный параметр в модели с помощью set_param
команда в MATLAB.
Смотрите раздел рабочего процесса этого документа, Процесса Разработки программного обеспечения, который включает следующие цели для использования Simulink и Stateflow:
Требования высокого уровня программного обеспечения Разрабатываются
Требования высокого уровня Derived Software Разрабатываются
Программная архитектура Разрабатывается
Низкоуровневые требования программного обеспечения Разрабатываются
Низкоуровневые требования Derived Software Разрабатываются
MATLAB Coder™, Simulink Coder и Embedded Coder® являются отдельными инструментами, используемыми в разработке исходного кода. MATLAB Coder является предпосылкой для Simulink Coder и Embedded Coder. Simulink Coder требуется при генерации кода из моделей Simulink и Stateflow. Эти три инструмента тесно интегрируются и весьма зависимы друг из друга. Нет требования для MATLAB Coder, Simulink Coder и Embedded Coder, чтобы быть независимым, поскольку они используются вместе в качестве части разработки исходного кода. В следующих разделах этого документа ссылки на Embedded Coder предназначаются, чтобы включать Simulink Coder и MATLAB Coder как целый комплект инструментальных средств генерации кода.
Смотрите раздел рабочего процесса этого документа, Процесса Разработки программного обеспечения, который включает следующие цели для использования MATLAB Coder, Simulink Coder и Embedded Coder:
Исходный код Разрабатывается
MATLAB и Отчет Simulink Generator™s являются двумя отдельными инструментами с MATLAB Report Generator, являющимся предпосылкой для Simulink Report Generator. Simulink Report Generator обеспечивает компоненты для создания отчетов о моделях Simulink и Stateflow и интегрирован с MATLAB Report Generator. Эти компоненты опрашивают модель с помощью Simulink API, чтобы считать данные из модели, загруженной в памяти. Компоненты генератора отчетов, используемые, чтобы сгенерировать документ Описания Разработки системы, могут только считать данные из модели, у них нет возможности записать или изменить данные в модели. Описание Разработки системы включает ссылки трассируемости требований, которые могут быть вставлены в модели с помощью Simulink Requirements™.
Смотрите разделы рабочего процесса этого документа, Верификацию Требований Верификация Processand Процесса проектирования, который включает следующие цели для использования MATLAB Report Generator и Simulink Report Generator:
Верификация процесса требований
Требования высокого уровня программного обеспечения выполняют системные требования
Требования высокого уровня Точны и Сопоставимы
Требования высокого уровня Совместимы с Целевым компьютером
Требования высокого уровня Поддаются проверке
Требования высокого уровня соответствуют стандартам
Требования высокого уровня Прослеживаемы к Системным требованиям
Алгоритмы Точны
Верификация процесса проектирования
Низкоуровневые требования выполняют требования высокого уровня
Низкоуровневые требования Точны и Сопоставимы
Низкоуровневые требования Совместимы с Целевым компьютером
Низкоуровневые требования Поддаются проверке
Низкоуровневые требования соответствуют стандартам
Низкоуровневые требования Прослеживаемы к Системным требованиям
Алгоритмы Точны
Программная архитектура Совместима с Требованиями высокого уровня
Программная архитектура Сопоставима
Программная архитектура Совместима с Целевым компьютером
Программная архитектура Поддается проверке
Программная архитектура соответствует стандартам
Simulink Design Verifier™ является разделять инструментом с тремя возможностями; Поиск ошибок проектирования, Свойство, Доказывающее и Генерация Теста. Simulink Design Verifier содержит формальные аналитические механизмы, которые работают с внутренним представлением, выведенным из, но в другой форме, чем модель Simulink, загруженная в памяти. Поиск ошибок проектирования может найти определенные ошибки проектирования в модели, те, которые делятся на нуль или числовые переполнения, с помощью формальных методов. Доказательство свойства, которое также использует формальные методы, может доказать свойства, которые заданы пользователем в сочетании с предположениями, которые также заданы пользователем. Формальные аналитические механизмы являются отдельными и независимыми от Simulink и Stateflow, и не включают симуляцию модели. Simulink Design Verifier может автоматически сгенерировать тесты на основе модели, которая может использоваться, чтобы проверить, что исполняемый объектный код выполняет модель. Основанием для тестов может быть комбинация определяемых пользователем ограничений, критериев покрытия блоков в модели и определяемых пользователем целей тестирования. Ограничительные блоки, критерии покрытия и блоки цели тестирования проигнорированы Embedded Coder и поэтому независимы от процесса кодирования. Для того, чтобы проверить код с помощью сгенерированных тестов, тесты должны быть запущены на модели для того, чтобы произвести ожидаемые результаты для кода. Полнота тех тестов может быть оценена с помощью инструмента покрытия, и ожидаемые результаты могут быть оценены через анализ результатов симуляции.
Смотрите разделы рабочего процесса этого документа, Верификацию Процесса Требований, Верификацию Процесса проектирования и Тестирования Выходных параметров Процесса интеграции, который включает следующие цели для использования Simulink Design Verifier:
Верификация процесса требований
Требования высокого уровня программного обеспечения выполняют системные требования
Требования высокого уровня Поддаются проверке
Алгоритмы Точны
Верификация процесса проектирования
Низкоуровневые требования выполняют требования высокого уровня
Низкоуровневые требования Поддаются проверке
Алгоритмы Точны
Тестирование Выходных параметров процесса интеграции
Исполняемый объектный код выполняет низкоуровневые требования
Исполняемый объектный код Устойчив с Низкоуровневыми требованиями
Simulink Code Inspector™ является отдельным инструментом, который может использоваться, чтобы проверить исходный код, разработанный из Embedded Coder. Этот инструмент реализован независимый от Simulink, Stateflow и Embedded Coder. Этот инструмент опрашивает модель с помощью Simulink API, чтобы считать данные из модели, загруженной в памяти. Все используемые команды API могут только считать данные из модели, у них нет возможности записать или изменить данные в модели. Модель преобразована в различное промежуточное представление для использования в процессе инспекции кода. Simulink Code Inspector также использует файлы сгенерированного кода C, как введено и анализирует их в различное промежуточное представление, которое может сравниться с промежуточным представлением модели. Требования, проект и исходный код для Simulink Code Inspector разрабатываются отдельно и независимы от MATLAB Coder, Simulink Coder и реализаций Embedded Coder.
Смотрите раздел рабочего процесса этого документа, Верификацию Кодирования и Процесса интеграции, который включает следующие цели для использования Simulink Code Inspector:
Исходный код выполняет низкоуровневые требования
Исходный код выполняет программную архитектуру
Исходный код Поддается проверке
Исходный код Прослеживаем к Низкоуровневым требованиям
Исходный код Точен и Сопоставим
Проверки Model Advisor обеспечиваются в нескольких различных продуктах; Simulink, Embedded Coder, Simulink Code Inspector, Simulink Check™ и Simulink Control Design™. Основная базовая реализация проверок Model Advisor сделана через механизм, который использует функции MATLAB и независим от Simulink, Stateflow и Embedded Coder. Model Advisor использует Simulink API, чтобы считать данные из модели, загруженной в памяти. Model Advisor действительно имеет возможность автоматически устранить проблемы, обнаруженные проверками, но меры должны инициироваться пользователем, и модель должна была бы быть resaved. Затем проверки могут быть повторно выполнены пользователем для того, чтобы проверить меры. Для собственных проверок, созданных пользователем, это - ответственность пользователя не позволить тем проверкам изменять модель.
Смотрите разделы рабочего процесса этого документа, Верификацию Процесса Требований и Верификацию Процесса проектирования, который включает следующие цели для использования Model Advisor:
Верификация процесса требований
Требования высокого уровня Точны и Сопоставимы
Требования высокого уровня Совместимы с Целевым компьютером
Требования высокого уровня соответствуют стандартам
Требования высокого уровня Прослеживаемы к Системным требованиям
Алгоритмы Точны
Верификация процесса проектирования
Низкоуровневые требования Точны и Сопоставимы
Низкоуровневые требования Совместимы с Целевым компьютером
Низкоуровневые требования соответствуют стандартам
Низкоуровневые требования Прослеживаемы к Системным требованиям
Алгоритмы Точны
Программная архитектура Сопоставима
Программная архитектура Совместима с Целевым компьютером
Программная архитектура соответствует стандартам
Возможность покрытия предусмотрена как часть Simulink Coverage™. Покрытие модели оснащает модель, загруженную в память до симуляции, и оценивает критерии покрытия, в то время как симуляция прогрессирует. Покрытие кода оценивает покрытие для кода, сгенерированного из моделей в программном обеспечении в режиме (SIL) цикла. Покрытие также имеет возможность объединить несколько, симуляция сталкивается с объединенным отчетом покрытия. Пользователь может запустить симуляции с покрытием, включенным и отключенным, чтобы обеспечить, чтобы не было никакого эффекта на поведении модели из-за инструментирования.
Смотрите разделы рабочего процесса этого документа, Верификацию Процесса Требований и Верификацию Процесса проектирования, который включает следующие цели для использования Покрытия:
Верификация процесса требований
Требования высокого уровня программного обеспечения выполняют системные требования
Требования высокого уровня Поддаются проверке
Верификация процесса проектирования
Низкоуровневые требования выполняют требования высокого уровня
Низкоуровневые требования Поддаются проверке
Simulink Test™ является отдельным инструментом, который может использоваться, чтобы выполнить симуляции в пакетной модели и проверять фактические результаты по ожидаемым результатам. Это также предусматривает возможность создать тесты вручную или импортировать тесты в других форматах, таких как электронные таблицы Excel®. Поскольку тесты и ожидаемые результаты разрабатываются вручную пользователем, они независимы от типового кодекса и исходного кода.
Смотрите разделы рабочего процесса этого документа, Верификацию Процесса Требований и Верификацию Процесса проектирования, который включает следующие цели для использования Simulink Test:
Верификация процесса требований
Требования высокого уровня программного обеспечения выполняют системные требования
Требования высокого уровня Точны и Сопоставимы
Требования высокого уровня Поддаются проверке
Алгоритмы Точны
Верификация процесса проектирования
Низкоуровневые требования выполняют требования высокого уровня
Низкоуровневые требования Точны и Сопоставимы
Низкоуровневые требования Поддаются проверке
Алгоритмы Точны
Программная архитектура Совместима с Требованиями высокого уровня
Программная архитектура Сопоставима
Программная архитектура Поддается проверке
Polyspace® Bug Finder™ идентифицирует ошибки времени выполнения, проблемы параллелизма, уязвимости системы обеспечения безопасности и другие дефекты во встроенном программном обеспечении C++ и C. Используя статический анализ, включая семантический анализ, Polyspace Bug Finder анализирует программное управление, поток данных и межпроцедурное поведение. Путем выделения дефектов, как только они обнаруживаются, это позволяет вам сортировать и исправить ошибки рано в процессе разработки. проверяет соответствие кодированию стандартов правила, таких как MISRA C®, MISRA C++, JSF ++, CERT® C, CERT C++ и настраиваемые правила именования.
Polyspace Bug Finder Server™ является механизмом статического анализа, который идентифицирует общие классы ошибок в C и C++, включая ошибки времени выполнения, проблемы параллелизма и другие дефекты кодирования. Polyspace Bug Finder Server также проверяет исходный код на соблюдение кодирования правил (MISRA C, MISRA C++, JSF ++), правила безопасности (CWE, CERT-C, C++ CERT, ISO/IEC 17961), и пользовательские правила.
Polyspace Code Prover™ является звуковым инструментом статического анализа, который доказывает отсутствие переполнения, разделитесь на нуль, за пределы доступ к массиву и другие ошибки времени выполнения в исходном коде C++ и C. Это приводит к результатам, не требуя выполнения программы, отладки кода или тестов. Polyspace Code Prover использует семантический анализ и абстрактную интерпретацию на основе формальных методов, чтобы проверить межпроцедурное программное обеспечение, управление и поведение потока данных. Можно использовать его, чтобы проверить рукописный код, сгенерированный код или комбинацию двух. На каждый оператор кода наносят цветную маркировку, чтобы указать, свободно ли это от ошибок времени выполнения, которые, как доказывают, перестали работать, недостижимый, или бездоказательный. Информация об области значений отображений Polyspace Code Prover для переменных и функциональных возвращаемых значений, и может доказать, какие переменные превышают указанные диапазоны. Результаты верификации кода могут использоваться, чтобы отследить метрики качества и соответствие проверки с вашими целями качества программного обеспечения.
Polyspace Code Prover Server является звуковым механизмом статического анализа, который доказывает отсутствие переполнения, разделите на нуль, за пределы, доступ к массиву и определенные другие ошибки времени выполнения в C и Коде С++. Это выполняет межпроцедурный анализ всего возможного управления и потоков данных, включая многопоточный код, чтобы идентифицировать каждую операцию как всегда безопасный, всегда дефектный, недостижимый, или уязвимый. Polyspace Code Prover Server идентифицирует сегменты кода, которые свободны от ошибок времени выполнения, которые, как доказывают, перестали работать, недостижимый, или бездоказательный. Polyspace Code Prover Server может работать на машине класса сервера и может быть интегрирован в сборку и непрерывные системы интегрирования для инструментов использования автоматизированной верификации, таких как Дженкинс.
Polyspace Bug Finder, Polyspace Bug Finder Server, Polyspace Code Prover и Polyspace Code Prover Server абсолютно независимы от MATLAB Coder, Simulink Coder и Embedded Coder. Требования, проект и исходный код для Polyspace разрабатываются отдельно и независимы от MATLAB Coder, Simulink Coder и реализаций Embedded Coder.
Смотрите раздел рабочего процесса этого документа, Верификацию Кодирования и Процесса интеграции, который включает следующие цели для использования:
Polyspace Bug Finder и Polyspace Bug Finder Server
Исходный код выполняет программную архитектуру
Исходный код соответствует стандартам
Исходный код Точен и Сопоставим
Polyspace Code Prover и Polyspace Code Prover Server
Исходный код выполняет программную архитектуру
Исходный код соответствует стандартам
Исходный код Поддается проверке
Исходный код Точен и Сопоставим
Исполняемый объектный код Устойчив с Требованиями высокого уровня
Исполняемый объектный код Устойчив с Низкоуровневыми требованиями
Формальные Аналитические Случаи и Процедуры Правильны
Формальные Результаты анализа Правильны и объясненные несоответствия.
Формализация требований Правильна
Формальный метод Правильно Выравнивается по ширине и Соответствующий