Blogginlägg -

En testledares vardag

När vi utvecklar stora komplexa system som består av ”system av system” som i slutändan ska fungera tillsammans, är gränsytorna mellan alla ingående system som kuggarna i kugghjul som ska haka i varandra för att kunna driva kraften vidare för att uppnå önskad funktion.

Dessa gränsytor måste såklart fungera ihop och för att säkerställa det är systemintegrationstesterna en viktig aktivitet som jag tycker får alldeles för litet fokus när vi pratar agil utveckling och test i agila team. Den uppmärksamhet som test fått i de agila teamen med den insikten hur värdefullt det är att hitta felen så tidigt som möjligt är underbart att få vara med om.

Tyvärr stannar det ofta där, man nöjer sig med att verifiera att det egna teamets funktionalitet fungerar som det ska.

De specificerade gränsytorna testas ofta bara var för sig.

Teoretiskt så bör ju även integrationerna mot övriga system fungera om de olika teamens gränsytor är verifierade att de följer specifikationerna. Men, vad händer om teamet missförstått en del eller flera delar av ett gränssnitt? Eller, vilket är vanligt, att gränsytorna inte är tydligt specificerade?

För att upptäcka den sortens missförstånd så tidigt som möjligt måste man därför planera och säkerställa att viktiga gränsytor kan integrationstestas tidigt och gemensamt av de olika teamen som är involverade. Då krävs att de olika teamen ”går i takt”, att man t ex avser att leverera förändringar i gränssnitt A till sprint 1 och i gränssnitt B till sprint 2 osv.

Vem håller i taktpinnen?

När jag har varit testledare i projekt där utvecklingen sker i olika team har jag som projektets testledare tagit på mig arbetet att ta fram en integrationsplan som stämts av med de olika teamens planer för att få det att takta så bra som möjligt. Det är inte så svårt när det finns ett projekt som håller ihop all övergripande planering.

Men, hur gör man i förvaltning när det inte finns något projekt som håller ihop planeringen, utan endast ett gemensamt releasedatum och strategin är att utvecklingsarbetet ska ske agilt i mindre, självständiga team?

Det finns kanske en gemensam testmiljö att leverera till där man kan se att de olika delsystemen kan samexistera.

Oftast använder man stubbar och drivers för att ersätta system man har behov att integrera mot och inte förrän i slutet av sista iterationen (eller sprinten) genomför man, i bästa fall, systemintegrationstester när alla har utvecklat färdigt. Hittar man då fel (vilket man ofta gör) kan det vara komplicerat att rätta till och kan kräva mycket omtestning. Det blir ofta tidsnöd och om det inte är säkerhetskritiska system är oftast releasetidpunkten fast.

Som testledare tvingas man då ofta att prioritera bort vissa tester som helt enkelt inte hinner genomföras. Det är lika frustrerande varje gång det händer.

Hur gör vi för att förhindra sent upptäckta integrationsproblem i komplexa system när vi har ett agilt arbetssätt i små självständiga team?

Kort om författaren

Ingela de Waern har lång och bred erfarenhet av test och testledning av både små och stora komplexa system inom flera olika branscher. Hon har arbetat mycket med metodutveckling och utbildning inom test. Ingela är ackrediterad som lärare för ISTQB Foundation Certificate in Software Testing och ISTQB Advanced Level Test Analyst.

Ingela de Waern på LinkedIn - AddQ, din partner för test

Ämnen

  • Data, Telekom, IT

Kategorier

  • självständiga team
  • johan sandström
  • gui
  • systemintegrationstester
  • kvalitetssäkring
  • design
  • gränssnitt
  • stubbar
  • ingela de waern
  • testledare
  • addq

Regioner

  • Blekinge

Kontakter

Kennet Osbjer

Presskontakt VD +46 8 501 108 90