Testprocesser og målinger i test af Jesper Schultz, Nykredit

24
Testprocesser og målinger i test Jesper Schultz, Nykredit 19. november 2009

description

Oplægget blev holdt ved et seminar i InfinIT-interessegruppen Softwaretest den 19. november 2009. Læs mere om interessegruppen på http://www.infinit.dk/dk/interessegrupper/softwaretest/softwaretest.htm

Transcript of Testprocesser og målinger i test af Jesper Schultz, Nykredit

Page 1: Testprocesser og målinger i test af Jesper Schultz, Nykredit

Testprocesser og målinger i test

Jesper Schultz, Nykredit

19. november 2009

Page 2: Testprocesser og målinger i test af Jesper Schultz, Nykredit

Agenda

”TMM måling og vores arbejde med

at måle kvaliteten af den test der

køres i projekter i Nykredit”

• TMMi 2009

– Baggrund

– Resultater

– Indsatsområder

– Eksempler

• Indsatsområder

• Værktøjer

• Måledata og tal

Page 3: Testprocesser og målinger i test af Jesper Schultz, Nykredit

3

TMMi 2009…why bother?

• Høj modenhed = færre fejl

• Kilde: Erik van Veenendaal, Eurostar 2008, ISTQB VP og TMMi Vice-chair(KLOC = Kilo Lines Of Code)

(FP = Function Points)

(ISTQB = International Software Testing Qualifications Board)

Page 4: Testprocesser og målinger i test af Jesper Schultz, Nykredit

4

TMMi 2009Baggrund

• TMMi (Test Maturity Model integration)

• Komplementær til CMMi (Capability Maturity Model integration)

• CMMi er en procesforbedringsmodel for industrien, herunder også softwareudvikling.;

men har ikke specielt fokus på testområdet

• TMMi er testmiljøets model for hvordan man specifikt forbedrer testarbejdet i sw.industrien

Page 5: Testprocesser og målinger i test af Jesper Schultz, Nykredit

5

TMMi 2009TMM-assessment 2005 - modellen

Level 1: Initial

Level 2: Structured test processes

Level 3: Integration

Level 4: Management & Measure

Level 5: Optimization & Quality

Page 6: Testprocesser og målinger i test af Jesper Schultz, Nykredit

6

TMMi 2009TMM-assessment 2005 - resultatet

Delområder

0

10

20

30

40

50

60

70

80

90

100

Mål

Planer

Testtekn

ikker

Testmiljø

Konfig.s

tyr

Fejlrapporte

r

Org

anisation

Uddannelse

Inte

gratio

n

Egenskaber

Opfø

lgning

Værk

tøje

r

Reviews

Risikoanalyse

Målin

ger

Testbarh

ed

Udvikling

Optim

ering

Vidensdelin

g

Kvalitets

kontro

l

Årsagsa

nalyse

Færre

rep.

Pro

cen

t

83 80

52

26

0

10

20

30

40

50

60

70

80

90

100

Niveau 2 –

Struktureret

forløb

Niveau 3 –

Integration

Niveau 4 –

Styring og

måling

Niveau 5 –

Optimerende,

præventiv test

Page 7: Testprocesser og målinger i test af Jesper Schultz, Nykredit

7

TMMi 2009TMMi 2009 – hele modellen

Page 8: Testprocesser og målinger i test af Jesper Schultz, Nykredit

8

TMMi 2009Eksempel: Level 2 formelt

• TMMi level 2 Managed

• Test Policy and Strategy

• Officiel og godkendt overordnet model der udstikker rammerne for testarbejde og kvalitetssikring i

koncernens udviklingsaktiviteter. (Nykredits Testmodel i NUK).

• Test Planning

• Teststrategien, risikobaseret test med bla. funktionelle, arkitekturmæssige, non-funktionelle

(brugervenlighed, effektivitet, vedligeholdesvenlighed, pålidelighed) og forandringsmæssige

(regression-) risici.

• Estimering og opfølgning på planer, ressourcer mv.

• Test Monitoring and Control

• Etabler mål for selve testarbejdet, accepttest for selve testen og følg op på begge mål-typer og

foretag nødvendige planlægningsmæssige korrektioner for at opfylde mål og accepttestkriterier. (hhv.

Teststrategi og Quality Center).

• Test Design and Execution

• Identificer testcases og tilhørende testdata ud fra kravstillelsen.

• Prioriter testcases, lav specifik testplan og gennemfør testfasen med opfølgning på testresultater og

korrigerende handlinger og gen-test.

• Test Environment

• Etabler og vedligehold tilstrækkelige og robuste testmiljøer, incl. opdaterede testdata.

• Administrer og koordiner brug og tilgængelighed af miljøerne ift. brugerne (projekter).

(Udviklingsmiljøer og IT-infrastruktur).

Page 9: Testprocesser og målinger i test af Jesper Schultz, Nykredit

9

TMMi 2009Eksempel: Level 2 oversat

• TMMi level 2 Managed

• Test er en specifik proces som er noget andet end debugging.

• Testfasen opfattes af mange interessenter fortsat som en fase der kommer efter kodefasen.

• Testarbejdet er baseret på en risikovurdering.

• Der arbejdes ud fra veldefinerede testplaner.

• Testarbejde behandles som en projektdisciplin med opfølgning og korrigerende tiltag ift. testplaner og -mål.

• Resultater og status fra testarbejdet er tilgængelige for projekt- og ledelsesrapportering.

• Der findes velbeskrevne procedurer for at komme fra kravspecificering til testcases.

• Test er delt op i Modul-, Integrations-, System- og Accepttest, med klare mål for hver testfase.

• Testmiljøer er tilgængelige, robuste og opdaterede.

Page 10: Testprocesser og målinger i test af Jesper Schultz, Nykredit

10

TMMi 2009Eksempel: Level 3 formelt

• TMMi level 3 Defined• Test Organization

• Testorganisation med egen ledelse og budget.

• Fastlagte opgaver, ansvar og kompetencer for testere og testledere (managers, red.).

• Test Training Program

• Der er et uddannelsesprogram i test.

• Der er mål for uddannelsen og evaluering af uddannelsen.

• Test Life Cycle and Integration

• Test er integreret i udviklingsforløbet.

• Der er reelt samarbejde mellem testere og udviklere.

• Non-Functional Testing

• Der anvendes en standard for beskrivelse af egenskaber, fx ISO 9126.

• Den enkelte egenskabs relevans i testforløbet vurderes.

• Der bruges teknikker til test af hver egenskab.

• Egenskabernes endelige niveau måles og der afrapporteres på egenskabstestens resultater.

• Peer Reviews

• ...

Page 11: Testprocesser og målinger i test af Jesper Schultz, Nykredit

11

TMMi 2009Eksempel: Level 3 oversat

• TMMi level 3 Defined (tidligere Integration)

• Test er ikke længere noget der blot ligger efter kodning; men er fuldt integreret ind i udviklingsdisciplinerne.

• Testplanlægning startes i de tidlige projektfaser i form af en 'master test plan’.

• Der foregår en løbende videreudvikling og kvalitetssikring af testmodel og –processer.

• Der findes en specifik Testorganisation og test-uddannelse(r).

• Test opfattes som en profession

• Testcases håndteres og forvaltes i et centralt værktøj.

• Der er værktøjer til at understøtte testaktiviterne.

• Formelle reviewprocesser er implementeret; men opfattes endnu ikke som en integreret del af

testprocessen.

• 'Test professionals' er med til at review'e kravspecifikationer.

• Fokus udvides fra rent funktionel test (level 2) til også at inkludere non-funktonel test (brugervenlighed

og/eller pålidelighed/robusthed).

• Udviklings- og testakviteter følger guidelines og procedurer nøje (i modsætning til level 2).

• Peer reviews ? (Spørgsmål om uddybelse sendt til TMMi-foundation og Softwaretest 10. marts 09)

Page 12: Testprocesser og målinger i test af Jesper Schultz, Nykredit

12

TMMi 2009Eksempel: Level 4 formelt

• TMMi level 4 Management and Measurement

• Test Measurement

• Test er en gennem-defineret, grundlæggende og målbar proces.

• Organisation og projekter fastlægger kvantitative mål for kvalitet og proces-effektivitet og bruger disse

mål til at styre efter.

• Product Quality Evaluations

• Mål for produktkvalitet og proceseffektivitet findes i målbare termer.

• Der samles løbende op på disse mål og de indgår i organisationens ’fact based’ decision making.

• Advanced Peer Reviews

• Review og peer inspektion betragtes som et naturligt element i Testarbejdet og bruges til at måle

dokument-kvalitet.

• Reviews anvendes til i praksis at sikre bestemte forud definerede kvalitetsniveauer.

• Produkter/Software/Løsninger reviewes efter kvantificerbare kvalitets-kriterier, f.eks. stabilitet,

usability, vedligeholdelsedgrad.

• Test består af alle livscyklus-aktiviteter der drejer sig om at kontrollere/evaluere produkter og

tilhørende work products.

Page 13: Testprocesser og målinger i test af Jesper Schultz, Nykredit

13

TMMi 2009Eksempel: Level 5 formelt

• TMMi level 5 Optimization

• Defect prevention

• Fra at Test var en metode til at finde fejl, er Test nu en metode til at undgå fejl.

• Test Process Optimization

• Statistiske målinger driver forbedringer af testmodellen (Test process). Der opsamles ’hårde data’ på

f.eks. konfidensniveauer, troværdighed, pålidelighed (confidense levels, trustworthiness, reliability).

• Værktøjer understøtter Test mest muligt: Testdesign og –planlægning, Testudførsel, Regressionstest,

Testcasemanagement, Defectshåndtering mv.

• Quality Control

• QC er en selvstændig del af Testmodellen og metodeapparatet og forfiner Level 4’s opsamling af

’hårde’ data fra projekterne og processen/modellen.

Page 14: Testprocesser og målinger i test af Jesper Schultz, Nykredit

14

TMMi 2009TMMi 2009 – resultatet

V

V

V

V

X

V

V

V

X

V

X

X

X

X

X

X

Page 15: Testprocesser og målinger i test af Jesper Schultz, Nykredit

15

TMMi 2009Hvad nu?

• Vi har udfordringer på følgende områder:

1. Projekterne oplever stadig problemer med Testmiljøerne

2. Vi har ikke tilstrækkeligt fokus på test af non-funktionelle krav

3. Hvor meget Modul/Unittests gennemføres og dokumenteres vides ikke i tilstrækkelig grad

• Hvad gør vi?

1. Udviklingsmiljøer og IT-infrastruktur har pr. januar 2009 overtaget det fulde ansvar for testmiljøerne inklusive

indhold (data), forvaltning, opsætning, forretningsgange og administration.

Der er allerede iværksat en række tiltag, og flere er planlagt.

2. TestKompetenceCentret er i færd med at opdatere metodeapparatet med de nødvendige beskrivelser af

processer, værktøjer og eksempler mht. test af non-funktionelle krav.

Herefter vil viden om test af non-funktionelle krav blive udbredt i ITU i løbet af 2009 og -10.

3. Modultest udføres allerede – det er opfølgning og styrbarhed, der skal forbedres.

Det er primært en holdningsændring der skal til, og TKC har påbegyndt dette arbejde maj -09 og forventer et

tilfredsstillende metodeapparat med tilhørende processer inkl. uddannelse og udbredelse i løbet af 2009-10.

4. Vi ønsker at forstærke arbejdet med udvalgte områder fra niveau 4/5 i TMMi-modellen.

I første omgang fokuserer vi på ’Peer review/Advanced peer review’

Page 16: Testprocesser og målinger i test af Jesper Schultz, Nykredit

16

TMMi 2009…lidt af hvert

• En smule:

• Metodeapparat, generelt

• Metodeapparat, specifikt

• Advanced peer review – planer og tiltag

• Hvordan holder vi styr på projekterne og data?

• Hvilke data får vi ind?

• Hvordan ser resultaterne ud, og hvad er tendenserne?

• …og er vi så færdige?

Page 17: Testprocesser og målinger i test af Jesper Schultz, Nykredit

TMMi 2009Eksempler - metodeapparat

Page 18: Testprocesser og målinger i test af Jesper Schultz, Nykredit

18

TMMi 2009Eksempler - metodeapparat, test af non.funk. krav

SLUT

Page 19: Testprocesser og målinger i test af Jesper Schultz, Nykredit

TMMi 2009 Eksempler: Kvalitetssikringskonceptet (adv. peer review)

Behandling af reviewresultatet

IA review:

- Formelle krav

overholdt

- ’De 10 bud’ /

IT-strategi /

Rammepapir /

Koncernovervejelser

- Plan og leverancer

- Services

Teststrategi

review

- Formelle krav

overholdt

- Testplan og

testindhold

PI-review

- Formelle krav

overholdt

- Services

- Arkitektur, løs-

ning og interface

Optionelle reviews (eks.):

- Begrebsmodel - Testcases - Usecases

- Arkitektur/infrastruktur - Kodereview

PU-review

- Formelle krav

overholdt

- Services

- Dokumentation

SA – screening:

- KUDV-involve-

ring/allokering

- Tidlig eskale-

ring

Kvalitetsplan

Projekt-specifikt-review

Page 20: Testprocesser og målinger i test af Jesper Schultz, Nykredit

TMMi 2009 Eksempler: Opfølgning og indhentning af data

Page 21: Testprocesser og målinger i test af Jesper Schultz, Nykredit

TMMi 2009 Eksempler: Kvalitet - Rå-data fra projekterne

Page 22: Testprocesser og målinger i test af Jesper Schultz, Nykredit

TMMi 2009 Eksempler: Kvalitet – Resultater (og tendenser)

Page 23: Testprocesser og målinger i test af Jesper Schultz, Nykredit

TMMi 2009

• Spørgsmål?

Page 24: Testprocesser og målinger i test af Jesper Schultz, Nykredit

TMMi 2009

• Slut…