Testing i smidigavtalen (SSA-S) Seniorrådgiver Mari Vestre, Difi Testdagen ODIN 24. september 2014. Mari Vestre: Cand Real i informatikk fra UiO 1985 Jobbet som prosjektleder, testleder, linjeleder Laget flere av Statens standardavtaler, inkl. Smidigavtalen Jobber nå med revisjon av avtalene Har både hatt rollen som Scrummaster som Product owner i ulike prosjekter Har jobbet med smidig både i internutviklingsprosjekter i anskaffelser Gløder for TEST!!!!!!!!!!!!! 1
Historien til Smidigavtalen Statskonsult begynte å jobbe med SSA-S i 2005 i forbindelse med en større revisjon av samtlige SSA-er Et uferdig utkast ble sendt på høring i 2006 Pga ressursproblemer ble ikke avtalen ferdigstilt, det uferdige utkastet ble publisert som et konsept i 2007 Det ble avhold arbeidsmøter om SSA-S med deltakelse fra forvaltningen i 2008-09 2011-versjon utarbeidet av Wikborg, Rein & Co på bestilling av Difi 2011-versjonen sendt på høring i februar mai 2012 Mars 2013 startet Difi opp arbeidet med ferdigstilling av avtalen 20. juni 2013 - Møte om status for smidigavtalen på Stratos Diskusjonsgruppe på Linkedin 26-30. august 2013 - Work shops med forvaltningen levererandører Desember 2013 - Juridisk kvalitetssikring av avtaleutkastet ved Wikborg, Rein & Co 15. januar 2014 - Avtalen publisert sammen med en kort veiledning til avtaleteksten. 14. april 2014 Ny versjon av avtalen, mer veiledning, inkl bilagsmaler Høst 2014 MooC/«lavbudsjett e-læringskurs» + tema i SSA-kurs 4. nov Intro + 8 korte filmer med følgende innhold: 1. Om Smidigavtalen 2. Gjennomføring av leveransen: 3. Gjennomføring av leveransen: Delleveransene 4. Gjennomføring av leveransen: 5. Endringshåndtering 6. Test 7. Exit, avbestilling, midlertidig stans 8. Vederlag bonus 2
Tradisjonell avtaleregulering: Omfang Kost Gjennomføring av tradisjonelle fossefallsprosjekter Spesifiseringsfasen Utviklingsfasen Installasjonsdag fremdriftsplan Prosjekt Detalj- Lev. godkj. detaljspek Prosjektdokumentasjon spesifisering Kvalitetssikring - revisjon 3
Hva ønsker offentlige kunder av en Smidigavtale? 1. En viss forutsigbarhet om hva de får Nødvendig for å få budsjettmidler Nødvendig pga anskaffelsesregelverket (innkjøpsfunksjonen) 2. Leverandøren tar et visst ansvar for resultatet Det offentlige har ikke kompetanse selv til å styre leveransen 3. Avtalen sikrer kvalitet i leveransene (Work shops om Smidigavtalen 26-30.8.2013) Smidigavtalen: Leverandørens ansvar Reguleres i avtalen Omfang Kundens ansvar 4
Hovedforskjellene mellom Smidigavtalen de andre SSA-avtalene for kjøp av IKT-utvikling: 1. Det inngås avtale tidligere i systemutviklingsprosessen Krav spesifiseres i tett samarbeid mellom Kunde Leverandør e styringsdokumenter etableres etter avtaleinngåelse oppdateres løpende 2. Avtalen er basert på smidig prramvareutviklingsmetodikk Metodikken er beskrevet i et eget bilag Fleksibilitet til å gjøre endringer innenfor rammene av metodikken, uten tradisjonelt endringsregime Det som utvikles aksepteres settes i drift etter hvert (test-, pilot- eller skarp drift) 3. Oppdelingen av avtalen sleveranser øvrige Delleveranser De ulike leveranseelementene i avtalen: Rutineutvikling Opplæring Behovsbeskrivelse For eksempel formulert som Epos Brukerhistorier utviklings- test-miljøer Krav (ikke-funksjonelle krav) For eksempel krav til: at teknisk plattform skal passe sammen med den som er beskrevet i Bilag 3 antall samtidige brukere ytelse sikkerhet 5
- Delleveranser V-modellen i ID-porten Sakstyper i relasjon til V-modellen Mål Evaluering av måloppnåelse Prioriterte behov Utviklingsoppgave Systemintegrasjonstest Krav Systemtest Defect Teknisk design Enhets- integrasjonstest Ansvar: Test Utførende: Utvikling 6
Ansvarsfordeling i ID-porten Sakstyper i relasjon til V-modellen Mål Prioriterte behov Ansvar: Test Utførende: Kravstiller Evaluering av måloppnåelse Krav Systemtest Defect Teknisk design Enhets- integrasjonstest Ansvar: Test Utførende: Utvikling V-modellen i Smidigavtalen Mål Evaluering av måloppnåelse Prioriterte behov Utviklingsoppgave Systemintegrasjonstest Krav Systemtest Defect Teknisk design Enhets- integrasjonstest Utviklingsoppgave Systemintegrasjonstest 7
Prosjektleder - Delleveranser Prosjektleder Testleder Prdukteier Testleder Scum-master Utviklingsteam utviklings-miljø - Delleveranser (Avtalens punkt 2.2.2) Inndelingen i Delleveranser skal være slik at det er mulig å teste prøve ut Delleveransene hver for seg. Leverandøren er ansvarlig for at den enkelte Delleveranse er satt sammen på en slik måte at den kan testes prøves ut, at det er tatt hensyn til avhengigheter. Leverandøren skal skriftlig varsle Kunden hvis Kunden treffer valg som er til hinder for test av delleveransen 8
- Delleveranser - Delleveranser 9
- Delleveranser - Delleveranser 10
- Delleveranser Godkjennings-kriterier - Delleveranser Enhetstest Integrasjonstest 11
- Delleveranser Leverandørens tester (Avtalens punkt 2.3.2) Leverandøren skal godtgjøre at Prramvaren ikke har flere feil enn det som er Akseptansekriteriene for Delleveransen. Leverandørens testing skal foregå som beskrevet i en i bilag Siste 5. Akseptansekriteriene for Delleveransen skal fremgå av en i bilag 5. Enhetstest Integrasjonstest - Delleveranser Enhetstest Integrasjonstest Leverandørens tester (Avtalens punkt 2.3.2) Dersom Leverandøren ikke kan godtgjøre at prramvaren har mindre feil enn det som er akseptansekriteriene for testen, skal leverandøren jobbe vederlagsfritt med å rette feilene frem til Akseptansekriteriene er Siste oppfylt. Delleveranse 12
- Delleveranser Enhetstest Integrasjonstest - Delleveranser Enhetstest Integrasjonstest 13
- Delleveranser Enhetstest Integrasjonstest Stans ved vedvarende feil (Avtalens punkt 2.3.4) Dersom Akseptansekriteriene ikke er oppfylt etter 3 runder med feilretting Retesting, skal prramvareutviklingen stoppes alle utviklingsressurser allokeres til feilretting Feilrettingen skal pågå frem til Akseptansekriteriene er oppfylt Leverandøren får ikke vederlag for denne feilrettingen Oppholdet i prramvareutviklingen innebærer ikke at det avtalte estimerte tidspunkt for av siste Delleveranse (som bl.a. er av betydning for sluttbonus) forskyves - Delleveranser Bonus for å levere med få feil En eventuell bonusordning skal fremgå av bilag 7, prisbilaget. Dersom det er avtalt bonus for å levere med få feil skal leverandøren få: Full bonus, dersom det ikke avdekkes feil i førsttestrunde Halv bonus dersom retest viser at alle feil som avdekkes i første testrunde er rettet. 14
- Delleveranser - Delleveranser 15
- Delleveranser Godkjennings-kriterier 2.6 16
Ikke-funksjonelle krav UiO, IFI, Inf 1050 Test av ikke-funksjonelle krav Er ofte ikke hensiktsmessig å gjøre før alt er levert Ytelse Sikkerhet Vedlikeholdbarhet Krever innleid spesialkompetanse Sikkerhetseksperter Spesialister på brukertesting Kan kreve ekstra utstyr, samarbeid med andre Ytelse Kapasitetstesting Ende-til ende-testing 17
De ulike leveranseelementene i avtalen: Rutineutvikling Opplæring Behovsbeskrivelse For eksempel formulert som Epos Brukerhistorier utviklings- test-miljøer Krav (ikke-funksjonelle krav) For eksempel krav til: at teknisk plattform skal passe sammen med den som er beskrevet i Bilag 3 antall samtidige brukere ytelse sikkerhet - Delleveranser Godkjennings-kriterier 18
- Delleveranser Godkjennings-kriterier Test i Smidigavtalen 19
Test i Smidigavtalen - Delleveranser Test i Smidigavtalen - Delleveranser 20
Test har en sentral plass i Smidigavtalen: En godt gjennomført teststrategi er kritisk suksessfaktor Leverandøren blir belønnet for å ta test alvorlig, straffet for ikke å gjøre det Testleder har en nøkkelrolle i hele gjennomføringen av avtalen 21