Benhårde krav til kritiske software-løsninger

Tema: For teknisk software til indlejrede systemer i rumfart, fly og jernbaner er almindelig test ikke nok. I stedet handler det om modelbaseret udvikling, matematisk verifikation og kodegenerering.

Artikel top billede

Når et Airbus-fly letter, sker det ved hjælp af mange forskellige sikkerhedskritiske softwareprogrammer, der kan have stor betydning for flysikkerheden under take-off, flyvning og landing.

Før et softwareprogram godkendes til brug i flyet, skal det igennem en omfattende certificering, hvor det tjekkes, om softwaren overholder den internationale flyindustris softwarestandard DO-178B.

Kode uden pointere

Tilsvarende standarder findes også indenfor softwaresystemer til tog og jernbaner samt til generelt sikkerhedskritiske systemer.

Standarderne giver retningslinier for, hvordan koden skal udvikles, for at koden kan blive godkendt til fly- og jernbanebrug.

Generelt må der eksempelvis ikke anvendes dynamisk memory-allokering, da det giver mulighed for memoryleaks og softwarefejl.

Det kan være en særdeles kompliceret og dyr proces at få certificeret kode, hvorfor der ofte anvendes certificerede værktøjer som Wind Rivers VxWorks DO-178B Platform eller Esterel Technologies SCADE Suite.

SCADE Suiten genererer automatisk kode, der overholder standarderne, som er specificeret for flyindustrien i DO-178B, for jernbanen i EN 50128 og industrien i IEC 61508.

Da værktøjerne er certificeret til at overholde DO-178B, EN 50128 og IEC 61508, opfylder den genererede kode de gældende standarder.

Programmørerne skal ikke kode

For at få koden genereret kræver det, at kravene specificeres på en klar og entydig måde.

"Kravene skal formuleres helt entydigt, ikke verbalt, da der skal være et 1-1 forhold mellem specifikation og kode.
Typisk sker det ved hjælp af tilstandsmaskiner for jernbanesystemer," forklarer civilingeniør Jørleif Joensen, som gennem mange år har arbejdet med sikkerhedskritiske tekniske it-systemer hos virksomheder som den københavnske Metro, DSB, Danfoss og Vestas gennem sit selskab Joensen Consult, der også er distributør af Esterel Technologies SCADE-værktøj.

Ved at lade værktøjet generere koden, fjerner man risikoen for, at en programmør laver fejl.

""Programmøren tages ud af loopet, fordi han kan lave fejl," siger Jørleif Joensen.

Matematisk tjek af model

Det er ikke kun kodegenereringen, der er med til at fjerne fejlkilder. Værktøjet kan tjekke, om modellen for systemet er korrekt.

"Esterels værktøjer arbejder med matematiske metoder, som modvirker, at der introduceres fejl. Der kan eksempelvis være et sikkerhedskrav om, at landingshjul kun kan udløses, når flyet når under en bestemt hastighed, da det ellers vil blive revet af. Der defineres så en safety-property for softwaren: Hvis hastighed er større end x, så sænkes landingshjul ikke. Værktøjet tjekker, at den safety-property aldrig overskrides," forklarer Jørleif Joensen.

Man kan ikke teste sig til sikre systemer

Det er en bedre måde at udvikle software på end en mere test-baseret udvikling. Ifølge Jørleif Joensen kan man nemlig ikke teste sig til sikre systemer

"Test kan aldrig afskaffes, men test er absolut ikke nok. Man kan ikke teste sig til sikker software. Hele modellen med test, inspektion og kodereview virker ikke godt nok. Den giver større sandsynlighed for, at der ikke er farlige fejl, men man kan ikke sige noget konkret om, hvor sikker softwaren er," mener Jørleif Joensen.

Fejl kan opstå i specifikationen

Selvom modelverifikation og modelbaseret kodegenerering giver mere sikker software, understreger Jørleif Joensen, at modelverifikation og kontrolleret kodegenerering i sig selv ikke udelukker fejl.

"Det er ikke fool-proof. Tog- og fly-software bør være 100 procent sikker. Det er der ikke er noget, der er, men der er stort fokus på det. Der kan være logiske fejl i specifikationen, som man ikke kan sikre sig imod. Det kunne eksempelvis være, at man har angivet en forkert safety property som hastigheden, hvor landingshjulet kan udløses," siger Jørleif Joensen.

Ikke nok fokus, men det kommer

Ifølge Jørleif Joensen er modelverifikation begyndt at få vind i sejlene.

"Der er for få mennesker, der interesserer sig for det her, men industrien får flere krav og modelbaseret software med matematiske verifikationsværktøjer begynder at vinde indpas. Jeg forventer, at forretningsområdet vil eksplodere," siger Jørleif Joensen.

Det er altovervejende indenfor teknisk software at modelverifikation vinder indpas.

"Det er til teknisk software, da kodegenereringen giver begrænsninger. I sikkerhedskritiske, tekniske indlejrede systemer er man ikke så meget for pointere, da der notorisk sker fejl med pointere. Så den genererede C-kode er uden de mere frække ting. Men det kan da godt være, at ERP og administrative systemer på sigt kommer med," siger Jørleif Joensen.

Computerworld Events

Vi samler hvert år mere end 6.000 deltagere på mere end 70 events for it-professionelle.

Ekspertindsigt – Lyt til førende specialister og virksomheder, der deler viden om den nyeste teknologi og de bedste løsninger.
Netværk – Mød beslutningstagere, kolleger og samarbejdspartnere på tværs af brancher.
Praktisk viden – Få konkrete cases, værktøjer og inspiration, som du kan tage direkte med hjem i organisationen.
Aktuelle tendenser – Bliv opdateret på de vigtigste dagsordener inden for cloud, sikkerhed, data, AI og digital forretning.

Sikkerhed | Online

Connected sikkerhed: Sådan samles netværk, drift og sikkerhed i én platform

Få indblik i, hvordan NaaS og SOC samler netværk og sikkerhed i én platform. Hør Semler Group dele erfaringer med hurtigere trusselsrespons, færre leverandører og mindre kompleks drift. Deltag og se, hvordan moderne sikkerhedsdrift skalerer i...

Infrastruktur | Frederiksberg

Roundtable: Suverænitet, risk management og resiliens i en urolig verden

Digital suverænitet er rykket fra politisk debat til konkret risikostyring.På dette eksklusive dinner roundtable samler Computerworld, T-Systems og Palo Alto Networks 12-15 ledende it- og sikkerhedsbeslutningstagere til en fortrolig samtale om...

Se alle vores events inden for it

Navnenyt fra it-Danmark

SAP SuccessFactors Partner Pentos har pr. 1. marts 2026 ansat Plamena Cherneva som Seniorkonsulent indenfor SuccessFactors HCM. Hun skal især beskæftige sig med konfiguration og opsætning af SuccessFactors suiten, samt udvikle smarte løsninger til mellemstore danske virksomheder. Hun kommer fra en stilling som løsningsarkitekt indenfor HR IT hos LEO Pharma. Hun har tidligere beskæftiget sig med HR procesdesign, stamdata og onboarding. Nyt job

Plamena Cherneva

SAP SuccessFactors Partner Pentos

Elbek & Vejrup A/S har pr. 1. juni 2026 ansat Mikkel Bernt Buchvardt som AI Architect & Product Manager. Han skal især beskæftige sig med udviklingen af AI-Services og AI-Agenter i og omkring Business Central. Han kommer fra en stilling som Lead Data & Analytics hos IBM. Han er uddannet MSc. i softwareudvikling fra ITU. Han har tidligere beskæftiget sig med Data og BI hos KMD og Seges Innovation. Nyt job

Mikkel Bernt Buchvardt

Elbek & Vejrup A/S

Netip A/S har pr. 1. april 2026 ansat Claus Berg som Account Manager ved netIP's kontor i Esbjerg. Han kommer fra en stilling som Client Manager hos itm8. Nyt job

Claus Berg

Netip A/S

IFS Danmark A/S har pr. 2. marts 2026 ansat Marlene Gudman som HR Business Partner. Hun skal især beskæftige sig med HR i Danmark og Norden og lede udvalgte internationale HR-projekter. Hun kommer fra en stilling som Nordic Lead HR Business Partner hos Salesforce. Hun har tidligere beskæftiget sig med international HR med fokus på udvikling af og udfordringer i HR ud fra et forretningsperspektiv. Nyt job

Marlene Gudman

IFS Danmark A/S