ANVÄNDNING AV AUTOMATISKA TESTER ERFARENHETER FRÅN SAAB EDS I GÖTEBORG



Relevanta dokument
Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions

Agil testning i SCRUM

SESAM. Försvarssektorns Användargrupp för Software Engineering. Inbjuder till seminariet. Automatiserad programvarutestning -

Presentation. Fredrik Runnsjö 1996 Utvecklare 2004 Testare ~2006 Scrum/Canban

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

Business agility, alla håller med, men hur gör vi nu?

Nya möjligheter med M3 Technology. Björn Svensson, Björn Torold

Användning av testautomation inom Extendas utvecklingsorganisation

Testautomatisering. Intro

ALM Live: Testfokus bättre mjukvarukvalitét med Visual Studio 2008 Team System

Scrum i praktiken Tillämpning inom Gripen demonstrator. Fredrik Lorentzon & Marcus Frejd SESAM

Kursöversikt Certifierad Mjukvarutestare

Visuell GUI Testning

Projekt intranät Office 365 av Per Ekstedt

Per-Anders Nilsson SaabTech Systems Oktober 2001

Metoder och verktyg för funktionssäkerhet

Koncept framtida stridsflyg generisk målbild för FoT Flygteknik. Jan Tano Saab AB Aeronautics

Agilt arbetssätt i komplexa organisationer. Välkomna! Anna Picetti, IT-HUSET

ALM Live. April 2008 Effektivare projektarbete med Visual Studio 2008

inriver PIM och Precio Fishbone för ökad försäljning

Creo Customization. Lars Björs

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

DevOps i Verkligheten

AGILA METODER. (för oss som inte kodar) Nina Berlin

FRÅN SVERIGES BÄSTA FLYGPLANSFABRIK TILL ETT INTERNATIONELLT FÖRSVARS- OCH SÄKERHETSFÖRETAG

Enhetstester på.netplattformen

QC i en organisation SAST

STADSLEDNINGSKONTORET SOA SDK IT-AVDELNINGEN VERSION 2.1. Produktionssättning. Stockholms stad SOA-plattform. Sida 1 (9)

Kurser och seminarier från AddQ Consulting

Att fatta rätt beslut vid komplexa tekniska upphandlingar

SCRUM och mycket mer

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

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

Viktigast för oss 2018

Testning som beslutsstöd

Praktiska råd vid upphandling av IT-system

AUTOMATISKA PROCESSER I ORIGO, FÖR EFFEKTIVARE PASSERADMINISTRATION OCH HÖGRE SÄKERHET

Programvaruintensiva system

Tekniskt system för Lean Startup

Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10

BAE Systems. FXM Seminar Future Markets European Land Defence Industries approach. BAE Systems

Pragmatisk programmering. Cyberrymden Marcus Rejås Pragmatisk programmering,19 september (26)

Erfarenheter av automatiserad testning

på ett stort spelföretag Andreas Ström

Checklista anslutning Serverat. Version 1.0

Testplanering, test-first, testverktyg

Datacentertjänster PaaS

Guide: Framtidssäkra HR-funktionen med Agil HR

Några grundläggande begrepp

Sirius II Installation och Bruksanvisning

Ansökan till Vinnova PROJEKTUPPGIFTER. Diarienummer. Inskickad. Utlysning

TRENDER BI & ANALYS JOHAN ELFMAN OCH ERIK STRÖMGREN

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

Pragmatisk programmering. Cyberrymden Marcus Rejås Pragmatisk programmering,16 december (29)

12 principer of agile practice (rörlig)

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

Programvara i säkerhetskritiska tillämpningar

Kurser och seminarier från AddQ Consulting

Linköpings universitet 1

Projektplan för utvecklingen av Kryssarklubbens nya webbplats

Produktfamiljöversikt. Lector63x Intelligent. Flexibel. Intuitiv. KAMERABASERADE KODLÄSARE

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

Expertgruppen för digitala investeringar. Framgångsfaktorer för ett agilt arbetssätt

Har funnits nästan lika länge som datorerna. Manuell process, svarta tavlan Verktygsstöd kom tidigt redan i början på

Therese Hansson & Magnus Jonsson. Motivationsfaktorer - Test inom Agila utvecklingsprojekt

Microsoft ALM Agenda. Processer metoder Kundcase Paus Under huven på Visual Studio Team Test Frågor och Svar + en liten tävling

Experimentell verifiering av feldetektering och feltolerans

Reijo Soréus. NyA. Presentation för Ladok-Inkubator Göteborg

Rätt information till rätt person vid rätt tillfälle

BESKRIVNING AV PROCESSMETODEN SCRUM

Agila Avtal. avtalsformer som kan fungera. Carina Meurlinger

Test av standardsystem Johan Gabrielsson

Linköpings universitet 1 TDP029. Systemutveckling. Systemutveckling. Vanliga faser. Fler faser. Systemutvecklingsmetod

Insikt. kräver kunskap, erfarenhet och förståelse

SAAB OCH GRIPEN SVENSK TEKNIK I FRAMKANT

Vår resa till bra Acceptanstestning. Ingela Hagman Thomas Cook Northern Europe

MÅNGFALDSDAGEN VÄSTERÅS

ENIMEOS ΣOEMINE. Krav och trender. Praktisk kravhantering och annat nyttigt från industrin. Christian Ehrenborg

Operativsystem DVG A06. Definition. Varför operativsystem? - Vad är ett operativsystem?

Skapa värde för verksamheten genom affärsplanerings- & prognosprocessen. Sara Lindberg,

ALM Live: Scrum + VSTS

SCRUM på Riksarkivet. Magnus Welander /

Designmönster, introduktion. Vad är det? Varför skall man använda mönster?

Swedbank CI Cross Functional Team

GÖR VERKLIGHET AV DIN DIGITALA POTENTIAL.

W HIT E PA P ER. Vanliga frågor om Hybrid datacenter som tjänst. Hur kan jag veta att investeringen blir lönsam? t e xt : Johan Bentzel

Rapport Version 1.0 Johan Aldén Sida 1 av Rapport Förstudie Elevadministration och schemaläggning Sambruk

Smart Industri Digitaliseringens möjligheter - Investering i Kompetens Göteborg Torsten Nordgren Director Future Factory and Business

Continuous Integration med Jenkins. Linus Tolke Enea Experts

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

Ett exempel från Sundsvall med sociala tjänster. (Mats Franzén, 2013)

Post Mortem för Get The Treasure!

Verktyg för effektiv samverkansinnovation. exemplet Grafen

Vad är det då som gör att man inte får en bra start?

RÖRLÄGGAREN SOM BLEV BERGSGUIDE

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot

CREATING VALUE BY SHARING KNOWLEDGE

Configuration Management Vägen till ordning och reda med rätt stöd!

LEAN - Lite historisk - Lean på Saab Aerosystems. Jörgen Furuhjelm

Transkript:

ANVÄNDNING AV AUTOMATISKA TESTER ERFARENHETER FRÅN SAAB EDS I GÖTEBORG Kristofer Olsson, Saab AB, Electronic Defence Systems 2011-11-17 Föredrag vid SESAM-seminariet Automatiserad programvarutestning

INNEHÅLLSDEKLARATION Bakgrund Information om Saab EDS i Göteborg och våra produkter, Verifiering för Signaloch databehandling samt några definitioner Arkitektur Beskrivning av vår arkitektur för automatiska tester Historik Hur har vi kommit fram till det läge vi har idag avseende automatiska tester Erfarenheter Erfarenheter avseende teknik, ekonomi och mjuka frågor Verifierarens roll Verifierarens förändrade roll Automatiska tester och förbättringsarbete Exempel på förbättringsarbeten där automatiska tester är en möjliggörare Sammanfattning Till sist en sammanfattning med några tips

BAKGRUND

ELECTRONIC DEFENCE SYSTEMS OPERATIONS GÖTEBORG Product portfolio Operations Göteborg develops and produces a full range of Radar and Laser systems such as; ARTHUR WLR (Weapon Locating Radar) Giraffe AMB (Multi Mission Surveillance System) ERIEYE (Mission System and AEW&C) PS05/A (Multi Role Airborne Radar System) AESA Fighter radar Sea Giraffe (Multi Role Surveillance Radar) Laser Rangefinder family Services

SENSOR SYSTEMS ERIEYE Mission System for AEW&C PS-O5/A Multi-Role Airborne Radar System CARABAS Surveillance and Foliage Penetration ARTHUR Weapon Locating System GIRAFFE Multi-Mission Surveillance System EAGLE Air Defence Radar SEA GIRAFFE Multi-Role Surveillance Radar LASER RANGEFINDERS SIRS Civil Security Sensors

DELSYSTEMVERIFIERING SIGNAL- OCH DATABEHANDLIG Vårt ansvarsområde Delsystemverifiering (även integrationstest) av delsystemen signaloch databehandling i samtliga produkter som utvecklas hos EDS Göteborg. Våra leverantörer Delsystemkonstruktörer som levererar kraven Konstruktörer som levererar maskinvara och programvara. Våra kunder Systemverifierare Vårt arbetssätt Vattenfallsprocess i minskande omfattning Agila metoder (Scrum) i ökande omfattning

NÅGRA DEFINITIONER Test Samlingsbegrepp för bland annat verifiering och integrationstest Verifiering Test för att kontrollera kravuppfyllnad Integrationstest Test för att hitta fel och ge en bild av kvaliten på en sammansatt produkt. Föregår verifiering. Continuous integration Arbetssätt där programvara ständigt byggs, integreras och testas. Så fort en programmerare checkar in sin kod kan ett nytt bygge göras. Daily build Arbetssätt där man bygger, integrerar och testar ny programvaruprodukt varje dag. SAFT Saab adaptation of FitNesse Testing. Innofficiellt namn på vår anpassning av FitNesse (http://www.fitnesse.org)

ARKITEKTUR

ARKITEKTUR FÖR AUTOMATISKA TESTER Det här ville vi ha av vår arkitektur Det skulle vara enkelt att anpassa nya testverktyg till nya produkter Väldefinierade och utbytbara gränssnitt mot testutrustning och testobjekt. Testfallen skulle vara isolerade från testverktygen. Produktspecifik utvärdering skulle vara skild från generiska funktioner. Vi ville inte utveckla och underhålla testmotorn och ramverket själva.

SIMPLIFIED GENERAL ARCHITECTURE FOR AUTOMATIC TESTS Test equipment Test object Test object Product specific Generic Third party Interfaces Evaluation Database Core functions Presentation Engine Test cases

TEST AUTOMATION EXAMPLE TEST EQUIPMENT AND LAB CONFIGURATION The lab environment also contains the following parts of the radar system: RC: Radar control (with connection to HFG, High frequency generator) DP: Data processing Test equipment used in the lab: TTG: Test target generator which gives us a realistic radar echo. ERES: Test equipment which records plot data and store it on file.

TEST AUTOMATION EXAMPLE TEST EQUIPMENT AND LAB CONFIGURATION ERES Recorded plot data DP RC Log file(s) Ethernet switch SP Test object SAFT USB TTG Testcases wiki format

HISTORIK

HISTORIK Behovet blir tydligt (ungefär 2005) Allt kortare tid för verifiering Verifierarna lägger tid på rutinjobb istället för att lära sig produkten Frågan Uppfyller vi kraven? börjar ersättas av Fungerar systemet bra? Automatisk test av programvara, Unit test, börjar användas mer och mer. Vad finns inom (Ericsson-)koncernen? Jo, TTCN-3 med fullständig support inom Ericsson. Vi bestämmer oss för att köra ett pilotprojekt med TTCN-3 Tyvärr blev det en dead-end eftersom Saab köpte vår verksamhet 2006 och därmed försvann gratissupporten. Vi beslöt att avbryta piloten efter några provskott.

HISTORIK Nytt försök Nu utvecklar vi själva i Java. Med entusiastisk hjälp av utvecklarna tas en mycket lyckad prototyp för automatisk test av delsystemet RC (Radar Control) fram. Automatiska tester visar sig spara pengar! Vi hittar allvarliga fel tidigt. Tidigare hade allvarliga RC-fel orsakat stora kostnader när de upptäckts först på systemnivå. Dags för bättre arkitektur Vi inser att vi behöver en bättre arkitektur som tydligare skiljer på kärna, gränssnitt och testfall. Testfallen skall vara enkla att skriva och förstå. Vi hittar FitNesse (http://www.fitnesse.org) som passar oss perfekt.

HISTORIK Första skarpa projektet Vi använder FitNesse i ett första steg i ett utvecklingsprojekt. Vår anpassning av FitNesse kallar vi för SAFT. Det blir mycket lyckat och ytterligare ett steg tas i projektet. Fortsättning i flera projekt SAFT börjar användas på bred front inom de flesta av våra produktområden. Det kräver mer än tidigare att hålla ihop SAFT mellan produkterna. SAFT har också blivit en produkt. Underhållet och vidareutvecklingen av SAFT kräver mer och mer programmerarkompetens. SAFT börjar användas även av våra kunder, systemverifierarna.

HISTORIK Viktigaste utmaningarna just nu Hålla ihop arkitekturen för SAFT mellan olika produkter Programmerarkompetensen Kopplingen mellan krav och verifiering genom automatiska tester Att presentera resultaten av automatiska tester med pedagogiska rapporter

ERFARENHETER

ERFARENHETER, TEKNIK Gränssnitt viktiga Viktigt att skilja på testutrustning och testfall. Ändringar i gränssnitt drar med sig mycket extraarbete. Noggrannare med automatiska tester Med automatiska tester måste du i testfallet beskriva exakt vad som skall utföras. Det går inte att komma runt problem med testutrustning eller otydligt skrivna testfall med hjälp av duktig och flexibel personal. Inte bara för programvara Automatiska tester med SAFT kan användas även för test av maskinvara om det bara finns bra gränssnitt. SAFT har fått bredare användning än vad vi trodde från början: Tester på systemnivå Miljöprov av signal- och databehandlingsenheter Delar av produktionsprov

ERFARENHETER, EKONOMI Automatiska tester har sparat pengar Fault slip-through mätningar visar att vi upptäcker fel tidigare vilket innebär en besparing. Vi kan testa oftare vilket också gör att vi kan leverera till systemnivån när de behöver leveranser = minskad väntetid. Det är inte gratis att underhålla miljöer för automatisk test Vi måste lägga pengar på underhåll av miljön Vi måste vara noggranna så att vi inte satsar på sådana tester som inte ger någon vinst. Exempelvis måste vi undvika att automatisera tester som endast körs en eller ett fåtal gånger.

ERFARENHETER, EKONOMI TVÅ OLIKA BILDER Automatiska tester kostar hur mycket som helst! Varför denna bild? Otydlig målbild som uppfattas olika av olika intressenter. Svårt att definiera när jobbet med automatiska tester är klart. Uppskattningar av kostnader som inte tar med allt. Allt högre ambition ju längre jobbet går. Automatiska tester sparar hur mycket som helst! Varför denna bild? Testerna hittar fel tidigt och därmed kan de åtgärdas tidigt. Vi kan testa mycket oftare vilket gör att vi minskar riskerna. Vi kan testa nätter och helger Vi utvecklar automatiska tester stegvis

ERFARENHETER, MJUKA FAKTORER Viktigt med bra sammansatta team. Det kan vara mer känsligt än man tror att föra in nya arbetssätt Viktigt att sammansättningen av personer är bra för dem som jobbar med automatiska tester och att de har överlappande kompetenser (ex CM, programmering, verifiering, produktkunskap m m) Nytt sätt att jobba kan utmana invanda mönster. För testare kan det kännas tryggare att jobba med dokument och manuella tester som tidigare. Viss rädsla för att jobba med programmering som man känner att man inte har tillräcklig kompetens för. Omvärlden (exempelvis chefer och projektledare) förväntar sig verifieringsrapporter på samma sätt som förr. Konstruktörer måste involveras i utveckling och användning av automatisk test. Det ger ökad förståelse mellan konstruktörer och testare samt även en större respekt för varandras kompetens. Där automatiska tester blivit succé har detta varit en framgångsfaktor.

VERIFIERARENS FÖRÄNDRADE ROLL

VERFIERARENS FÖRÄNDRADE ROLL FÖRR Verifierare - Oberoende besiktningsman Avbockning av krav Producerar dokumentation Har koll på kravspårning

VERFIERARENS FÖRÄNDRADE ROLL NU Testare Utvecklare av automatiska tester Bidrar till produktens kvalitet Dokumentation och kravspårning

VERFIERARENS FÖRÄNDRADE ROLL SNART Testare Utvecklare och kravställare av automatisk testverktyg Bidrar till produktens kvalitet Bidrar till Continuous integration Genererar automatisk dokumentation och kravspårning Bygger kunskap om produkten genom exploratory testing

AUTOMATISKA TESTER OCH FÖRBÄTTRINGSARBETE

AUTOMATISKA TESTER OCH FÖRBÄTTRINGSARBETE Automatiska tester underlättar nya arbetssätt Daily build Continuous Integration Agila arbetssätt Lean Kvalitet Högre kvalitet/testtimme Möjlighet att testa ofta säkrar produktens kvalitet Ekonomi Kortare ledtider Fel hittas tidigare vilket minskar kostnader för felrättningar Organisation och kompetens Samarbete med utvecklare leder till idéer om effektivare arbetssätt

SAMMANFATTNING

SAMMANFATTNING Viktigaste erfarenheterna Fokusera på gränssnitten Gör det enkelt att skriva testfallen. I idealfallet skall en kund eller användare av systemet kunna skriva testfall. Börja i liten skala Visa att konceptet fungerar. Kanske en prototyp först. Försök hitta några manuella tester som upprepas ofta, exempelvis acceptanstester. Blanda inte in för många gränssnitt i början När man börjar med automatiska tester kommer det upp många nya idéer om hur man skall testa systemet. Använd de nya idéerna! Frågor eller synpunkter? Kontakta mig gärna: kristofer.h.olsson@saabgroup.com