Kader & Belang van testen - dS+V Gemeente Rotterdam

Post on 12-May-2015

845 views 1 download

description

31-3-2009 Dutch presentation for the Service Management department at client dS+V Gemeente Rotterdam. About the importance of software testing.

Transcript of Kader & Belang van testen - dS+V Gemeente Rotterdam

12-04-23

Kader & Belang van testen

Gemeente Rotterdam dS+V

12-04-232

Waarom testen?

Goed testen kost tijd, geld, resources …

Dus testen is duur …

Maar “niet testen” …

Dit is pas duur!

12-04-233

4 June 1996 Ariane V

Oeps! Software-foutje.

Bedrijfsschade

12-04-234

“Uw rekening wordt binnen 2 weken opgeheven” i.p.v. “Prettige kerstdagen en een gelukkig nieuwjaar”

Computer Error Empties Millions from Bank AccountsSep 15, 2003  Computer Error Sends Wrong Man to CourtJune 2, 2003 Daklozen halen

100.000 euro uit pinautomaatDecember 2004

Bedrijfsrisico’s

12-04-235

http://catless.ncl.ac.uk/Risks

12-04-236

En software zit overal

12-04-237

Case: Test de pen

Bedrijf heeft 10.000 pennen besteld

Proefexemplaren zijn net geleverd

Jij moet de pen testen!

12-04-238

Wat is “Testen”?

Dit proces is gericht op:

het vinden van fouten

het aantonen van de mate van kwaliteit

het schenken van vertrouwen in het product

het geven van inzicht in risico’s

12-04-239

Testen is een proces dat inzicht geeft in en adviseert over de kwaliteit en de daaraan

gerelateerde risico’s

Wat wordt getest?

Software (applicatie)

maar ook:

Hardware

Systeemsoftware

Organisatie

Procedures

Documentatie

Implementatie

12-04-2310

Testobject = het te testen (deel van het) informatiesysteem

Kwaliteitskenmerken

beheerbaarheid

beveiliging

bruikbaarheid

connectiviteit

continuïteit

controleerbaarheid

flexibiliteit

functionaliteit

gebruikersvriendelijkheid

herbruikbaarheid

(geschiktheid)

infrastructuur

inpasbaarheid

onderhoudbaarheid

performance

portabiliteit

testbaarheid

zuinigheid

12-04-2311

Een kwaliteitsattribuut beschrijft een kenmerk van een informatiesysteem

Testvormen

12-04-2312

Een testvorm is een groep testactiviteiten met het oogmerk het informatiesysteem op een aantal

samenhangende (deelaspecten van) kwaliteitsattributen te controleren

Een regressietest is erop gericht om te controleren dat alle ongewijzigde onderdelen van een systeem nog correct

functioneren na het doorvoeren van een wijziging*

* opgeloste bevindingen zijn óók wijzigingen!

Voorbeelden:FunctionaliteitstestKetentest Load- en stresstestUsability test Hackerstest Regressietest

Testen en Kwaliteit

Kwaliteitszorg

Kwaliteitsbeleid

Kw

alit

eit

ssyst

eem

Testen

14

Testen en kwaliteitszorg

Voorkomen is beter dan genezen . . .

. . . maar niet alles is te voorkomen!

herstel

detectie

preventie

15

Maatregelen

Preventie Methoden, technieken, hulpmiddelen, standaarden, beheer,

metrics, ... Inrichten organisatie en selectie personeel Opleiden, coachen, betrekken, ...

DetectieToetsen (op tussenproducten)Testen (op eindproduct)

Herstel Herstellen FO, TO, programmatuur, AO-procedures Herinrichten organisatie, beheer, procedures

toetsen aan

toetsen aan

functioneelontwerp

realisatie

gebruik & beheer

wens, wet, beleid,

technischontwerp

kans, probleem

requirements

toetsen aan

16

Toetsen en het ontwikkelproces

Toetsen = het beoordelen van de tussenproducten in het systeemontwikkelproces

Technieken:• reviews• inspecties• walkthroughs

17

Testen en het ontwikkelproces

Testbasis

Testbasis = de informatie die het gewenste systeemgedrag definieert

Test-soorten

ontwikkel-tests

acceptatie-tests

systeem-tests

functioneelontwerp

realisatie

gebruik & beheer

wens, wet, beleid,

technischontwerp

kans , probleem

requirements

input voor

input voor

input voor

input voor

input voor

input voor

Testsoorten

Veel gehanteerde testsoorten:

Unittest (UT)

Unitintegratietest (UIT)

Systeemtest (ST)

Systeemintegratietest (SIT)

Functionele acceptatietest (FAT)

Gebruikersacceptatietest (GAT)

Productieacceptatietest (PAT)

12-04-2318

Ontwikkeltests

Systeem- / acceptatie-tests

Een testsoort is een groep van testactiviteiten die gezamenlijk worden uitgevoerd en aangestuurd

19

Testen is meer dan uitvoeren

Meten

Voorbereiden

Plannen

meten (40%)

voorbereiden (40%)

plannen (20%)

20

Wat kost ‘t eigenlijk?

In het algemeen wordt rond de 50% van het

systeemontwikkelingsbudget besteed aan testen

10-15%

ontwikkeltests

25%

systeemtest/functionele acceptatietest

10-15%

gebruikers- en productie-acceptatietest

Meer bij safety/mission-critical, onderhoud, etc.

Minder bij ‘risicoloze’ systemen

21

Wat levert testen op?

Minder schade door vinden (en herstellen)

van fouten vóór productieKnown errors

voorkomen ook (wat) schadeLager risicoVertrouwen ProjectvoortgangsinformatieHerbruikbare testware

No risk, no test

22

Wie test er?

OntwikkelaarsGebruikersBeheerders

én(Professionele) testers

Maar …Ontwikkelaar: - wil aantonen dat de applicatie werkt Tester: - wil aantonen dat de applicatie NIET werkt

23

Hoe testen?

Business Case

Resultaat

Wat wil de opdrachtgever bereiken?

Bijv. requirements

Risico

Zowel project- als productrisico

Tijd

Einddatum of vaste doorlooptijd

Kosten

Geld of uren

24

Eindresultaat van strategiebepaling

Risicoanalyse Teststrategie

Kenmerk/ Deelobject

RK Toetsen KT AT Impl

Functionaliteit

BRS (incl. Kern en VPL) A ●●● ●● ●●● I

BAGTotaal B ● ● ● I

BRS - Geometrie A ●●● I ●●● I

totaal B ●● ● ●● ●

Gebruiksvriendelijkheid B S I ●● ●

Performance

BRS (incl. Kern en VPL) C I ● I

BAGTotaal B I ●● I

Beveiliging C ● S

Inpasbaarheid B ● ●●● ●● ●

Continuïteit B ● ●● ●● ●

25

Gestructureerd testproces

Processen:

Mastertestplan, managen van het totale testproces

Acceptatie- en systeemtesten

Ontwikkeltesten

26

Mastertestplan, managen van het totale testproces

Fase Planning

Mastertestplan

Systeemtest

Ontwikkeltest

Acceptatietest

Toetsen

Extra aandacht voor:business driven testmanagementdefiniëren organisatie

Master-testplan

Testplan per testsoort

bewaken, rapporteren en bijsturen

uitvoeren

én fase Beheer

27

Acceptatie- en systeemtestenTMap faseringsmodel

S U A

Voorbereiding Specificatie Uitvoering Afronding

V

Planning

B

Beheer

P

I

Inrichting en beheer infrastructuur

28

TMap faseringsmodel met activiteiten

specificeren infrastructuurrealiseren infrastructuurspecificeren intake infrastructuurintake infrastructuurbeheren infrastructuurconserveren infrastructuur

specificeren infrastructuurrealiseren infrastructuurspecificeren intake infrastructuurintake infrastructuurbeheren infrastructuurconserveren infrastructuur

InfrastructuurInfrastructuur

V S U A

I

B

P

verzamelen testbasisopstellen checklistsbeoordelen testbasisopstellen rapport detailintake

verzamelen testbasisopstellen checklistsbeoordelen testbasisopstellen rapport detailintake

VoorbereidingVoorbereiding

opstellen specificatiesdefiniëren uitgangssituatiesspecificeren intake testobject

opstellen specificatiesdefiniëren uitgangssituatiesspecificeren intake testobject

SpecificatieSpecificatie

intake testobject (pretest)klaarzetten uitgangssituatieuitvoeren (her)testscontroleren en beoordelen

intake testobject (pretest)klaarzetten uitgangssituatieuitvoeren (her)testscontroleren en beoordelen

UitvoeringUitvoeringBeheerBeheer

beheren, bewaken, rapporteren, bijsturenbeheren, bewaken, rapporteren, bijsturen

vaststellen opdracht……toewijzen testtechnieken……fixeren testplan

vaststellen opdracht……toewijzen testtechnieken……fixeren testplan

14 a

ctivite

iten

Planning Planning

evalueren testprocesconserveren testwareevalueren testprocesconserveren testware

AfrondingAfronding

29

Ontwikkeltesten

Testsoorten

UT, UIT

Kenmerken

OT versus ST/AT

Context van ontwikkeltesten

waterval, agile, iteratief

Kwaliteitsmaatregelen

Gereedschapskist

Ondersteunende processen

Componenten

Bevat

Technieken

Hoe wordt getest?

Infrastructuur

Waar en waarmee wordt getest?

Organisatie

Door wie wordt getest?

30