Ta Quality Assurance till nästa nivå med AI
Kan vi använda AI som ett verktyg för kvalitetssäkring? Och hur kvalitetssäkrar vi en AI-lösning? I denna artikel reder vi ut begreppet AI samt dess användning för att effektivisera arbetet med kvalitetssäkring. Vi ger exempel på verkliga tillämpningsområden och vilken kunskap och förståelse som behövs för att använda AI-lösningar på ett pålitligt och framgångsrikt sätt.
Vad är AI?
Artificiell Intelligens (AI) är ju på inget sätt ett nytt påfund. Själva uttrycket myntades 1956, men en tänkande maskin eller virtuell varelse har figurerat i många verk hela vägen tillbaka till den grekiska mytologin. Kanske är ändå koppling till Science Fiction min första och starkaste reaktion. Fram tills nu?
Dagens alltmer kraftfulla datorer möjliggör att gemene person har tillgång till och kan använda AI-applikationer. Detta har lett till en AI-boom där fler och fler utvecklar och använder sig av autonom körning, chatbots och online coaches, dataanalys, datainsamling, samverkan mellan människor & maskiner, bildigenkänning, personalisering, förutsägelser, produktdesign, produktivitet, rekommendationsmotor, tillförlitlighet och robusthet, säkerhet, hållbarhet, systemoptimering och undervisning & lärande.
Bör man använda AI som ett verktyg för kvalitetssäkring?
Huvudsyftet med AI innebär en direkt tids- och kostnadsbesparing i och med att en uppgift kan flyttas från en människa till en dator. I vissa fall kan uppgiften vara så pass komplicerad att en människa inte hade klarat av den. I andra fall kan uppgiften betraktas som enkel och då innebär AI att människan som skulle gjort uppgiften ur en praktiskt synpunkt inte längre behövs.
AI kan/bör alltså också ses som ett verktyg. Ett verktyg vi använder oss av i vårt dagliga arbete i syfte att förbättra kvaliteten hos exempelvis en specifik produkt. Och enligt samma resonemang att det innebär en kostnads- och tidsbesparing som förs gällande testautomatisering så bör man argumentera för att ta fram just den typen av AI-lösningar.
En flora av verktyg finns redan nu, med funktionalitet som:
- Generering av nya testfall baserat på ett givet Coverage Criteria (som exempelvis: Kodrader, branches, output och mutation testing)
- Användning av Machine Learning för att skapa robusta & återanvändningsbara UI-tester
- Förstärkning av tester med hjälp av visuella verifieringar
- Generering av testfall baserat på användarbeteende
- Och mycket, mycket mer.
Hur kvalitetssäkrar man en AI-lösning?
Det faktum att användningen av AI ökar markant ställer även allt högre krav på att dessa lösningar fungerar på ett pålitligt och effektivt sätt.
Nedan har vi listat några områden som är viktiga vid kvalitetssäkring av AI-lösningar:
- Förståelse för hur man testar ett rörligt mål, kunna uttrycka testresultat i form av statistisk sannolikhet snarare än Pass/Fail.
- Kunskap inom utveckling av Machine Learning, Prediktiv Analys samt för arkitekturen av dessa nätverk/system.
- Kunskap om hur man utvärderar kvaliteten inom ett Machine Learning- , Neuralt- eller Deep Learning-nätverk.
- Kunskap om hur man bygger upp datamodeller för att ta fram relevanta och objektiva inlärnings- och testscenarios.
- Kunskap om hur man använder sig av API:er under testning.
- Kunskap nog att guida testprocessen, inom hur affärsnytta, slutanvändarna & etik-aspekter återspeglas i hur AI-modellens förmåga att uppnå de satta målen.
Vi kan konstatera att det finns många möjligheter med AI och när tekniken används på rätt sätt kan vi uppnå fördelar såsom ökad effektivitet, produktivitet och innovation inom olika typer av branscher och områden.
Personligen känner jag en energi och vilja att försöka delta, förstå, lära mig, utvecklas och bidra, enligt bästa förmåga, i den ytterst intressanta framtid som står för dörren. Hoppas att jag med denna artikel kan väcka er nyfikenhet och utforskarlust, oavsett tidigare erfarenheter inom området. Samt även starta en dialog om hur vi på bästa sätt rustar området kvalitetssäkring för den pågående AI-boomen.