V-Model — Metodika systémového inžinierstva
V-Model (model verifikácie a validácie) je metodika systémového inžinierstva, v ktorej má každá vývojová fáza na ľavej strane písmena „V“ priamo zodpovedajúcu fázu testovania a verifikácie na pravej strane. Je to štandardný prístup k bezpečnostne kritickému vývoju v letectve a kozmonautike (DO-178C/DO-254), automobilovom priemysle (ISO 26262), obrane a priemyselnej automatizácii.
Štruktúra V-Modelu
Požiadavky -------------------- Akceptačné testovanie
\ /
Návrh systému ---------------- Systémové testovanie
\ /
Návrh architektúry ---- Integračné testovanie
\ /
Detailný návrh ---- Jednotkové testovanie
\ /
Implementácia
Každá činnosť na ľavej strane vytvára špecifikácie a zodpovedajúca činnosť na pravej strane verifikuje výsledok presne podľa týchto špecifikácií — tak vzniká úplná sledovateľnosť.
Fázy V-Modelu
| Ľavá strana (vývoj) | Pravá strana (verifikácia) | Sledovateľnosť |
|---|---|---|
| Analýza požiadaviek | Akceptačné testovanie | Každá požiadavka má test typu vyhovel/nevyhovel |
| Návrh systému | Testovanie na úrovni systému | Správanie systému sa validuje oproti návrhu |
| Návrh architektúry | Integračné testovanie | Verifikujú sa rozhrania modulov |
| Detailný návrh | Jednotkové testovanie | Každý komponent sa testuje izolovane |
| Implementácia | — (kódovanie / výroba) | — |
Prečo V-Model pre hardvér?
V-Model je pre vývoj hardvéru obzvlášť vhodný, pretože:
- Zmeny sú drahé — Na rozdiel od softvéru môžu neskoro odhalené chyby hardvéru stáť milióny (opakovaná výroba ASIC, prepracovanie návrhu PCB, opätovná certifikácia).
- Sledovateľnosť je povinná — Bezpečnostné normy (DO-254, ISO 26262) vyžadujú úplnú sledovateľnosť od požiadaviek až po dôkazy o verifikácii.
- Včasné odhalenie chýb — Každá fáza má explicitné revízne brány (review gates), ktoré zachytia problémy skôr, než sa rozšíria ďalej.
- Súlad s predpismi — Certifikačné orgány (EASA, FAA, TÜV) akceptujú dokumentáciu V-Modelu ako dôkaz súladu.
V-Model vo vývoji FPGA
Pri projektoch FPGA, ktoré sa riadia normou DO-254 alebo podobnými normami:
| Fáza | Činnosti | Výstupy |
|---|---|---|
| Požiadavky | Zachytenie funkčných a výkonnostných požiadaviek | Špecifikácia požiadaviek (HRS) |
| Architektúra | Rozdelenie na bloky IP, definovanie rozhraní, hodinové domény | Dokument architektúry, dokumenty ICD |
| Detailný návrh | Mikroarchitektúra RTL, stavové automaty, dátové cesty | Dokument detailného návrhu |
| Implementácia | Kódovanie vo VHDL/SystemVerilogu, syntéza, P&R | Zdrojový kód RTL, netlist, bitstream |
| Jednotkové testovanie | Simulácia na úrovni blokov, analýza pokrytia | Správy z testov, databáza pokrytia |
| Integračné testovanie | Simulácia viacerých blokov, verifikácia rozhraní | Správa z integračného testovania |
| Systémové testovanie | Hardware-in-the-loop, skúšky vplyvu prostredia | Správa o akceptácii systému |
| Akceptácia | Akceptácia zákazníkom, dôkazy pre certifikáciu | Matica súladu |
V-Model vs. Agile — Sú zlučiteľné?
Hoci vo vývoji softvéru prevládajú agilné metodiky, V-Model zostáva pre hardvér nevyhnutný, pretože:
| Faktor | V-Model | Agile |
|---|---|---|
| Náklady na iteráciu | Vysoké (fyzické prototypy, certifikácia) | Nízke (nasadenie softvéru) |
| Akceptácia regulačnými orgánmi | Referenčný model v ISO 26262; obvyklý spôsob implementácie DO-254 | Akceptuje sa, ak sú naďalej splnené všetky bezpečnostné ciele a požiadavky na dôkazy |
| Sledovateľnosť | Zabudovaná v procese | Vyžaduje dodatočné nástroje |
| Najvhodnejšie pre | Bezpečnostne kritický hardvér a firmvér | Aplikačný softvér, iterácie UX |
Moderné tímy používajú hybridný prístup: V-Model pre hardvér a bezpečnostne kritický firmvér, Agile pre aplikačný softvér a používateľské rozhrania.
Normy, ktoré sa bežne implementujú pomocou V-Modelu
| Norma | Oblasť | Rozsah |
|---|---|---|
| DO-254 | Avionický hardvér | Návrh FPGA a ASIC pre palubné systémy |
| DO-178C | Avionický softvér | Embedded softvér kritický z hľadiska letu |
| ISO 26262 | Automobilový priemysel | Funkčná bezpečnosť cestných vozidiel |
| IEC 61508 | Priemysel | Všeobecná funkčná bezpečnosť |
| EN 50716 (nahrádza EN 50128) | Železnice | Bezpečnosť železničného softvéru |
| IEC 62443 | Priemyselná kybernetická bezpečnosť | Bezpečný životný cyklus vývoja |
Súvisiace pojmy
- FPGA — Hardvérové obvody vyvíjané podľa metodiky V-Model.
- RTL Design — Implementačná fáza V-Modelu pri digitálnych obvodoch.
- PCB Design — Návrh fyzického hardvéru, ktorý sa riadi revíznymi bránami V-Modelu.
- DO-254 — Norma pre avionický hardvér, ktorej procesy životného cyklu sa zvyčajne usporadúvajú do V-Modelu.
Inovasense uplatňuje metodiku V-Model v celom vývoji hardvéru — od návrhu FPGA s úplnou sledovateľnosťou požiadaviek a pokrytím verifikácie až po riadenie životného cyklu produktu, ktoré koordinuje multidisciplinárne tímy cez každú fázovú bránu.
Oficiálne referencie
- ISO 26262-6:2018 — Cestné vozidlá, funkčná bezpečnosť, vývoj výrobku na úrovni softvéru — ISO (séria noriem používa V-Model ako referenčný procesný model)