Astra Trainer
Branże przyszłości

Oprogramowanie certyfikowane to inne rzemiosło

Aleksandr Mikhailov
Founder, Astra Trainer
Zaktualizowano
8 min czytania

Awionika to miejsce, gdzie lotnictwo spotyka się z oprogramowaniem, i najwyraźniejszy przykład w tym dziale dziedziny, w której sąsiednia umiejętność nie przenosi się tak łatwo, jak się wydaje.

Nie zwykły software z dodatkowymi dokumentami

Powszechne założenie mówi, że certyfikowane oprogramowanie pokładowe to normalny software plus narzut zgodności. To założenie prowadzi do nieudanych rekrutacji i nieudanych programów.

Cztery rzeczy, które różnią się fundamentalnie.

Każda linia prowadzi do wymagania. Kod istnieje, bo zażądało tego wymaganie, a ten związek jest udokumentowany i sprawdzony. Kod, który robi coś sensownego, ale nie da się go powiązać z wymaganiem, jest usterką w audycie.

Pokrycie weryfikacyjne trzeba wykazać. Trzeba pokazać, że testy przechodzą przez kod do określonego poziomu pokrycia strukturalnego, który rośnie wraz z poziomem zapewnienia. To kształtuje sposób pisania kodu, bo złożone konstrukcje stają się kosztowne w pokryciu.

Determinizm jest wymagany. Czas musi być przewidywalny i ograniczony. Dynamiczna alokacja pamięci, nieograniczone pętle i nieprzewidywalne ścieżki wykonania są unikane lub zabronione, w zależności od poziomu.

Same narzędzia wymagają kwalifikacji. Jeśli wynikowi narzędzia ufa się bez niezależnego przeglądu, narzędzie musi być zakwalifikowane. Kompilatory, generatory testów i narzędzia analityczne wszystkie się w to wpisują.

Wprawny inżynier komercyjny nie jest automatycznie wprawnym inżynierem awioniki. Ograniczenia odwracają kilka nawyków, które czynią kogoś dobrym w zwykłym oprogramowaniu.

Konsekwencja dla rekrutacji jest konkretna: rekrutowanie ogólnych inżynierów oprogramowania do ról certyfikowanych i oczekiwanie krótkiej adaptacji konsekwentnie niedoszacowuje tego przejścia, a sami inżynierowie często uznają je za frustrujące, zanim stanie się satysfakcjonujące.

Co obejmuje ten kierunek

Zakres: elektronika lotnicza, GPS, sterowanie lotem, komunikacja i systemy pokładowe.

Cztery obszary.

Systemy sterowania lotem. Łańcuch od wejścia pilota lub autopilota do ruchu powierzchni sterowej, w tym architektury fly-by-wire i ich redundancja.

Systemy nawigacyjne. Nawigacja satelitarna, systemy inercyjne, dane aerometryczne oraz fuzja wszystkich trzech.

Komunikacja i nadzór. Radio, łącza danych, transpondery i systemy, dzięki którym samoloty są widziane i koordynowane.

Architektury zintegrowane. Jak funkcje dzielą sprzęt obliczeniowy z gwarantowaną separacją, tak by usterka jednej nie mogła wpłynąć na drugą.

Dlaczego wymagania są tak surowe

Warto to wyjaśnić, a nie tylko zadeklarować, bo zrozumienie tego czyni inżyniera dobrym w tej pracy, nie tylko zgodnym z przepisami.

Wymagania zapewnienia wynikają z konsekwencji. Funkcja, której awaria byłaby katastrofalna, niesie najcięższe obowiązki; ta, której awaria jest tylko niedogodna, niesie dużo mniejsze.

To daje trzy praktyczne prawdy.

Ta sama funkcja może nieść różne obowiązki. W zależności od samolotu, architektury i tego, co pozostałoby dostępne, gdyby zawiodła. Poziom zapewnienia wynika z oceny bezpieczeństwa, nie z nazwy funkcji.

Architektura może zmniejszyć obciążenie. Zaprojektowanie tak, by usterka była wykrywana i obsługiwana przez niezależną ścieżkę, może obniżyć wymagany poziom zapewnienia komponentu, co jest prawdziwym kompromisem inżynierskim, nie ćwiczeniem papierkowym.

Zmiana jest kosztowna. Modyfikacja certyfikowanego oprogramowania oznacza ponowną weryfikację dotkniętych części i ponowne ustanowienie dowodów, dlatego pozornie drobne zmiany niosą nieproporcjonalny koszt i dlatego oprogramowanie zamraża się dużo wcześniej, niż spodziewają się zespoły komercyjne.

Gdzie to mieści się w domenie

Awionika, nawigacja i systemy lotnicze to piąty z dziewięciu kierunków w domenie kosmosu, lotnictwa i nowej mobilności Astra Trainer, sąsiadujący z inżynierią lotniczą i operacjami lotniczymi, a łączący się z domeną robotyki, gdzie automatyka obejmuje leżącą u podstaw teorię sterowania.

Łączy się też z półprzewodnikami i elektroniką w zakresie sprzętu oraz z AI, danymi i obliczeniami w zakresie praktyki inżynierii oprogramowania, choć partnerzy powinni pamiętać, że przejście od komercyjnego do certyfikowanego oprogramowania jest istotą tego kierunku, nie szczegółem. Zobacz dziewięć kierunków tutaj.

Obserwacja faktograficzna z realnymi konsekwencjami inżynierskimi.

Nawigacja satelitarna stała się wspólną zależnością dla dużo więcej niż lotnictwo: żeglugi, transportu drogowego, geodezji, rolnictwa, służb ratunkowych, a w szczególności precyzyjnego pomiaru czasu dla sieci telekomunikacyjnych, systemów finansowych i sieci elektroenergetycznych.

Sygnały docierające do ziemi są słabe, co czyni je podatnymi zarówno na niezamierzone zakłócenia, jak i celowe blokowanie czy podszywanie się pod sygnał. Zdarzenia zakłóceń wpływające na nawigację lotniczą były zgłaszane w różnych regionach, a system lotniczy radzi sobie z nimi poprzez procedury, alternatywne pomoce nawigacyjne i systemy inercyjne.

Trzy konsekwencje inżynierskie i kadrowe.

Alternatywne i uzupełniające pozycjonowanie to aktywny obszar. Nawigacja inercyjna, nawigacja terenowa i wizyjna oraz alternatywne źródła czasu – wszystko to przyciąga uwagę z powodu tej zależności.

Odporność to wymaganie projektowe, nie funkcja dodatkowa. Systemy zakładające ciągłą dostępność nawigacji satelitarnej przyjmują założenie, które nie zawsze się spełnia.

Ten zestaw umiejętności jest niszowy i rośnie. Inżynierowie rozumiejący zarówno przetwarzanie sygnału nawigacji satelitarnej, jak i systemy inercyjne są rzadcy, a potrzebni daleko poza lotnictwem.

To stwierdzenie jest opisem znanego zagadnienia inżynierskiego. Nie jest przewidywaniem dotyczącym żadnego konkretnego regionu ani zdarzenia.

Role po imieniu

Inżynierowie oprogramowania awionicznego. Certyfikowane oprogramowanie pokładowe. Podstawowy niedobór.

Inżynierowie sprzętu awionicznego. Płyty, interfejsy, kwalifikacja środowiskowa.

Inżynierowie bezpieczeństwa systemów. Ocena bezpieczeństwa, analiza usterek i przydział poziomu zapewnienia. Kluczowi i rzadcy.

Inżynierowie weryfikacji i walidacji. Testowanie oparte na wymaganiach i analiza pokrycia. Najliczniejsza grupa w certyfikowanym programie.

Inżynierowie systemów nawigacyjnych. Nawigacja satelitarna, inercyjna i fuzja czujników.

Inżynierowie integracji i testów. Stanowiska testowe, symulatory typu iron bird i instrumentacja testów w locie.

Specjaliści certyfikacji oprogramowania i złożonego sprzętu elektronicznego.

Technicy utrzymania awioniki. Licencjonowani, w eksploatacji – odrębny i trwały niedobór.

Kogo można w to przeszkolić

Inżynierowie z innych domen certyfikowanego bezpieczeństwa. Nastawnictwo kolejowe, przyrządy i sterowanie jądrowe, wyroby medyczne, bezpieczeństwo funkcjonalne w motoryzacji. Już akceptują, że dowód jest częścią produktu – to najtrudniejsza postawa do wpojenia – i potrzebują ram właściwych dla lotnictwa.

Inżynierowie oprogramowania wbudowanego. Z tła przemysłowego lub motoryzacyjnego, już przyzwyczajeni do ograniczonych, deterministycznych środowisk. Krótszy krok niż od web czy aplikacji.

Inżynierowie testów. W stronę weryfikacji – to największy wymóg w każdym certyfikowanym programie i najbardziej dostępny punkt wejścia.

Technicy utrzymania awioniki. W stronę ról wsparcia inżynierskiego i integracji, wnosząc wiedzę o tym, jak systemy zachowują się w eksploatacji – czego zespołom projektowym często brakuje.

Inżynierowie elektronicy. W stronę sprzętu i integracji.

Personel awioniki wojskowej. Przychodzą z już wpojoną kulturą systemów i zdatności do lotu.

Certyfikacja i licencjonowanie są prawne, nie proceduralne. Systemy pokładowe są zatwierdzane w procesach regulacyjnych, a zatwierdzenie organizacji projektującej, uznanie certyfikacyjne i dopuszczenie do eksploatacji posiadają zatwierdzone organizacje i wykwalifikowani sygnatariusze. Utrzymanie awioniki wymaga licencji z odpowiednimi uprawnieniami. Technologia lotnicza podlega też kontroli eksportu w większości jurysdykcji. Szkolenie buduje zrozumienie inżynierskie i wspiera osoby dążące do tych ścieżek. Nie nadaje zatwierdzenia, uznania certyfikacyjnego, licencji ani uprawnienia do dopuszczenia czegokolwiek do eksploatacji.

Co z tego wynieść

Certyfikowane oprogramowanie to inne rzemiosło, nie zwykły software z dokumentami, a kilka nawyków dobrego inżyniera komercyjnego jest tu ograniczeniem.

Poziom zapewnienia wynika z konsekwencji, więc wybory architektury mogą naprawdę zmniejszyć obciążenie – co czyni ocenę bezpieczeństwa działaniem inżynierskim, nie krokiem zatwierdzającym.

Zmiana jest kosztowna, bo trzeba ponownie ustanowić dowody – dlatego oprogramowanie zamraża się wcześniej, niż spodziewają się zespoły komercyjne.

Nawigacja satelitarna to wspólna zależność daleko poza lotnictwem, a odporne pozycjonowanie to rosnący, niszowy zestaw umiejętności.

A inżynierowie z kolei, energetyki jądrowej, wyrobów medycznych czy bezpieczeństwa funkcjonalnego w motoryzacji przechodzą dużo lepiej niż ogólni inżynierowie oprogramowania, bo już traktują dowód jako część produktu.

Najczęściej zadawane pytania
Czy certyfikowane oprogramowanie awioniczne to po prostu software z większą liczbą dokumentów?

Nie. Każda linia kodu prowadzi do wymagania, pokrycie weryfikacyjne trzeba wykazać strukturalnie, czas musi być deterministyczny, a same narzędzia mogą wymagać kwalifikacji. Kilka nawyków dobrego inżyniera komercyjnego staje się tu ograniczeniem.

Dlaczego wymagania zapewnienia się różnią?

Bo wynikają z konsekwencji awarii, ustalonej przez ocenę bezpieczeństwa. Ta sama funkcja może nieść bardzo różne obowiązki w zależności od architektury i tego, co pozostaje dostępne, jeśli zawiedzie.

Dlaczego zmiana certyfikowanego oprogramowania jest tak kosztowna?

Bo trzeba ponownie ustanowić dotknięte dowody weryfikacyjne. Dlatego oprogramowanie zamraża się w programie lotniczym dużo wcześniej, niż spodziewają się zespoły komercyjne.

Kto przechodzi do ról w awionice?

Inżynierowie z nastawnictwa kolejowego, przyrządów jądrowych, wyrobów medycznych czy bezpieczeństwa funkcjonalnego w motoryzacji, bo już akceptują dowód jako część produktu. Inżynierowie oprogramowania wbudowanego mają krótszy krok niż programiści aplikacji.

Gdzie to się mieści w domenie?

Piąty z dziewięciu kierunków w domenie kosmosu, lotnictwa i nowej mobilności Astra Trainer, łączący się z automatyką w robotyce i elektroniką w domenie chipów. Zobacz je tutaj.

Dowód jest częścią produktu
Dziewięć kierunków w kosmosie, lotnictwie i nowej mobilności, w tym awionika, nawigacja i systemy lotnicze obok inżynierii lotniczej i operacji lotniczych. Dopasowane z twoimi inżynierami, w pięciominutowych lekcjach.