Auteur: Andre Boeters

Artificial Intelligence: Utopie of dystopie?

Deel 1: Wat is Artificial Intelligence en hoe werkt het?

Intro

Eén van de meest besproken items op het gebied van wetenschappelijke vooruitgang van dit moment is iets dat niet lang geleden slechts behoorde tot het rijk van science fiction. Volgens velen is het echter slechts een kwestie van tijd is voor het zijn intrede doet, misschien al tijdens de huidige generatie. Wat zeker is, is dat wanneer het er is, het de samenleving drastisch zal veranderen. We hebben het hier over kunstmatige intelligentie, ook bekend onder de Engelstalige afkorting AI (Artificial Intelligence). Tijdens onze laatste pizzasessie hebben we dit interessante onderwerp behandeld om antwoord te krijgen op vragen als: Wat is het eigenlijk precies en wat zijn de laatste ontwikkelingen hierin? We blikken vooruit op wat de ingrijpende gevolgen hiervan kunnen zijn, zo ook op software testing.

Wat is het en hoe werkt het?

Er bestaan meerdere definities voor AI. Een gangbare definitie is: Artificial Intelligence is erop gericht functies van intelligentie te ontwikkelen buiten het menselijke brein. Artificial, of kunstmatig, is alles wat niet biologisch is en intelligentie is het vermogen om kennis en ervaring toe te passen bij het oplossen van problemen.

AI wordt onderverdeeld in drie categorieën: Artificial Narrow Intelligence (ANI), Artificial General Intelligence (AGI) en Artificial Super Intelligence (ASI). De eerstgenoemde bestaat al. ANI, ook wel Weak Intelligence genoemd, bestaat uit algoritmes die gericht zijn op het bereiken van één specifiek doel of een collectie van gerelateerde doelen. Het werkt door middel van neurale netwerken, die in essentie een brein simuleren. Het idee van deze neurale netwerken bestaat al decennia, maar is pas in recente jaren echt realiseerbaar geworden door de toegenomen rekenkracht van computers. Belangrijk voor de werkzame algoritmes is het ontdekken en classificeren van non-lineaire verbanden. Er zijn al tal van algoritmes ontwikkeld die binnen bepaalde domeinen op zeer efficiënte wijze taken uitvoeren, en deze alleen nog maar beter gaan uitvoeren door steeds nieuwe data te analyseren. Hier hebben we allemaal dagelijks al mee te maken en deze ‘domme’ AI’s zijn vrijwel altijd beter in hetgeen wat ze doen dan mensen. Een aantal bekende voorbeelden zijn:

  • Zoekmachines
  • Image recognition/ FaceID
  • Automatische inkoop
  • Bots die aandelen verhandelen
  • Digital assistants (Siri, Alexa)
  • AI’s die zichzelf computerspellen leren spelen (en mensen binnen de kortste keren verslaan)
  • De Maeslantkering, die op basis van een kennis gebaseerd systeem worden geopend of gesloten.

We spreken over Artificial General Intelligence (AGI) of ‘Strong’ AI wanneer er een niveau van kunstmatige intelligentie wordt bereikt dat minimaal gelijk is aan het niveau van de mens. In tegenstelling tot ANI, zal een entiteit van AGI zich niet beperken tot het oplossen van een enkel type probleem, of enkele gerelateerde problemen. Deze vorm van kunstmatige intelligentie bestaat (nog) niet, maar veel experts denken dat dit een kwestie van enkele decennia zal zijn, hoewel er ook experts zijn met een veel sceptischere mening. Wanneer het zover is zal het echter een heleboel vragen, dilemma’s en uitdagingen met zich meebrengen waar we als maatschappij mee te maken gaan krijgen. Kan een dergelijke intelligente entiteit als bewustzijn worden gezien? En moeten we het daarom rechten geven? Hoe gaan we als maatschappij om met het enorme banenverlies dat een potentieel hooggeschoolde, goedkope werkkracht teweeg brengt (dit probleem wordt vandaag al langzaam ingezet door ANI)? Moeten we onze economie gaan herinrichten?

Als we nadenken over de mogelijkheid van een machine die gelijk is aan ons op het gebied van intelligentie, dan is het niet heel moeilijk om nog een stap verder te denken. Wat als er een AI ontstaat of ontwikkeld wordt die nog veel slimmer is dan mensen, nog slimmer dan alle mensen bij elkaar? Is dit een absurde gedachte die beperkt zal blijven tot sci-fi films en boeken? Misschien niet. Computers hebben een voordeel dat organismen niet hebben: directe verbondenheid. Wanneer een machine menselijke capaciteiten kan bereiken, stel je dan eens voor dat al die apparaten met elkaar verbonden zijn via het internet en alle data en rekenkracht kunnen delen. Hiermee zou een Artificial Super Intelligence (ASI) kunnen ontstaan of gecreëerd worden. Dit is voor veel mensen een beangstigend idee. En met goed recht. Al duizenden jaren zijn mensen de dominante en meest intelligente levensvorm op aarde. Wat als we nu opeens van onze troon worden gestoten? Niemand kan precies weten hoe zo’n AI denkt. Zal het compassie kennen? Zal het onverschillig zijn? Als een soort orakel dienen? Of ons als overbodig of zelfs als bedreiging zien? De tijd zal het leren. Mocht het ooit zover komen, dan moeten we in ieder geval goed nadenken over veiligheidsmaatregelen. Als deze geest uit de fles is, krijg je hem er niet zomaar weer in.

In het volgende deel bespreken we de laatste ontwikkelingen en toepassingen van Artificial Intelligence.

Esger Dijkstra

De volgende stap

Ik had mijn studie Technische Bedrijfskunde afgerond en begon dit jaar met mijn eerste vaste baan bij 2B4QA. Alhoewel ik het nodige weet op het gebied van testen, waren er veel nieuwe dingen te leren. Ik was voorbereid op een stevige opleiding, voordat ik bij een opdrachtgever aan de slag zal gaan. Daar was niets aan miszegd. Ik werd direct ondergedompeld in een cursus over software testing. Op de omslag van het boek stond vermeld “this book ought to be required reading for everyone in the software industry: developers, testers, and managers.” De opdracht was duidelijk. Met veel en hard werken is het mij gelukt mijn eerste certificaat te halen. Het was een nieuwe ervaring om zo intensief bezig te zijn met een onderwerp. Deze afgelopen weken heb ik, naast de vele nieuwe indrukken en theorie, nog het meeste geleerd van de vele gesprekken en trainingen van mijn nieuwe collega’s bij 2B4QA.

Een mooi begin bij 2B4QA waar nog veel te leren valt en ik hoop dit ook snel te kunnen gaan toepassen. Ik kijk ernaar uit!

Derk van der Sluis

Next level in de eerste week
Per 1 februari 2018 ben ik gestart met de masterclass van 2B4QA. In deze masterclass worden wij, Esger Dijkstra en ik, opgeleid tot Quality Consultant. Hiervoor zijn een viertal certificaten vereist, maar is kennis van diverse onderwerpen en testtools van minstens zo’n groot belang.
De reden waarom ik voor 2B4QA heb gekozen is het feit dat mijn ervaren collega’s mij opleiden in de wondere wereld van testing. Dit maakt de masterclass niet alleen uniek, maar bovenal ontzettend leerzaam.

De masterclass
In dit deel neem ik jullie mee in mijn eerste week bij 2B4QA.
De eerste dag vloog voorbij door het volle programma. Kennismaking, planning voor de komende maanden, beleidsvoering, gezamenlijke lunch, LinkedIn aanpassen, foto’s maken, studiemateriaal doornemen, etc, etc.
Na dag één was het nu echt begonnen. De vrijdag begon met de kennismaking van het team. Esger en ik vielen met onze neus in de boter omdat deze vrijdag een ‘first Friday’ was. Dit houdt in dat dit een gezamenlijk dag is, om als team van elkaar te leren en om elkaars opdrachten te bespreken. Ik had verwacht dat het een vrij formele dag zou worden, maar dit was totaal niet het geval. De sfeer was erg ontspannen en leuk, maar ik had wel meteen in de gaten dat ik met echte testprofessionals aan tafel zat. Kreten en termen vlogen over tafel. Gelukkig was er altijd iemand die zorgde dat het voor ons ook begrijpelijk werd zodat wij het gesprek (globaal) ook konden volgen.
Vrijdagmiddag kregen Esger en ik onze eerste echte ‘les’ in de basis van Agile en Scrum. Nu ga ik natuurlijk niet alle lessen inhoudelijk beschrijven, maar laat ik zeggen dat de hoeveelheid informatie en het aantal lessen, next level was! Gelukkig is de planning zo opgezet dat je niet alleen maar theoretische lessen krijgt. De theoretische lessen worden afgewisseld met hands-on praktijklessen, zoals in de Tosca testtool, presentatievaardigheden en intake oefeningen. Een aantal voorbeelden van de lessen die wij de eerste week kregen, zijn:

  • Agile training
  • ISTQB
  • Scrum
  • Kwaliteit op Maat (KOM)

Na onze eerste week hadden wij  vrijdag een zelfstudie-dag om ons voor te bereiden voor het ISTQB examen. ISTQB is ‘in the pocket’! Op naar de certificaten voor TMap Next, Tosca en PSM-1 en natuurlijk alle andere lessen over test automatiseringstools, Java for testers, presentatievaardigheden, Intake traingingen, soft skill trainingen en nog veel meer. Ik kijk er naar uit!

Terugblikkend op de eerste week kan ik vertellen dat ik het ontzettend naar mijn zin heb. Het testvak biedt mij de uitdagingen waar ik naar op zoek was en nog veel belangrijker, 2B4QA biedt mij de vrijheid en mogelijkheid om mijzelf te ontwikkelen in gebieden die ik interessant vind.

2B4QA Quality Game – kwaliteitsbeheersing op een speelse manier

Samen met je collega’s nadenken over de non-functional requirements van een systeem? Speel de 2B4QA Quality Game!

Samen met mijn collega’s binnen 2B4QA heb ik de 2B4QA Quality Game ontwikkeld om in een speelse setting  na te denken over non-functional aspecten van een systeem. Op een luchtige manier brengen we de  niet functionele aspecten van een systeem onder de aandacht. De 2B4QA Quality Game wordt gebruikt om met medeprojectleden te leren wat belangrijke non-functionals zijn en hierover met elkaar in gesprek te gaan.

Naast wat een systeem moet doen, is het van belang om te bepalen hoe het systeem moet functioneren. Bijvoorbeeld hoe snel, hoe betrouwbaar en hoe onderhoudbaar is het systeem? Wij gebruiken daarvoor de ISO 25010 norm , zoals die hieronder is weergegeven. Leer meer over deze norm via de oplossingen op onze website.

Hoe werkt de 2B4QA Quality Game?

Het doel van het spel is om alle risico’s af te dekken met maatregelen en zo het project tot een succesvol einde te brengen. Met de 2B4QA Quality Game worden  op kaartjes verschillende risico’s aan de spelers uitgedeeld. Op een kaartje staat een specifiek risico met uitleg over dit risico en enkele voorbeelden. De spelers kunnen om beurten maatregelkaarten aanwenden om voor de opgetreden risico’s maatregelen te nemen. Er kan dus worden gespeeld tot er een winnaar bekend is en ondertussen leren de deelnemers welke non-functional requirements er zijn, welke risico’s kunnen optreden en welke maatregel ingezet kan worden om het risico te beperken.

Wanneer speel ik de 2B4QA Quality Game?

De 2B4QA Quality Game kan gespeeld worden met teamgenoten of andere collega’s die geïnteresseerd zijn in non-functional requirements. Het spel heeft op zichzelf staande voorbeelden en hoeft niet gespeeld te worden door mensen die aan hetzelfde systeem werken. Het kan goed gebruikt worden om, tijdens het spel of daarna, een discussie te houden over welke non-functionals belangrijk zijn, welke risico’s deze met zich meebrengen en welke daarbij passende maatregelen ingezet kunnen worden.

2B4QA Continuous Learning Sessie Java for Testers

Continuous learning

Bij 2B4QA hanteren we het principe van Continuous Learning op onze Odd Friday sessie, omdat we het belangrijk vinden dat we als Quality Consultants onszelf blijven ontwikkelen en zo bijblijven in de snel ontwikkelende wereld om ons heen. Lees hier verder over onze visie op continuous learning.

Binnen ons vakgebied is het Agile werken in multidisciplinaire teams niet meer weg te denken. Teams bestaan uit developers, welke natuurlijk nog wel specialisaties hebben. Ontwikkelaars, testers, designers werken steeds nauwer samen, moeten dezelfde taal spreken om zo tot een goed en releasebaar eindproduct te komen.

Door de korte release cycles en het snel veranderen van functionaliteiten is testautomatisering onontbeerlijk verbonden met onze werkzaamheden binnen het multidisciplenaire team. We willen als Quality Consultants samen met de ontwikkelaars ook na kunnen denken over test automatisering. Of het nu unit testen zijn of geautomatiseerde regressie testen, we willen toegevoegde waarde leveren binnen het team.

Java for Testers

Vanuit dit oogpunt hebben we recentelijk de cursus “Java for Testers” gevolgd. Met het hele team hebben we twee vrijdagen ons verdiept in Java en dan met name gefocused op wat we als testers aan Java kennis nodig hebben. Immers, als testers hebben we niet dezelfde diepgaande Java kennis nodig als ontwikkelaars, maar is het wel echt handig als je niet volledig in het duister tast als er termen als Class of Method geroepen wordt.

Het doel van de training was om ervaring op te doen in het schrijven van testautomatiseringscode in Java, ondersteund door JUnit. Het leren van de basisprincipes van Java, maar ook code leren lezen en begrijpen. Dit geeft je namelijk een voordeel als je met je mede teamleden naar defects gaat kijken in plaats van alleen opvoeren.

We hebben kennisgemaakt met Java door onze eerste programma te maken “Hello World”, wie kent het niet.

Hello World in Java

Uiteindelijk is er veel aan bod gekomen in de twee dagen en kan ik met een gerust hart zeggen dat deze sessie ons verbreding en verdieping heeft gegeven in Java, maar ook in kennis van testautomatisering.

We gaan ons nu zelf ook verder ontwikkelen door de combinatie met bijvoorbeeld de Selenium Webdriver library en BDD via Cucumber te zoeken.

Het vervolg van onze Continuous Learning sessies op onze Odd Fridays zal dan ook ongetwijfeld iets in deze hoek zijn. Lees hier verder over onze Odd Fridays.

Want ja, een dag niet geleerd is een verloren dag!

Contact

  • Telefoon

    0318 - 240 044

  • Email

    info@2b4qa.nl

  • KVK

    601.397.73

  • Postadres

    Cuneraweg 322
    3911 RT Rhenen

  • Bezoekadres

    Kerkewijk 31
    3901 EB  Veenendaal

2B4QA BV  (c) 2018