fredag den 6. maj 2016

STAReast 2016 - The Testing & Quality Leadership Summit

Fredag deltog jeg i 'The Testing & Quality Leadership Summit', hvor årets tema var 'Leading the Change within Your Organization'.

Der var et par spændende indlæg om 'Creative Leadership for Creative Teams' og 'Leading through Change' - og det er altid spændende at få lidt input, som er baseret på egne oplevelser og synspunkter.

Derefter var der en række rundbords-diskussioner om emnerne. Diskussioner som typisk bærer præg af, at deltagerne kommer fra vidt forskellige kulturer. Danmark med en meget lav magtdistance, modsat USA med en meget høj.

Men det blev en glimrende afslutning på en fantastisk uge på STAReast.

STAReast 2016 - Torsdagens Oplevelser

Så nåede jeg frem til afslutningen på selve konferencedelen af STAReast 2016.

Torsdagen startede med en keynote af Isabel Evans over emnet 'Telling Our Testing Stories'. Hun lagde ud med en historie om, hvornår og hvordan hun mødte Lee Copeland (program chair for STAReast) i Barcelona for mange år siden. Et godt eksempel på, at vi alle er historiefortællere - og ofte i mange forskellige roller; forældre, søskende, undervisere, venner og kollegaer. Når vi fortæller historier er det ofte fordi vi ønsker at opnå noget, og det påvirker den måde den fortælles på. Denne keynote var en god start på torsdagens øvrige program.

Den første track session jeg deltog i var under temaet metrikker, og mere specifikt emnet 'Quality Metrics - The Dirty Word in the Room' af Annette Ash. Hun havde en ganske god introduktion til emnet med udgangspunkt i de mere traditionelle testmetrikker som testcases og defects, men havde lidt erfaring med, at de ofte blev brugt til at skabe en kile mellem udvikling og test, hvor de måske skulle være til at skabe et partnerskab. Hendes oplevelse var også, at ledelsen typisk elsker metrikker - det er tal.

Metrikkerne ender ofte med at være for kompliceret, en fordel kun for ledelsen, og det fik testerne til at gå efter opfyldelse af tal, og dermed reelt til at straffe og belønne - nok ikke det bedste udgangspunkt. Hendes nye tilgang til metrikker var, at de skulle være lette at forstå, være teamorienteret, nemme at indsamle og være handlingsorienteret. Faktisk var de gået fra at kalde det metrikker til mål (goals).

Forud for værktøjs introduktionen havde alle i teamet læst bogen 'Clean Code', og haft møder hvor emnerne i bogen blev diskuteret og drøftet i forhold til implementering hos dem. Det endte så med værktøjet SonarQube - som bl.a. kan måle dækningen af komponenttest, beregne kompleksitetstal m.m.

Det anvendte værktøj var SonarQube - statisk analyse værktøj - www.sonarqube.org

Den anden track session jeg deltog i var også over temaet metrikker, og med emnet 'Defect Metrics for Organization and Project Health' med David Bialek. Spændende indlæg om en situation, hvor indlægsholderen var ny i en virksomhed uden nogen form for formaliseret fejlhåndtering med tilhørende rapportering og metrikker. Efter han begyndte at formalisere det er der sket et løft i modenheden hos virksomheden, og specielt de betalende interessenter (forretningen og brugerne) har haft stor glæde af dette - og basalt set er de jo også mere interesseret i resultatet end i selve teknologien. Det første skridt han tog var at etablere en 'bug list' - simpelt, men stærkt, derefter kigge på Root Causes - er typisk noget der kan tage lang tid, men også med en stor effekt, og så til sidst fokus på løsninger. Rapporteringen af ganske traditionel, men når der er tale om en virksomhed uden nogen form for historik, så kan det også være ganske virkningsfuldt.

Den tredje track session jeg deltog i var over emnet 'Evolve or Die - What Testers Need to Do to Survive and Thrive' med Michael Cooper. Der sker ændringer konstant inden for test og QA, og alene de teknologiske ændringer giver hele tiden behov for, at vi som testere ændrer os (tilpasser). De seneste teknologiske ændringer er eksempelvis digital og IoT, cloud, big data og mobil. Hans budskab var meget tydeligt - den der overlever er den der er villig til ændringer. Han talte også om at sætte sig nogle karrieremål, og finde ud af, hvilke færdigheder man skal have for at opnås disse. Karrieremålene kunne jo være både som generalist og specialist - budskabet var igen - foretag et valg.

Et spændende indlæg, og det giver altid stof til eftertanke, men der var måske lidt for meget fokus på penge - altså sætte sig et mål for, hvad vil jeg tjene om X år - og så gå efter det. Men det er jo altid en smags sag.

Så kom konferencens sidste keynote med Dawn Haynes over emnet 'The Evolution of a Software Tester - From Novice to Practitioner'. Et mere personligt præget indlæg om hendes 'rejse' inden for softwaretest. Måske en god afslutning på nogle hektiske dag.

Torsdag sidst på eftermiddagen er der kick-off på 'Testing & Quality Leadership Summit', som foregår fredag med indlæg, behandling af 'concerns' fra kick-off, 'think tanks' og rundbordssamtaler.

STAReast 2016 - Det Fysiske Udbytte


torsdag den 5. maj 2016

STAReast 2016 - Onsdagens Oplevelser

Så blev det tredje dagen på STAReast-konferencen, og dermed en dag med mange flere forskellige indtryk og oplevelser. Hvor mandagen og tirsdagen har været fyldt med halvdags tutorials, så er det om onsdagen, at der er track sessions. Ved track sesions kører der 6 parallelle faglige præsentationer og 3 tekniske præsentationer (sponsorerne) - så der skal tilvælges og fravælges. Udover dette kører der også nogle generelle sessioner kaldet Keynotes.

Morgenen startede med, at Lee Copeland officielt åbnede konferencen, og introducerede den første keynote.

Den første keynote var over emnet 'Lessons Learned in (Selling) Software Testing' med Keith Klain. Han havde skiftet fra 'køber' til 'sælger' siden, og det var spændende (og underholdende) at høre hans syn og oplevelser fra den vinkel. Han havde et par gode budskaber: Fokuser på den forretningsmæssige værdi af test over for ledelsen, og ikke om selve test. Tal ikke om test, men om hvad det giver - altså resultatet, men i forretningsmæssige termer. Han havde også et lille indspark til testmanagere - i skal være 80% 'hands on' med hensyn til testen, gem jer ikke bag skærmen og møder - vær synlige og aktive. Og hvis man lægger op til fri diskussion, så accepter at der kan (og vil) være forskellige synspunkter, og tag dette seriøst (var det et lille indspark i forhold til enkelte individer i den context drevne verden - hvad ved jeg?). Totalt set en god start på morgenen.

Onsdagens anden keynote var 'Open Source Test Automation - Riding the Second Wave' med David Dang. Det lykkedes ham at gøre et måske lidt nørdet emne spændende - ved hjælp af lidt selvironi og humor. Den første bølge af open source test automation omfattede værktøjer som Fitnesse, Ruby/Watir og Selenium RC, og han viste nogle eksempler på, hvorfor det kun var en delvis succes, og så lavede han et flot skifte over mod den anden bølge, som omfattede: Selenium WebDriver, Cucumber (BDD), Robot Framework med key-word driven automatisering, som nogle af dem han nævnte. Han omtalte følgende årsager til, at disse blev mere populære: Bedre support (også fra store veletablerede virksomheder og organisationer), bedre API, bedre integrationer, mindre instrumentering kræves, support af populære metoder som f.eks. BDD. Samlet set - et nørdet emne gjort spændende.

Han henviste til følgende hjemmeside: www.opensourcetesting.org

Så begyndte de forskellige track sessions, og som før nævnt, dermed også en masse valg - til og fra.

Den første track session jeg valgte var 'Helpful Practices in Agile Testing' med Jeroen Mengerink. Hans udgangspunkt var det aktuelle for mange organisationer - et skifte fra de sekventielle udviklingsmodeller til agil udvikling. Han havde mange guldkorn, og her kommer et af dem: 'Hvis man vil arbejde struktureret med agile, må man lære den strukturerede teknikker, herunder testteknikkerne'.

Grundlæggende var hans tese, at agil test drejer sig også om mere bløde værdier i form af tættere samarbejde, tekniske emner som drivere og stubbe og vidensdeling indenfor test på tværs af teams og indenfor teamet på tværs af roller. Han lagde meget vægt på de bløde værdier og teamudvikling.

Han brugte bl.a. den efterhånden kendte model: FORMING - STORMING - NORMING - PERFORMING. En god referencemodel til illustration af, hvad der sker i teamet ved ændring i sammensætningen:
  • Forming: lærer om hinanden
  • Storming: udfordrer hinanden
  • Norming: arbejder med hinanden
  • Performing: arbejder som EN.
Det der er ideen her er, at man principielt starter forfra ved en ændring af teamets sammensætning - så pas på. Han omtalte også en visualisering af målet som en god ide - uden at visualisere dette yderligere!  Men når vi som testere deltager i et agilt team, hvad vi så bidrage med - udover at teste. Vi kan introducere testteknikker til udviklerne, vi kan udfordre designet og forretningsanalysen med WHAT-IF scenarier og udfordre Product Owner på, hvilke test der skal udføres.

Jeroens udgangspunkt var også, at mange at de discipliner der ellers anvendes, og bør anvendes ved agil udvikling og test. På området teststrategi/testfremgangsmåden var det emner som HVAD og HVORNÅR vi tester, få test integreret som del af udviklingen, der testes i alle sprints, og ikke mindst: tillad afvigelser til strategien - få defineret den tilladte båndbredde. Den tilladte båndbredde kunne typisk påvirkes af risikoen, modenheden, færdigheder, produktet/systemet, størrelsen, tid og kulturen. Dette var en rigtig spændende betragtning, og viser noget om den ønskede fleksibilitet som man ofte ønsker sig. Hans budskab var klart - tag stilling på forhånd. Jeroen gjorde sig også til talsmand for brug af forskellige testniveauer - men med respekt for noget af det grundlæggende i agil udvikling - vi stoler på hinanden - så vi skal ikke gentage en test, hvis det er gennemført før.

Anvendelsen af PRA (ProduktRisikoAnalyse) blev også omtalt, og gerne på flere niveauer: End-2-end, release og user story. Han sluttede af med at pointere, at omkring end-2-end test er det vigtigt at huske, at det er bredere end sprintet og, sandsynligvis også, teamet. Et godt indlæg, som klart 'skar ud' af den store agile kage, hvad der er vigtigt.

Den anden track session jeg deltog i var 'Ensuring Maximum Quality in the Era of IoT and Wearables' af Gauri Arondekar. Mit udgangspunkt var, at emnet er spændende - også set i lyset af en af de tutorials jeg deltog i tidligere på ugen. Gauri startede med en hurtig opsummering af, hvad IoT drejer sig om, men kom desværre hurtigt til at dreje sig om et konkret værktøj (som hendes virksomhed pudsigt nok også havde udviklet og solgte - stor overraskelse, og stor skuffelse).

Men der var dog enkelte generelle guldkort i forhold til test af IoT og Wearables. Hun kom ind på en række udfordringer der typisk er for test på dette område: testinfrastrukturen (miljø, stubbe, drivere, data m.m. - som alt sammen er en forudsætningen for teste), prioritering af testen (anvendelse af risikobaseret test eller anden form for udvælgelse af test, integrationer (seamless integration mellem ofte meget forskellige teknologier) og skalering (løsningerne er forskellige og load kan være meget forskellig).

Hun sluttede af med et godt statement ved test af IoT og Wearables - opbyg en kultur hvor der testes 'as a user'. Nok en meget god pointe.

Dagens tredje track session for mig var 'The Road to DevOps - Data, Environment and Test Automation' med Tanya Kravtsov. Hun startede med at definere DevOps som:
  • Culture
  • Automation
  • Monitoring
  • Sharing.
Ordet automatisering indgik ekstremt meget i indlægget, og hun sluttede af med at sige, at med DevOps kunne man opnå 50 builds om dagen, fuldt testet og produktionsklar. Det var spændende og lærerigt, MEN jeg er nok lidt skeptisk over hendes generelle tilgang til al ting - som tester er man nok lidt skeptisk når det ser for godt ud.

MEN hun lagde ud med nogle gode tanker om 'identify bottlenecks' i relation til miljøer, testcyklusser og de manuelle processer. Hun omtalte de kendte teknikker til det: brainstorming, mind maps, interviews og retrospectives, men omtalte også Speed Boat Game, hvor der man forsøger at identificere de ankre der holder os tilbage - spændende betragtning, og jeg kan ikke lige huske, at jeg har set den tidligere præsenteret på den måde og med det navn. Og da jeg elsker at sejle, er det nok en jeg vil afprøve fremover.

Onsdagen sluttede af med 'Lightning Strikes the Keynotes' - hvor der kommer en række indlægsholdere op i 5 minutter, og præsenterer et emne - som sædvanligt både sjovt og interessant.

tirsdag den 3. maj 2016

STAReast 2016 - Tirsdagens Oplevelser

Så er jeg kommet igennem anden dagen af STAReast 2016, og dermed også de sidste 2 tutorials i denne omgang. Generelt vil jeg sige, at niveauet er højt, og dermed er der også et klart udbytte.

Tirsdagens program for mig var de 2 halvdags tutorials jeg valgte forud for konferencen - om formiddagen 'Test Attacks to Break Mobile and Embedded Software' og om eftermiddagen 'What DevOps Means for Testers - Tips for Getting Testers Involved'.

Oplægsholderen til formiddagens tutorial 'Test Attacks to Break Mobile and Embedded Software' - Jon Hagar - lagde ud med at det var en AKTIV tutorial, hvor der skulle fremlægges testmetoder og diskuteres disse, men der skulle også TESTES. Selv lagde han ud med en App på sin mobil der styrede PC'en - og dermed også slideshowet. Så vi overværede testen af denne, og det blev klart at der var både funktionelle og performance issues. Det var en oplevelse, og jeg tror nok, at hvis det havde været mig havde jeg hurtigt gået over til fall-back proceduren, og taget min Logitech Presenter i anvendelse.

Hans udgangspunkt var risiko-baseret test, og det fremgik klart, at han havde forstået konceptet, og opdelingen i de forskellige risikotyper, og han var også en fortaler for den 'nye' internationale teststandard ISO 29119 - det er ikke ofte jeg hører nogen omtale den positivt.

Han lagde ud med en hurtig til området, herunder de forskellige typer af Mobile Apps: Native Apps, Web Apps og Hybrid Apps. Det virkede som en god ting i forhold til forståelsen af nogle af de efterfølgende områder og emner. Native Apps fungerer lokalt på Devicen. Web Apps fungerer alene ved interaktioner via nettet. Hybrid Apps er så både-og.

Det testmæssige udgangspunkt var Exploratory Testing, Attacks og Taxonomy. Det var ikke så meget et enten-eller, men mere et både-og. Det blev også nævnt anvendelsen af de formelle testteknikker som en integreret del at Exploratory Testing og Attacks.

Jon Hagar har opstillet følgende Attacks - jeg har valgt ikke at oversætte disse for at sikre, at der ikke går noget tabt:

  1. Static Code Analysis
  2. Finding White-Box Data Computation Bugs
  3. White-Box Structural Logic Flow Coverage
  4. Finding Hardware-System Unhandled Uses in Software
  5. HW-SW and SW-HW Signal Interface Bugs
  6. Long Duration Control Attack Runs
  7. Breaking Software Logic and/or Control Laws
  8. Forcing the Unusual Bug Cases
  9. Breaking Software with Hardware and System Operations, including Breaking Battery Power
  10. Finding Bugs in Hardware-Software Communications
  11. Breaking Software Error Recovery
  12. Interface and Integration Testing, including Configuration Integration Evaluation
  13. Finding Problems in Software-System Fault Tolerance
  14. Breaking Digital Software Communications
  15. Finding Bugs in the Data
  16. Bugs in System-Software Computation
  17. Using Simulation and Stimulation to Drive Software Attacks
  18. Bugs in Timing Interrupts and Priority Inversion
  19. Finding Time Related Bugs
  20. Time Related Scenarios, Stories and Tours
  21. Performance Testing Introduction
  22. Finding Supporting (User) Documentation Problems, including Confirming Installability
  23. Finding Missing or Wrong Alarms
  24. Finding Bugs in Help Files
  25. Finding Bugs in Apps
  26. Testing Mobile and Embedded Games
  27. Attacking App-Cloud Dependencies
  28. Penetration Attack Test, including Authentication and Password Attack and Attack Fuzz Test
  29. Information Theft - Stealing Device Data, including Identity Social Engineering
  30. Spoofing Attacks, including Location and/or User Profile Spoof Attack and GPS Spoof Attack
  31. Attacking Viruses on the Run in Factories
  32. Using Combinatorial Tests
  33. Attacking Functional Bugs
En utrolig spændende og anvendelig oplistning af mulige Attacks. De fleste af disse Attacks skal selvfølgelig altid tænkes ind i den konkrete kontekst, herunder også det fokus som den risiko-baserede testtilgang viser.

Tirsdagens anden tutorial var 'What DevOps Means for Testers - Tips for Getting Testers Involved' - med Jeffery Payne - og mit mål var bl.a. at prøve at få en dybere indsigt i begrebet DevOps.

Indledningsvis blev der opstillet en generel definition af DevOps - har valgt at beholde det skrevne uden oversættelse:

  • DevOps is a software development method that stresses communication, collaboration and integration between software developers, QA and information technology professionals
  • DevOps it not a tool
  • DevOps is not a methodology
  • DevOps is a philosophy for how people interact within the software development supply chain
Når jeg kigger på denne definition kommer jeg umiddelbart til at tænke på 'accelereret agil'. Hele ideen med DevOps synes jeg er spændende, idet man her forsøger at komme den klassiske konflikt til livs. Med den klassiske konflikt mener jeg de forskellige synspunkter der er mellem UDVIKLING og DRIFT, hvor udvikling hele tiden har behov for at implementere ændringer og driften er bange for ændringer, da det kan udfordre deres mål - stabilitet, tilgængelighed, oppetid m.m.

Det var en god tutorial i forhold til at forstå konceptet DevOps med begreber som Build Automation, Continuous Integration, Check-In Builds, Nightly Builds, Continuous Delivery and Continuous Deployment - men det kneb lidt med tips til at få testerne involveret.

Men igen - alt i alt - en god dag her i Orlando til STAReast-konferencen. 

mandag den 2. maj 2016

STAReast 2016 - Mandagens Oplevelser

Så gik starten på årets STAReast 2016 i Orlando (Florida). Mandagens program bestod af 2 heldags tutorials og 12 halvdags tutorials - typisk udfordring for en tester - vil gerne det hele, men der er det problem, at man jo kun kan være et sted af gangen. Så der skal foretages et valg - og det sker typisk ved tilmeldingen - en heldags tutorial eller to halvdags - og emnet skal også vælges på forhånd. Mine valg for mandagen var om emnerne 'Testing the Internet of Things' og 'Successful Test Automation - A Managers View'.

Forventningerne til dagens to store emner var tilsvarende også store.

Formiddagen foregik i selskab med en mindre skare af testere - ikke alle er åbenbart interesseret i dette emne: 'Testing the Internet of Things'. Oplægsholderen var Jon Hagar, og han havde en lille robot med, som skulle testes, og dette indgik i øvelserne til denne tutorial.

Jon Hagar indledte med en gennemgang af principper/arkitekturen for IoT (Internet of Things), og hvad er en IoT Device: Software som er en del af et stykke specialiseret hardware, mobile devices, netværk, cloud og it - ELLER lettere omskrevet: IoT er traditionelle og nye devices med software og kommunikationskanaler tilknyttet.

Aspekterne ved IoT er spændende, og måske også lidt skræmmende. Forestillingen om, at 'alt' er forbundet. Perspektiverne er helt klart spændende rent forretningsmæssigt, og brancher som transport kan helt sikkert se store muligheder, men også inden for sundhed og sikkerhed er der ganske klart muligheder og perspektiv.

Men man kunne godt mærke på indlægsholderen og spørgsmål og kommentarer fra deltagerne, at sikkerhed er et emne der præger billedet.

Det testmæssige var naturligvis i fokus, og et ofte anvendt begreb var 'field test' - det skal prøves af i praksis.

Det første område der behandlet testmæssigt var anvendelsen af angreb (attack), som en vigtig teknik til brug ved test af IoT, og der blev opstillet 33 'attack pattern examples' - for her at komme med eksempler kan jeg nævne: Udfør statisk analyse af koden, bekræft installerbarhed, tidsrelaterede scenarier og 'testing tours' m.m. En oplistning som kan give en række ideer til testen.

En anden teknik var anvendelse af taksonomier (klassifikationer af data), og hvor de fejl der findes over tid klassificeres i henhold til taksonomien. Denne viden anvendes så ved de angrebs-test der skal udføres. En taksonomi anvendes netop til at opnå forståelse og viden om området. Det var lidt spændende, at der blev anvende Mind Map til etablering af taksonomierne, hvilket var interessant at se.

Der blev nævnt et par forskellige kvalitetskarakteristikker, men sikkerhed (security) blev nævnt meget ofte, og ikke mindst i forhold til personfølsomme oplysninger (Privacy), hvor vi normalt jo ikke ønsker at få disse lagt til offentlig beskuelse.

Begrebet modelbaseret-test blev også nævnt et par gange, hvorfor det nok skal dyrkes lidt mere i fremtiden. Men nyt er det også for mange, at med IoT er det ikke kun softwaretest, men også hardwaretest, og interaktionen mellem disse der er i scope, og målet med testen.

Jeg vil her henvise til det blogindlæg jeg skrev for nogle uger siden om emnet i forhold til den bog Sogeti netop har udgivet.

Der er ingen tvivl om, at test af IoT er stort, og kompliceret. På TestExpo i januar talte jeg om bl.a. dette emne, og min konklusion var klar på det tidspunkt. Vi er der endnu ikke - som testere. Vi har endnu ikke alle teknikkerne, værktøjerne, teknisk viden og miljøerne, viden om dataanalyse m.m.

Dagens anden tutorial var 'Successful Test Automation - A Managers View' med Dorothy Graham. Jeg citerer hende ofte for udtalelsen 'A Fool with a Tool is still a Fool'. Det er nogle år siden jeg sidst har hørt et indlæg fra hende, og det var også denne gang en god oplevelse.

Jeg faldt lidt for denne tutorial grundet det ikke-tekniske - altså alt det andet der omkranser testautomatisering som værktøjer, script-sprog m.m.

Der blev indledt med en drøftelse af målet med testautomatisering, og hvad der bør automatiseres. Udgangspunktet var, at det var vigtigt, at det der blev automatiseret var den 'gode' test. Hvis man automatiserer en dårlig test får man jo alene en hurtigere dårlig test. Hvis startpunktet er en dårlig manuel test er det vigtigt først at gøre den manuelle test god, og derefter automatisere den. En rigtig interessant udlægning, og jeg fik nogle nye perspektiver på dette tema, som jeg klart kan anvende i min hverdag.

Men den gode målsætning for testautomatisering er:
  • Realistisk og opnåelig
  • Både kortsigtet og langsigtet
  • Løbende opdateret
  • Målbar.
Der blev opstillet en række pattern som var hendes udgangspunkt for en succesfuld testautomatisering:
  • Set Clear Goals
  • Sell the Benefits
  • Automate the Metrics
  • Do a Pilot
  • Automate Good Tests
  • Testware Architecture.
Hun talte også om ROI (Return On Investment) i forhold til testautomatisering, og opstillede også den generelle formel. Men jeg syntes der manglede lidt kød her. Det er heller ikke et nemt område, men det er vigtigt. Vigtigt fordi vi som testere skal have 'funding' af et eventuelt testautomatiseringsprojekt hos ledelsen - og ROI er typisk ledelsessprog.

Hun talte en del om hvad der skal automatiseres og hvad der ikke skal, herunder hvad hun kaldte 'what can be lost in automation'. Her tænkte hun på forhold som awareness, brugerperspektivet, intuition, variationer og fleksibilitet.

Dot Graham havde også nogle synspunkter omkring begrebet dækning, og det glædede mig, at vi er helt på bølgelængde der.

Alt i alt en god mandag her på STAReast. Jeg håber og tror på, at resten af konferencen bliver lige så spændende og udbytterig.

STAReast 2016 - Starten går om 3 timer

Så skal vi til det igen - en uge med en masse nye indtryk, oplevelser og ny lærdom.

Stedet er Orlando i Florida, emnet er softwaretest, konferencen er STAReast, året er 2016.

Konceptet følger de andre års - mandag og tirsdag er der hel- eller halvdags tutorials, onsdag og torsdag keynotes og de kortere konferenceindlæg, og fredag sluttes af med en heldags session om ledelse i test og kvalitet.

Jeg vil på denne blog skrive indlæg hele ugen om de forskellige præsentationer, indlæg og indtryk. Mandag deltager jeg i 2 halvdags tutorials, og det samme tirsdag. De er valgt på forhånd, og heldigvis var jeg i lidt god tid med reservationen, da de godt kan være 'udsolgt'.
 
De to tutorials mandag er 'Testing the Internet of Things' og 'Successful Test Automation - A Manager's View'. Tirsdag deltager jeg i 'Test Attacks to Break Mobile and Embedded Software' og 'What DevOps Means for Testers - Tips for Getting Testers Involved'.
 
Jeg har store forventninger til ugen, og glæder mig.

lørdag den 26. marts 2016

Fra SMAC til SMACT

Jeg har i et par indlæg både på denne blog og ved forskellige konferencer omtalt begrebet SMAC (Social - Mobile - Analytics - Cloud), men må nu sande, at det det nye begreb er SMACT (Social - Mobile - Analytics - Cloud - Internet of Things) - så nu er er SMAC og IoT blevet integreret i èt - SMACT - hvilket også giver mening.

Men spørgsmålet er fortsat - er vi klar til disse nye teknologiske udfordringer rent testmæssigt - på TestEXPO i slutningen af januar 2016 forsøgte jeg at svare på dele af spørgsmålet, og min konklusion var, at på områderne Mobile og Cloud var vi der faktisk, men på Internet of Things - der er vi ikke endnu. Der er masser af udfordringer rent testmæssigt, hvilket jeg vil addressere i løbet af foråret.

søndag den 20. december 2015

tirsdag den 1. december 2015

Kombinatoriske testteknikker - pas på!

Testere er velkendt med følgende problemstilling:  Der er så meget man kan teste, men så lidt tid.

Derfor anvendes der en række testteknikker - herunder kombinatoriske teknikker der kan reducere et stort antal interagerende data til et håndterbart niveau.

En af disse kombinatoriske teknikker er eksempelvis parvis test, hvor der testes alle kombinationer af datapar. Dette er sket ud fra præmissen, at de fleste fejl i software er et resultat af en faktor eller kombination af to - dette kaldes også 'interaktionsreglen, og denne defineres som: "Most failures are induced by single factor faults or by the joint combinatorial effect (interaction) of two factors, with progressively fewer failures induced by interactions between three or more factors".

Med dette udgangspunkt har man ofte valgt parvis test, og megen litteratur har taget udgangspunkt i følgende undersøgelse: "Failure Modes In Medical Device Software: An Analysis Of 15 Years Of Recall Data". Denne undersøgelse viser en interaktionsregel på 98% for 'medical devices'.

Men software på tværs af teknologi, brancher m.m. er ikke ens - hvorfor denne interaktionsregel heller ikke kan overføres til alle andre teknologier og brancher.

Videre undersøgelser viser faktisk, at for andre områder dækker interaktionsreglen kun lidt over 60% for 2 faktorer, hvorfor parvis test her ikke vil være så dækkende som for 'medical devices' - og dermed er der naturligvis også et højere risikoniveau.

Nedenstående diagram viser nyere og mere dækkende undersøgelser, som ikke kun dækker 'medical devices', men også browser, server, NASA og network security:


Hvis man ønsker et 98%-niveau i relation interaktionsreglen skal man i andre tilfælde op på 4-vis eller 5-vis test, hvilket giver et noget større antal testcases.

Vær derfor meget opmærksom på denne mere dækkende forskning end den ofte mere refererede. Pas på ved brug af teknikken - måske du skal anvende et højere n-vis niveau end tidligere antaget.

lørdag den 10. oktober 2015

STARwest 2015 - Onsdag - Gode oplevelser

Så blev det onsdag i Anaheim, og dermed startdagen for selve konference-delen med mindre indlæg rent tidsmæssigt.

MEN inden Lee Copeland (program chair) kunne byde velkommen var der indbudt til et tidligt bonus-indlæg af Alaska Airlines under overskriften 'How Alaska Airlines tests for snow storms in July'. Det handlede selvfølgelig om servicevirtualisering i praksis. Det faglige indlæg var rigtig spændende, og specielt deres mulighed for håndtering af de forskellige events der sker i forbindelse med flyvninger - og som skal hænge sammen rent logisk. Et spændende indlæg en tidlig onsdag morgen - godt man er morgenmenneske.

Men derefter kunne Lee Copeland byde velkommen til de mange deltagere - det gør han som sædvanligt på sin gode og sjove måde.

Derefter var det blevet tid til den første keynote: Bj Rollison skulle tale om 'Things That Really Matter in Testing - Today and Tomorrow' - et indlæg jeg ikke agter at kommentere eller redegøre for - andet end: Der var hverken noget om test i dag eller i morgen, men alene fra i går og før det.

Til gengæld var det anderledes med den anden keynote fremført af Paul Gerrard om 'Testing the Internet of Everything' - et indlæg som mere stillede en række gode spørgsmål end gav konkrete svar. Et forsøg på at håndtere udfordringerne rent testmæssigt når der kommer en masse devices og 'alting' er forbundet i netværk - køleskabe, borde, stole m.m. Denne udvikling sker lige nu - nogle af de store aktører investerer milliarder af kroner i denne udvikling - og der afholdes senere i år en konference 'smart city expo - world congress'. Så det er på vej. Tesen var også, at Internet of Everything vil influere på alt og alle i hele verden. I forhold til test blev der ikke givet noget endeligt svar - andet end det vil påvirke os. Han præsenterede også et virkelig skræmme-billede - at salg/marketing overtager it-budgetterne - tænk på sælgere der ikke helt kan forklare hvad de vil have, men det skal være klar i morgen. Et af budskaberne fra Paul i forhold til test var: alt hvad man kan tænke sig - og der bliver behov for nye testtilgange, testteknikker, værktøjer m.m.

Et spændende indlæg, som satte nogle tanker i gang, og som også sætter vor hverdag lidt i perspektiv - med vor daglige fokus på fejl, fremdrift m.m. - en ny tid står foran os - lad os håbe vi bliver parate til den når den rammer - vi skal være mere fleksible, hurtige, tekniske m.m.

Så åbnede Expo-området også - og der er som sædvanlig også en bogstand - HURRA - og jeg har allerede købt en række nye bøger til samlingen.

Men derefter begyndte de kortere indlæg, og det er som sædvanligt nogle gange svært at vælge - men det skal gøres.

Det første indlæg jeg deltog i var om 'DevOps: Find Solutions, Not More Defects' - DevOps er et område jeg skal dyrke noget mere - alle taler om det. Indlægget var for så vidt ganske udmærket, men jeg synes nok personligt, at indlægsholderen ikke helt fik sat scenen på den gode måde. Han fik eksempelvis ikke rigtigt defineret begrebet, men kastede sig lige ud i en masse konkrete ting. DevOps drejer sig bl.a. øgning af leverancehastigheden - altså minimere livscyklustiden. Hans budskab omhandlende bl.a. om 'shift left' - altså at vi som testere skal endnu tættere på udviklerne, og udfordre dem på de løsninger de laver, men også en 'shift right' i forhold til brugerne, så vi som testere bedre ved og forstår hvordan systemerne anvendes i den virkelige verden. Og så skal vi kunne integrere 'shift left' og 'shift right' - til en slags symbiose af helhedsforståelse. Når vi skal tættere på udviklerne skal vi dermed også være bedre til at bruge nogle af de værktøjer der er, og kunne tale udviklernes sprog - og  på web-området nævnte han eksempelvis konkret, at vi som testere skal lære noget om web page optimization - og at kunne gøre brug af de indlejrede udviklerværktøjer der findes i browsere, og som 'bare' er til rådighed. De kan hjælpe os med en række tekniske metrikker til dialog med udviklerne - hvor filer skal der overføres og åbnes, hvor mange MB data flyttes der m.m. Det bliver spændende og udfordrende.

Om eftermiddagen stod den på et indlæg under overskriften 'The Agile Testing Survival Guide', som var rigtig spændende. Overskriften var nok ikke helt dækkende for indholdet, men det var spændende og ganske godt alligevel. Han startede lidt provokatorisk med følgende: Er agil test ikke bare en omskrivning af testautomatisering? - hans konklusion var: Nej, det er det ikke. Han fortalte derefter, hvordan han på projekterne anvendte den risiko-baserede testtilgang og testdesignteknikkerne. Dejligt at se de stærke værktøjer anvendt, og på et konkret projekt. Han havde faktisk også en anden god udtalelse: Alle taler om testautomatisering, men ingen om testdesign. Et stærkt udsagn.

Det efterfølgende indlæg handlede om 'Take Your Test Center of Excellence to the Next Level with ITIL' - et godt indlæg, som satte lidt struktur på nogle ting. Jeg er ikke ITIL-Expert, og kender kun overordnet til det, men hans tilgang til at anvende strukturen i ITIL til at organisere og systematisere arbejdet med TCoE er ganske spændende. Jeg har selvfølgelig i mit arbejde med rådgiving brugt nogle af tingene, men ikke anvendt de begreber - og det drejer sig om ITIL-begreberne: Service Strategy, Service Design, Service Transition, Service Operation, men også at prøve at anvende rollerne fra ITIL - Business Relationship Manager m.m. Et område jeg må dyrke lidt mere på mit næste TPI-projekt.

Onsdagen sluttede af med 'Lightning Strikes the Keynotes' - hvor der kommer en række indlægsholdere op i 5 minutter, og præsenterer et emne - som sædvanligt både sjovt og interessant.

mandag den 5. oktober 2015

STARwest 2015 - Afsluttende Bemærkninger

Så er det tid til en samlet refleksion over årets STARwest-konference i Anaheim. Traditionelt sker mine refleksioner bedst ved at gå en tur i området. Det gjorde jeg også i år, og jeg nåede også frem til mit sekundære mål - at støtte de kvindelige ornitologi-studerende med speciale i ugler med store øjne - og det lykkedes også denne gang.

Nu har jeg jo været her før både WEST og EAST konferencerne i USA. De er altid en oplevelse - dels at finde ud, at testmodenheden generelt ikke er meget anderledes end i Europa - nogle områder er USA mere moden, og andre er det Europa. Men der er fortsat plads til forbedringer.

En af de typiske udfordringer ved disse konferencer er at vælge. Dels de tutorials man vil deltage i, hvilket skal gøres forud for konferencen, og så vælge og fravælge mellem de mange forskellige indlæg der er ellers er. Det er ikke nemt, og nogle gange får man valgt forkert ud fra en måske lige lovlig 'god beskrivelse'.

En af de tutorials jeg deltog i var omkring test af cloud-løsninger - det var utroligt spændende og lærerigt. Men generelt var SMAC-teknologierne godt repræsenteret - ikke fordi der var svar på alt, men det er da en begyndelse, at vi fremkommer med de mange spørgsmål og uafklarede ting. SMAC-teknologierne omfatter Social, Mobile, Analytics, Cloud.

Andre områder der blev behandlet var DevOps - nogle slap bedre fra det end andre. Men igen et spændende emne, som vi helt sikkert kommer til at høre meget mere til som testere - bl.a. fordi det kræver nye færdigheder for testerne. Vi skal i højere grad besidde nogle flere tekniske kompetencer.

Men alt-i-alt - en god konference, som igen giver et godt overblik over det der rører sig lige nu i testverdenen.

lørdag den 3. oktober 2015

STARwest 2015 - Leadership Summit

Fredag deltog jeg i 'The Testing & Quality Leadership Summit', hvor årets tema var 'Leading the Charge within Your Organization'.

Der var et par spændende indlæg om 'Data Structures for Leadership' og 'Leading through Change' - og det er altid spændende at få lidt input, som er baseret på egne oplevelser og synspunkter.

Derefter var der en række rundbords-diskussioner om emnerne. Diskussioner som typisk bærer præg af, at deltagerne kommer fra vidt forskellige kulturer. Danmark med en meget lav magtdistance, modsat USA med en meget høj.

Men det blev en glimrende afslutning på en fantastisk uge på STARwest.

STARwest 2015 - Det Fysiske Udbytte


fredag den 2. oktober 2015

STARwest 2015 - Reflektioner over torsdagens oplevelser

Så blev det torsdag på STARwest. Endnu en travl dag med indlæg, erfaringsudveksling og indtryk. Det er samtidig den sidste konferencedag, idet fredagen omfatter mere specialiserede emner som 'The Testing & Quality Leadership Summit'. Men tilbage til torsdagen.

Dagen startede med en keynote 'I Don't Want to Talk about Bugs: Lets Change the Conversation' - en inspirerende og lettere filosofisk keynote af Janet Gregory (medforfatter til bl.a. bøgerne Agile Testing og More Agile Testing). Hun tog hul på en spændende debat om testernes generelle tilgang til verden - den professionelle pessimist. Vi taler som udgangspunkt altid om hvor dårlig kvaliteten er - ikke hvor god den er. Hun tog en række 'dogmer' op i forhold til testområdet: metrikker, sporbarhed, værdiskabelse. Det var et modigt indlæg på en række områder, men samtidig også en god og blød start torsdag morgen.

Så startede alle de enkelte indlæg, hvor der igen skulle vælges til og fra. Frem til torsdag sidst på eftermiddagen kørte der 9 parallelle spor - 6 faglige spor (Test Management, Test Techniques, Test Automation, Mobile Testing, Metrics, Special Topics) og 3 såkaldte tekniske spor som typisk omfatter værktøjer m.m.

Den første præsentation jeg deltog i var om 'Quality Index: A Composite Metric for the Voice of Testing' - jeg er jo meget glad for metrikker, så det var lige mig. De startede med en påstand om, at der generelt anvendes for mange metrikker - hvilket sikkert i nogen situationer er rigtigt, men det er ikke hvad jeg oftest ser være situationen.

Men det der var deres mål var at præsentere deres bud på et multi-dimensional metric framework. Det der var deres tanke var at udarbejde en metrik - Quality Index - som kunne illustrere både afvikling, produktion og økonomi. Meget ambitiøst, men også lidt farligt, at ville illustrere hele verden i et tal. Tankesættet og målet er ganske udmærket, og de kom også langt med deres tilgang. Jeg vil senere prøve at løfte sløret for deres metrik i flere detaljer.

Den næste præsentation var over emnet 'Graphical Test Planning: A Method for Real Impact'. Generelt er jeg en stor tilhænger af at prøve at visualisere tingene fremfor at skrive store dokumenter. Jeg siger dermed ikke, at jeg er god til det, men tanken tiltaler mig. Graphical Test Planning - GTP - er en metode til at lave en testplan uden at skulle skrive et stort og fuldt dokument.

Det går ud på at lave et struktureret relationsdiagram der viser systemets adfærd som skal testes, og er dermed et stærkt instrument til at gøre testen synlig og nærværende, og som dialogværktøj med forretningen om fokus og prioritering - ultimativt omfatter det også testdesignet, men det gik indlægsholderen desværre lidt let henover. Det var et spændende indlæg, og har da sat nogle tanker i gang hos mig om, hvordan jeg kan tage dette i brug.

Det var også den sidste dag med EXPO og Bogstand. Så jeg fik lige gået et par ekstra runder, og fik lidt input og materiale til læsning i de mørke vinteraftner.

Derefter deltog jeg i et indlæg over temaet 'Project Management Tips to Improve Test Planning' - en modig projektleder der vover sig ind i løvens hule - det skaber lidt respekt. Hun startede ud med en god udtalelse - hun ville som projektleder gerne involvere test mere i projektplanlægningen, og hun advokerede altid for at få test involveret tidligere. Hun havde også det synspunkt, at test skulle fungere, og fungerede bedst, som et dedikeret delprojekt, med testmanageren som delprojektleder - også i forhold til governance m.m. Alt dette omfattede også involvering af test i udarbejdelsen af projektcharter og i de tidlige kundeafklaringer, herunder fastlæggelse af testmål og -tilgang - meget af det hun sagde kunne argumenteres for var som taget ud af TMap-tilgangen 'Business Driven Test Management' - sød musik i mine sarte ører.

Hvis den holdning oplægsholderen gav udtryk var generel, så ville der være en fantastisk symbiose mellem projektledelse og testledelse. Samlet set et godt aftryk.

Torsdagen sluttede af med en keynote om 'The Survival Guide for Testers and Test Managers' - som mere fungerede som en slags opsamling på mange andre indlæg - der sker meget i vor verden med hensyn til den teknologiske udvikling, og det går stærkt - så det sluttede af med nogle betragtninger generelt om vor forhold til SMAC teknologierne - altid spændende at høre forskellige udlægninger af teksten. Ingen af os kan jo forudsige fremtiden, men inspirerende at høre nogle kvalificerede bud på den.

Dermed sluttede torsdagen, og fredag byder bl.a. på ' The Testing & Quality Leadership Summit', 'Women Who Test' - som er et helt nyt initiativ - og så 'The Workshop on Regulated Software Testing'.

onsdag den 30. september 2015

STARwest 2015 - Tirsdag - En fantastisk dag

Så blev det dag 2 på STARwest 2015. Endnu en spændende dag med tutorials, hvor det er muligt at fordybe sig i et specifikt emne, eller to.

Mine valg var faldet på 'Building Your Mobile App Quality Strategy' og 'Testing Cloud Services'. To emner der både er aktuelle og spændende.

Den første tutorial blev præsenteret af Jason Arbon (medforfatter til bogen 'How Google Test Software'), så der var naturligvis store forventninger. Selve tutorialen var meget hands-on, men var også et godt mix mellem teori og praksis. Hans tilgang var 'mobile is different' og 'apps are different'.

Jason præsenterede en række hovedkilder til issues ved mobile apps: Brugere, UX, Sikkerhed, Reviews, Virkeligheden, Devices, Distribution, Konkurrence.

Hans konklusion var bl.a. at der er følgende ti kvalitetskarakteristikker der bør testes for:
  • Elegance
  • Usability
  • Stability
  • Privacy
  • Security
  • Performance
  • Satisfaction
  • Interrop
  • Content
  • Pricing.
Det var også interessant, hvad der så blev givet feed-back på fra brugerne - eksempelvis inden for spil er det Satisfaction og Content, mens Privacy og Security næsten ikke er synligt. Lidt modsats apps inden for det finansielle område (mobil bank m.m.) lå Usability og Security højest, mens Elegance var lavest.

Dagens anden tutorial var om 'Testing Cloud Services'. Et utroligt spændende og meget aktuelt emne. Udgangspunktet for de to oplægsholdere (Martin Pol og Jeroen Mengerink) var at næsten alt kan kan gøres i cloud-løsninger - som de sagde: Der var dog enkelte mere private ting som nok ikke var muligt - det skabte en god stemning.

Der er mange service-modeller inden for cloud: Testing as a Service (TaaS), Infrastructure as a Service (IaaS), Software as a Service (SaaS) osv. - det blev generelt præsenteret som '*aaS'. Udgangspunktet for tutorialen var SaaS.

Deres præsentation var bygget op om en tre-trins raket:
  • Selection og dermed også 'Testing during Selection'
  • Implementation og dermed også 'Testing during Implementation'
  • Production og dermed også 'Testing in Production'.
Hele deres tilgang til test af cloud-løsninger var risiko-baseret - en god velkendt tilgang til prioritering og udvælgelse af test, og de præsenterede syv grupper af risici:
  • Performance
  • Security
  • Availability & Continuity
  • Functionality
  • Maintainability
  • Legislation & Regulations
  • Suppliers & Outsourcing-
Det var også godt at høre, at test af cloud-løsninger starter tidligt - allerede under udvælgelsen af cloud-leverandør - alt sammen ud fra devisen 'aftal skilsmissen før brylluppet'.

Testmanagerens rolle bliver ændret noget, idet test bliver opfattet lidt bredere end ellers, og dermed øges testscope. Dette omfatter bl.a. 'testing during selection' og 'testing in production'. Dette betyder nemlig, at der er ni grupper af testaktiviteter - de syv risiko-grupper og så de to førnævnte.

Der er mange udfordringer ved test af cloud-løsninger, og nogle af testområderne bliver vanskelige. Eksempelvis performancetest - når der testes performance i et traditionelt set-up er man i kontrol med hensyn til belastning af systemet. Ved performancetest af cloud-løsninger er dette ikke muligt - man kender jo ikke de andre kunders load - og det er ganske relevant og har stor indflydelse på performance - for et af de karakteriske ting ved cloud er 'ressource pooling and sharing'.

Så ved test af cloud-løsninger skal mange af de kendte kvalitetskarakteristikker overvejes, herunder i risiko-vurderingen som før omtalt.

Et meget behandlet område var 'multi-platform testing' - altså det forhold at der kan være rigtige mange devices der kan bruges globalt i forhold til tilgang til systemerne i cloud. De viste en opgørelse af antallet af 'distrinct' Android-devices i 2012 som var 3.997. Dette tal var i 2014 steget til 18.796 - dette viser klart, at vi fortsat kan og bør anvende de mange teknikker vi som testere har i vor værktøjskasse.

Det var en fantastisk tirsdag eftermiddag med engagerede oplægsholdere, engagerede medhørere og god udveksling af holdninger og synspunkter.

tirsdag den 29. september 2015

STARwest 2015 - så gik starten

Så gik starten på årets STARwest 2015 i Anaheim (Los Angeles). Mandagens program består af 3 heldags tutorials og 14 halvdags tutorials - typisk udfordring for en tester - vil gerne det hele, men der er det problem, at man jo kun kan være et sted af gangen. Så der skal foretages et valg - og det sker typisk ved tilmeldingen - en heldags tutorial eller to halvdags - og emnet skal også vælges på forhånd.

Mine valg for mandagen faldt på 'Six Essential Skills for Modern Testers' og 'End-to-End Testing with the Heuristic Software Test Model'.

De seks essentielle færdigheder for den moderne tester er ifølge oplægsholderen (Bart Knaack):
  • Requirements Engineering
  • Database manipulation/monitoring using SQL
  • Usability heuristics
  • Exploratory testing
  • Visual notation techniques for test preparation
  • Creation of test data.
Det fremgik ikke tydeligt, hvorfor netop disse valg valgt. Det ses dog tydeligt, at der er et mix af mere 'hårde' og 'bløde' færdigheder.

Under det første punkt om requirements Engineering var der en øvelse, hvor deltagerne skulle opstille krav til et 'offentligt toilet', hvorefter disse krav skulle udveksles med en anden deltager, som så skulle designe det offentlige toilet. Denne øvelse vist klart og tydeligt, at kravdisciplinen er et svært område - men utroligt vigtigt for hele den øvrige udviklings- og testproces.

Netop kravdelen af indlægget var nok det bedste, idet de øvrige områder blev behandlet lidt overfladisk. Jeg havde nok forventet mere input på de mere tekniske discipliner - specielt set i lyset af titlen på indlægget om den 'moderne tester'. Forhold som eksempelvis kravene til den moderne tester ved skift til DevOps blev eksempelvis slet ikke behandlet eller omtalt - DevOps hvor leverancehastigheden øges betragteligt - det må da kræve ændrede færdigheder for den moderne tester.

Den anden tutorial om end-to-end test (Paul Holland) tog sit udgangspunkt i Bach & Boltons Rapid Software Testing koncept. Her var PCO (Product Coverage Outline) i fokus, som et værktøj til at fokusere og prioritere testen.

Udgangspunktet var SFDIPOT:
  • Structure of the program (smallest components)
  • Functionality (individual features)
  • Data (I/O, create, store, manipulate, backup,.....)
  • Interface (UI's, API's,.....)
  • Platform (Computer, CPU, OS, browser,.....)
  • Operations (How is it used by customers)
  • Timings (Race conds, time of day/week/month/year,...)
Ud fra ovenstående til at generere testideer blev der så behandlet risici m.m., som grundlag for beslutningen om testdækning og -indsats.

Oplægsholderen gjorde noget ud af 'samtalen' med designere, forretningen, kunden. At man skulle se på hvordan produktets markedsføring var lagt an - altså hvad blev kunden stillet i udsigt. Kigge på en eventuel tidligere version af produktet, og kigge på konkurrenternes produkt inden for samme område. Dette fremfor at læse og analysere specifikationer - 'Functional Spec Blindness' skal undgås  vi skal være kreative i stedet for. Budskabet ved at analysere specs var at så bekræftede vi jo 'bare' kravene - vi skulle være mere udforskende.

Mandagen var samlet set en god oplevelse - men blev en rigtig god en da jeg opdagede, at bogladen allerede var blevet åbnet her mandag - har andre gange først været åbnet i forbindelse med at EXPO-området også blev tilgængeligt.

søndag den 27. september 2015

STARwest 2015 i Anaheim starter mandag

Så skal vi til det igen - en uge med en masse nye indtryk, oplevelser og ny lærdom.

Stedet er Anaheim i Los Angeles, emnet er softwaretest, konferencen er STARwest.

Konceptet følger de andres års - mandag og tirsdag er der hel- eller halvdags tutorials, onsdag og torsdag keynotes og de kortere konferenceindlæg, og fredag sluttes af med en heldags session om ledelse i test og kvalitet.

Jeg vil på denne blog skrive indlæg hele ugen om de forskellige præsentationer, indlæg og indtryk. Mandag deltager jeg i 2 halvdags tutorials, og det samme tirsdag. De er valgt på forhånd.

Navneskiltet er afhentet - og sponseret af vort søsterselskab:

 
De to tutorials mandag er 'Six Essential Skills for Modern Testers' og 'End-to-End Testing with the Heuristic Software Test Model'. Tirsdag deltager jeg i 'Building Your Mobile App Quality Strategy' og 'Testing Cloud Services'.
 
Jeg har store forventninger til ugen, og glæder mig.

fredag den 11. september 2015

Dagens Bedste Krav......

Dagens bedste krav er vist:

"Løsningen skal understøtte, at der kan lægges kalender for ressourcerne ubegrænset ud i fremtiden."

Kan jeg booke et mødelokale om 1 milliard år?

onsdag den 2. september 2015

Fortsat plads til forbedringer......den danske testmodenhed

Softwaretest som fagområde har udviklet sig meget i Danmark de sidste 5-10 år. Der er sket en formalisering af test, og mange virksomheder har etableret deciderede testkompetencecentre. 

En ændring som har sin 'naturlige' udvikling i forhold til it's betydning for virksomhederne - private såvel som offentlige. It i dag er ofte af væsentlig betydning for virksomhedens mulighed for at konkurrere og virke på deres respektive markeder.

Med denne øgede betydning af it i mange virksomheder, og for os som enkeltindivider, har det stor betydning for os alle, hvilken kvalitet der er i softwaren. Mange virksomheder har udvist ønske om at forbedre sig på testområdet, og i den forbindelse har jeg siden 2007 gennemført 35 målinger af testsituationen hos danske virksomheder. 

Motivationen hos virksomhederne til at få gennemført sådanne målinger er ofte begrundet i et ønske om at afkorte gennemløbstiden, automatisere testen, øge kvaliteten, forbedre økonomien, opfylde kundekrav m.m.

Ved disse målinger har jeg anvendt modenhedsmodellen TPI NEXT - (www.tpinext.com) - TPI står for Test Process Improvement, og er en af flere modeller til måling af modenheden. For dybere information om modellen henviser jeg til førnævnte hjemmeside.

De 35 målinger dækker fra mellemstore til meget store danske virksomheder med global forretningsmodel, og en række offentlige styrelser. 

Metodemæssigt har jeg behandlet alle ens ved udarbejdelse af et dansk benchmark for testmodenhed. Denne forudsætning kan altid diskuteres, men det er et bevidst valg jeg har truffet.

Nedenstående diagram viser opgørelsen af den danske testmodenhed blandt 35 danske virksomheder, og opgjort i september 2015 - maksimumværdien i diagrammet omfatter alle de fire modenhedsniveauer i TPI NEXT modellen - altså: Initinal, Controlled, Efficient og Optimizing:

Ovenstående vil jeg nu referere til, som det danske benchmark for testmodenhed.

På den positive side må det anføres, at det ser fornuftigt ud inden for stakeholder commitment, reporting, defect management og tester professionalism. 

Stakeholder commitment omhandler bl.a. viden om, hvem der er vor primære interessent og deres involvering i vigtige beslutninger for testen. 

Rapportering omfatter selvfølgelig status og fremdrift, men også testresultater. Her mangler bl.a. noget som rapportering af produktrisici. Reporting holdes typisk lidt oppe i modenhed grundet 'hjælp' fra de generelle governance-modeller der er etableret. 

Defect management omhandler proces for fejlhåndtering, fastlagte kategoriseringer m.m., og holdes typisk oppe af brug af forskellige typer af testværktøjer (fejlhåndterings- og teststyringsværktøjer).

Der er dog fortsat en række områder, hvor der kan ske forbedringer. Forbedringer der vil give fordele for virksomhederne både på økonomien og tiden. 

Degree of involvement som omhandler involveringen af testerne både opgave- og tidsmæssigt kan forbedres. En undersøgelse jeg tidligere har udarbejdet viser, at der er høj grad af forståelse af værdien af tidlige involvering af testere, men det kniber med den faktiske og konkrete involvering - se rapporten Test i Danmark 2015 - (www.capgeminisogeti.dk/om-os/publikationer/test-i-danmark-2015/) - og et af de områder, hvor der kan og bør ske en forbedring er involveringen af interessenterne i prioriteringen og fokusering af testen. 

Netop denne prioritering, fokusering og differentiering af testen mangler de fleste steder - f.eks. i form af anvendelse af risikobaseret test. Her er der et stort grundlag for at få et konkret og operationelt redskab til en klar prioritering af testen (både rækkefølgen og dybde). 

Metrics er et område der virkelig kan gøres noget ved. Der er meget få virksomheder som har en systematisk tilgang til anvendelse og brug af metrikker inden for testområdet, og de er meget sjældent standardiseret på tværs af testprojekter. Ved en ensartet måde og tilgang til brugen af testmetrikker er der potentielt et stærkt værktøj til styring, estimering og planlægning af testen. 

Et andet område med stort potentiale er test case design. Det er paradoksalt at der er en høj modenhed inden for tester professionalism, men at det ikke på alle områder udmøntes i praksis. Mange testere har fået uddannelse og træning, men det halter lidt med den faktiske anvendelse af f.eks. testteknikkerne, der kan hjælpe med at formalisere og reducere testens omfang på en systematisk måde.

En sammenfattende konklusion må være: "....der er fortsat plads til forbedringer af testmodenheden hos danske virksomheder".

mandag den 1. juni 2015

Test i Danmark 2015

Velkommen til anden udgave af Test i Danmark rapporten. Test i Danmark har til formål at undersøge softwaretest og QA tendenser i Danmark og dets udvikling.

Undersøgelsen tager udgangspunkt i hovedkonklusionerne fra World Quality Report 2014-15, der er udarbejdet sammen med HP, og undersøger den danske softwaretests tilstand op mod resten af testverdenen.

Siden 2009 har Sogeti, Capgemini og HP publiceret denne rapport for at give indsigt i de seneste trends inden for applikationskvalitet, metoder, værktøjer og processer.

World Quality Report 2014-15 er baseret på i alt 1.543 detaljerede telefoninterviews på tværs af 25 lande med CIO’er, VP of Applications, it-direktører/chefer og QA direktører/chefer i private  virksomheder og offentlige organisationer.

I forbindelse med TestExpo-konferencen (www.testexpo.dk) den 29/1 2015 i Bella Center i København blev der foretaget en spørgeskemaundersøgelse. Der er 72 konferencedeltagere, der har besvaret undersøgelsens 10 spørgsmål.

Rapporten kan hentes via følgende link:

http://www.capgeminisogeti.dk/om-os/publikationer/test-i-danmark-2015/

søndag den 26. april 2015

Domæneanalyse - en spændende, relevant og effektiv testteknik

Som tester anvender man ofte både ækvivalenspartitionering og grænseværdianalyse - som er et par gode og anvendelige datadrevne testteknikker. Udfordringen er en gang imellem, at disse ser verden endimensionelt, men i mange situationer interagerer data med hinanden, og en paramenters dataværdi kan påvirke hvilke dataværdien for en anden parameter der er mulig.

Nedenstående tager udgangspunkt i, at der er tale om 2 parametre. Situationer med 3 eller flere parametre kræver værktøjsunderstøttelse, og behandles ikke her, men mange af principperne er de samme.

I en sådan situation som beskrevet i ovenstående er domæneanalyse en både relevant og effektiv testteknik. Domæneanalyse er rigtig god til at identificere om grænseværdierne er implementeret korrekt i systemet - det drejer sig om manglende grænseværdier, ekstra grænseværdier, grænseværdier der er skiftet/ændret og/eller grænseværdier der er 'vippet' (f.eks. er kravet til grænseværdien 'Y = X - 10', men der er implementeret 'Y = X + 10'.

Først en række definitioner af værdier - med de engelske betegnelser i parentes:
  • INDE (IN) - repræsenterer en værdi der er i partitionen/domænet.
  • UDE (OUT) - repræsenterer en værdi der er uden for partitionen/domænet/grænsen.
  • PÅ (ON) - repræsenterer en værdi på grænsen af partitionen/domænet.
  • UDENFOR (OFF) - repræsenterer en værdi lige udenfor partitionens/domænets grænse - altså den mindst mulige nominelle værdi.
Domænets grænser kan være lukkede eller åbne:
  • LUKKEDE grænser - defineret med de matematiske operatorer '>=', '<=' eller '=' - betyder at grænsen ikke er inkluderet i domænet, hvilket betyder, at:
    • PÅ-værdien er i domænet
    • UDENFOR-værdien er ikke i domænet.
  • ÅBNE grænser - defineret med de matematiske operatorer '>' eller '<' - betyder at grænsen ikke er inkluderet i domænet, hvilket betyder, at:
    • PÅ-værdien er ikke i domænet
    • UDENFOR-værdien er i domænet.
Domæneanalyseteknikken betyder så, at der for den meget 'strenge' operator '=' skal vælges en PÅ-værdi og to UDENFOR-værdier - en på hver side af grænsen, mens der for de resterende operatorer (>=, <=, >, <) skal vælges en PÅ-værdi og en UDENFOR-værdi.

En særdeles værdifuld hjælp til domæneanalyse er nedenstående tabel - kaldet en domæneanalysematrix:

I ovenstående domæneanalysematrix (tom skabelon) tester de første fire testcases PÅ og UDENFOR værdierne for betingelserne relateret til variabel 1 og INDE værdi for variabel 2, mens testcases 5 - 8 tester PÅ og UDENFOR værdierne for betingelserne relateret til variabel 2 og INDE værdi for variable 1.

Jeg håber dette indlæg viser værdien af domæneanalyse, samt hvordan testteknikken anvendes. 

mandag den 13. april 2015

International Workshop | Combinatorial Testing

I denne uge afvikles IEEE International Conference on Software Testing, Verification and Validation" - det foregår i Graz (Østrig).

En del af denne konference er en dag med workshops - hvor en af dem om brugen af kombinatoriske teknikker. En workshop hvor målet er at få kædet den akademiske forskning sammen med industrien (test).

Der var følgende på agendaen:
  • Embedded Functions in Combinatorial Test Designs
  • Introducing Combinatorial Testing in the Organization - a Report on a First Attempt
  • Combining Minimization and Generation for Combinatorial Testing
  • A First Systematic Mapping Study on Combinatorial Interaction Testing for Software Product Lines
  • Evaluation of the IPO-Family Algorithms for Test Case Generation in Web Security Testing
  • A Process for Non-Functional Combinatorial Testing - Selection of Parameter Values from a Nondiscrete Domain Space
  • Combinatorial Interaction Testing of Tangled Configuration Options
  • Relationship between Pairwise and MC/DC Testing: Initial Experimental Results
  • Why Combinatorial Testing Works - Analyzing Minimal Failure-Causing Schemas in Logic Expressions
  • Constraint Handling in Combinatorial Testing Generation Using Forbidden Tuples
  • Using Decision Trees to aid Algorithm Selection in Combinatorial Interaction Test Generation
  • Flattening or Not of the Combinatorial Interaction Testing Models
  • Improving IPOG's Vertical Growth Based on a Graph Coloring Scheme
  • Equivalence Class Verification and Oracle-free Testing Using Two-Layer Covering Arrays
  • BEN: A Combinatorial Testing-Based Fault Localization Tool.
Det har været en interessant og spændende dag - og et godt forsøg på at få udbredt forskningsverdenens resultater til testverdenen. Der er mange input, og jeg er slet ikke klar til at videreformidle nogle af dem nu. Det må komme senere, idet det meste af materialet, i form af forskningsrapporter, først er gjort tilgængeligt i dag.

Men jeg vil den kommende tid behandle emnerne på denne blog.

lørdag den 28. februar 2015

Krav skal være testbare

Systemet skal være subjektivt tilfredsstillende for alle brugere

Ovenstående kravformulering har jeg hørt fra en kollega. Et krav der er umuligt at teste.

søndag den 8. februar 2015

Test i Danmark 2015

I denne uge behandler og analyserer vi de svar vi fik indsamlet fra deltagerne på TestExpo 2015. Ligesom sidste år blev der også i år stillet 10 test relaterede spørgsmål - svarene og analysen samles i rapporten Test i Danmark 2015, som udkommer primo marts.

Rapporten fra 2014 kan bestilles på www.capgeminisogeti.dk

Når den nye rapport er klar bestilles den samme sted.

God fornøjelse.