Стандартний посібник DO-178A: Інструменти перевірки програмного забезпечення

Зміст

Стандартний посібник DO-178A: Інструменти перевірки програмного забезпечення

Вступ

Авіаційне програмне забезпечення відіграє вирішальну роль у забезпеченні безпеки та ефективності експлуатації літаків. Оскільки складність програмного забезпечення продовжує зростати, потреба в надійних процесах перевірки стає першочерговою. Стандарт DO-178A, розроблений Радіотехнічною комісією з аеронавтики (RTCA), містить рекомендації щодо сертифікації програмного забезпечення, що використовується в бортових системах. Ця стаття присвячена саме використанню інструментів перевірки програмного забезпечення в рамках DO-178A для досягнення відповідності та підвищення безпеки програмного забезпечення.

Розуміння DO-178A та його важливості

Огляд стандарту DO-178A

Стандарт DO-178A під офіційною назвою «Програмне забезпечення для бортових систем і сертифікації обладнання» було вперше опубліковано в 1985 році. Його основна мета — створити єдиний набір інструкцій для розробки та сертифікації систем бортового програмного забезпечення. Відповідність DO-178A є обов’язковою для програмного забезпечення, що використовується в комерційних, військових і авіаційних програмах загального призначення.

Важливість відповідності DO-178A

Відповідність стандарту DO-178A має вирішальне значення для авіаційної галузі, оскільки вона гарантує, що програмне забезпечення відповідає суворим вимогам безпеки та надійності. Дотримуючись стандарту, розробники можуть мінімізувати ризик програмних збоїв, які можуть мати катастрофічні наслідки. Відповідність DO-178A також зміцнює довіру між регуляторними органами, авіакомпаніями та пасажирами, забезпечуючи найвищий рівень безпеки та надійності авіаційного програмного забезпечення.

Рівні ДО-178А

Рівні ДО-178А

DO-178A визначає три рівні програмного забезпечення: рівень 1, рівень 2 і рівень 3. Рівень 1 представляє найвищий рівень критичності, тоді як рівень 3 представляє найнижчий.

Рівень 1

Рівень 1 є найсуворішим і найвимогливішим рівнем з точки зору вимог сертифікації. Функції програмного забезпечення, віднесені до рівня 1, мають найвищу критичність, і збій цих функцій може призвести до катастрофічних наслідків, включаючи загибель людей і самого літака. Приклади програмного забезпечення рівня 1 включають засоби керування польотом і життєво важливі системи авіоніки.

Вимоги та документація:

  • Повні та однозначні вимоги: Програмне забезпечення рівня 1 має мати повні та однозначні вимоги, які випливають із цілей безпеки на системному рівні.
  • Розширена документація: Центр сертифікації вимагає повний набір документів для програмного забезпечення рівня 1. Це включає плани розробки програмного забезпечення, плани керування конфігурацією, документи вимог до програмного забезпечення, документи щодо розробки програмного забезпечення, плани перевірки програмного забезпечення тощо.
  • Формальні методи та перевірка: Програмне забезпечення рівня 1 вимагає використання формальних методів, формальних методів перевірки та широкого тестування для забезпечення найвищого рівня надійності та безпеки.

Рівень 2

Рівень 2 присвоюється функціям програмного забезпечення з нижчим рівнем критичності порівняно з рівнем 1. Збій функцій рівня 2 може завдати значної шкоди літаку або системам, але наслідки не вважаються катастрофічними. Приклади програмного забезпечення рівня 2 включають системи керування двигуном і важливі функції навігації.

Вимоги та документація:

  • Чітко визначені вимоги: Програмне забезпечення рівня 2 повинно мати чітко визначені вимоги, які можна простежити до цілей безпеки на системному рівні.
  • Контрольований процес розробки: Процес розробки програмного забезпечення на Рівні 2 має бути добре контрольованим, з наголосом на управлінні конфігурацією, документуванні та тестуванні.
  • Комплексна перевірка: Діяльність з перевірки програмного забезпечення рівня 2 має охоплювати широкий спектр аспектів, включаючи функціональне тестування, аналіз структурного покриття та аналіз стійкості до відмов.

Рівень 3

Рівень 3 представляє найнижчий рівень критичності в DO-178A. Функції програмного забезпечення, призначені для рівня 3, мають незначний вплив на роботу літака, якщо вони вийдуть з ладу. Наслідки відмови зазвичай обмежуються незначними збоями в системі. Приклади програмного забезпечення рівня 3 включають системи розваг для пасажирів і некритичні функції моніторингу.

Вимоги та документація:

  • Визначені вимоги: Програмне забезпечення рівня 3 повинно мати визначені вимоги, які відповідають цілям безпеки на системному рівні.
  • Спрощений процес розробки: Процес розробки програмного забезпечення на Рівні 3 спрощений порівняно з Рівнями 1 і 2, з меншими вимогами до документації та тестування.
  • Основна перевірка: Діяльність верифікації на рівні 3 зосереджена на демонстрації відповідності вимогам і виконанні базового функціонального тестування.

Підсумовуючи, DO-178A визначає три рівні програмного забезпечення (рівень 1, рівень 2 і рівень 3), причому рівень 1 є найсуворішим і вимагає створення повного набору документів, які повинні бути надані центру сертифікації. Критичність функцій програмного забезпечення визначає присвоєний рівень і впливає на глибину та ретельність розробки та перевірки, необхідні для відповідності стандарту DO-178A.

Перевірка програмного забезпечення в DO-178A

Цілі перевірки

Перевірка програмного забезпечення, ключовий аспект DO-178A, має на меті продемонструвати, що розроблене програмне забезпечення відповідає встановленим вимогам і надійно працює в призначеному середовищі. Діяльність перевірки включає аналіз, тестування та перевірку артефактів програмного забезпечення протягом життєвого циклу розробки.

Роль інструментів перевірки програмного забезпечення

Інструменти перевірки програмного забезпечення є безцінними для досягнення цілей DO-178A. Ці інструменти автоматизують різноманітні дії з перевірки, зменшуючи ймовірність людської помилки та підвищуючи загальну ефективність. Вони допомагають аналізувати код, створювати тестові приклади та відстежувати вимоги, тим самим спрощуючи процес перевірки та покращуючи якість програмного забезпечення.

Типи засобів перевірки програмного забезпечення

Інструменти статичного аналізу

Інструменти статичного аналізу аналізують вихідний код або виконувані двійкові файли без їх виконання. Вони визначають потенційні дефекти, порушення правил кодування та інші проблеми, досліджуючи структуру коду, складність і відповідність стандартам кодування. Ці інструменти допомагають виявляти типові помилки програмного забезпечення, такі як переповнення буфера, розіменування нульового вказівника та неініціалізовані змінні.

Інструменти динамічного аналізу

Інструменти динамічного аналізу виконують програмне забезпечення та відстежують його поведінку під час виконання. Вони збирають інформацію про час виконання, таку як значення змінних, виклики функцій і використання пам’яті, що дозволяє розробникам виявляти дефекти, витоки пам’яті та вузькі місця продуктивності. Інструменти динамічного аналізу також сприяють створенню тестових випадків, які виконують певні програмні шляхи, забезпечуючи повне тестове покриття.

Інструменти тестування на основі моделі

Інструменти тестування на основі моделі використовують формальні моделі, такі як кінцеві автомати або діаграми станів, для автоматичного створення тестів. Ці інструменти забезпечують системний підхід до тестування програмного забезпечення, виводячи тестові випадки з моделі, забезпечуючи всебічне охоплення всіх можливих дій системи. Інструменти тестування, засновані на моделях, допомагають виявити кутові випадки, перевірити взаємодію складних систем і підвищити загальну ефективність тестування.

Інструменти відстеження вимог

Інструменти відстеження вимог встановлюють і підтримують зв’язки між вимогами до програмного забезпечення, артефактами проектування та діями перевірки. Ці інструменти дозволяють зіставляти вимоги з конкретними тестовими випадками, забезпечуючи належну перевірку всіх вимог. Інструменти відстеження вимог допомагають у документації відповідності та спрощують регулятивні аудити.

Переваги та проблеми інструментів перевірки програмного забезпечення

Переваги інструментів перевірки програмного забезпечення

  • Підвищена ефективність: Автоматизація дій перевірки зменшує ручні зусилля, прискорює процес перевірки та підвищує продуктивність.
  • Підвищена точність: Інструменти перевірки програмного забезпечення можуть виявляти дефекти та вразливості, які можуть бути пропущені під час перевірки або тестування вручну.
  • Покращена якість програмного забезпечення: Послідовне застосування інструментів перевірки допомагає виявляти та усувати помилки програмного забезпечення, що сприяє підвищенню якості програмного забезпечення.
  • Документація про відповідність: Інструменти перевірки створюють звіти та документацію, які допомагають продемонструвати відповідність вимогам DO-178A.

Проблеми інструментів перевірки програмного забезпечення

  • Кваліфікація інструменту: Інструменти перевірки, що використовуються в проектах DO-178A, повинні бути кваліфіковані, щоб гарантувати їх надійність і придатність для запланованої мети. Атестація інструменту може бути складним процесом, що вимагає додаткових зусиль і документації.
  • Розгляд вартості: Придбання та підтримка інструментів перевірки програмного забезпечення може спричинити значні витрати. Організації повинні ретельно оцінити переваги та економічну ефективність використання цих інструментів на основі вимог і обмежень проекту.
  • Інтеграція інструментів: Інтеграція інструментів перевірки програмного забезпечення в існуючі середовища розробки та робочі процеси може спричинити технічні проблеми, що потребують координації та досвіду.

Висновок

Відповідність стандарту DO-178A має вирішальне значення для розробки та сертифікації безпечного та надійного авіаційного програмного забезпечення. Інструменти перевірки програмного забезпечення відіграють важливу роль у досягненні відповідності стандарту DO-178A шляхом автоматизації різних дій перевірки, підвищення ефективності та підвищення якості програмного забезпечення. Використовуючи інструменти статичного аналізу, динамічного аналізу, тестування на основі моделі та інструменти відстеження вимог, розробники можуть переконатися, що їх програмне забезпечення відповідає суворим вимогам щодо безпеки та надійності. Використання цих інструментів не тільки сприяє дотриманню DO-178A, але й покращує загальний процес розробки, в результаті чого програмне забезпечення відповідає найвищим стандартам безпеки в авіаційній галузі.

Не забудьте поділитися цим постом!

глави

Виходьте на ринок швидше з Visure

Синергія між системним інженерним підходом на основі моделі та процесом управління вимогами

Грудень 17th, 2024

11 ранку EST | 5:8 CEST | XNUMX ранку за тихоокеанським стандартним часом

Фернандо Валера

Фернандо Валера

технічний директор Visure Solutions

Подолання розриву від вимог до дизайну

Дізнайтеся, як подолати розрив між MBSE і процесом керування вимогами.