1. Testroll i förändring
Per Widström, Anders Timmerås
Varje år bjuder vi in våra kunder till tre inspirationsdagar där vi lyfter fram de mest
intressanta IT-frågorna med fokus på strategi, teknik eller kommunikation. Dagarna
inleds med en intressant och aktuell huvudföreläsare. Därefter bjuder vi på vår
specialistkompetens i block med parallella seminarier som hör till dagens tema.
2. Om oss
Per Widström
– per.widstrom@sigma.se Lägg gärna
– Jobbar på Sigma i Göteborg in ett foto
– Testledare/Testspecialist sen 2001 med specialitet inom testautomatisering om du vill
– Arbetat med bland annat Danaher Motion, Ascom, Astra, Siemens
Anders Timmerås
– anders.timmeras@sigma.se
– Jobbar på Sigma i Göteborg
Lägg gärna
in ett foto
– Testledare/Testspecialist sen 1999 med specialitet inom testledning
om du vill
– Arbetat med bland annat Ericsson, Volvo, Posten IT, Telia
Varje år bjuder vi in våra kunder till tre inspirationsdagar där vi lyfter fram de mest
intressanta IT-frågorna med fokus på strategi, teknik eller kommunikation. Dagarna
inleds med en intressant och aktuell huvudföreläsare. Därefter bjuder vi på vår
specialistkompetens i block med parallella seminarier som hör till dagens tema.
3. Då – Nu - Framtid
Igår
– Vattenfall
– Testgruppen ansvarar för test
– Klientbaserad mjukvara
Idag
– Agilt
– Hela utvecklingsgruppen tar ansvar för kvalitén
– Webbaserad mjukvara eller klient/server
– Appar för olika plattformer
Imorgon
– Agilt?
– Molnbaserad mjukvara ej beroende av plattform (HTML5)?
– Vad blir testarens roll?
4. Kontrollera kvalitet eller skapa kvalitet?
Förebygga hellre än Upptäcka
Quality Assurance och/eller Test?
Andra faktorer än test som förebygger kvalitetsproblem?
– Tydliga och detaljerade kravdokument, specifikationer etc.
– Rätt kompetens på rätt plats
– Styrning och uppföljning
– Kommunikation
Hur kan test förebygga kvalitetsproblem?
– Påverka ovanstående
– Eller kanske jobba med test på ett annat sätt…
5. Fler faktorer som påverkar mjukvarukvalitet
Valda lösningar - Teknisk komplexitet
Projektstorlek/Antal utvecklare
Geografiskt distribuerade projekt
Geografiskt distribuerade grupper
Antal utvecklare per uppgift
Kommunikation med kunden under utvecklingsfasen
Mognad/kunskap hos testorganisationen
Projektbudget för kvalitetsstyrning/kvalitetssäkring
Prioritering av tid/kost/kvalitet
6. Andra faktorer som påverkar testrollen
Nya projektstyrningsmetoder – t.ex. Agila Metoder
Ny teknik – t.ex. mobila lösningar
Ny teknik – t.ex. nya integrationstekniker
Ny teknik – nya verktyg
Nya sätt att testa – t.ex. Crowd Source Testing
7. JUST NU!
Plattformsförändring – Dator / Mobila enheter
– Många nya operativ
– Nya sätt att använda systemen/applikationerna
8. Mobilitetsutmaningar som påverkar test
Any Device
– Testa på riktiga devices
– Testa på emulatorer
Mobilnät
– 400 olika operatörer worldwide
– Olika tekniker (GSM, 3G, 4G, WiFi)
– Olika tekniker för att hantera mobil datatrafik påverkar slutresultatet
– Möjlighet till Remote Real Device As a Service / Crowd Source Testing
Automat-test
– Antalet devices gör att man behöver ligga på en abstraktionsnivå som ej påverkas av menyer etc.
– Spidering/Crawling of mobile web sites
9. Ytterligare faktorer som kommer i framtiden
Ökad mognad av yrket
– Ökade kompetenskrav
– Nödvändighet att specialisera sig (ännu mera)
Effektivare och mer lättanvända verktyg
Återanvändbara testfall och miljöer genom virtualisering
Förbättrad visualisering av test/kvalitet progress
10. Faktorer som förbättrat SW de senaste åren
Automatiska uppdateringar (man löser buggar utan att användaren märker det)
Utrullning i molnet
Reducering av beroenden
Eleganta programspråk
Dagliga byggen
11. Testarens förhållningssätt till dessa faktorer
Det berör inte mig…
Jag tar det när det blir aktuellt i mitt projekt
Eller: Jag vill vara förberedd för att kunna vara med i de intressanta projekten i
framtiden
12. Schools of testing
Agile – Test Assisterar programmering
Analytical – Ser test som ett matematiskt problem
Context Driven – Val av metod beror på sammanhang
Factory – Systematiskt ta fram test-artefakter
Quality Control – Försöker lösa problemet före test
James Bach
13. Komplettera din testkompetens!
Gå på föredrag/konferenser Läs böcker, bloggar och test-siter
Quality Process Skills Other Management Skills
Mobile Testing Skills
Test Automation Skills Test Management Skills
Arbeta med olika typer av
Arbeta med olika typer av verktyg
branscher/kunder
Agile Testing Skills
Exploratory Testing Skills Integration Testing Skills
ISTQB Foundation
Test Design Skills
14. Tänkbara inriktningar
Testautomatisör / Framework Developer
Mobile Test Specialist
Agile Tester (Exploratory tester/Testautomatisör)
Testledare / Scrum Master (Testledare – application level)
Testledare – program level
Quality Manager
15. Hur gör Google?
Strategiskt Mål: ”Prevention over Detection”
”Quality is a development issue, not a testing issue”
Test - ”It’s gotta be an engineering role”
Varje utvecklare förväntas utföra sin egen testning
Roles:
– Software Engineer (SWE)
– Software Engineer in Test (SET)
– Test Engineer (TE)
Dr James Whittaker, ex Google
16. Hur gör Google? Forts.
5 stadier av byggen
– Canary builds – ej för release – bara för experimentell användning
– Dev builds – byggen som används av utvecklare i deras dagliga arbete
– Test builds – för interna ”dog food testers”
– Beta builds – för extern exponering
– Release builds – riktiga releaser utan Beta-taggning
17. Hur gör Google? Forts.
Automatisera om det går att automatisera
”One testineer enabling a thousand testers”
18. Gör Google rätt?
I deras sammanhang är troligen svaret ja
Varför?
– Time to market extremt viktigt
• Kräver mycket test på kort tid i varje iteration - testautomatisering
– Ständigt nya releaser
• Kräver mycket test i varje ny release – testautomatisering
– Allmängiltiga produkter gör det möjligt att jobba ”brett” med interna/externa testare
19. Kan DU göra som Google?
Helt och hållet? - Det beror på…
– Typ av mjukvara
– Storlek på projekt / Antal förväntat releaser efter Go-Live
Delvis? – Absolut!
– Fundera på hur er mjukvaras produktlivscykel ser ut avseende användning, releaser etc.
– Fundera på om du har några interna test-kandidater, kan du använda crowdsource testing?
– Fundera på hur du kan få mer feedback från slutanvändarna före release
20. Faktorer och hur de påverkar test i framtiden
Test Developers needed
Daily Built
Elegant The Cloud
Program Test/Quality
Less Languages Managers
Performance
testing needed Globalization Testers
needed needed
Reduction of Higher degree Mobility
dependencies of integration
and complexity
Testers needed
22. Framtiden för testaren i Västsverige
Agila metoder är här för att stanna
Utvecklarna kommer att göra en del av ditt nuvarande jobb
Mobilitet är redan på väg att bli vardagsmat
Testledarrollen kommer inte att försvinna men förändras
– Att tillföra värde genom QA kommer att vara nödvändigt
Testarrollen kommer inte att försvinna men ev. minska i mängd
Viktigt att hitta sin nisch!
23. Frågor?
Varje år bjuder vi in våra kunder till tre inspirationsdagar där vi lyfter fram de mest
intressanta IT-frågorna med fokus på strategi, teknik eller kommunikation. Dagarna
inleds med en intressant och aktuell huvudföreläsare. Därefter bjuder vi på vår
specialistkompetens i block med parallella seminarier som hör till dagens tema.
Editor's Notes
#3: Per/AndersSkiss på uppläggDå – Nu – SenKontrollera eller förebygga?Faktorer som påverkar kvalitet/testFaktorer som förbättrat SW-kvalitet de senaste årenTestarens förhållningssättSchoolsoftestingKomplettera din testkompetens!Tänkbara inriktningarHur gör Google?Vår egen framtidsspaning
#4: PerÖvergång: Vad blir testarens roll? Ja, vi skall titta på lite olika faktorer som påverkar testrollen och lite olika förhållningssätt man som testare kan ha för att hantera dessa faktorer.
#5: AndersÖvergång: Eller kanske jobba med test på ett annat sätt, vi ska titta lite på exempel på hur man kan jobba på andra sätt om en stund, men först ska vi titta på olika faktorer som påverkar kvaliteten i mjukvara idag samt faktorer som påverkar testrollen
#6: PerÖvergång (slutet): En del av de här faktorerna kan man som testare kanske inte påverka men en del har man möjlighet att ha inflytande över, t.ex. kommunikation med kunden under utvecklingsfasen, mognad/kunskap hos testorganisationen och projektbudget för kvalitetsstyrning/kvalitetssäkring och de faktorerna är det viktigt att man också försöker påverka på olika sätt. Vi ska också titta på faktorer som påverkar själva testrollen.
#7: PerKommentar: Ta med exempel:Agila metoder – SCRUM, Kanban etc.Mobila lösningar – Nativeappar, Web appar, kopplingar till Enterprise-systemIntegrationstekniker – XML, Webservices etc.Nya verktyg – Verktyg för testledning, testautomatisering, inspelning av testkörningar etc.Crowd Source Testing – hot eller möjlighet för testaren? Möjlighet!Övergång: Förutom dessa faktorer så pågår det just nu en stor förändring av förutsättningarna för testaren: Nästa slide
#8: PerÖvergång (Slutet): Vi ska titta lite på de olika utmaningar som följer med denna utveckling: Nästa slide.
#9: AndersAnyDeviceTesta på riktiga devicesFördel: Miljön blir så nära exakt som den riktiga användarmiljön, inkl. alla begränsningar och egenheterFördel: Miljön blir så nära exakt som den riktiga användarmiljön, inkl. alla begränsningar och egenheterNackdel: Driver kostnad ifråga om devices, abonnemang och testresurserNackdel: Svårt att få utrymme till diagnostik på en del typer av devices (mobiler)Testa på emulatorerFördel: EkonomiFördel: DiagnostikNackdel: Kan ej generera alla begränsningar och egenheterNackdel: Svårt att se om det blir exakt som man tänkt sig grafiskt.Mobilnät400 olika operatörer worldwideOlika tekniker (GSM, 3G, 4G, WiFi)Olika tekniker för att hantera mobil datatrafik som påverkar slutresultatetMobile Web Proxies som begränsar hur, när och om du kan accessa specifika siterTranscoding som skalar ner vanlig web för att passa mobilerBorttagning av http-headers som kan påverka funktionalitet och/eller device-anpassningarNetwork BypassRemote Real Device As a ServiceAutomat-testAntalet devices gör att man behöver ligga på en abstraktionsnivå som ej påverkas av menyer etc.Spidering/Crawlingof mobile web sites
#10: AndersÖvergång 1 (till denna slide): Hur ser då framtiden ut för testyrket – vilka ytterligare faktorer förutom de nämnda kommer att påverka oss?
#11: AndersÖvergång: Enligt James Whitakerpå Google såärdet I huvudsakgenomföljandefaktorersommjukvarukvalitetharförbättrats de senasteåren…Förstå James rätthär – detgårinteattsläppa en högkvalitativproduktutanattgöraett bra testarbete, men detäringenskillnadjämfört med hurdetvarförnågraår sedan. Ovanståendefaktorerärsakersomändratsochblivitvardagsmatnumeraochsomhar haft en storpåverkanpåkvaliteten. Att fundera på för oss testare: Vad kan vi göra för att VI ska komma med de avgörande insatserna de kommande åren?
#12: PerÖvergång: Vi har pekat på en lång rad faktorer som påverkar testrollen på olika sätt och frågan är hur man ska förhålla sig till de här faktorerna.
#13: AndersÖvergång: För att veta hur man ska förhålla sig till de faktorer vi nämnt kan det vara värt att lyssna lite på en av våra favorit-testgurus, James Bach. James har i en bloggdiskussion där han förespråkar Context Driven testapproach beskrivit de olika testinriktningarna på följande sätt:Schoolsoftestingaccordingto James Bach. Agile (the only other school that names itself) sees testing as an adjunct to programming, preferably automated. They accept that exploratory testing is a good thing, but don't feel that there are any special testing skills that deserve or require development.Analytical (mainly academics) see testing as a fascinating mathematical problem that they are content to solve in well-bounded research exercises, and then hope to scale up.Context Driven (James school) The value of any practice depends on its context.There are good practices in context, but there are no best practices.Good software testing is a challenging intellectual process.Only through judgment and skill, exercised cooperatively throughout the entire project, are we able to do the right things at the right times to effectively test our products.Factory (the biggest school) sees testing as a matter of systematically manufacturing testing artifacts. They focus on documentation, metrics, and detailed instructions intended to control tester behavior. They love automation. T-Map and TPI are great examples of the factory school in action.]Quality Control sees testing as an admission of process failure. Someone in the Quality Control school of testing keeps reminding everyone that bugs must be prevented, rather than found. They are testers but don't want to be testers.Slutsats: Context Driven känns som en självklar slutsats men ur ett kompetensperspektiv behöver man behärska metoder och verktyg använda av de andra skolorna, såsom agila metoder, ISTQB-terminologi, angreppssätt för att styra kvalitet före test etc.
#14: AndersÖvergång: Ska man då förhålla sig strikt till James SchoolsofTesting när man kompetensutvecklar sig? Jag ser det som så att om man är medveten om inriktningarna och de kompetenser som behövs för att kunna följa respektive inriktning så kan man också välja bland kompetenserna på ett förnuftigt sätt. Om man ska vara en fullfjädrad Context Driven Tester så behöver man ju egentligen också behärska alla delkompetenser mer eller mindre, samt nyttja dem (eller ta hjälp av personer som kan dem) när det är lämpligt med avseende på sammanhanget. Vilka delkompetenser kan då vara bra att kunna och vad bör man utveckla sig inom för att bli en riktigt bra testare?
#15: PerÖvergång: Man lever dock hela tiden med problematiken att det är svårt att bli bäst på allt. Det kan vara bra att börja fokusera på en inriktning som gör att man kan välja bort några av byggklossarna att bygga sin kompetens. Här är några tänkbara inriktningar!
#16: AndersÖvergång: Sigma besökte testkonferensen EuroSTAR i slutet av förra året som hölls i Manchester i England. Där var en av de mest uppmärksammade talarna James Whittaker från Google. Troligen framförallt för att han rörde upp en del damm och känslor hos åhörarna genom det sätt som Google jobbar med test. Vad är det då som Google gör som sätter testarnas känslor i svallning? Vi ska titta lite närmare på det!
#17: PerÖvergång: För att få tidig feedback om kvalitet så jobbar Google med ett antal stadier av sina byggen som kvalitetssäkras på olika sätt.
#18: AndersÖvergång: Vidare så arbetar man på Google mycket strukturerat med automatiserade tester – ”Test is an engineeringrole, Engineeringmeanscoding, period!” Ett av uttrycken som kanske upprörde en del av testarna på EuroSTAR och kanske också ett sätt att uppröra och skapa uppmärksamhet för när man tittar närmare på det så jobbar ju Google med test på andra sätt också. Det som är unikt är möjligen andelen testutvecklare (SET) kontra test engineers (TE) som bl a jobbar med att styra testningen av dog food testers och crowdsource testers - ”Onetestineerenabling a thousand testers”
#20: AndersÖvergång: När en del åhörare på EuroSTAR sagt till James Whittaker att det inte skulle fungera i deras vardag att jobba som Google så får de svaret tillbaka att det gör det visst! MEN, går det att genomföra helt och hållet?Här gäller det också att vara Context Driven och se till förutsättningarna i ditt projekt – ”Det beror på….”
#21: AndersÖvergång: Om man tittar på vilka testroller som kommer att behövas i framtiden så finns det några faktorer som påverkar detta mer än andra och vi ska titta lite på vilka de är och vilka testroller som kommer att behövas i framtiden. Notera att detta är en förenklad bild som beskriver en utveckling men inte alla delar av utvecklingen. Slutsats: Det finns fortfarande faktorer som driver behovet av flera olika typer av testroller och därför tror vi att den förändring av test som håller på att ske kommer att gå relativt långsamt och den traditionella testrollen kommer fortfarande att finnas även om det kommer att krävas en del nya delkompetenser för att lösa uppgiften.
#22: PerÖvergång: Vad blir du slutsatsen för oss som jobbar med test i VästSverige? Hur kommer vår framtid se ut?