SlideShare a Scribd company logo
All you need is conf.uml2.ru6
Работа с требованиями при
создании программного
обеспечения бортовой
радиоэлектронной аппаратуры
Лалетин Сергей
ЛАФ 6, 2015 г.
Лалетин Сергей
ГосНИИАС
2001 – 2007
Rockwell Collins
2007 – н.в.
sglaletin@gmail.com
ЛАФ 6, 2015 г.
Цель доклада
Показать основные моменты, которые
касаются работы с требованиями, при
создании программного обеспечения
бортовой радиоэлектронной аппаратуры с
учетом использования стандарта RTCA DO-
178C (Software Considerations in Airborne
Systems and Equipment Certification)
3
ЛАФ 6, 2015 г.
План доклада
Документ DO-178C
Виды и типы требований
Уровни критичности ПО
Выявление требований
Проверка требований
Документы
Связные документы с RTCA DO-178C
Применение UC (UML и SysML)
Что бывает, если ....
Использованные источники
Заключение
4
ЛАФ 6, 2015 г.
Введение
Функциональность современного бортового радиоэлектронного
оборудования определяется встраиваемым программным
обеспечением.
Общий процент человеческих трудозатрат, связанный с созданием и
проверкой бортового ПО, составляет 60 процентов и более, в
зависимости от типа оборудования и его критичности.
Любая функциональная особенность должна быть определена
требованиями. Требования разрабатывают люди. Людям свойственны
ошибки. Фактически, на сегодняшний день, нет общего языка для
разработки требований в текстовом виде, как и нет средств
автоматизированной или автоматической проверки требований на их
корректность и полноту.
Иногда, к разработанным требованиям можно применить высказывание
Г. Гегеля: Великий человек обрекает людей на то, что бы они его
объясняли.
5
ЛАФ 6, 2015 г.
Стандарт с иллюстрацией
6
CONSENSUS n. Collective opinion or concord; general agreement or accord.
[Latin, from consentire, to agree]
Illustration provided by Pat Neilan, UK CAA
ЛАФ 6, 2015 г.
Документ DO-178C
System Life Cycle Processes
Hardware Life Cycle Processes
Software Life Cycle Processes
7
ЛАФ 6, 2015 г.
Процессы (DO-178C)
1. Процессы планирования ПО
2. Процессы разработки ПО
3. Процессы управления конфигурациями ПО
4. Процессы обеспечения качества
5. Процессы проверки ПО
6. Процессы сертификации ПО
8
ЛАФ 6, 2015 г.
Процессы разработки (DO-178C)
1. Процессы определения требований к ПО
2. Процессы определения архитектуры и
дизайна ПО
3. Процессы кодирования ПО
4. Процессы интеграции ПО
9
ЛАФ 6, 2015 г. 10
Поток информации
Техническая спецификация
заказчика - PTS
Документы системного уровня
Документы уровня ПО
Отраслевые стандарты
Стандарты заказчика
HLR LLR Derived Req.
ЛАФ 6, 2015 г.
Уровни критичности ПО
Level A – Catastrophic. Отказ может привести к
катастрофической отказной ситуации
Level B – Hazardous. Отказ может привести к
непредсказуемой отказной ситуации
Level C – Major. Отказ может привести к
существенной отказной ситуации
Level D – Minor. Отказ может привести к
несущественной отказной ситуации.
Level E - No Safety Effect. Отказная ситуация
отсутствует
11
ЛАФ 6, 2015 г.
Уровни критичности ПО
Уровень критичности ПО определяется в
результате процесса оценки безопасности
системы.
Должны быть проанализированы следующие
факторы:
• Потеря функциональности или
неправильная функциональность
• Воздействие внешних факторов
12
ЛАФ 6, 2015 г.
Жизненный цикл разработки (V-
Model)
13
ЛАФ 6, 2015 г. 14
Жизненный цикл разработки (V-
Model)
Phase 1 Phase 2 Phase 3 Phase … Phase N Phase N+1
ЛАФ 6, 2015 г.
Этапы проекта
…………………..
SRR - System Requirements Review
SDR - System Design Review
PDR - Preliminary Design Review
CDR - Critical Design Review
PRR - Production Readiness Review
…………………..
15
ЛАФ 6, 2015 г.
Эволюция продукта (разработка)
16
Prototype Blue Label Red label
Black Label Certification Product
ЛАФ 6, 2015 г.
Определение требования
Требование к ПО (Software requirement) –
описание того, что должно быть выполнено
программным обеспечением, учитывая
входные данные и ограничения.
Требование к ПО может быть как
требованием высокого уровня(LLR), так и
требованием низкого уровня(HLR).
17
ЛАФ 6, 2015 г.
Системные требования
Системные требованя к программному
обеспечению, включают в себя:
• Функциональные и эксплуатационные
требования
• Требования к интерфейсам
• Требования к производительности
• Требования к безопасности (Safety) и
защищенности (Security)
• Требования к обслуживанию
18
ЛАФ 6, 2015 г.
Требования высокого уровня
Требования высокого уровня (High-level
requirements) – требования к программному
обеспечению, разработанные на основе
анализа системных требований, требований к
безопасности и системной архитектуре
19
ЛАФ 6, 2015 г.
Требования низкого уровня
Требования низкого уровня (Low-level
requirements) – требования к программному
обеспечению, разработанные на основе
требований высокого уровня, новых
требований, появившихся в процессе
разработки (derived requirements) и
ограничений. Исходный код разрабатывается
на основе требований низкого уровня (LLR).
20
ЛАФ 6, 2015 г.
Derived requirements
Новые требования, появившиеся в процессе
разработки (Derived requirements) –
требования, появившиеся в процессе
разработки программного обеспечения,
которые прямо не ссылаются на требования
высокого уровня, но уточняют
функциональность, определенную
системными требованиями или
требованиями высокого уровня.
21
ЛАФ 6, 2015 г.
Характеристики требования
Требование должно быть:
• тестируемым
• реализуемым
• ясным для понимания
• законченным
• полным
22
ЛАФ 6, 2015 г.
Анализ покрытия: Требования vs
тестовые процедуры vs код
Dead code – Выполняемый код, непокрытый
требованиями
Extraneous code – Выполняемый код,
непокрытый требованиями, для примера, код
унаследованный от другой системы
Deactivated code – Выполняемый код,
покрытый требованиями, но не
используемый, или не предназначенный для
использования (robustness programming)
23
ЛАФ 6, 2015 г.
Техники выявления и уточнения
требований
Анализ документов и стандартов (отрасль,
закачик)
Проведение регулярных внутренних и
внешних совещаний
Официальная переписка с заказчиком
и т.д.
24
ЛАФ 6, 2015 г.
Разработка требований и общий
подход
Для разработки требования используется
глагол “shall”, для рекомендации
используется глагол “should”, “must”, “will”.
Примеры требования:
The I/O interface shall be ARINC 429.
The power-up event shall be logged each time.
25
ЛАФ 6, 2015 г.
Проверка требований высокого
уровня
1. Проверка на соответствие требованиям
системного уровня
2. Проверка на точность и полноту
3. Проверка на программно-аппаратную
совместимость
4. Проверка на тестируемость
5. Проверка на соответствие стандартам
6. Проверка на прослеживаемость (Traceability)
7. Проверка на правильность предложенных
алгоритмов
26
ЛАФ 6, 2015 г.
Проверка требований низкого
уровня
1. Проверка на соответствие требованиям высокого
уровня
2. Проверка на точность и полноту
3. Проверка на программно-аппаратную
совместимость
4. Проверка на тестируемость
5. Проверка на соответствие стандартам
6. Проверка на прослеживаемость (Traceability)
7. Проверка на правильность предложенных
алгоритмов
27
ЛАФ 6, 2015 г.
Документация
The Plan for Software Aspects of Certification
The Software Development Plan
The Software Verification Plan
The Software Configuration Management Plan
The Software Quality Assurance Plan
The Software Requirements Standards
The Software Design Standards
The Software Code Standards
The Software Verification results
28
ЛАФ 6, 2015 г.
Связные документы дополнения
• RTCA DO-331 "Model-Based Development
and Verification Supplement to DO-178C and
DO-278"
• RTCA DO-332 "Object-Oriented Technology
and Related Techniques Supplement to DO-
178C and DO-278A"
• RTCA DO-333 "Formal Methods Supplement
to DO-178C and DO-278A"
• RTCA DO-330 "Software Tool Qualification
Considerations"
29
ЛАФ 6, 2015 г.
Что бывает если
Тип ВС: Boeing 777
Год происшествия: 2005
Авиакомпания: Malaysia Air
Маршрут: Perth, Australia - Kuala Lumpur, Malaysia
Авиационное происшествие: Воздушное судно совершило
самопроизвольный маневр
Причина: Отказ в INS
Детали: Дефект ПО INS позволил INS принять недостоверные
данные от отказавшего акселерометра
Последствия: FAA выпустила экстренную директиву для
поддержания летной годности всего парка самолетов типа
Boeing 777 и обязала всех эксплуатантов выполнить
обновление ПО, с целью устранения дефекта
30
ЛАФ 6, 2015 г.
UML и SysML
• SysML применяется на уровне System Life
Cycle Processes
• UML применяется на уровне Software Life
Cycle Processes
• Модели не являются требованиями.
Требованиями является только текст,
содержащий “shall”
31
ЛАФ 6, 2015 г. 32
Requirements Diagram in SysML
ЛАФ 6, 2015 г.
Заключение
• Модели из Model Based Requirements
Engineering применяются только как
дополнительные разъясняющие материалы к
требованиям в текстовом виде
• Модели из Model Based Development
(Simulink, SCADE) применяются для
разработки систем с высоким уровнем
критичности, с последующим
самогенерирующемся кодом
33
ЛАФ 6, 2015 г.
Заключение
Для эффективной работы с требованиями,
необходимо:
• Знание предметной области
• Знание и умение применять отраслевые
стандарты
• Иметь аналитические способности/навыки
• Знание применяемых инструментов
• Уметь работать в комманде
34
ЛАФ 6, 2015 г. 35
Заключение
RTCA DO в России переводятся и адаптируются в
виде КТ МАК.
RTCA DO-178B (1992) -> КТ-178В (2004)
RTCA DO-178C (2011) -> КТ-178С (?)
RTCA DO-254 (2000) -> КТ-254 (2011)
Отставание в среднем на 10 лет и более
ЛАФ 6, 2015 г.
Использованные источники
1. RTCA DO-178C Software Considerations in
Airborne Systems and Equipment Certification
www.rtca.org
2. Avionics Magazine
www.aviationtoday.com/av/
36
Вопросы?
6-й Летний
Аналитический
Фестиваль
г. Иваново
20-21 июня 2015
conf.uml2.ru
All you need is …

More Related Content

What's hot

Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Подготовка стратегии тестирования под высокорискованный, высокодоходный проектПодготовка стратегии тестирования под высокорискованный, высокодоходный проект
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
SQALab
 
Лекция 2 тестирование и жизненный цикл ПО
Лекция 2 тестирование и жизненный цикл ПОЛекция 2 тестирование и жизненный цикл ПО
Лекция 2 тестирование и жизненный цикл ПО
Sergey Chuburov
 
AgileDays 2016. Внедрение Agile в Банке
AgileDays 2016. Внедрение Agile в БанкеAgileDays 2016. Внедрение Agile в Банке
AgileDays 2016. Внедрение Agile в Банке
Михаил Кононов
 
Безопасная разработка приложений на практике
Безопасная разработка приложений на практикеБезопасная разработка приложений на практике
Безопасная разработка приложений на практике
Pointlane
 
Владислав Чернов, Badoo
Владислав Чернов, BadooВладислав Чернов, Badoo
Владислав Чернов, Badoo
Ontico
 
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Андрій Лазарєв “Автоматизація тестування Enterprise систем”Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Dakiry
 
Цикл безопасной разработки
Цикл безопасной разработкиЦикл безопасной разработки
Цикл безопасной разработки
RISClubSPb
 
Профессиональная разработка в суровом Enterprise
Профессиональная разработка в суровом EnterpriseПрофессиональная разработка в суровом Enterprise
Профессиональная разработка в суровом Enterprise
Alexander Granin
 
М.Гайворонский -- опыт разработки САУ двигателя
М.Гайворонский -- опыт разработки САУ двигателяМ.Гайворонский -- опыт разработки САУ двигателя
М.Гайворонский -- опыт разработки САУ двигателя
Anatoly Levenchuk
 
C++ осень 2012 лекция 12
C++ осень 2012 лекция 12C++ осень 2012 лекция 12
C++ осень 2012 лекция 12Technopark
 
Сделать безопасно и сертифицировано — ЗАО «ПМ» на DevCon 2015
Сделать безопасно и сертифицировано — ЗАО «ПМ» на DevCon 2015Сделать безопасно и сертифицировано — ЗАО «ПМ» на DevCon 2015
Сделать безопасно и сертифицировано — ЗАО «ПМ» на DevCon 2015
Maxim Avdyunin
 
На пути к совершенному инжинирингу
На пути к совершенному инжинирингуНа пути к совершенному инжинирингу
На пути к совершенному инжинирингу
Vitebsk DSC
 
Введение в performance management
Введение в performance managementВведение в performance management
Введение в performance management
CEE-SEC(R)
 
Жизненный цикл безопасной разработки платежных приложений
Жизненный цикл безопасной разработки платежных приложенийЖизненный цикл безопасной разработки платежных приложений
Жизненный цикл безопасной разработки платежных приложений
RISClubSPb
 
Discovery Kanban для управления беклогом Scrum-команды
Discovery Kanban для управления беклогом Scrum-командыDiscovery Kanban для управления беклогом Scrum-команды
Discovery Kanban для управления беклогом Scrum-команды
CEE-SEC(R)
 
Club QA Kostoma. First Meeting. Доклад. Что должен знать тестировщик.
Club QA Kostoma. First Meeting. Доклад. Что должен знать тестировщик.Club QA Kostoma. First Meeting. Доклад. Что должен знать тестировщик.
Club QA Kostoma. First Meeting. Доклад. Что должен знать тестировщик.Club QA Kostroma
 
Опыт внедрения Scrum
Опыт внедрения ScrumОпыт внедрения Scrum
Опыт внедрения Scrum
Alexey Krivitsky
 
Как развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CIКак развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CI
CEE-SEC(R)
 
23may 1500 valday михаил кадер 'что надо знать о сертификации по общим критер...
23may 1500 valday михаил кадер 'что надо знать о сертификации по общим критер...23may 1500 valday михаил кадер 'что надо знать о сертификации по общим критер...
23may 1500 valday михаил кадер 'что надо знать о сертификации по общим критер...Positive Hack Days
 

What's hot (20)

Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Подготовка стратегии тестирования под высокорискованный, высокодоходный проектПодготовка стратегии тестирования под высокорискованный, высокодоходный проект
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
 
Лекция 2 тестирование и жизненный цикл ПО
Лекция 2 тестирование и жизненный цикл ПОЛекция 2 тестирование и жизненный цикл ПО
Лекция 2 тестирование и жизненный цикл ПО
 
AgileDays 2016. Внедрение Agile в Банке
AgileDays 2016. Внедрение Agile в БанкеAgileDays 2016. Внедрение Agile в Банке
AgileDays 2016. Внедрение Agile в Банке
 
Безопасная разработка приложений на практике
Безопасная разработка приложений на практикеБезопасная разработка приложений на практике
Безопасная разработка приложений на практике
 
Владислав Чернов, Badoo
Владислав Чернов, BadooВладислав Чернов, Badoo
Владислав Чернов, Badoo
 
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Андрій Лазарєв “Автоматизація тестування Enterprise систем”Андрій Лазарєв “Автоматизація тестування Enterprise систем”
Андрій Лазарєв “Автоматизація тестування Enterprise систем”
 
Цикл безопасной разработки
Цикл безопасной разработкиЦикл безопасной разработки
Цикл безопасной разработки
 
Профессиональная разработка в суровом Enterprise
Профессиональная разработка в суровом EnterpriseПрофессиональная разработка в суровом Enterprise
Профессиональная разработка в суровом Enterprise
 
М.Гайворонский -- опыт разработки САУ двигателя
М.Гайворонский -- опыт разработки САУ двигателяМ.Гайворонский -- опыт разработки САУ двигателя
М.Гайворонский -- опыт разработки САУ двигателя
 
C++ осень 2012 лекция 12
C++ осень 2012 лекция 12C++ осень 2012 лекция 12
C++ осень 2012 лекция 12
 
Сделать безопасно и сертифицировано — ЗАО «ПМ» на DevCon 2015
Сделать безопасно и сертифицировано — ЗАО «ПМ» на DevCon 2015Сделать безопасно и сертифицировано — ЗАО «ПМ» на DevCon 2015
Сделать безопасно и сертифицировано — ЗАО «ПМ» на DevCon 2015
 
ITP Presentation
ITP PresentationITP Presentation
ITP Presentation
 
На пути к совершенному инжинирингу
На пути к совершенному инжинирингуНа пути к совершенному инжинирингу
На пути к совершенному инжинирингу
 
Введение в performance management
Введение в performance managementВведение в performance management
Введение в performance management
 
Жизненный цикл безопасной разработки платежных приложений
Жизненный цикл безопасной разработки платежных приложенийЖизненный цикл безопасной разработки платежных приложений
Жизненный цикл безопасной разработки платежных приложений
 
Discovery Kanban для управления беклогом Scrum-команды
Discovery Kanban для управления беклогом Scrum-командыDiscovery Kanban для управления беклогом Scrum-команды
Discovery Kanban для управления беклогом Scrum-команды
 
Club QA Kostoma. First Meeting. Доклад. Что должен знать тестировщик.
Club QA Kostoma. First Meeting. Доклад. Что должен знать тестировщик.Club QA Kostoma. First Meeting. Доклад. Что должен знать тестировщик.
Club QA Kostoma. First Meeting. Доклад. Что должен знать тестировщик.
 
Опыт внедрения Scrum
Опыт внедрения ScrumОпыт внедрения Scrum
Опыт внедрения Scrum
 
Как развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CIКак развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CI
 
23may 1500 valday михаил кадер 'что надо знать о сертификации по общим критер...
23may 1500 valday михаил кадер 'что надо знать о сертификации по общим критер...23may 1500 valday михаил кадер 'что надо знать о сертификации по общим критер...
23may 1500 valday михаил кадер 'что надо знать о сертификации по общим критер...
 

Viewers also liked

Job boards
Job boardsJob boards
Job boards
Rajaselva Rajavel
 
Camera shots tumblr
Camera shots tumblrCamera shots tumblr
Camera shots tumblr
ZaineBradford-Millar
 
Onset 24hr production presentation
Onset 24hr production presentationOnset 24hr production presentation
Onset 24hr production presentation
FujifilmPrint
 
Critical insights for approaching digital consumers
Critical insights for approaching digital consumersCritical insights for approaching digital consumers
Critical insights for approaching digital consumers
VietnamBusinessTV
 
IT audit and control in bestway cement
IT audit and control in bestway cementIT audit and control in bestway cement
IT audit and control in bestway cement
SHUJAAT KHALID CFA-Level 1,SAP-FI,ACPA, MSc-Fin, ACCA-F
 
EMB l'orentea
EMB l'orenteaEMB l'orentea
EMB l'orentea
juliacp1
 
Content marketing via app store
Content marketing via app storeContent marketing via app store
Content marketing via app store
VietnamBusinessTV
 
Who is Blue Earth Interactive
Who is Blue Earth InteractiveWho is Blue Earth Interactive
Who is Blue Earth Interactive
Samuel Usem
 
Problems of Well-Being
Problems of Well-BeingProblems of Well-Being
Problems of Well-Being
Emily Jonkman
 
Motor vehicle accidents
Motor vehicle accidentsMotor vehicle accidents
Motor vehicle accidents
lucacerniglia
 
Invest
InvestInvest
Invest
alljuliav11
 
Features of the Jet Press 720S
Features of the Jet Press 720SFeatures of the Jet Press 720S
Features of the Jet Press 720S
FujifilmPrint
 
Memorial Community Hospital and Health Care in Blair, Neb. recently acquired ...
Memorial Community Hospital and Health Care in Blair, Neb. recently acquired ...Memorial Community Hospital and Health Care in Blair, Neb. recently acquired ...
Memorial Community Hospital and Health Care in Blair, Neb. recently acquired ...
Tyler Dahlgren
 
46 σποριαδες νοεμβριος δεκεμβριος 2013
46 σποριαδες νοεμβριος   δεκεμβριος 201346 σποριαδες νοεμβριος   δεκεμβριος 2013
46 σποριαδες νοεμβριος δεκεμβριος 2013
poimenikos
 
Jet Press 720S technical developments
Jet Press 720S technical developmentsJet Press 720S technical developments
Jet Press 720S technical developments
FujifilmPrint
 

Viewers also liked (15)

Job boards
Job boardsJob boards
Job boards
 
Camera shots tumblr
Camera shots tumblrCamera shots tumblr
Camera shots tumblr
 
Onset 24hr production presentation
Onset 24hr production presentationOnset 24hr production presentation
Onset 24hr production presentation
 
Critical insights for approaching digital consumers
Critical insights for approaching digital consumersCritical insights for approaching digital consumers
Critical insights for approaching digital consumers
 
IT audit and control in bestway cement
IT audit and control in bestway cementIT audit and control in bestway cement
IT audit and control in bestway cement
 
EMB l'orentea
EMB l'orenteaEMB l'orentea
EMB l'orentea
 
Content marketing via app store
Content marketing via app storeContent marketing via app store
Content marketing via app store
 
Who is Blue Earth Interactive
Who is Blue Earth InteractiveWho is Blue Earth Interactive
Who is Blue Earth Interactive
 
Problems of Well-Being
Problems of Well-BeingProblems of Well-Being
Problems of Well-Being
 
Motor vehicle accidents
Motor vehicle accidentsMotor vehicle accidents
Motor vehicle accidents
 
Invest
InvestInvest
Invest
 
Features of the Jet Press 720S
Features of the Jet Press 720SFeatures of the Jet Press 720S
Features of the Jet Press 720S
 
Memorial Community Hospital and Health Care in Blair, Neb. recently acquired ...
Memorial Community Hospital and Health Care in Blair, Neb. recently acquired ...Memorial Community Hospital and Health Care in Blair, Neb. recently acquired ...
Memorial Community Hospital and Health Care in Blair, Neb. recently acquired ...
 
46 σποριαδες νοεμβριος δεκεμβριος 2013
46 σποριαδες νοεμβριος   δεκεμβριος 201346 σποριαδες νοεμβριος   δεκεμβριος 2013
46 σποριαδες νοεμβριος δεκεμβριος 2013
 
Jet Press 720S technical developments
Jet Press 720S technical developmentsJet Press 720S technical developments
Jet Press 720S technical developments
 

Similar to Работа с требованиями при создании программного обеспечения бортовой радиоэлектронной аппаратуры

QA Fest 2015. Владимир Скляр. Организация тестирования встроенных систем в ко...
QA Fest 2015. Владимир Скляр. Организация тестирования встроенных систем в ко...QA Fest 2015. Владимир Скляр. Организация тестирования встроенных систем в ко...
QA Fest 2015. Владимир Скляр. Организация тестирования встроенных систем в ко...
QAFest
 
лекция безопасная разработка приложений
лекция  безопасная разработка приложенийлекция  безопасная разработка приложений
лекция безопасная разработка приложений
Alexander Kolybelnikov
 
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...
Iosif Itkin
 
Тестирование оборудования для операторов связи: методики, инструменты, анализ...
Тестирование оборудования для операторов связи: методики, инструменты, анализ...Тестирование оборудования для операторов связи: методики, инструменты, анализ...
Тестирование оборудования для операторов связи: методики, инструменты, анализ...
Cisco Russia
 
Роль тестирования в сертификации ПО систем с высокими требованиями к надежнос...
Роль тестирования в сертификации ПО систем с высокими требованиями к надежнос...Роль тестирования в сертификации ПО систем с высокими требованиями к надежнос...
Роль тестирования в сертификации ПО систем с высокими требованиями к надежнос...
SQALab
 
Особенности проведения аудита безопасности корпоративной IT-инфраструктуры_PH...
Особенности проведения аудита безопасности корпоративной IT-инфраструктуры_PH...Особенности проведения аудита безопасности корпоративной IT-инфраструктуры_PH...
Особенности проведения аудита безопасности корпоративной IT-инфраструктуры_PH...
Ivan Piskunov
 
Сергей Ревко
Сергей РевкоСергей Ревко
Сергей Ревко
SQALab
 
КГТУ Лекция 2: Обеспечение Качества Программного Обеспечения
КГТУ Лекция 2: Обеспечение Качества Программного ОбеспеченияКГТУ Лекция 2: Обеспечение Качества Программного Обеспечения
КГТУ Лекция 2: Обеспечение Качества Программного Обеспечения
Iosif Itkin
 
Надежность ПО и Runtime Verification
Надежность ПО и Runtime VerificationНадежность ПО и Runtime Verification
Надежность ПО и Runtime Verification
ru_Parallels
 
Подходы и современные инструменты мониторинга ИТ-инфраструктуры: от анализа т...
Подходы и современные инструменты мониторинга ИТ-инфраструктуры: от анализа т...Подходы и современные инструменты мониторинга ИТ-инфраструктуры: от анализа т...
Подходы и современные инструменты мониторинга ИТ-инфраструктуры: от анализа т...
Cisco Russia
 
Robot Framework: универсальный инструмент автоматизатора
Robot Framework: универсальный инструмент автоматизатораRobot Framework: универсальный инструмент автоматизатора
Robot Framework: универсальный инструмент автоматизатора
SQALab
 
Внедрение тестирования в Scrum
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в ScrumDenis Petelin
 
Внедрение тестирования в Scrum
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в ScrumDenis Petelin
 
Cеминар в Виннице (22.03.2014)
Cеминар в Виннице (22.03.2014)Cеминар в Виннице (22.03.2014)
Cеминар в Виннице (22.03.2014)
Alexander Babich
 
Семейство мультисервисных маршрутизаторов Cisco ISR G2. Обзор интегрированных...
Семейство мультисервисных маршрутизаторов Cisco ISR G2. Обзор интегрированных...Семейство мультисервисных маршрутизаторов Cisco ISR G2. Обзор интегрированных...
Семейство мультисервисных маршрутизаторов Cisco ISR G2. Обзор интегрированных...Cisco Russia
 
Практические аспекты организации процесса тестирования в государственных учре...
Практические аспекты организации процесса тестирования в государственных учре...Практические аспекты организации процесса тестирования в государственных учре...
Практические аспекты организации процесса тестирования в государственных учре...
Alexandra Varfolomeeva
 
Управление релизами в системе управления ИТ
Управление релизами в системе управления ИТУправление релизами в системе управления ИТ
Управление релизами в системе управления ИТ
Softmart
 
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...
Badoo Development
 
Тестирование осень 2013 лекция 4
Тестирование осень 2013 лекция 4Тестирование осень 2013 лекция 4
Тестирование осень 2013 лекция 4Technopark
 
Инструменты автоматизации тестирования - дефективные
Инструменты автоматизации тестирования - дефективныеИнструменты автоматизации тестирования - дефективные
Инструменты автоматизации тестирования - дефективные
SQALab
 

Similar to Работа с требованиями при создании программного обеспечения бортовой радиоэлектронной аппаратуры (20)

QA Fest 2015. Владимир Скляр. Организация тестирования встроенных систем в ко...
QA Fest 2015. Владимир Скляр. Организация тестирования встроенных систем в ко...QA Fest 2015. Владимир Скляр. Организация тестирования встроенных систем в ко...
QA Fest 2015. Владимир Скляр. Организация тестирования встроенных систем в ко...
 
лекция безопасная разработка приложений
лекция  безопасная разработка приложенийлекция  безопасная разработка приложений
лекция безопасная разработка приложений
 
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...
TMPA-2015: Standards and Standartization in Program Engineering. Why Would Yo...
 
Тестирование оборудования для операторов связи: методики, инструменты, анализ...
Тестирование оборудования для операторов связи: методики, инструменты, анализ...Тестирование оборудования для операторов связи: методики, инструменты, анализ...
Тестирование оборудования для операторов связи: методики, инструменты, анализ...
 
Роль тестирования в сертификации ПО систем с высокими требованиями к надежнос...
Роль тестирования в сертификации ПО систем с высокими требованиями к надежнос...Роль тестирования в сертификации ПО систем с высокими требованиями к надежнос...
Роль тестирования в сертификации ПО систем с высокими требованиями к надежнос...
 
Особенности проведения аудита безопасности корпоративной IT-инфраструктуры_PH...
Особенности проведения аудита безопасности корпоративной IT-инфраструктуры_PH...Особенности проведения аудита безопасности корпоративной IT-инфраструктуры_PH...
Особенности проведения аудита безопасности корпоративной IT-инфраструктуры_PH...
 
Сергей Ревко
Сергей РевкоСергей Ревко
Сергей Ревко
 
КГТУ Лекция 2: Обеспечение Качества Программного Обеспечения
КГТУ Лекция 2: Обеспечение Качества Программного ОбеспеченияКГТУ Лекция 2: Обеспечение Качества Программного Обеспечения
КГТУ Лекция 2: Обеспечение Качества Программного Обеспечения
 
Надежность ПО и Runtime Verification
Надежность ПО и Runtime VerificationНадежность ПО и Runtime Verification
Надежность ПО и Runtime Verification
 
Подходы и современные инструменты мониторинга ИТ-инфраструктуры: от анализа т...
Подходы и современные инструменты мониторинга ИТ-инфраструктуры: от анализа т...Подходы и современные инструменты мониторинга ИТ-инфраструктуры: от анализа т...
Подходы и современные инструменты мониторинга ИТ-инфраструктуры: от анализа т...
 
Robot Framework: универсальный инструмент автоматизатора
Robot Framework: универсальный инструмент автоматизатораRobot Framework: универсальный инструмент автоматизатора
Robot Framework: универсальный инструмент автоматизатора
 
Внедрение тестирования в Scrum
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в Scrum
 
Внедрение тестирования в Scrum
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в Scrum
 
Cеминар в Виннице (22.03.2014)
Cеминар в Виннице (22.03.2014)Cеминар в Виннице (22.03.2014)
Cеминар в Виннице (22.03.2014)
 
Семейство мультисервисных маршрутизаторов Cisco ISR G2. Обзор интегрированных...
Семейство мультисервисных маршрутизаторов Cisco ISR G2. Обзор интегрированных...Семейство мультисервисных маршрутизаторов Cisco ISR G2. Обзор интегрированных...
Семейство мультисервисных маршрутизаторов Cisco ISR G2. Обзор интегрированных...
 
Практические аспекты организации процесса тестирования в государственных учре...
Практические аспекты организации процесса тестирования в государственных учре...Практические аспекты организации процесса тестирования в государственных учре...
Практические аспекты организации процесса тестирования в государственных учре...
 
Управление релизами в системе управления ИТ
Управление релизами в системе управления ИТУправление релизами в системе управления ИТ
Управление релизами в системе управления ИТ
 
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...
Доклад Ильи Кудинова на DevConf 2013. "Организация автоматизированного тестир...
 
Тестирование осень 2013 лекция 4
Тестирование осень 2013 лекция 4Тестирование осень 2013 лекция 4
Тестирование осень 2013 лекция 4
 
Инструменты автоматизации тестирования - дефективные
Инструменты автоматизации тестирования - дефективныеИнструменты автоматизации тестирования - дефективные
Инструменты автоматизации тестирования - дефективные
 

Работа с требованиями при создании программного обеспечения бортовой радиоэлектронной аппаратуры

  • 1. All you need is conf.uml2.ru6 Работа с требованиями при создании программного обеспечения бортовой радиоэлектронной аппаратуры Лалетин Сергей
  • 2. ЛАФ 6, 2015 г. Лалетин Сергей ГосНИИАС 2001 – 2007 Rockwell Collins 2007 – н.в. sglaletin@gmail.com
  • 3. ЛАФ 6, 2015 г. Цель доклада Показать основные моменты, которые касаются работы с требованиями, при создании программного обеспечения бортовой радиоэлектронной аппаратуры с учетом использования стандарта RTCA DO- 178C (Software Considerations in Airborne Systems and Equipment Certification) 3
  • 4. ЛАФ 6, 2015 г. План доклада Документ DO-178C Виды и типы требований Уровни критичности ПО Выявление требований Проверка требований Документы Связные документы с RTCA DO-178C Применение UC (UML и SysML) Что бывает, если .... Использованные источники Заключение 4
  • 5. ЛАФ 6, 2015 г. Введение Функциональность современного бортового радиоэлектронного оборудования определяется встраиваемым программным обеспечением. Общий процент человеческих трудозатрат, связанный с созданием и проверкой бортового ПО, составляет 60 процентов и более, в зависимости от типа оборудования и его критичности. Любая функциональная особенность должна быть определена требованиями. Требования разрабатывают люди. Людям свойственны ошибки. Фактически, на сегодняшний день, нет общего языка для разработки требований в текстовом виде, как и нет средств автоматизированной или автоматической проверки требований на их корректность и полноту. Иногда, к разработанным требованиям можно применить высказывание Г. Гегеля: Великий человек обрекает людей на то, что бы они его объясняли. 5
  • 6. ЛАФ 6, 2015 г. Стандарт с иллюстрацией 6 CONSENSUS n. Collective opinion or concord; general agreement or accord. [Latin, from consentire, to agree] Illustration provided by Pat Neilan, UK CAA
  • 7. ЛАФ 6, 2015 г. Документ DO-178C System Life Cycle Processes Hardware Life Cycle Processes Software Life Cycle Processes 7
  • 8. ЛАФ 6, 2015 г. Процессы (DO-178C) 1. Процессы планирования ПО 2. Процессы разработки ПО 3. Процессы управления конфигурациями ПО 4. Процессы обеспечения качества 5. Процессы проверки ПО 6. Процессы сертификации ПО 8
  • 9. ЛАФ 6, 2015 г. Процессы разработки (DO-178C) 1. Процессы определения требований к ПО 2. Процессы определения архитектуры и дизайна ПО 3. Процессы кодирования ПО 4. Процессы интеграции ПО 9
  • 10. ЛАФ 6, 2015 г. 10 Поток информации Техническая спецификация заказчика - PTS Документы системного уровня Документы уровня ПО Отраслевые стандарты Стандарты заказчика HLR LLR Derived Req.
  • 11. ЛАФ 6, 2015 г. Уровни критичности ПО Level A – Catastrophic. Отказ может привести к катастрофической отказной ситуации Level B – Hazardous. Отказ может привести к непредсказуемой отказной ситуации Level C – Major. Отказ может привести к существенной отказной ситуации Level D – Minor. Отказ может привести к несущественной отказной ситуации. Level E - No Safety Effect. Отказная ситуация отсутствует 11
  • 12. ЛАФ 6, 2015 г. Уровни критичности ПО Уровень критичности ПО определяется в результате процесса оценки безопасности системы. Должны быть проанализированы следующие факторы: • Потеря функциональности или неправильная функциональность • Воздействие внешних факторов 12
  • 13. ЛАФ 6, 2015 г. Жизненный цикл разработки (V- Model) 13
  • 14. ЛАФ 6, 2015 г. 14 Жизненный цикл разработки (V- Model) Phase 1 Phase 2 Phase 3 Phase … Phase N Phase N+1
  • 15. ЛАФ 6, 2015 г. Этапы проекта ………………….. SRR - System Requirements Review SDR - System Design Review PDR - Preliminary Design Review CDR - Critical Design Review PRR - Production Readiness Review ………………….. 15
  • 16. ЛАФ 6, 2015 г. Эволюция продукта (разработка) 16 Prototype Blue Label Red label Black Label Certification Product
  • 17. ЛАФ 6, 2015 г. Определение требования Требование к ПО (Software requirement) – описание того, что должно быть выполнено программным обеспечением, учитывая входные данные и ограничения. Требование к ПО может быть как требованием высокого уровня(LLR), так и требованием низкого уровня(HLR). 17
  • 18. ЛАФ 6, 2015 г. Системные требования Системные требованя к программному обеспечению, включают в себя: • Функциональные и эксплуатационные требования • Требования к интерфейсам • Требования к производительности • Требования к безопасности (Safety) и защищенности (Security) • Требования к обслуживанию 18
  • 19. ЛАФ 6, 2015 г. Требования высокого уровня Требования высокого уровня (High-level requirements) – требования к программному обеспечению, разработанные на основе анализа системных требований, требований к безопасности и системной архитектуре 19
  • 20. ЛАФ 6, 2015 г. Требования низкого уровня Требования низкого уровня (Low-level requirements) – требования к программному обеспечению, разработанные на основе требований высокого уровня, новых требований, появившихся в процессе разработки (derived requirements) и ограничений. Исходный код разрабатывается на основе требований низкого уровня (LLR). 20
  • 21. ЛАФ 6, 2015 г. Derived requirements Новые требования, появившиеся в процессе разработки (Derived requirements) – требования, появившиеся в процессе разработки программного обеспечения, которые прямо не ссылаются на требования высокого уровня, но уточняют функциональность, определенную системными требованиями или требованиями высокого уровня. 21
  • 22. ЛАФ 6, 2015 г. Характеристики требования Требование должно быть: • тестируемым • реализуемым • ясным для понимания • законченным • полным 22
  • 23. ЛАФ 6, 2015 г. Анализ покрытия: Требования vs тестовые процедуры vs код Dead code – Выполняемый код, непокрытый требованиями Extraneous code – Выполняемый код, непокрытый требованиями, для примера, код унаследованный от другой системы Deactivated code – Выполняемый код, покрытый требованиями, но не используемый, или не предназначенный для использования (robustness programming) 23
  • 24. ЛАФ 6, 2015 г. Техники выявления и уточнения требований Анализ документов и стандартов (отрасль, закачик) Проведение регулярных внутренних и внешних совещаний Официальная переписка с заказчиком и т.д. 24
  • 25. ЛАФ 6, 2015 г. Разработка требований и общий подход Для разработки требования используется глагол “shall”, для рекомендации используется глагол “should”, “must”, “will”. Примеры требования: The I/O interface shall be ARINC 429. The power-up event shall be logged each time. 25
  • 26. ЛАФ 6, 2015 г. Проверка требований высокого уровня 1. Проверка на соответствие требованиям системного уровня 2. Проверка на точность и полноту 3. Проверка на программно-аппаратную совместимость 4. Проверка на тестируемость 5. Проверка на соответствие стандартам 6. Проверка на прослеживаемость (Traceability) 7. Проверка на правильность предложенных алгоритмов 26
  • 27. ЛАФ 6, 2015 г. Проверка требований низкого уровня 1. Проверка на соответствие требованиям высокого уровня 2. Проверка на точность и полноту 3. Проверка на программно-аппаратную совместимость 4. Проверка на тестируемость 5. Проверка на соответствие стандартам 6. Проверка на прослеживаемость (Traceability) 7. Проверка на правильность предложенных алгоритмов 27
  • 28. ЛАФ 6, 2015 г. Документация The Plan for Software Aspects of Certification The Software Development Plan The Software Verification Plan The Software Configuration Management Plan The Software Quality Assurance Plan The Software Requirements Standards The Software Design Standards The Software Code Standards The Software Verification results 28
  • 29. ЛАФ 6, 2015 г. Связные документы дополнения • RTCA DO-331 "Model-Based Development and Verification Supplement to DO-178C and DO-278" • RTCA DO-332 "Object-Oriented Technology and Related Techniques Supplement to DO- 178C and DO-278A" • RTCA DO-333 "Formal Methods Supplement to DO-178C and DO-278A" • RTCA DO-330 "Software Tool Qualification Considerations" 29
  • 30. ЛАФ 6, 2015 г. Что бывает если Тип ВС: Boeing 777 Год происшествия: 2005 Авиакомпания: Malaysia Air Маршрут: Perth, Australia - Kuala Lumpur, Malaysia Авиационное происшествие: Воздушное судно совершило самопроизвольный маневр Причина: Отказ в INS Детали: Дефект ПО INS позволил INS принять недостоверные данные от отказавшего акселерометра Последствия: FAA выпустила экстренную директиву для поддержания летной годности всего парка самолетов типа Boeing 777 и обязала всех эксплуатантов выполнить обновление ПО, с целью устранения дефекта 30
  • 31. ЛАФ 6, 2015 г. UML и SysML • SysML применяется на уровне System Life Cycle Processes • UML применяется на уровне Software Life Cycle Processes • Модели не являются требованиями. Требованиями является только текст, содержащий “shall” 31
  • 32. ЛАФ 6, 2015 г. 32 Requirements Diagram in SysML
  • 33. ЛАФ 6, 2015 г. Заключение • Модели из Model Based Requirements Engineering применяются только как дополнительные разъясняющие материалы к требованиям в текстовом виде • Модели из Model Based Development (Simulink, SCADE) применяются для разработки систем с высоким уровнем критичности, с последующим самогенерирующемся кодом 33
  • 34. ЛАФ 6, 2015 г. Заключение Для эффективной работы с требованиями, необходимо: • Знание предметной области • Знание и умение применять отраслевые стандарты • Иметь аналитические способности/навыки • Знание применяемых инструментов • Уметь работать в комманде 34
  • 35. ЛАФ 6, 2015 г. 35 Заключение RTCA DO в России переводятся и адаптируются в виде КТ МАК. RTCA DO-178B (1992) -> КТ-178В (2004) RTCA DO-178C (2011) -> КТ-178С (?) RTCA DO-254 (2000) -> КТ-254 (2011) Отставание в среднем на 10 лет и более
  • 36. ЛАФ 6, 2015 г. Использованные источники 1. RTCA DO-178C Software Considerations in Airborne Systems and Equipment Certification www.rtca.org 2. Avionics Magazine www.aviationtoday.com/av/ 36