Test av IT-system

5.0(1)
studied byStudied by 11 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/186

flashcard set

Earn XP

Description and Tags

Inför tentamen

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

187 Terms

1
New cards
Varför utför man **test**?
För att :

* Identifiera fel
* Säkerställa kvalitet
* Försäkra ett användbart system

\
2
New cards
Vad handlar testning om? (Definition)
Med testning menas:

Processen att exekvera eller evaluera ett system genom att använda manuella eller automatiska metoder för att verifiera, att systemet uppfyller specificerade krav eller att identifiera skillnader mellan förväntade och verkliga resultat.
3
New cards
Vad innebär att **verifiera**?
Att kontrollera det färdiga resultatet med avseende på kravspecifikationen.
4
New cards
Vad innebär att **validera**?
Att granska hur resultatet förhåller sig till verkligheten, och kontrollera att det funkar i praktiken.
5
New cards
Vilka **konsekvenser** finns p.g.a. bristande test?
* Stora utvecklingskostnader
* Högra förvaltningskostnader
* Missnöjda kunder
* Missnöjda användare
* m.m.
6
New cards
Det finns **7 principer** om test, vilka?

1. Test **påvisar** att ett fel finns
2. Fullständiga test är **omöjliga**
3. Testa **tidigt**
4. Fel **hopar** sig ofta
5. **Anpassa/variera** test
6. Test är **kontextberoende**
7. “Absence of errors“ - fallacy (Man antar att systemet är felfritt)

1. Test **påvisar** att ett fel finns
2. Fullständiga test är **omöjliga** 
3. Testa **tidigt**
4. Fel **hopar** sig ofta
5. **Anpassa/variera** test
6. Test är **kontextberoende**
7. “Absence of errors“ - fallacy (Man antar att systemet är felfritt)
7
New cards
Vilka **orsaker** kan buggar komma ifrån?
* Tidspress
* Komplex kod
* Komplex infrastruktur
* m.m.
8
New cards
Hur ser **testprocessen** ut?
Testplanering och styrning →

Testanalys och design →

Realiserande och exekvering av testet →

Utvärdering och avslutkriterier och rapportering →

Testavslutsaktiviteter
Testplanering och styrning → 

Testanalys och design →

Realiserande och exekvering av testet →

Utvärdering och avslutkriterier och rapportering →

Testavslutsaktiviteter
9
New cards
Vad gör man i **planeringsfasen**?
* Granskar krav
* Skapar testfall
* Prioriterar testfall
* Skapa testrapporter
* m.m.
10
New cards
Vilket syfte har en testspecifikation?
Att “hålla ihop“ testfallen.
11
New cards
Vilka delar innefattar en testspecifikation?
Inledning

Testdata

Förberedelser

Testfall

Återställning
12
New cards
Vilka **fördelar** finns det med testfall?
* Strukturerat
* Bra grund för felrapporter och automatisering
* Lätt att byta testare
13
New cards
Vilka **nackdelar** finns det med testfall?
* Blir snabbt omfattande
* Kan bli svårt med en överblick om testfallen är för många
* Testfallen täcker inte allt - falsk säkerhet
14
New cards
Vilka steg innefattas på genomförandet av ett test?
* Följer testplanen
* Använder underlagen för planeringen
* Rapporterar
* Testar igen och igen
15
New cards
Hur ser uppföljningen ut?
Man sammanfattar

Utvärderar och samlar erfarenhet
16
New cards
Vilka **problem** finns med ostrukturerade test?
* Viktiga fel upptäcks sent
* Trots tester upptäcks få fel
* Test blir hinder för “att bli klar“
* Svårt att övervaka och kontrollera test
* Lite användarmedverkan
* m.m.
17
New cards
Vad innefattar V-modellen?
Se bild.
Se bild.
18
New cards
Det finns **fyra grundläggande testnivåer**, vilka?

1. Enhetstest
2. Integrationstest
3. Systemtest
4. Acceptanstest
19
New cards
Vilka olika **roller** inom test finns det?
* Testare
* Testledare
* Testroller
* Testdata
* Testfall
* Prestanda
* m.m.
20
New cards
Vad handlar test om?
Att lära sig systemet, lära sig av tidigare projekt, kollegor och andra projektmedlemmar.

\
Handlar om lärande och erfarenhet.
21
New cards
Vilka framgångsfaktorer finns det inom testning?

1. Påbörja test tidigt
2. Testa under hela utvecklingsprocessen (hitta fel tidigt, begränsa kostnader för fel)
3. Skapa struktur i testarbetet
4. Arbeta metodiskt (för att kvalitetssäkra systemet)
22
New cards
Det finns olika “standardiserade“ **utvecklingsmetoder**, vilka?
* Vattenfall (sekventiell)
* RUP (Rational Unified Process) en iterativ-inkrementiell process
* XP (Extreme programmering) en agil process
* m.m.

\
23
New cards
Vad är det som är typiskt med vattenfallsmodellen?
Den är **sekventiell**, och man kan **inte gå tillbaka** i processen. Kravbilden blir **aldrig komplett**.
24
New cards
Vad är testdisciplinen för RUP?
Det är en **iterativ** process, **skalbar** och går att **skräddarsy**, skapt för **flexibilitet** och är en **riskbaserad** process.
25
New cards
Vad är extreme programming?
* **Medvetet** och **disciplinerat** utvecklingsätt.
* Understrycker **kundnöjdhet** (Leverera vid behov, svara på ändrade krav).
* Betonar **teamarbete** (kommunikation, enkelhet, feedback och respekt).
* Hålla saker **enkelt**.
26
New cards
Hur bidrar extreme programming till att förbättra programutvecklingsprojektet?
Den förbättrar 4 väsentliga dimensioner:


1. Kommunikation
2. Enkelhet
3. Feedback
4. Respekt/mod
27
New cards
Vad är manuell testning?
Testning av programvaran som utförs av en QA-analytiker, det utförs för att upptäcka buggar i programvaran under utveckling.
28
New cards
Vad är automatiseringstest?
Testare skriver kod, för att automatisera testutförandet.

\
I automatiserad mjukvarjutestning skriver kod/textskript för att automatisera testutförandet. Testarna använder lämpliga automatiseringsverktyg för att utveckla textskript och validera programvara.

\
Målet är att slutföra testutförandet på mindre tid.
29
New cards
Vad är User Stories?
Små meningar som beskriver krav.
30
New cards
Vad menas med agilt test?
* Testa tidigt
* Hantera ändrade krav
* Hantera “tunna“ krav
* Test ofta
* Testa snabbt
* Bugg-kvalitet
* Engagera hela teamet
* Enhetstest
31
New cards
Vad illustrerar V-modellen?
* Hur **kravhantering** och **test** hänger ihop med **systemutveckling**.

\
* Går att tillämpa på både små och stora projekt
* Går att tillämpa på både nyutveckling och i förvaltning
* Hanteras normalt som både sekventiell och iterativ samtidigt
* Hur **kravhantering** och **test** hänger ihop med **systemutveckling**.

\
* Går att tillämpa på både små och stora projekt
* Går att tillämpa på både nyutveckling och i förvaltning
* Hanteras normalt som både sekventiell och iterativ samtidigt
32
New cards
Vad är de två största problemområderna inom kravhanteringsprocessen?
Kravspecificieringen och hanteringen av kundkrav.
33
New cards
Var kommer felen ifrån inom systemutveckling?
* Kravrelaterade på 56%.
* Designrelaterande 27%
* Övriga fel 10%
* Kodrelaterande 7%
34
New cards
Vilka olika typer av krav finns det?
* Funktionella krav
* Icke-funktionella krav
* Normala krav
* Förväntande krav
* Sensationella krav (oväntade)
35
New cards
Vad är funktionella krav?
Kan vara tex att skriva ut en meny
36
New cards
Vad är icke-funktionella krav?
Tex prestanda
37
New cards
Vilka tekniker kan man använda för att samla in krav?
* Intervjuer
* Kravworkshop
* Prototypbyggande
* Brainstorming
* Storyboards/Scenarier
* Användningsfallsmodellering
* Verksamhetsmodellering
* SRS för gammalt system
* m.m.
38
New cards
Vad innebär att strukturera krav?
Att skapa struktur som är lätt att överblicka och förvalta. Pågår kontinuerligt.
39
New cards
Vad är nyttan med att prioritera krav?
* Fokusera på det viktiga
* Hitta höga och låga prioriterade krav
* Rätt krav i rätt ordning
* Spara tid och pengar
40
New cards
Vad bör dokumentationen av krav innehålla?
* Funktionella och icke-funktionella krav
* Gränssnitt mot andra system
* Krav på användargränssnitt
* Designrestriktioner
41
New cards
Vad är problemet med för lite dokumentation?
Finns osäkerhet om vad som ska levereras.
42
New cards
Vad är problemet med för mycket dokumentation?
Svårt att förvalta och svårt att upptäcka luckor.
43
New cards
Vilka tre områden finns om att förvalta krav?

1. Konfigurationshantering
2. Förändringshantering
3. Påverkansanalys vid förändringar
44
New cards
Vad är spårbarhet?
* En teknik som ger ett samband mellan olika nivåer av krav i ett IT-system.
* Tekniken hjälper till att fastställa ursprunget för varje krav.
* Kontrollera att IT-systemet bara gör det som begärdes.
45
New cards
Hur går tidig testdesign till?

1. Testarna deltar i krav diskussioner
2. Testarna deltar när kraven skrivs
3. Testare deltar vid granskning av kraven
4. Testare planerar och skriver testerna tidigt, helst parallellt med kraven
5. Krav och test i samma verktyg
46
New cards
Vilka tre områden bör man dokumentera?

1. Kravspecifiktaionen
2. Användningsfallet
3. Användarberättelser
47
New cards
Vad används ett spårbarhetsmatris till?
* För att kunna se konsekvenser vid förändring och visa om det finns testfall för samtliga krav.
* Kan visa om det finns testfall för samtliga krav
* För att kunna se konsekvenser vid förändring och visa om det finns testfall för samtliga krav.
* Kan visa om det finns testfall för samtliga krav
48
New cards
Vilka steg följer en övergripande testprocess?
Planering, Genomförande, Uppföljning
49
New cards
Vad är syftet med en testprocess?
Processer används som stöd och riktlinjer

Perocesser kan ge ett enhetligt arbetsätt

En bra testprocess är “tillförlig“ och “sparar“ tid/arbete när de, väl är etablerade.
50
New cards
Vilka framgångsfaktorer finns för att lyckas med gransking och granskningsmöten?
* Grundläggande kontroller av dokument
* Rätt information till deltagarna i god tid inför mötet
* Välj rätt granskare
* Använd checklistor
* Undvik långa diskussioner
* Håll start- och slutdatum
* Ledning behöver ge stöd för granskning
* Vilja att förbättra granskningsprocessen
51
New cards
Vad är det som skiljer en inspektion från en genomgång?
* Start- och slutkriterier används
* Formella mötesroller används
* Mätetal används
* Mötet leds av en utbildad moderator som inte är samma person som författaren
* Deltagarna genomför noggranna förberedelser inför granskningsmötet
* Mötet protokollförs med en lista över funna avvikelser
52
New cards
När skall man använda informell respektive formell granskning?
Informell granskning (billigast):

Används vid tidsbrist

* Om dokumentet är mindre viktigt
* Kan användas som förgranskning till en mer formell granskning

\
Formell granskning:

* Följer en dokumenterad granskningsprocess
* Beskriver att det ska finnas möte, formella roller krav på förberedelser samt mål
53
New cards
Hur genomförs granskning?
Dela upp stora dokument i mindre delar.
54
New cards
Exempel på formell granskning är?
* Genomgång (Walkthrough)
* Teknisk granskning
* Inspektion
55
New cards
Varför genomförs granskning?
* Kostnadseffektivt
* Problemförebyggande
* Effektiv inlärning
* Involverar projektmedlemmarna tidigt
56
New cards
Vad är målet & syftet med granskning?
* Verifiering
* Validering
* Konsensus (nå samsyn)
* Förbättringar (hitta förbättringsförslag)
* Felsökning (hitta fel)
57
New cards
Vad betyder och när sker statisk testning?
* Hitta fel utan att exekvera programmet.
* Sker under hela projektet
* Förebygga buggar
* Billig
58
New cards
Vad betyder och när sker dynamisk testning?
* Exekvera programmet för att hitta fel
* Sker i sista delen av projektet
* Hitta och fixa buggar
* dyr
59
New cards
Hur går ett agilt arbetssätt till?

1. Ett krav granskas och analyseras
2. Testfall skrivs
3. Testfallet granskas för att se om det ger upphov till nytt testdata
4. Nytt eller befintligt testdata läggs in i testsystemet
5. Testfallet utförs
6. Eventuella fel rapporteras
7. Nästa krav
60
New cards
Vad ska man tänka på när man skriver en tidig testdesign?
Skriv kraven i form av användarberättelser

Som en vill jag
61
New cards
När är kravinsamling färdig?
En kravinsamling blir aldrig färdig.

\
* Det finns alltid flera åsikter
* Nya möjliga funktioner
* Det går aldrig att fullständigt specialisera en produkt
62
New cards
Hur hanterar man förändringar?
Konfigurationshantering

* Alla inblandade måste veta vilka krav som är aktuella.

\
Förändringshantering

* Rutiner för då kraven ändras.

\
Påverkansanalys vid förändringar

* Spårbarhetsmatris.

\
Sker under hela utvecklingsprocessen
63
New cards
Vad innebär med kvalitetssäkra krav?
En ständigt fortlöpande aktivitet som syftar till att säkerställa att de dokumenterade kraven dels beskriver rätt egenskaper och dels beskriver dem på rätt sätt.
64
New cards
Ge exempel på kravdokumentation och vad dem bör innehålla.
Kravspecifikation, Användningsfall & Användarberättelser

\
Bör innehålla:

* Funktionella & icke-funktionella krav
* Gränssnitt mot andra system
* Krav på användargränssnitt
* Designrestriktioner
65
New cards
Vad är viktigt att tänka på med kravhantering?
* Krav är centrala
* Nästan rätt är oxå fel
66
New cards
Vad innebär med att varje “bygge“ är en testlivscykel kandidat?
Att bygga koden är helt enkelt att kompilera ett program och där minsta ändring i källkoden innebär att komplieringen ger ett annat bygge.
67
New cards
Vilka testningar sker under sekventiell utvecklingsmodell?
* Komponent- (enhets)- testning
* Integrationstestning
* Systemtestning
* Acceptanstestning
68
New cards
Vad innebär interativ-inkrementell utvecklingsmodell?
Process, med upprättande av krav, konstruktion, byggande och testning av ett system, som sker i många små utvecklingssteg.
69
New cards
Vad går agila utvecklingsmodellen ut på?
Bygger på att göra kunden nöjd med det som utvecklas genom ett mycket nära samarbete under hela utvecklingstiden med täta och regelbundna möten mellan utvecklare och beställare.
70
New cards
Vad mer kan trattas in i en programvara förutom den faktiska koden?
* Kundkrav
* Specifiktaitioner
* Tidsplaner
* Designdokument
* Testdokument
71
New cards
Vad är testplanen?
* Plan för testarna som ska genomföras
* Där testledaren är ansvarig
* Fokus i planen är “vad“
* Man tänker igenom vad som ska göras och hur.
* Är ett kommunikationshjälpmedel för alla intressanter
* Planering och skapande av testplan genomförs bäst med ett iterativt arbetssätt!!!
72
New cards
Vad innehåller ett testdokument?
* Teststrategi
* Testplan
* Testspecifiktaion
* Testschema
* testlogg/avikelselogg
* Felrapporter
* Testrapport
73
New cards
Vad är en teststrategi?
* Generell och övergripande beskrivning om hur ett system vanligtvis testas
* Testnivåer, roller och hur arbete brukar läggas upp
74
New cards
Vilka olika start och stopp finns det för test?
Start kriterier:

* Kriterier som ska vara uppfyllda för att inleda testerna (beroenden)

\
Stopp kriterier:

* Kriterier som ska vara uppfyllda av avsluta test

\
Avbrytande kriterier:

* Kriterier för att avsluta tester på ett onormalt sätt

\
Återupptagande kriterier:

* Kriterier som ska vara uppfyllda för att återuppta testerna
75
New cards
Olika sätt att estimera på?
* Estimera tid
* Räkna och/eller bygg på erfarenhet
* Enpunkts- tvåpunkts, eller trepunktsskattning
* Ev “uppsökningsfaktorer“ baserat på erfarenhet
* Schablontid - relaterat till uppskattad utvecklingstid
* Star5t & slutkritereier
76
New cards
Vad är estimering av tid?
= uppskattning

\
Små aktiviteter är lättare att estimera än stora aktiviteter. Enkla aktiviteter är lättare att estimera än komplexa aktiviteter.

\
* Bryt ner till enkla och korta aktiviteter
* Utnyttja erfarenheter
77
New cards
Vilka olika typer av risk finns det?

1. Tekniska
2. Projektorganisatoriska
3. Linjeorganisatoriska
4. Marknadsrelaterade
5. Kundrelaterande
6. Externa
7. Projektrisker
8. produktrisker
9. Humanrisker
78
New cards
Vad innebär riskutvärdering?
Att svara på frågor av typen…

* Vilken sannolikhet är det att risken inträffar?
* Vad får det för konsekvenser om risken inträffar?
* Vad kan vi göra för att undvika , möta, reducera eller acceptera risken?
79
New cards
Vad innebär begreppet risk?
* Sannolikheten att något negativt påverkar verksamhetens eller projektets möjlighet att nå sina mål.
* Kan identifieras och hanteras.
80
New cards
Vad innebär begreppet osäkerhet?
Man vet för lite om projektet för att kunna se riskerna.
81
New cards
Vilka aktiviteter finns under testplaneringen?

1. Identifiera avgränsning, risker & mål för test
2. Planera roller, ansvar & resurssäkring
3. Schemalägg
4. Fastställ mätetal, start/stop kriterier, testnivåer
5. Integrera testaktiviteter i utvecklingslivcykeln
82
New cards
Varför planerar man?
För att skapa förståelse för uppgifter

För att skapa överblick över arbetet

För att skapa underlag för att:

* Avsätta resurser
* Fördela roller & ansvar i arbetet
* Kunna följa upp och ta konsekvenserna av förändrade förutsättningr
83
New cards
Vad gör man när man planerar?
* Identifierar uppgifter
* Identifierar kritiska aktiviteter
* Estimera tid och kostnad
* Definera bemanning
* Tillsätta nyckelroller
* Identifiera risker & reservplaner
* Fastlägg uppföljningsmetodik
84
New cards
Vad påverkas planering av?
* Verksamhetens testpolicy
* Testningens omfattning
* Målsättning
* Risker
* Begränsningar
* Hur kritisk produkten är
* Testbarhet
* Tillgång till resurser
85
New cards
Vad är syftet med testplanering?
Syftet är att få en plan som vi kan följa under genomförandet.

\
Indata = kravspecifikation m.m.

Utdata = testplaner

\
Planen kan beroende på omfattning delas upp i flera delar.
86
New cards
Vad är bra att tänka på vid användning av en testmiljö?
* Det är oftast bra/nödvändigt att ha en separat testmiljö.
* Testmiljön måste spegla produktionsmiljön för att vara tillförlitlig.
* Deploy från utveckling till test, från test till produktion.
87
New cards
Vad används testdata till, och vad är viktigt att tänka på?
* Används för integrationstest, systemtest, acceptanstest och komponenttest.
* Forma en process och hantering för testdata, som är möjlig att använda och återställa.
* Behöver ha tillräckligt med testdata.
* Urval av testdata för aktuella tester.
* Testdata bör vara “produktionslik“.
88
New cards
Vad gör man under förberedelser/planerings fasen?
* Definerar syftet med testet
* Identifierar testområden
* Granskar kravdokument
* Bedömer risker
* Skapar testunderlag
* Säkra resurser
89
New cards
Vad gör man under uppföljning och utvärdering?
* Sammanfattar
* Utvärderar
* Samlar erfarenheter

\
(Testrapport + lesson learned)
90
New cards
Vilka delar utöver test, är viktiga inom kvalitetssäkring?
* Kravhantering
* Projektledning
* Systemutveckling
* Driftsättning
* Användarhjälp & utbildning
91
New cards
Vad behöver testare göra?
* Lära sig systemet
* Lära sig av tidigare projekt
* Lära sig av kollegor
* Lära sig av andra projektmedlemmar
92
New cards
Vilka dimensioner finns i V-modellen?
* Arbetsflödet
* Detaljeringsgraden
* Tiden
93
New cards
Vilka två underlag används för att övergå från testanalys och designfasen till genomförande fasen?
* Testplan
* Testspecifikation
94
New cards
Vad behövs göras under testprocessen?
* Granska krav
* Skapa testfall
* Prioritera testfall
* Genomföra tester
* Logga resultat i testlogg
* Skriva avvikelserapport/felrapport
* Kommunicera löpande med leverantören
* Sammansätta testlogg
* Skriva testrapport
95
New cards
Projektlivscykel
Ett projekt samtliga faser, även kallt projektförlopp.
96
New cards
Vilka är de grundläggande testnivåerna, och av vem utförs dem av?
Enhetstest eller komponenttest

* Utförs av utvecklarna

\
Integrationstest (inom system)

* Utförs av utvecklarna

\
Systemtest (mellan system och helheten)

* Utförs av testare eller systemtestare

\
Acceptanstest

* Utförs av användare på uppdrag av beställare
97
New cards
Beskriv processens tre faser, vad som händer…

1. Planering

Övergripande planering - skriver en testplan eller teststrategi.

Skriver ; testtfall, checklistor, skapar testmiljö

\

2. Genomförande

De planerade testerna genomförs utifrån testunderlag. Tester som misslyckas rättas och genomförs igen.

\

3. Uppföljning

* När alla test är godkända avslutas testen.
* Samla erfarenheter.
* Skriv testrapport.
98
New cards
SDLC innehåller?
Systemutveckling livcykel

\

1. Förändringsanalys
2. Analys
3. Design(utformning)
4. Realisering
5. Implementering
6. Förvaltning & drift
7. Avveckling
99
New cards
Vad står CMM för?
Capability Maturity Model
100
New cards
Vilka fem olika nivåer har CMM?

1. Initial
2. Repeterbar
3. Definierad
4. Styrd
5. Optimerande