Úvod

Bezpečnostně kritický embedded vývoj podle norem

Více než 35 let zkušeností v oblasti funkční bezpečnosti, systémů reálného času a vývoje blízkého hardwaru — obeznámen s relevantními normami pro automotive, medicínu a průmysl.

Bezpečnostně kritický embedded vývoj není otázkou jednotlivých funkcí, ale celkového přístupu: od analýzy požadavků přes architekturu a implementaci po verifikaci a dokumentaci. Kdo zadává v této oblasti, nehledá jen dobrého programátora, ale někoho, kdo pochopil souhru normy, metody a kódu — a kdo dokáže reálně odhadnout rozsah práce, který soulad přináší.

Následující tři kompetenční oblasti jsou základem mé práce. Překrývají se v téměř každém projektu.

Zkušenost

1. Zkušenost

Více než tři desetiletí embedded vývoje — od počátku kariéry ve vývoji motorů po současnou činnost jako nezávislý konzultant. V prémiovém segmentu zkušenost není marketingovým argumentem, ale předpokladem: kdo vyvíjí systémy reálného času blízké hardwaru nebo bezpečnostně kritický firmware, potřebuje paměť těch chybových režimů, které nejsou v příručkách.

  • Více než 35 let embedded vývoje (od roku 1990)
  • Začátek kariéry u Mercedes-Benz, Stuttgart-Untertürkheim
  • Projekty pro několik velkých výrobců v Německu, Velké Británii a USA — a pro jejich francouzské a německé dodavatele
  • Mezinárodní činnost v Německu a Francii
  • 2002 — založení Navimess Elektronik (později uzavřena)
  • 2012 — založení SCHMITT CONSULTING S.A.R.L. ve Francii
  • Diplom-Informatiker (FH), zaměření technická informatika
  • Diplomová práce z regulační techniky s realtime hardwarovými ovladači v assembleru
Normy

2. Normy a standardy

Obeznámen s normami relevantními pro bezpečnostně kritický vývoj v automotive, medicíně a průmyslu. «Obeznámen» zde znamená: znám požadavky, metody a typické nástrahy — a dokážu odhadnout, jaké normativní úsilí se hodí k vašemu projektu a jaké by bylo nepřiměřené. V projektech pracuji jako vývojář v rámci souladu stanoveného klientem; nepřebírám samostatnou roli normativního auditora.

  • ISO 26262 — Funkční bezpečnost (automotive, ASIL A až D)
  • IEC 61508 — Funkční bezpečnost (průmysl, SIL 1 až 4)
  • IEC 62304 — Životní cyklus softwaru (zdravotnické prostředky, třídy A/B/C)
  • IEC 60601-1 — Bezpečnost přístroje (medicína)
  • RTCA/DO-178B — Letecký software (DAL A až E)
  • Automotive SPICE — Hodnocení procesů v automotive projektech
  • MISRA-C / MISRA-C++ — Kódovací pravidla pro bezpečnostně relevantní C/C++ software
Řízení

3. Projektové řízení

Embedded projekty zřídka selhávají na technice, často na komunikaci a vedení. Mé projektové řízení je orientováno na to, co očekávají klienti prémiového segmentu: sledovatelné termíny, transparentní náklady, jasné předávky. Nepracuji s přetíženou metodikou, ale s tím, co projekt skutečně potřebuje.

  • Přísné řízení termínů a nákladů
  • Pravidelné odsouhlasování s klientem v dohodnutém rytmu
  • Nabídky s cenovou zárukou pro smlouvy s pevnou cenou
  • Předávání znalostí týmům klienta na konci projektu
  • Koordinace externích dodavatelů a interních oblastí
  • Technická dokumentace a sledovatelné předání kódu
  • NDA připravenost a důvěrné zacházení s obsahem projektu

Doplňkové technické těžiště

Vedle tří hlavních oblastí vyplynuly z 35 let praxe různá obsahová těžiště, která často dělají rozdíl v projektech:

Systémy reálného času a bare-metal vývoj
Programování blízké hardwaru na malých mikrokontrolérech, s operačním systémem reálného času nebo bez něj. Zkušenosti s deterministickým časováním, architekturami přerušení a optimalizací při omezení paměti a doby běhu.
FPGA verifikace
Vývoj ve VHDL a SystemVerilogu, s testbenchi a systematickou verifikací. FPGA návrhy nejsou «software na čipu» — řídí se vlastními pravidly, a právě tam mnoho projektů selhává.
Převzetí kódu a reverzní inženýrství
Analýza zděděných kódových bází — assembler, C, C++, často bez dokumentace — a jejich systematická příprava pro tým klienta. Stihl projekt (viz reference) je toho příkladem.
Šifrování a bezpečná komunikace
Vývoj kryptografických metod a bezpečné sběrnicové komunikace v embedded kontextu, kde standardní knihovny nesedí — od podepsaných aktualizací firmwaru přes bezpečné bootloadery k řešením šifrování šitým na míru. Poznámka: nad určitou úrovní šifrování může být potřeba povolení od příslušného úřadu, protože některé šifrovací technologie nelze vyvážet do všech zemí. Povolovací povinnost se posuzuje společně před zahájením.

Co tyto kompetence znamenají pro vás

Pokud máte projekt, kde hraje roli soulad s normami, požadavky reálného času nebo složitost blízká hardwaru — a zároveň nechcete najmout celý tým specialistů, ale jednu osobu s přehledem a příslibem dodání — pak je spolupráce pravděpodobně vhodná.

Barevné schéma

Jazyk