Livsløpstesting av IT-systemer



Like dokumenter
BlackBox, WhiteBox og andre testmetoder. Etter ønske fra studentene 26. november 2009

Statisk testing. Testing uten datamaskin, men med vår egen evne til å vurdere og analysere

GJENNOMGANG UKESOPPGAVER 9 TESTING

Repetisjon av testing. Vi undersøker om systemet virker slik det skal

Repetisjon av testing. Vi undersøker om systemet virker slik det skal

Kort om evaluering og testing av It-systemer. Hvordan vurdere, verdsette, velge og teste?

Validering og verifisering. Kirsten Ribu

Prosjektet - leveranser. Testing og evaluering av systemer. Hva er sikkerhetskritiske systemer? I dag: Systemfeil og testing. Robust kraftforsyning?

Inf1055 Modul B 26 april 2017:

Akseptansetesten. Siste sjanse for godkjenning Etter Hans Schaefer

Kirsten Ribu

Grunnleggende testteori

Introduksjon til evaluering av It-systemer. Hvordan vurdere og verdsette?

Testing av programvare

Testing av programvare. INF1050: Gjennomgang, uke 08

Testplan (Software Test Plan)

Kirsten Ribu

Grunnleggende testteori. Etter Hans Schaefer

Krav som bør stilles til leverandørens verifikasjon og test

ISTQB Foundation Level Prøveeksamen

Ulike typer prosessmodeller. Systemutvikling. Utviklingsmodeller. Prosessmodell - faser

UKE 14 Versjonshåndtering og testing. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski

Finansportalen Historiske bankdata

Testdekning og automatisering - Er 100% testdekning et mål?

JigZaw. Teststategi utviklet av. Erik Drolshammer Bård Lind. Verifiser Forventet Funksjonalitet

ChiCMS Hovedprosjekt ved Høgskolen i Oslo 2011

EKSAMEN. Evaluering av IT-systemer. Eksamenstid: kl 0900 til kl 1300

Grunnleggende testteori

TESTRAPPORT Tittel på hovedprosjektet: Varebestillingssystem for Wokas Salg AS

Hensikten med denne delen av kurset. Objektets egenskaper. Objektorientering hva er det? Best practises ved programvareutvikling. Kravspesifikasjonen

Kvalitet og programvare. Når bare det beste er godt nok. Produktet prosessen eller begge deler?

Modernisering av IKT i NAV

Læringsmål og pensum. Utvikling av informasjonssystemer. Oversikt. Systemutvikling Systemutvikling i seks faser Femstegs prosedyre for programmering

TDT4735 Systemutvikling, fordypning. Metoder for systemtest av websystemer

Test i Praksis. NTNU Februar Copyright 2014 Accenture All Rights Reserved.

Verifikasjon og validering

Spørreundersøkelse om informasjon fra Arkitektbedriftene

Oppsummering av hovedområdene i kurset LO 135A Kirsten Ribu

Redd verden. Steg 1: Legg til Ronny og søppelet. Sjekkliste. Introduksjon

Erfaring med funksjonell testing i en integrert ALM prosess

Automatisert Robusthetstesting. Erik Arisholm Testify AS

Evaluering av IT-systemer Introduksjon. Monica Kristiansen

Evaluering av It-systemer i et forvaltningsperspektiv. Drift, vedlikehold og videreutvikling av IT-systemet

Testbilag til IT kontrakter

Evaluering av brukskvalitet for et Web-grensesnitt

System integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,

Grunnleggende om Evaluering av It-systemer

Test i smidig. Laila Sandbæk Testrådgiver og testleder Sogeti

Eksamen 2013 Løsningsforslag

Jon Hammeren Nilsson, Anders Emil Rønning, Lars Grini og Erling Fjelstad

Testrapport for Sir Jerky Leap

Forprosjekt. Oppgavens tittel: Motorstyring Dato: Jon Digernes Institutt/studieretning: Program for elektro og datateknikk

Gårsdagens testroller takler ikke dagens utfordringer. Magnus Halvorsen og Erik Rogstad

Ansvarlig: Faglig ansvarlig for innhold og revisjon, Testseksjonen TestiT, Avd. for Tjenesteproduksjon HN IKT

Løsningsforslag Sluttprøve 2015

Overordnet Testplan. MUSIT Ny IT-arkitektur, Pilot og Hovedprosjekt. Page 1 of 11

Vedlegg Brukertester INNHOLDFORTEGNELSE

Kostnadseffektivt eller bortkastet tid? Øyvind Woll Seniorkonsulent, Vivento AS

Verdien av god leverandørtesting i konstruksjonsfasen i smidige prosjekter

INF329: Utvalgte emner i programutviklingsteori Sikkerhetsanalyse av programvare

OOA&D starter med systemvalg

Eksamensdato: 31. mai 2017 Eksamenstid 14:30-18:30 Hjelpemidler: Ingen. Les denne forsiden nøye. Oppgaven består av fire deler.

Systemutvikling (Software Engineering) TDT 4110 IT Grunnkurs Professor Guttorm Sindre

Mellom barken og veden Smidig testing i krevende terreng TTC 2015

Altinn - Test Anne Risbakk Testleder i Altinn

Finansportalen Historiske bankdata

INF1500 Høst 2015 Magnus Li Martine Rolid Leonardsen. Utviklingsprosesser & krav og behov

UNIVERSITETET I OSLO

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

Testrapport. Studentevalueringssystem

Eventhandler Teknologi, kunst og design Høgskolen i Oslo og Akershus, våren Testrapport

Testrapport Prosjekt nr Det Norske Veritas

MONTERINGSANVISNING TERMLIFT

Retningslinjer for akseptansetest

GJENNOMGANG UKESOPPGAVER 3 KRAVHÅNDTERING

Retningslinjer for akseptansetest

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11

Kvalitetskrav til løsninger

Automatisert test som leveransekrav

Praktisk installasjonstesting med Fluke 1650 serien

«Glød og go fot» Utviklingsstrategi. Orkdal kommune. Nyskapende. Effek v. Raus Våre strategier er:

Verifikasjon og validering

Metrikker og målte størrelser. Vi måler fakta for å bestemme systemets egenskaper

81,9(56,7(7(7,26/2 'HWPDWHPDWLVNQDWXUYLWHQVNDSHOLJHIDNXOWHW

Saksnummer 13/ / 29

A tool for collaborating to success in a development project Experience with Visual Studio 2010 and Test Manager at Lånekasse

Forprosjekt nytt skoleadministrativt system. Vedlegg 6 Prosessbeskrivelse Aktivitetsskolen

Forprosjektrapport. Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren Pillbox Punchline

Oppgave 1. Finn krav. Finn krav. Finn test

Metodikker for testmiljø

Lykke til! Eksamen i fag TDT4140 Systemutvikling NTNU Norges teknisk-naturvitenskapelige universitet

Norsk versjon. Innledning. Installasjon av hardware. Installasjon Windows XP. LW057V2 Sweex trådløst LAN PCI kort 54 Mbps

Kravspesifikasjon. Forord

Obligatorisk oppgave nr. 3 (av 4) i INF1000, våren 2006

Generelt om operativsystemer

Innholdsfortegnelse: Resymé: Denne leksjon gir en kort og enkelt oversikt over hvilke oppgaver som skal utføres i design- og programmeringsfasen.

Effektiv testing med rike anonymiserte testdata

Kontrakter og test i smidige prosjekter. Fagmøte Dataforeningen i Trondheim 12.Mars 2012

INF oktober Dagens tema: Uavgjørbarhet. Neste uke: NP-kompletthet

Kravspesifikasjon. Forord

Transkript:

Livsløpstesting av IT-systemer

Testing, validering og evaluering Teste Undersøke ved hjelp av tester om systemet fungerer slik det er beskrevet Validere Bekrefte hvordan systemet virkelig fungerer, om beskrivelsen er gyldig Evaluere Vurdere hvordan systemet passer til bruk i en organisasjonen i forhold til en beskrivelse Hensikten er å sørge for at et datasystem tilfredsstiller brukerens behov best mulig

Validering ISTQB Gjøre de riktige tingene 1. Bekreftelse ved hjelp av undersøkelse og samling av objektiv informasjon at kravene for en spesifikk forventet bruk har blitt oppfylt. [ISO 9000] 2. Evaluering av et system mot kravspesifikasjon eller brukerens eller kundens behov for å se om en har utviklet det rette system. Se også verifikasjon. 3. Prosessen med å vurdere programvaren for å sikre overensstemmelse med spesifiserte eller implisitte krav.

To viktige spørsmål Bygger vi det riktige systemet - validering? Snakke med brukerne Lese kravspesifikasjonene og bestillinger Virksomhetsanalyse Bygger vi systemet riktig - verifisering? Inspisere kode Teste funksjoner Teste delsystemer Systemtest Akseptansetesten Kundens systemtest Evalueringen I hvor stor grad kan vi si at de to spørsmålene er oppfylte?

Vi tester fordi Det vi lager ikke er det vi burde lage Det vi lager har feil Vi trenger ikke best mulig, men god nok kvalitet. Feil kan være forretningskritiske Bedrifter kan gå konkurs 1996 - FoxMeyer - Medisinfirma. Dårlig systemtilpasning Menneskeliv kan gå tapt 1985 1987 Therac-25 Strålebehandling Store kostnader 1990 Tress-90 blir ikke ferdig 1,2 milliarder 1994 Flyplassåpning Denver Colorado utsettes ett år 1996 Ariane 5 styrter 5 milliarder 2000 Mars Orbiter forsvinner. Blanding av fot og meter

Forskjellige typer feil Kategori 1: Kritiske feil som MÅ rettes Lansering holdes igjen til feilen er rettet Kategori 2: Kritiske feil som bør rettes Betydelig reduksjon av kvaliteten Kategori 3: Ikke-kritiske feil kosmetiske feil Kategori 4: Ubetydelige feil Skrivefeil, feil fargenyanser,..

Systemets livsløp Strategsk behov Hva vil vi? Hvor går vi? Analyse og spesifikasjon Hvordan lager vi veien Utvikling Verktøyet for å komme dit Implementering Datakonvertering Forvaltning Drift og vedlikehold Systemavslutning Fase ut systemet og fjerne det

V-modellen Forutsetter at utvikling og testing er likeverdige aktiviteter Til hvert steg i utviklingen hører en test Kundespesifikasjon Kravspesifikasjon Funksjonell systemdesign Teknisk systemdesign Programmering

Generell V-modell Kravspesifikasjon Akseptansetest Funksjonell systemdesign Systemtest Teknisk systemdesign Integrasjonstest Komponentspesifikasjon Komponenttest Programmering

Komponent- Klasse- Modul- Enhets-test Laveste testnivå Tester at modulen (klassen) virker isolert Forsikre oss om at kode eksekverer uten kjørefeil Simulerer omgivelsene til komponenten Utføres av utviklere Skrives ofte som automatiske tester Hva testes? dataflyt grenseverdier feilhåndteringsmekanismer

Komponent- Klasse- Modul- Enhets-test Testobjekt Biten, funksjonen, Modulen som skal testes Testomgivelser Hjelpefunksjoner for å gjennomføre testen Driver Program som kaller komponenten - innverdier Stub Program som komponenten kaller opp - utverdier Hensikten med testen Forsikre seg om at objektet fungerer korrekt og fullstendig Kontrollere robusthet fravær av feilfunksjon Vurdere effektivitet på komponenten Vurdere hvordan komponenten vedlikeholdes Teststrategi Avklare hvilken testmetode som skal benyttes

Integrasjonstesting. Systematisk framgangsmåte for å sette sammen moduler og testing for å avdekke svakheter i grensesnittet mellom modulene. Forsikre oss om at bitene i et større system fungerer sammen Selv om enhetene fungerer hver for seg betyr det ikke at de fungerer sammen, fordi. Data kan gå tapt på tvers av moduler En modul kan ha en uventet effekt på en annen Sub-funksjoner spiller ikke sammen

Integrasjonstest Teste samspillet mellom enheter. Målet er å rette feil knyttet til funksjoner som enhetene bare kan utføre sammen og som dermed ikke kan avdekkes under enhetstesting. Tester at komponenten (klassen) virker sammen med andre komponenter Simulerer ofte andre sub-systemer Bruker konstruerte testdata Utføres ofte av utviklere Gjøres ofte manuelt, men kan med fordel automatiseres

Teststrategier - 1 Top-down testing Starter med øverste komponent Fordel trenger ikke drivere da komponentene selv er drivere til programmene under Ulemper komponenter som ikke er ferdige må erstattes med stubber Bottom-up testing Starter med laveste komponent Fordel - trenger ikke stubber da komponentene selv er stubber til programmene over Ulemper høyere komponenter som ikke er ferdige må erstattes med drivere

Teststrategier - 2 Ad-hoc testing Komponentene integreres etter hvert som de ferdigstilles Fordel tidsbesparende komponentene testes når de er ferdige Ulemper Manglende komponenter må erstattes med drivere og stubber Backbone testing Stammen i programmet bygges og Komponentene integreres etter hvert som de ferdigstilles Fordel komponentene testes uavhengig av rekkefølge Arbeidskrevende å planlegge og lage stammen

Systemtest Forsikre oss om at systemet fungerer i henhold til kravspesifikasjon, de avtalte kravene Tester at systemet oppfører seg korrekt i samspill med omgivelsene Systemtest kjøres etter at hele systemet er satt sammen, og i et testmiljø som skal simulere et driftsmiljø.

Systemtest Å bekrefte at systemet oppfører seg korrekt i samspill med omgivelsene og fyller de overordnede kravene. Hvilke krav testes? funksjonelle ikke-funksjonelle: sikkerhetstesting stresstesting ytelsestesting recovery testing

Akseptansetest - Mottakstest Kunden har ansvaret for å gjennomføre testen Tester at systemet lar brukerne gjøre det de trenger Tester med reelle data Utføres gjerne i samarbeid mellom kunder og testere Mer om denne i egen forelesning

Andre testtyper - egne forelesninger Funksjonstester Black Box testing Hvordan systemet fungerer Ikke-funksjonelle tester Testing av alt annet enn funksjonalitet Pålitelighet, robusthet, brukskvalitet, brukervennlighet, dokumentasjon, vedlikehold. Strukturtester - White box testing Endringstester Gjennomføres når det gjennomføres endringer i softwaren

Black-box test Tar utgangspunkt i kravene Både funksjonelle og ikke-funksjonelle Tester alle grensesnitt Tester grenseverdier for input og output Omgivelsene simuleres

White-box test Tester som baserer seg på kunnskap om hvordan enheten er kodet. Kjører all kode Forsøker å kjøre alle veier Kjører alle løkker null, en og maks antall ganger Teste alle utfall av betingelser Tester feiltilstander og initialtilstander Tester hva som skjer ved overbelastning og ressursknapphet.

Exploratory (ad hoc) testing (ET) Lage og forbedre tester mens du kjører dem Tillegg til skript basert testing Feil rapporteres som for vanlig testing Feilene beskrives slik at de kan repeteres Test rundt et tema Hva er den beste testen jeg kan utføre nå? ET utnytter testerens dyktighet og erfaring

Black- og white-box testing Komponent Inndata Utdata Black box: Gir input forventet output? Komponent Inndata Xxxxx xxxxx Utdata White box: Følger hvert trinn i komponenten. Midlertidige utskrifter.