Vad är RTCA DO-178C? och: Hur arbetar Saab med dessa krav? Lars Ljungberg, Saab AB, Avionics Systems

Relevanta dokument
Programvara i säkerhetskritiska tillämpningar

REGELVERK & HANDBÖCKER

Metoder och verktyg för funktionssäkerhet

Magnus Skoog

Platina och kvalité. Rasmus Staberg, Teknisk direktör,

Kursinformation. Metodik för programvaruutveckling. Utvecklingsprocessen för programvara. Innehåll. Processmodell. Exempel

Configuration testing Why? Vad det är tänkt att koden ska göra. Performance testing Kommentarer Skriva om koden som kommentar

men borde vi inte också testa kraven? Robert Bornelind

Testplanering, test-first, testverktyg

QC i en organisation SAST

men borde vi inte också testa kraven?

PMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning

Testning. 1DV404, HT14 Jesper Andersson Kap 21 + Testing Primer

Configuration Management

ISTQB Testarens ledstjärna

Användning av databas för riskinformation

Föreläsning 3. Programmering, C och programmeringsmiljö

Några grundläggande begrepp

Säkerhetsstandarder: Säkerhetsinriktning

CM FORUM. Introduktion till. Configuration Management (CM) / Konfigurationsledning. Tobias Ljungkvist

Workshop: How can CM enable business downstream?

Programmeringsstil 18/3-2002

Teoretiska och praktiska studier av kodtäckningsverktyg med utvärdering Theoretic Studies and assessment of tools for testing of software

Symptom på problemen vid programvaruutveckling

Kurser och seminarier från AddQ Consulting

Säkerhetsledningssystem Konkret funktion och tillsyn

Regressionstestning teori och praktik

Riskhantering. med exempel från Siemens

Kurser och seminarier från AddQ Consulting

V!cto. Att tjäna pengar genom bättre testning med

Kompetens på Certifying Staff i POA? Checklista vid release med FORM 1?

RUP - Rational Unified Process

Kursprogram hösten 2011

Vad är speciellt med IT-säkerhet?

Welding Production Analysis

Vi gjorde allting rätt

Certifierad testare SSTB Ingvar Nordström

Agil programutveckling

Föreläsning 4 IS1300 Inbyggda system

Produktens väg från idé till grav

Prototypningsverktyg. A Human-Centered Design Process (ISO , 2010) Mattias Institutionen för datavetenskap

Projektkaos. Chaos-rapporten. 34% av projekten avslutades i tid och enligt budget % misslyckades!

Prototypning. Filmtajm. Prototypens roll: Evolutionär eller kasta bort. Dagens föreläsning. Detaljgrad. Detaljerad i vilket avseende?

Att fatta rätt beslut vid komplexa tekniska upphandlingar

MATERIAL I KONTAKT MED LIVSMEDEL

Safe Logic Compact. Konfigurering av Rexroth säkerhets PLC. Snabbguide Svenska

Kvalitetsledning och SMS

Agenda SWEDISH CERTIFICATION BODY FOR IT SECURITY

Thomas Pettersson. Sammanfattning. Född: Telefon: Kristinagatan 23B Norrköping.

Erfarenheter implementering Säkerhetsledningssystem

Mjukvarudesign. Designprocessen. Teknisk design. Konceptuell design

Vad händer egentligen före en krasch? Svarta lådor och tidsmaskiner sparar pengar för företag

Qualification and Validation. Fråga Hur kan man normalt beskriva skillnaden mellan kvalificering och validering?

Common Criteria Certification of Open Source Software

Sammanfattningar Essentials of Software Engineering

<SYSTEM> <VERSION> INFORMATIONSSÄKERHETSDEKLARATION REALISERA (ISD-R) Inklusive 3 bilagor

L 37/74 Europeiska unionens officiella tidning

Europeiska unionens officiella tidning L 136/11

Från systemsäkerhet till kritikalitet i programvara

Detta har hänt... Kursinformation. Agenda. Kursinformation

Deluppgift 2 Kravhantering a) (2p) När man diskuterar krav brukar man ange två olika typer av krav. Beskriv dessa och ge exempel.

Utvärdering av Ledningsprocesser. Fredrik Kjellberg Mannheimer

Produktstöd - Vägledning till dokumentationskraven i SS-EN ISO 9001:2000

Vad händer med L3: ΔL3-L4 för Krav följs upp av annan projektgrupp. Föreläsning 5: V&V II + Design II Efterläsning Kodning

Säkerhetsledning. Ringhals AB

EVOLUTION INOM FORDONSREPARATIONSTEKNIK

Lunds Universitet LTH Ingenjörshögskolan IDa1, IEa1 Helsingborg. Laboration nr 4 i digitala system ht-15. Ett sekvensnät. grupp. namn.

Det här är OHSAS 18001

Europeiska unionens officiella tidning L 67/13

GLP och GMP på laboratoriet. Mons Lundqvist Biomedicinskt Centrum Lunds Universitet 31 augusti 2015

PFF, NATO och EU- Förutsättningar och krav. Erik Häggblad VG Funktioner

RUP Rational Unified Process. 17 november 2004

Europeiska unionens officiella tidning L 141/5

Bygg bro mellan ITIL v2 och v3 - Bridgekurser - DF Seminarium

Clean Sky 2. Göran Bengtsson 24 september 2014 Innovair Saab property

Abstrakta Klasser 2. Kodning är bara en liten del i programvaruutvecklingen 6% 1% 6% Abstrakta Klasser - deklaration. Programutveckling sker i faser

ISO med kundfokus

Automation Region. Affärsdriven systemutveckling genom agila metoder. Stefan Paulsson Thomas Öberg

Innehåll. Kravhantering. Kravhantering TDDD06 Introduktion till kravhantering. Vad är kravhantering?

Copyright Syntell AB 1

SAST Q1. Som att börja arbeta på ett nytt jobb. Testautomatisera med Modell-baserad testning

ISE GRANSKNINGSINSTRUKTION ISD 3.0

Continuous Integration med Jenkins. Linus Tolke Enea Experts

Software Engineering. Agneta Nilsson, PhD MPA Software Engineering Master s Programme

Traka21. Enkel och säker nyckelhantering för din verksamhet. ASSA ABLOY, the global leader in door opening solutions

Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning

Dag König Developer Tools Specialist Microsoft Corporation

Några reflexioner med tanke på projektskrivning.

Bilaga 9 Säkerhet Dnr: /2015 Förfrågningsunderlag

Code-Lite tutorial ( /RoJ)

Våra gemensamma FVOrekommendationer

Tomas Borg, konsult, SAS Institute Elin Rydell, konsult, SAS Institute Copyright 2003, SAS Institute Inc. All rights reserved.

Vägledning för krav på dokumenterad information enligt ISO 9001:2015

Verktyg och Utvecklingsmiljö. Jochim von Hacht

80 medarbetare. Aktiva sedan 20 år, varav 15 år som eget bolag. GMP Gun-Mari Pettersson Senior Consultant. Sundsvall. Uppsala Kista. Göteborg.

International Olympiad in Informatics July 2011, Pattaya City, Thailand Tävlingsuppgifter Dag 2 Svenska 1.3. Papegojor

Objektorienterad programmering

Testbed Railway - VAD

Testning. 1DV404, HT14 Jesper Andersson Kap 21 + Testing Primer

Enligt IEEE Std har en bra kravspecifikation en mängd fordringar att uppfylla. Kravspecifikationen skall vara;

Transkript:

Vad är RTCA DO-178C? och: Hur arbetar Saab med dessa krav? Lars Ljungberg, Saab AB, Avionics Systems 2018-05-07

FUNCTONAL SAFETY DO-178C är processorienterad dentifiera risker (hazards) och de säkerhetsfunktioner som krävs. Designa system mha passande processer. Verifiera att systemet fungerar som tänkt. Skaffa objektiva bevis.

Vad är RTCA DO-178C? Har tagits fram av en kommitté av myndigheterna och industrin. Krävs för kommersiella flygplan i USA och Europa. FAA och EASA säger att den är ett sätt att uppfylla kraven. Täcker hela framtagningen av programvara: Planering Utveckling Verifiering Certifiering (civilt; FAA och EASA)

RTCA DO-178C FLOSOF n God we trust.all others bring data Underliggande filosofi: Programvaran fungerar inte om vi inte visat något annat. Du måste skapa bevis på att programvaran fungerar. RTCA DO-178C tillhandahåller ett strukturerat sätt att göra detta. Edwards Deming - Father of the Japanese post-war industrial revival and quality guru RTCA DO-178C definierar ingen utvecklingsprocess. Processen måste instansieras genom planerna.

Grunden i DO-178 Det bästa sättet att få en säker programvara är att göra den så enkel som möjligt Med enkelhet kommer predikterbarhet, lätt att underhålla (det man förstår kan man ändra utan större risker), lätt att verifiera etc. KSS! Keep t Simple, Stupid!

Processen Planering Krav Design Kod ntegrering Erfarenhet visar att man får högre kvalitet med en bra process. Dessutom lättare att: underhålla. visa att all kod som finns med har ett syfte och används. visa att vi har verifierat all kod.

Stegen mellan delprocesserna DO-178 finns krav på att vi ska bedöma om vi får börja en viss delprocess. Vi måste veta att output är tillräckligt mogen innan vi går vidare till nästa steg, att vi vet tillräckligt om åtminstone delar av funktioner. Men: det finns inga krav på hur dessa transitions ska se ut! Kravet är att vi ska bedöma om vi har tillräckligt för att börja en viss fas. VÄG RSKER MOT FÖRDELAR!

Mer om övergångar Om man påbörjar ett steg innan föregående är definierat så introducerar man fel som är mycket svåra att bli av med Alltså: producera NTE output UTAN definierat input! DO-178 har inget krav på vattenfall! Kravet är: Definierade kriterier för start av nästa steg. Avsluta stegen i rätt ordning (sätt upp kriterier även här).

Oberoende För bland annat verifieringar och granskningar så ska det vara någon annan som kollar det jag gjort. Man blir hemmablind! Jag vet ju vad jag menade, även om jag skrev något annat Dessutom måste någon säkra att vi gör som vi sagt att vi ska göra. Dvs att vi följer planerna = QA. princip: en skriver, en granskar och en övervakar; 3 personer behövs.

Spårbarhet Krav måste vara spårbara ner till kod och till verifiering. Vi måste kunna visa att alla ovanliggande krav (systemkrav, systemdesign, säkerhetskrav) är implementerade och verifierade. Dessutom: vid ändringar av fastställt underlag måste vi ha spårbarhet MELLAN baselines! Vi måste kunna visa full spårbarhet för verifieringsbevis även i en miljö där vi tillåter och implementerar ändringar.

nnan sluttest Observera att vi måste veta HUR vi testat, miljön är också viktig! Glöm inte att provköra alla tester NNAN vi kör sluttest! Fel kommer man säkert att hitta men på detta sätt kan vi förbereda oss; kan vi acceptera avvikelserna, är det fel på testerna själva eller måste vi åtgärda koden?

Efter leverans Alla ändringar måste baseras på formella beslut, normalt av CCB. Det finns exempel på att man ändrat ett kommatecken till en punkt vilket lett till att ett flygplan kraschade! Detta var en icke godkänd ändring. Vi måste även efter 20-40 år kunna visa att vi gjort vad vi kunnat för att verifiera vår produkt om det händer en incident, dvs vi måste vara noggranna med baselines både av kod och miljö.

Saab s Vision t s a human right to feel safe! 13

Exempel på produkter DAL A, B och C

Avionics Systems utvecklingsprocess

PSAC DO-178C OBJECTVES D System Requirements DAL SDP SVP Requirement Coverage Analysis Statement of compliance SAS High-level Requirements req. SW Architecture Specification Source Code Source Code Result Executable Object Code (Executable Object Code) Target Hardware = traceability DAL D 16

DO-178C OBJECTVES C Statement of compliance PSAC System Requirements DAL SDP SVP Requirement Coverage Analysis SAS + Statement + SW Coupling Req. Std High-level Requirements req. Des. Std Code Std SW Architecture Low-level Requirements Source Code req. Specification Source Code Result Analysis Executable Object Code (Executable Object Code) Target Hardware = traceability Std = standard DAL D DAL C 17

DO-178C OBJECTVES B Statement of compliance PSAC System Requirements DAL SDP SVP SAS Requirement + Statement Coverage Analysis + Decision + SW Coupling Req. Std High-level Requirements req. Des. Std Code Std SW Architecture Low-level Requirements Source Code req. Specification Source Code Result Analysis Executable Object Code (Executable Object Code) Target Hardware = traceability Std = standard DAL D DAL C DAL B = independency 18

DO-178C OBJECTVES A Statement of compliance PSAC System Requirements DAL SDP SVP SAS Requirement + Statement Coverage Analysis + Decision + SW Coupling + MC/DC Req. Std High-level Requirements req. Des. Std Code Std SW Architecture Low-level Requirements Source Code Executable Object Code req. Specification Source Code (Executable Object Code) Target Hardware Analysis Result = traceability Std = standard DAL D DAL C DAL B DAL A = independency 19

SW Development Environment CM Tool -Dimensions Requirements Tool -DOORS Simulation Tool -Matlab, Simulink Design Tool -Visio, Rhapsody, SCADE Code Editor -Eclipse, Notepad++ Static Code Analyser -Lint, C++ Build Tools -Compiler / Assembler / Linker / Debugger Exec environment -Target / Simulator Tool -Cantata++

Verktyg: Dimensions Stöder den krävda nivån på Configuration Management som: Unik identifering av delarna Versionskontroll och baselines Problemrapportering, spårning och lösningshantering Ändringskontroll för att skydda produkterna och baselines Olika roller som Designer, Verifier, er, etc. ger mekanismer för att Skydda mot inte tillåtna ändringar Visa oberoende

Verktyg: DOORS Kravhanteringsverktyg inklusive spårbarhet För spårbarhet och analyser av vad som påverkas Länkar krav till högre nivå av krav (och tvärtom) Länkar testfall till krav Länkar testresultat till testfall

Verktyg: CANTATA++ Tillhandahåller ett testramverk (förenklar testning) Verktyg för Structural coverage Mäter om all kod blir exekverad under test

Kombinera med iterativ utveckling

Återanvändning som vi tänkt oss

Slutligen! Använd NGENJÖRSKUNSKAP och NDUSTRELL ERFARENHET och skapa ENKLA LÖSNNGAR så kommer vi långt! Se till att ha BEVS på att vi följt de olika kraven i RTCA (objective evidence) Dessutom: Enligt DO-178/254 är du SKYLDG tills motsatsen bevisats!