SlideShare a Scribd company logo
1 of 29
Download to read offline
1© 2016 The MathWorks, Inc.
Практическая верификация и командная работа
Михаил Песельник
Экспонента
2
Задавайте вопросы в
Telegram:
@Exponenta_ru
Подписывайтесь на
канал Telegram:
@exponenta_channel
3
Темы секции
 Эффективная организация работы над единым
проектом
 Автоматизация и управление тестированием
 Создание тестовых сценариев
 Доказательство отсутствия ошибок в проекте
4
Управление моделями Simulink
5
Зачем нужно разбиение на компоненты?
 Для эффективного и робастного системного проектирования
– Понижение сложности задачи путём разбиения её на подзадачи
– Повторное использование компонентов в других проектах
 Для улучшения эффективности совместной работы
– Разбиение на алгоритмы, модели объектов управления и тесты
– Совместная работа команд над проектом
– Использование систем контроля версий
 Для совершенствования валидации и верификации
– Устранение повторного тестирования неизменных компонентов
– Независимое модульное тестирование через хорошо определенные
интерфейсы
7
Рекомендации по разбиению на компоненты
 Архитектура должна:
– Вырастать из требований
 Высокоуровневые и низкоуровневые требования
– Быть расширяемой
 Для решения будущих задач
– Решать вопросы командной работы
 Уменьшение числа конфликтов
 Но здесь нет идеального рецепта
– Очень важен опыт
8
Методы разбиения на компоненты
Требования Virtual SS
libraries
Atomic SS
libraries
Model
blocks
Atomic
subcharts
Требования процесса разработки
Иерархия функций –   
Повторное использование – +  
Совместная разработка + +  
Защита ИП – + + +
Инкремент. генерация кода – –  
Модульное тестирование – +  
Производительность
Инкремент. загрузка – –  
Скорость симуляции + +  
Использование памяти – –  
Поддержка всех функций
Simulink
  + +
 Хорошо подходит
+ Поддерживается
– Не поддерживается
9
Дальнейшие рекомендации (архитектура модели)
 Статья «Крупномасштабное моделирование для встраиваемых приложений»,
Керри Гранд, Винод Редди, Ген Сасаки и Эрик Диллабер
 Статья «Лучшие подходы к реализации руководств по моделированию в
Simulink», Дэвид Джефри
 Статья «Тестирование проектов и требований при помощи моделирования и
симуляции», Майкл Кароне
 Статья «Практические стратегии внедрения модельно-ориентированного
проектирования для встроенных приложений», Эрик Диллабер, Ларри Кендрик,
Венси Джин и Винод Редди
 Статья «Optimal Scheduling in Graphical Modeling Environments», Michael Burke
 Статья «Model-Based Design for Large High-Integrity Systems: A Discussion
Regarding Model Architecture», Mike Anthony, Jon Friedman
 Вебинар «Лучшие методы крупномасштабного моделирования с
использованием инструментов MathWorks»
10
Управление данными Simulink
11
Дальнейшие рекомендации (данные модели)
 Статья «Design Data Management in Model-Based Design», Saurabh
Mahapatra, Priyanka Gotika
 Статья «Design Variant Management in Model-Based Design», Saurabh
Mahapatra, Priyanka Gotika
 Статья «Model-Based Design for Large High-Integrity Systems: A
Discussion on Data Modeling and Management», Mike Anthony, Matt
Behr
 Видео «Управление данными в моделях Simulink с
использованием словаря данных»
 Видео «Управление конфигурациями подсистем»
12
Использование Simulink Projects
 Поиск, координация, и обмен
связанными файлами в Simulink
 Доступ к функционалу системы
контроля версий
 Рассмотрение изменений и слияние
изменений в моделях Simulink
 Просмотр информации о ревизиях и
авторах
 Управление ярлыками и метаданными
проекта и файлов
 Анализ зависимостей файлов проекта
>>
14
Интеграция с системами контроля версий
>>
16
Анализ изменений в проекте
>>
18
Дальнейшие рекомендации (командная разработка)
 Статья «Integrated Project Management Tool for Modeling and
Simulation of Complex Systems», Sergio Tamayo, Stacey Gage, Gavin
Walker
 Статья «Model-Based Design for Large High-Integrity Systems: A
Discussion on Logic-Intensive Algorithms», Mike Anthony, Will
Campbell, Becky Petteys
 Статья «Automatic Report Generation in Model-Based Design»,
Saurabh Mahapatra
 Статья «Team-Based Collaboration in Model-Based Design», Saurabh
Mahapatra, Jason Ghidella, Gavin Walker
 Статья «Model-Based Design for Large High-Integrity Systems: A
Discussion on Verification and Validation», Mike Anthony, Matt Behr,
Matt Jardin, Richard Ruff
19
Дальнейшие рекомендации (командная разработка)
 Вебинар «Командная разработка в Simulink»
 Видео «Использование Simulink Project совместно с Subversion»
 Видео «Командная работа с Simulink Projects»
 Вебинар «Эффективное применение системного моделирования и
системных моделей»
 Вебинар «Simulink для системного проектирования в соответствии
с ARP4754»
 Серия вебинаров «Tips and Tricks for Large-Scale Model-Based
Design»
 www.mathworks.com/mbd
20
Систематическое тестирование в Simulink
с использованием Simulink Test
21
Simulink Test: Test Harness
>>
22
Simulink Test: Test Sequence/Test Assessment
>>
23
Simulink Test: Test Manager
>>
24
- Доказательство свойств системы
- Генерация тестов для покрытия модели
- Поиск ошибок проектирования
- Доказательство отсутствия ошибок времени исполнения
Формальные методы верификации
25
Доказательство свойств системы
V1.0
V2.0
V3.0
Свойства (Требования)
Алгоритм (Система)
Модель для верификации
Доказательство свойств для
системы
Simulink
Design
Verifier
>>
26
Автоматическая генерация тестов
Simulink Design Verifier
– Поиск тестовых векторов для покрытия, не достигнутого
функциональными тестами
• Поиск пропущенных требований
• Идентификация производных требований
• Удаление функций модели, не отслеживаемых к
требованиями, только если эти функции не
отслеживаются к производным требованиям
• Помощь в составлении тестовых векторов
(функциональных) для 100% покрытия модели
тестами
>>
27
Поиск ошибок проектирования
Simulink Design Verifier
Генерация
контр-примеров
• Ошибки деления на ноль
• Целочисленное переполнение
• Доступ за границы массива
• Мертвая логика
Запись вебинара: Формальная верификация в MATLAB и Simulink
>>
28
Стандарты моделирования
• MAAB (MathWorks Automotive Advisory Board)
https://www.mathworks.com/solutions/automotive/standards/maab.html
• NASA-STD-7009
https://standards.nasa.gov/standard/nasa/nasa-std-7009
• MISRA AC SLSF
https://www.misra.org.uk/Activities/MISRAAutocode/tabid/72/Default.aspx
• NASA ORION GN&C
https://www.mathworks.com/solutions/aerospace-defense/standards/nasa.html
• Simulink Modeling Guidelines for High-Integrity Systems
https://www.mathworks.com/help/simulink/high-integrity-systems.html
29
Соответствие стандартам моделирования
 Model Advisor используется для
– Установление стандартов моделирования и «лучших практик»
– Выявление проблем моделирования и генерации кода
– Проверка моделей на известные проблемы с обновлением
версий
30
Тренинги
Курс «Командная разработка и архитектура модели в Simulink» (2 дня)
 Управление интерфейсами подсистем и моделей Simulink
 Работа с требованиями в моделях Simulink
 Разбиение моделей с использованием подсистем, библиотек и ссылок на
модели
 Управление моделями и их зависимостями в проекте
 Управление размещением, хранением и поведением данных в модели
при генерации кода
 Установление и контроль за соблюдением стандартов моделирования
 Документирование моделей Simulink и обмен моделями
http://matlab.ru/training/SLMB
31
Тренинги
Курс «Верификация и валидация моделей Simulink» (1 день)
 Разработка тестовых примеров
 Анализ результатов тестирования
 Выполнение множественных тестов
 Построение отчетов о результатах тестирования
 Автоматическая проверка моделей
http://matlab.ru/training/SLVV
32
Услуга: аудит процессов проектирования систем
 Анализ и оценка
существующих процессов,
организации, технологий и
целей
 Интервью с руководителями и
техническими специалистами
 Краткосрочный и долгосрочный
планы улучшения
33
Центр инженерных технологий и моделирования Экспонента
 Вебинары, семинары, обучение, демонстрационные версии,
консалтинг, внедрение МОП :
www.MATLAB.ru
 E-mail: matlab@exponenta.ru
 Тел.: +7 (495) 009 65 85
 Дополнительная информация:
www.mathworks.com, www.exponenta.ru
www.youtube.com/user/MATLABinRussia

More Related Content

What's hot

Использование MATLAB совместно с приборами Keysight Technologies
Использование MATLAB совместно с приборами Keysight TechnologiesИспользование MATLAB совместно с приборами Keysight Technologies
Использование MATLAB совместно с приборами Keysight TechnologiesMATLAB
 
Параллельные и распределенные вычисления
Параллельные и распределенные вычисленияПараллельные и распределенные вычисления
Параллельные и распределенные вычисленияMATLAB
 
Проектирование систем связи
Проектирование систем связиПроектирование систем связи
Проектирование систем связиMATLAB
 
Работа с Big Data
Работа с Big Data Работа с Big Data
Работа с Big Data MATLAB
 
Быстрое прототипирование алгоритмов управления
Быстрое прототипирование алгоритмов управленияБыстрое прототипирование алгоритмов управления
Быстрое прототипирование алгоритмов управленияMATLAB
 
Разработка систем управления для отечественных АКПП
Разработка систем управления для отечественных АКППРазработка систем управления для отечественных АКПП
Разработка систем управления для отечественных АКППMATLAB
 
Полунатурная модель управляемой ракеты с пассивной ГСН
Полунатурная модель управляемой ракеты с пассивной ГСНПолунатурная модель управляемой ракеты с пассивной ГСН
Полунатурная модель управляемой ракеты с пассивной ГСНMATLAB
 
Анализ данных и машинное обучение
Анализ данных и машинное обучениеАнализ данных и машинное обучение
Анализ данных и машинное обучениеMATLAB
 
Анализируем результаты тестирования производительности с Graphite и Grafana
Анализируем результаты тестирования производительности с Graphite и GrafanaАнализируем результаты тестирования производительности с Graphite и Grafana
Анализируем результаты тестирования производительности с Graphite и GrafanaSQALab
 
TMPA-2013: Shipin System-C Control Points
TMPA-2013: Shipin System-C Control PointsTMPA-2013: Shipin System-C Control Points
TMPA-2013: Shipin System-C Control PointsIosif Itkin
 
Создание модели ЭП
Создание модели ЭПСоздание модели ЭП
Создание модели ЭПMATLAB
 
Разработка сау для привода 2017
Разработка сау для привода 2017Разработка сау для привода 2017
Разработка сау для привода 2017MATLAB
 
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...Iosif Itkin
 
Test Set Generation Based on a Management Stream Model
Test Set Generation Based on a Management Stream ModelTest Set Generation Based on a Management Stream Model
Test Set Generation Based on a Management Stream ModelIosif Itkin
 
Особенности автоматизации с помощью скриншотов
Особенности автоматизации с помощью скриншотовОсобенности автоматизации с помощью скриншотов
Особенности автоматизации с помощью скриншотовSQALab
 
Moving from Flash to HTML5 – converting large projects
Moving from Flash to HTML5 – converting large projectsMoving from Flash to HTML5 – converting large projects
Moving from Flash to HTML5 – converting large projectsDevGAMM Conference
 

What's hot (16)

Использование MATLAB совместно с приборами Keysight Technologies
Использование MATLAB совместно с приборами Keysight TechnologiesИспользование MATLAB совместно с приборами Keysight Technologies
Использование MATLAB совместно с приборами Keysight Technologies
 
Параллельные и распределенные вычисления
Параллельные и распределенные вычисленияПараллельные и распределенные вычисления
Параллельные и распределенные вычисления
 
Проектирование систем связи
Проектирование систем связиПроектирование систем связи
Проектирование систем связи
 
Работа с Big Data
Работа с Big Data Работа с Big Data
Работа с Big Data
 
Быстрое прототипирование алгоритмов управления
Быстрое прототипирование алгоритмов управленияБыстрое прототипирование алгоритмов управления
Быстрое прототипирование алгоритмов управления
 
Разработка систем управления для отечественных АКПП
Разработка систем управления для отечественных АКППРазработка систем управления для отечественных АКПП
Разработка систем управления для отечественных АКПП
 
Полунатурная модель управляемой ракеты с пассивной ГСН
Полунатурная модель управляемой ракеты с пассивной ГСНПолунатурная модель управляемой ракеты с пассивной ГСН
Полунатурная модель управляемой ракеты с пассивной ГСН
 
Анализ данных и машинное обучение
Анализ данных и машинное обучениеАнализ данных и машинное обучение
Анализ данных и машинное обучение
 
Анализируем результаты тестирования производительности с Graphite и Grafana
Анализируем результаты тестирования производительности с Graphite и GrafanaАнализируем результаты тестирования производительности с Graphite и Grafana
Анализируем результаты тестирования производительности с Graphite и Grafana
 
TMPA-2013: Shipin System-C Control Points
TMPA-2013: Shipin System-C Control PointsTMPA-2013: Shipin System-C Control Points
TMPA-2013: Shipin System-C Control Points
 
Создание модели ЭП
Создание модели ЭПСоздание модели ЭП
Создание модели ЭП
 
Разработка сау для привода 2017
Разработка сау для привода 2017Разработка сау для привода 2017
Разработка сау для привода 2017
 
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
TMPA-2013 Senov: Applying OLAP and MapReduce Technologies for Performance Tes...
 
Test Set Generation Based on a Management Stream Model
Test Set Generation Based on a Management Stream ModelTest Set Generation Based on a Management Stream Model
Test Set Generation Based on a Management Stream Model
 
Особенности автоматизации с помощью скриншотов
Особенности автоматизации с помощью скриншотовОсобенности автоматизации с помощью скриншотов
Особенности автоматизации с помощью скриншотов
 
Moving from Flash to HTML5 – converting large projects
Moving from Flash to HTML5 – converting large projectsMoving from Flash to HTML5 – converting large projects
Moving from Flash to HTML5 – converting large projects
 

Similar to Практическая верификация и командная работа

Тимур Лукин - Архитектура и проектирование ПО
Тимур Лукин - Архитектура и проектирование ПОТимур Лукин - Архитектура и проектирование ПО
Тимур Лукин - Архитектура и проектирование ПОYandex
 
Модельно-ориентированная инженерия в MATLAB и Simulink
Модельно-ориентированная инженерия в MATLAB и SimulinkМодельно-ориентированная инженерия в MATLAB и Simulink
Модельно-ориентированная инженерия в MATLAB и SimulinkAlexander Efremov
 
AiCare - самоорганизующийся сервис управления
AiCare - самоорганизующийся сервис управленияAiCare - самоорганизующийся сервис управления
AiCare - самоорганизующийся сервис управленияКварта Технологии
 
Jazz team cooperation roadmap
Jazz team cooperation roadmapJazz team cooperation roadmap
Jazz team cooperation roadmapKrystsinaDurovich
 
Промышленная разработка ПО. Лекция 2. Инструменты
Промышленная разработка ПО. Лекция 2. ИнструментыПромышленная разработка ПО. Лекция 2. Инструменты
Промышленная разработка ПО. Лекция 2. ИнструментыMikhail Payson
 
вгу презентация
вгу презентациявгу презентация
вгу презентацияAlexander Efremov
 
1. предзащита
1. предзащита1. предзащита
1. предзащитаDmitry Dushkin
 
Microservices for test automation
Microservices for test automationMicroservices for test automation
Microservices for test automationNikita Makarov
 
Презентация Дроздова А. (Вице-президента Soft Machines), Владиславлева В.(Зам...
Презентация Дроздова А. (Вице-президента Soft Machines), Владиславлева В.(Зам...Презентация Дроздова А. (Вице-президента Soft Machines), Владиславлева В.(Зам...
Презентация Дроздова А. (Вице-президента Soft Machines), Владиславлева В.(Зам...Наталия Егорова
 
Правильная семантическая разметка для всех
Правильная семантическая разметка для всехПравильная семантическая разметка для всех
Правильная семантическая разметка для всехYuliya Tikhokhod
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаYandex
 
Организация процессов разработки на основе VSTS и TFS
Организация процессов разработки на основе VSTS и TFSОрганизация процессов разработки на основе VSTS и TFS
Организация процессов разработки на основе VSTS и TFSАлександр Шамрай
 
Automation from the trenches
Automation from the trenchesAutomation from the trenches
Automation from the trenchesGleb Rybalko
 
Agile days `16 summary
Agile days `16 summaryAgile days `16 summary
Agile days `16 summaryAnton Zhukov
 
3 средства автоматизации проектирования корпоративных приложений
3 средства автоматизации проектирования корпоративных приложений3 средства автоматизации проектирования корпоративных приложений
3 средства автоматизации проектирования корпоративных приложенийKewpaN
 

Similar to Практическая верификация и командная работа (20)

Тимур Лукин - Архитектура и проектирование ПО
Тимур Лукин - Архитектура и проектирование ПОТимур Лукин - Архитектура и проектирование ПО
Тимур Лукин - Архитектура и проектирование ПО
 
Модельно-ориентированная инженерия в MATLAB и Simulink
Модельно-ориентированная инженерия в MATLAB и SimulinkМодельно-ориентированная инженерия в MATLAB и Simulink
Модельно-ориентированная инженерия в MATLAB и Simulink
 
Msf Dz
Msf DzMsf Dz
Msf Dz
 
AiCare - self-organizing device management service
AiCare - self-organizing device management serviceAiCare - self-organizing device management service
AiCare - self-organizing device management service
 
AiCare - самоорганизующийся сервис управления
AiCare - самоорганизующийся сервис управленияAiCare - самоорганизующийся сервис управления
AiCare - самоорганизующийся сервис управления
 
Jazz team cooperation roadmap
Jazz team cooperation roadmapJazz team cooperation roadmap
Jazz team cooperation roadmap
 
Промышленная разработка ПО. Лекция 2. Инструменты
Промышленная разработка ПО. Лекция 2. ИнструментыПромышленная разработка ПО. Лекция 2. Инструменты
Промышленная разработка ПО. Лекция 2. Инструменты
 
вгу презентация
вгу презентациявгу презентация
вгу презентация
 
1. предзащита
1. предзащита1. предзащита
1. предзащита
 
Microservices for test automation
Microservices for test automationMicroservices for test automation
Microservices for test automation
 
Презентация Дроздова А. (Вице-президента Soft Machines), Владиславлева В.(Зам...
Презентация Дроздова А. (Вице-президента Soft Machines), Владиславлева В.(Зам...Презентация Дроздова А. (Вице-президента Soft Machines), Владиславлева В.(Зам...
Презентация Дроздова А. (Вице-президента Soft Machines), Владиславлева В.(Зам...
 
Правильная семантическая разметка для всех
Правильная семантическая разметка для всехПравильная семантическая разметка для всех
Правильная семантическая разметка для всех
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
 
Организация процессов разработки на основе VSTS и TFS
Организация процессов разработки на основе VSTS и TFSОрганизация процессов разработки на основе VSTS и TFS
Организация процессов разработки на основе VSTS и TFS
 
Обзор и архитектура MS Team System
Обзор и архитектура MS Team SystemОбзор и архитектура MS Team System
Обзор и архитектура MS Team System
 
MS TFS 2010 - Обзор и архитектура
MS TFS 2010 - Обзор и архитектураMS TFS 2010 - Обзор и архитектура
MS TFS 2010 - Обзор и архитектура
 
Automation from the trenches
Automation from the trenchesAutomation from the trenches
Automation from the trenches
 
Automation from the trenches
Automation from the trenchesAutomation from the trenches
Automation from the trenches
 
Agile days `16 summary
Agile days `16 summaryAgile days `16 summary
Agile days `16 summary
 
3 средства автоматизации проектирования корпоративных приложений
3 средства автоматизации проектирования корпоративных приложений3 средства автоматизации проектирования корпоративных приложений
3 средства автоматизации проектирования корпоративных приложений
 

More from MATLAB

Автоматическая генерация C кода и тестирование на целевых вычислителях
Автоматическая генерация C кода и тестирование на целевых вычислителяхАвтоматическая генерация C кода и тестирование на целевых вычислителях
Автоматическая генерация C кода и тестирование на целевых вычислителяхMATLAB
 
Использование нейросетей для моделирования процесса гидроочистки бензина
Использование нейросетей для моделирования процесса гидроочистки бензина Использование нейросетей для моделирования процесса гидроочистки бензина
Использование нейросетей для моделирования процесса гидроочистки бензина MATLAB
 
Машинное обучение с MATLAB
Машинное обучение с MATLABМашинное обучение с MATLAB
Машинное обучение с MATLABMATLAB
 
Машинное и глубокое обучение
Машинное и глубокое обучение Машинное и глубокое обучение
Машинное и глубокое обучение MATLAB
 
МОП для моно-колеса
МОП для моно-колесаМОП для моно-колеса
МОП для моно-колесаMATLAB
 
Моделирование и анализ дискретно-событийных систем
Моделирование и анализ дискретно-событийных системМоделирование и анализ дискретно-событийных систем
Моделирование и анализ дискретно-событийных системMATLAB
 
Presagis presentation
Presagis presentationPresagis presentation
Presagis presentationMATLAB
 
Тренинги Mathworks
Тренинги MathworksТренинги Mathworks
Тренинги MathworksMATLAB
 

More from MATLAB (8)

Автоматическая генерация C кода и тестирование на целевых вычислителях
Автоматическая генерация C кода и тестирование на целевых вычислителяхАвтоматическая генерация C кода и тестирование на целевых вычислителях
Автоматическая генерация C кода и тестирование на целевых вычислителях
 
Использование нейросетей для моделирования процесса гидроочистки бензина
Использование нейросетей для моделирования процесса гидроочистки бензина Использование нейросетей для моделирования процесса гидроочистки бензина
Использование нейросетей для моделирования процесса гидроочистки бензина
 
Машинное обучение с MATLAB
Машинное обучение с MATLABМашинное обучение с MATLAB
Машинное обучение с MATLAB
 
Машинное и глубокое обучение
Машинное и глубокое обучение Машинное и глубокое обучение
Машинное и глубокое обучение
 
МОП для моно-колеса
МОП для моно-колесаМОП для моно-колеса
МОП для моно-колеса
 
Моделирование и анализ дискретно-событийных систем
Моделирование и анализ дискретно-событийных системМоделирование и анализ дискретно-событийных систем
Моделирование и анализ дискретно-событийных систем
 
Presagis presentation
Presagis presentationPresagis presentation
Presagis presentation
 
Тренинги Mathworks
Тренинги MathworksТренинги Mathworks
Тренинги Mathworks
 

Практическая верификация и командная работа

  • 1. 1© 2016 The MathWorks, Inc. Практическая верификация и командная работа Михаил Песельник Экспонента
  • 3. 3 Темы секции  Эффективная организация работы над единым проектом  Автоматизация и управление тестированием  Создание тестовых сценариев  Доказательство отсутствия ошибок в проекте
  • 5. 5 Зачем нужно разбиение на компоненты?  Для эффективного и робастного системного проектирования – Понижение сложности задачи путём разбиения её на подзадачи – Повторное использование компонентов в других проектах  Для улучшения эффективности совместной работы – Разбиение на алгоритмы, модели объектов управления и тесты – Совместная работа команд над проектом – Использование систем контроля версий  Для совершенствования валидации и верификации – Устранение повторного тестирования неизменных компонентов – Независимое модульное тестирование через хорошо определенные интерфейсы
  • 6. 7 Рекомендации по разбиению на компоненты  Архитектура должна: – Вырастать из требований  Высокоуровневые и низкоуровневые требования – Быть расширяемой  Для решения будущих задач – Решать вопросы командной работы  Уменьшение числа конфликтов  Но здесь нет идеального рецепта – Очень важен опыт
  • 7. 8 Методы разбиения на компоненты Требования Virtual SS libraries Atomic SS libraries Model blocks Atomic subcharts Требования процесса разработки Иерархия функций –    Повторное использование – +   Совместная разработка + +   Защита ИП – + + + Инкремент. генерация кода – –   Модульное тестирование – +   Производительность Инкремент. загрузка – –   Скорость симуляции + +   Использование памяти – –   Поддержка всех функций Simulink   + +  Хорошо подходит + Поддерживается – Не поддерживается
  • 8. 9 Дальнейшие рекомендации (архитектура модели)  Статья «Крупномасштабное моделирование для встраиваемых приложений», Керри Гранд, Винод Редди, Ген Сасаки и Эрик Диллабер  Статья «Лучшие подходы к реализации руководств по моделированию в Simulink», Дэвид Джефри  Статья «Тестирование проектов и требований при помощи моделирования и симуляции», Майкл Кароне  Статья «Практические стратегии внедрения модельно-ориентированного проектирования для встроенных приложений», Эрик Диллабер, Ларри Кендрик, Венси Джин и Винод Редди  Статья «Optimal Scheduling in Graphical Modeling Environments», Michael Burke  Статья «Model-Based Design for Large High-Integrity Systems: A Discussion Regarding Model Architecture», Mike Anthony, Jon Friedman  Вебинар «Лучшие методы крупномасштабного моделирования с использованием инструментов MathWorks»
  • 10. 11 Дальнейшие рекомендации (данные модели)  Статья «Design Data Management in Model-Based Design», Saurabh Mahapatra, Priyanka Gotika  Статья «Design Variant Management in Model-Based Design», Saurabh Mahapatra, Priyanka Gotika  Статья «Model-Based Design for Large High-Integrity Systems: A Discussion on Data Modeling and Management», Mike Anthony, Matt Behr  Видео «Управление данными в моделях Simulink с использованием словаря данных»  Видео «Управление конфигурациями подсистем»
  • 11. 12 Использование Simulink Projects  Поиск, координация, и обмен связанными файлами в Simulink  Доступ к функционалу системы контроля версий  Рассмотрение изменений и слияние изменений в моделях Simulink  Просмотр информации о ревизиях и авторах  Управление ярлыками и метаданными проекта и файлов  Анализ зависимостей файлов проекта >>
  • 12. 14 Интеграция с системами контроля версий >>
  • 14. 18 Дальнейшие рекомендации (командная разработка)  Статья «Integrated Project Management Tool for Modeling and Simulation of Complex Systems», Sergio Tamayo, Stacey Gage, Gavin Walker  Статья «Model-Based Design for Large High-Integrity Systems: A Discussion on Logic-Intensive Algorithms», Mike Anthony, Will Campbell, Becky Petteys  Статья «Automatic Report Generation in Model-Based Design», Saurabh Mahapatra  Статья «Team-Based Collaboration in Model-Based Design», Saurabh Mahapatra, Jason Ghidella, Gavin Walker  Статья «Model-Based Design for Large High-Integrity Systems: A Discussion on Verification and Validation», Mike Anthony, Matt Behr, Matt Jardin, Richard Ruff
  • 15. 19 Дальнейшие рекомендации (командная разработка)  Вебинар «Командная разработка в Simulink»  Видео «Использование Simulink Project совместно с Subversion»  Видео «Командная работа с Simulink Projects»  Вебинар «Эффективное применение системного моделирования и системных моделей»  Вебинар «Simulink для системного проектирования в соответствии с ARP4754»  Серия вебинаров «Tips and Tricks for Large-Scale Model-Based Design»  www.mathworks.com/mbd
  • 16. 20 Систематическое тестирование в Simulink с использованием Simulink Test
  • 18. 22 Simulink Test: Test Sequence/Test Assessment >>
  • 20. 24 - Доказательство свойств системы - Генерация тестов для покрытия модели - Поиск ошибок проектирования - Доказательство отсутствия ошибок времени исполнения Формальные методы верификации
  • 21. 25 Доказательство свойств системы V1.0 V2.0 V3.0 Свойства (Требования) Алгоритм (Система) Модель для верификации Доказательство свойств для системы Simulink Design Verifier >>
  • 22. 26 Автоматическая генерация тестов Simulink Design Verifier – Поиск тестовых векторов для покрытия, не достигнутого функциональными тестами • Поиск пропущенных требований • Идентификация производных требований • Удаление функций модели, не отслеживаемых к требованиями, только если эти функции не отслеживаются к производным требованиям • Помощь в составлении тестовых векторов (функциональных) для 100% покрытия модели тестами >>
  • 23. 27 Поиск ошибок проектирования Simulink Design Verifier Генерация контр-примеров • Ошибки деления на ноль • Целочисленное переполнение • Доступ за границы массива • Мертвая логика Запись вебинара: Формальная верификация в MATLAB и Simulink >>
  • 24. 28 Стандарты моделирования • MAAB (MathWorks Automotive Advisory Board) https://www.mathworks.com/solutions/automotive/standards/maab.html • NASA-STD-7009 https://standards.nasa.gov/standard/nasa/nasa-std-7009 • MISRA AC SLSF https://www.misra.org.uk/Activities/MISRAAutocode/tabid/72/Default.aspx • NASA ORION GN&C https://www.mathworks.com/solutions/aerospace-defense/standards/nasa.html • Simulink Modeling Guidelines for High-Integrity Systems https://www.mathworks.com/help/simulink/high-integrity-systems.html
  • 25. 29 Соответствие стандартам моделирования  Model Advisor используется для – Установление стандартов моделирования и «лучших практик» – Выявление проблем моделирования и генерации кода – Проверка моделей на известные проблемы с обновлением версий
  • 26. 30 Тренинги Курс «Командная разработка и архитектура модели в Simulink» (2 дня)  Управление интерфейсами подсистем и моделей Simulink  Работа с требованиями в моделях Simulink  Разбиение моделей с использованием подсистем, библиотек и ссылок на модели  Управление моделями и их зависимостями в проекте  Управление размещением, хранением и поведением данных в модели при генерации кода  Установление и контроль за соблюдением стандартов моделирования  Документирование моделей Simulink и обмен моделями http://matlab.ru/training/SLMB
  • 27. 31 Тренинги Курс «Верификация и валидация моделей Simulink» (1 день)  Разработка тестовых примеров  Анализ результатов тестирования  Выполнение множественных тестов  Построение отчетов о результатах тестирования  Автоматическая проверка моделей http://matlab.ru/training/SLVV
  • 28. 32 Услуга: аудит процессов проектирования систем  Анализ и оценка существующих процессов, организации, технологий и целей  Интервью с руководителями и техническими специалистами  Краткосрочный и долгосрочный планы улучшения
  • 29. 33 Центр инженерных технологий и моделирования Экспонента  Вебинары, семинары, обучение, демонстрационные версии, консалтинг, внедрение МОП : www.MATLAB.ru  E-mail: matlab@exponenta.ru  Тел.: +7 (495) 009 65 85  Дополнительная информация: www.mathworks.com, www.exponenta.ru www.youtube.com/user/MATLABinRussia