Teststrategin – Ett stöd till att lyckas med ditt systembyte

Att byta och implementera ett nytt system är en tidskrävande process för verksamheten. Och dessutom en process som omfattar flera kritiska moment som leder fram till ett beslut om man kan godkänna leveransen eller inte.

 

Även om implementeringen omfattar löpande tester genom hela projektet (vid arbetet med konfiguration, migrering, integration och utveckling) är det nödvändigt att genomföra en komplett och samlad testning av helheten inför driftsättningen. Det som oftast rubriceras som acceptanskontroll. Denna testning och kontroll genomförs primärt för att provtrycka systemet och de förändrade verksamhetsprocesserna innan det blir allvar. Men det är också viktigt att genomföra acceptanskontrollen av avtalsmässiga skäl. Acceptanskontrollen är normalt sett den milstolpe där den huvudsakliga ansvarsfördelningen mellan leverantören och kunden byter plats inför driftsättningen.

 

När så väl detta är sagt uppstår frågan hur man kan och bör genomföra testningen på ett adekvat sätt som passar verksamheten?

 

 

Att upprätta en teststrategi

Inför testningen är det projektorganisationens ansvar att upprätta en testplan för hur testningen ska genomföras. En plan som omfattar de system, data, gränssnitt, processer och leverabler som ska prövas och kontrolleras. Testplanen är ofta något som löpande förändras och uppdateras under projektet, som en följd av de nya insikter som uppstår under implementeringen. Att arbeta med en testplan är vanligt. Att arbeta med en teststrategi är dessvärre däremot inte lika vanligt.

 

Teststrategin är ett samlande ramverk som beskriver metod och modell för hur testerna ska verkställas samt vilka grundläggande riktlinjer och principer som ska tillämpas. Denna teststrategi, som sällan ändras, bör upprättas i ett tidigt skede under implementeringen, då den har inverkan på hur leveransens leverabler produceras och dokumenteras under projektets genomförande.

 

Vår erfarenhet är att det ofta saknas en formell teststrategi vid implementering av system. Konsekvensen är att testpersonalen snabbt dyker ned i detaljerade testprotokoll men med risk att helheten inte hänger ihop. Testarbetet inkluderar ett omfattande arbete med dokumentation och inte sällan blir dokumentationen så betungande att kvaliteten av testerna blir lidande. Med en väldefinierad teststrategi underlättar man underhållet av sin testplan och dokumentationen.

 

 

Byggstenarna i en teststrategi

En teststrategi bör baseras på och inkludera ett antal perspektiv och förutsättningar, varav några exempel lämnas nedan:

 

1. Testmiljöer

Riktlinjer och principer för hur man etablerar och underhåller den eller de testmiljöer som krävs under implementeringens genomförande samt inför den slutliga acceptanskontrollen.

 

2. Dokumentation

Riktlinjer och principer för vilken typ av dokumentation som ska upprättas och hur denna ska lagras och underhållas under projektets genomförande. Detta gäller så väl dokumentation av verksamhetens processer som dokumentation som direkt relaterar till testarbetet.

 

3. Testverktyg

Klargörande av vilka stödsystem och/eller verktyg som ska tillämpas för att genomföra och logga testerna och deras resultat.

 

4. Icke funktionella tester

Riktlinjer och principer för genomförande av tester som avser leverabler som inte är kopplade till funktionalitet, data, integration eller migrering. Det kan avse exempelvis teknisk och användarrelaterad säkerhet, användarvänlighet, prestanda, support- och hjälptexter och systemunderhåll.

 

5. Automation

Beskrivning av metod och modell för att kunna tillämpa automation av tester i stor skala vilket inkluderar såväl volymtester som återskapande av testdata inför upprepade tester.

 

6. Riskhantering

Riktlinjer för hur man identifierar, mitigerar och följer upp risker inför och under testarbetet.

 

7. Program och projektsamverkan

Riktlinjer för hur parallella och relaterade men separata projekt i ett program bör samordnas inför och under test för att eftersträva effektivitet och undvika försenande beroenden.

 

 

Teststrategin bör utgå ifrån de förutsättningar som finns inom organisationen för att genomföra testarbetet. Det är bra att utgå ifrån en mall men den bör alltid anpassas till den enskilda kunden och de specifika förutsättningar som råder inför projektet. En väldefinierad teststrategi ger projektledningen stöd för styrning och uppföljning samt för att kunna mäta framdriften av såväl testarbetet som projektet i stort.

 

 

Att etablera sin teststrategi inom organisationen

Det är viktigt att man etablerar sin teststrategi inom organisationen för att därmed säkerställa att den tillämpas och efterlevs under projektet. Även om alla förstår betydelsen av att genomföra tester av ett nytt system är förståelsen för struktur, samverkan och dokumentation inte lika utbredd.

 

En av de större utmaningarna under testarbetet är att det nya systemet medför eller förutsätter förändring av verksamhetens processer. Det uppstår lätt en konflikt mellan vad som kan betraktas som fel i betydelse att systemet avviker från förväntad funktionalitet samt fel i betydelse att systemet avviker från förväntat flöde i verksamhetens processer. Per definition kan det vara så att systemets funktionalitet uppfyller ställda krav samtidigt som systemets funktionalitet förefaller helt orimligt till vad kunden anser är en godtagbar och effektiv process. I dessa fall är en väl utformad teststrategi ett bra stöd för hur förändringsarbetet ska fångas och ombesörjas under testningen.

 

I större projekt (eller program) kan man med fördel provtrycka sin testtrategi inför det omfattande testarbetet som kommer i samband med acceptanskontrollen. Detta kan ske genom att man tillämpar sin teststrategi på en avgränsad del i ett tidigt skede av projektet, med syfte att kunna utvärdera effekterna av de principer och riktlinjer som fastställts.  Det ger också indikationer för hur det praktiska arbetet kommer att fungera vid en uppskalning till en större testorganisation.

 

 

Teststrategi till förvaltningsfasen

Även om teststrategi oftast tillämpas vid implementering av ett nytt system är det likväl en viktig grundsten i den löpande vardagen vid förvaltning och utveckling av ett befintligt system. Och inte minst sett till den förändring som sker (och krävs) vid övergång till molnbaserade system.

 

Att förvalta molnbaserade system som uppgraderas flera gånger per år kräver en annan typ av förvaltning än ett system som uppgraderas med några års mellanrum. Och därmed krävs även en annan typ av teststrategi för att säkerställa att nya och frekventa versioner kan implementeras utan störningar på den ordinarie verksamheten. Buggar och störningar förekommer givetvis även i det scenario man använder molnbaserade system.

 

 

Börja med att skapa en grundläggande teststrategi

Oavsett om du står inför att implementera ett system eller redan har ett system som kommer att vara kvar i ett antal år är det värt arbetet att ta fram en teststrategi. Utöver att det skapar insikt om samband och förutsättningar kommer det att bidra till ett bättre förvaltningsarbete i vardagen.

 

En väl definierad teststrategi skapar förutsättningar till en störningsfri vardag samt stödjer det kontinuerliga arbetet till att utveckla och förbättra verksamheten. Samtidigt ska teststrategin säkerställa att det löpande testarbetet inte kväver organisationen i ett överflöd av dokumentation.

 

Att lyckas med ett systembyte handlar om att lösa en komplex ekvation bestående av många element varav testerna är en av de viktigare komponenterna. Att ta fram en väl definierad teststrategi är en av dessa kritiska pusselbitar som kräver omsorg, fokus och tid.