<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Tariq M. King on Medium]]></title>
        <description><![CDATA[Stories by Tariq M. King on Medium]]></description>
        <link>https://medium.com/@tariq_king?source=rss-a951cf22285a------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*XUQV_BkZjn0xHrMd78xsiA.png</url>
            <title>Stories by Tariq M. King on Medium</title>
            <link>https://medium.com/@tariq_king?source=rss-a951cf22285a------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Tue, 19 May 2026 08:48:26 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@tariq_king/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Sharing the Stage With A Unicorn]]></title>
            <link>https://medium.com/@tariq_king/sharing-the-stage-with-a-unicorn-281b7cc07eae?source=rss-a951cf22285a------2</link>
            <guid isPermaLink="false">https://medium.com/p/281b7cc07eae</guid>
            <category><![CDATA[conferences-and-events]]></category>
            <category><![CDATA[unicorns]]></category>
            <category><![CDATA[software-testing]]></category>
            <dc:creator><![CDATA[Tariq M. King]]></dc:creator>
            <pubDate>Fri, 10 Mar 2023 03:54:53 GMT</pubDate>
            <atom:updated>2023-03-10T12:55:44.059Z</atom:updated>
            <content:encoded><![CDATA[<p>Why I Love Agile Testing Days (All of Them) and You Will Too!</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*r2HVPLYDd4p6dd3STJEvdA.png" /></figure><p>Although it feels like I’ve been engaged in public speaking in the software industry for a while, looking back I realize that it actually hasn’t been that long. It was seven years ago when I gave my first industry talk at <a href="https://www.youtube.com/watch?v=7xarPYWFJKI">STARWEST 2016</a> sharing my thoughts on why it seemed that software testing as a discipline was lost, and the perhaps fostering a culture of innovation was a way to bring back testing!</p><p>Prior to speaking at STARWEST, I had spoken at academic conferences where most of the focus was on new and novel quality engineering and testing approaches. However, a lot of the academic research was focused on the conceptual or theoretical, with less focus on practical aspects of software testing and quality engineering. Fast forward a few years later and I was embedded in an industry setting with many practical applications of testing, but little to no innovation. It made perfect sense that my messaging to the community back then was around bridging the gap between these two worlds.</p><p>It was after giving a few keynotes in the US that I started to get requests to speak around the world, and I have been blessed to have spoken in many locations that I never thought I would visit including Budapest, Kuala Lumpur, Iasi, Chisinau, Tokyo, Dublin, Lisbon and more. However, this post is not about these beautiful cities. Nor is it about innovation in software testing. In fact, it’s not even about testing at all. It’s about community, and in particular, a specific community that I found to be so unique that it’s filled with unicorns :)</p><h3>A Unique Invitation</h3><p>For me this all started with an invitation to give a keynote at the Agile Testing Days USA conference which was set to be held in Chicago in the summer of 2020. To be honest, I didn’t think much of it when the invitation first came in. I just glanced at the opportunity and it looked legit, so I said yes and moved on. However, as you probably already noticed, the conference date itself would present a major challenge since that would be the year that we would all go into a global lockdown due to the COVID-19 pandemic. Regarding the conference, the organizers contacted me and said that the conference was being postponed for a year, and that they would contact me again as the new date got closer.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/800/0*uJmoKOYYKRWvh8tJ" /></figure><p>Ok so no surprise, the event was postponed! What I found interesting though was that while most other conferences shifted to a purely online format, or some events were completely canceled, this one seemed to just keep the program in tact and just move the date. This stuck out to me as quite unique, especially when a whole year later, history would repeat itself. Conferences in general were still suffering from the impacts of the pandemic in 2021, but ATD USA insisted on keeping all the speakers on the program if they wished to remain. We were given an option to update our talks and the next new date was set for May 2022. For me this was an early sign that this was a community that not only valued the speakers, but valued their word, in the form of the agreements they had made with all of the speakers two years prior.</p><h3>A Unique Experience</h3><p>Once the event actually came around, I was pleasantly surprised. I mean, I have been a part of many conferences, and some amazing software conference communities including STAR, Agile DevOps, PNSQC, Quest for Quality, CAST, and others. However, I would soon come to find out that there is something quite different about ATD.</p><h4>Unicorns!</h4><p>So there’s a backstory around ATD unicorns which you can read about in this article: <a href="https://agiletestingdays.com/blog/the-story-of-the-agile-testing-days-unicorns/">The Story of the Agile Testing Days Unicorns</a>. And yes, there were literally unicorns all around the conference venue, which is actually pretty useful when you’re walking around wondering if you’re headed the right direction. If you bump into a unicorn, the chances are you’re good! However, my main point here isn’t about the unicorn theme they have going on. It’s about the people, those that organized the conference, those that spoke, and those that attended. I met so many unique people and formed lasting friendships. There was definitely a vibe of appreciating the individual personalities and a feeling that you can just be yourself at the conference because once you are there, you are accepted.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/424/1*GE_HYOKtQlH61s_6pzie3w.png" /><figcaption>Yes, some Unicorns bring their own Unicorns with them!</figcaption></figure><h4>More Than Just Talks!</h4><p>Let’s face it, you are going to a conference to learn. Many a time, the focus on how you learn and grow at conferences is all about the talks. Don’t get me wrong, ATD had a great program that included keynotes, workshops, and track talks. However, as a former professor I always reminded folks that you learn best when you are engaged in learning. What was really cool about the ATD experience were that there were a host of bonus and social sessions blended into the program. Everything from mentoring and coaching, to mindfulness and quiet time, or combo sessions where workshops and talks are mixed together.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*42i2Z-Ke90RkAI3pHNiM8g.png" /></figure><p>The short way to sum it up was that the way the program is laid out made the conference super fun to attend. And why wouldn’t it be, there was literally dinners and food every day and night, a costume party, game nights. It’s like the only words that give it justice are that it was completely off the chain!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/402/1*wdTOpHtrrfyS-Eth9HOO2w.png" /><figcaption>If you think you’re just going to listen to talks, you’re wrong!</figcaption></figure><p>Little did I know that this entire vibe has existed for quite some time as part of the ATD events that happen in Germany and that for the last few years prior to COVID, they had just kicked off bringing this experience to the US. I found this out at the speaker dinner. Everyone was telling me that this is even bigger at ATD in Potsdam, Germany, and that there’s another event ATD Open Air that happens on the waterfront in Cologne, Germany. So of course, being my authentic self, I told my table straight that being from the islands, I would certainly love to give a keynote on the waterfront at ATD Open Air… and furthermore, if any of the speakers dropped or couldn’t make it to ATD 2022 in Potsdam, to call me first.</p><p>What I didn’t realize was that at my table were several of the organizers, and they immediately told the beloved founder and father of ATD, Jose (Pepe) Diaz, what I said. In that moment, Pepe looked at me and said you’re in for ATD Open Air. Furthermore, a few months later I got a message that one of the speakers couldn’t make it to Potsdam, and again I was in! And that was it, I spoke at both ATD USA 2022 in Chicago, and ATD 2022 in Potsdam all because I was in a safe space to be myself and speak my mind, around folks who were listening. This is how I ended up sharing the stage with a unicorn, twice!</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*m4ErB9U4qpvnNbrgkWrzdg.png" /><figcaption>Testing the Metaverse and Beyond — ATD 2022 in Potsdam, Germany.</figcaption></figure><h3>A Unique Ask</h3><p>Lately I’ve been super busy settling into my role at EPAM, and growing there like crazy, while balancing speaking at internal and external events, publishing articles, and serving on multiple conference boards and program committees in industry and academia, and hopefully being a good father and husband at the same time (you’d have to ask the wife and kids how I’m really doing!). What’s my point here. Well it’s that my time is valuable. And with that ever so valuable time I took the time to write about this particular series of conferences. But why? Well, in a nutshell it is a very different experience and each of the two times I have been to an ATD conference I left with some serious withdrawal, which is something I hadn’t felt before at a conference. So my ask is that if you’ve never checked out one of these events before, do yourself a favor and attend one. You won’t regret it!</p><p>In May I’ll be at ATD USA 2023 giving a brand new tutorial on Breaking into AI and Machine Learning, and then in June at ATD Open Air in Cologne, Germany giving a keynote. I’m also serving on the program committee for ATD 2023, which will again be in Potsdam so I also encourage you to submit a proposal so that perhaps you too can share the stage with a unicorn! Here are all the respective links. And no, I don’t get paid to promote this or any other conference for that matter. I just value and appreciate professional software communities and this happens to be an awesome one worth sharing. Not to take away from the others, but definitely make some room to add this one to your list for professional development and training.</p><p><a href="https://agiletestingdays.us/register/">Registration Link for ATD USA 2023</a></p><p><a href="https://openair.agiletestingdays.com/registration/">Registration Link for ATD Open Air 2023</a></p><p><a href="https://agiletestingdays.com/call-for-papers/">Paper Submission Link for ATD 2023</a> (Closes March 19th)</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=281b7cc07eae" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Testing the Metaverse and Beyond]]></title>
            <link>https://medium.com/@tariq_king/testing-the-metaverse-and-beyond-5171ef934f0c?source=rss-a951cf22285a------2</link>
            <guid isPermaLink="false">https://medium.com/p/5171ef934f0c</guid>
            <dc:creator><![CDATA[Tariq M. King]]></dc:creator>
            <pubDate>Fri, 11 Feb 2022 19:50:25 GMT</pubDate>
            <atom:updated>2022-02-12T03:35:35.921Z</atom:updated>
            <content:encoded><![CDATA[<h4><strong>Why We Can’t Wait to Automate!</strong></h4><blockquote><strong>Metaverse</strong>: a network of 3D virtual worlds focused on social connection and often described as a hypothetical iteration of the Internet as a single, universal, simulated world that is facilitated by virtual and augmented reality technologies.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/943/1*9JGK50jzZB3LyUWrImS-ew.jpeg" /></figure><h3>What is the Metaverse really?</h3><p>Although this article began with a fancy definition, no one really agrees on what the metaverse is or isn’t. Conceptually, it’s not hard to grasp the metaverse as an online 3D cyberspace connecting users across the globe in various aspects of their lives. Think of multiple computing devices and platforms connected together via the Internet, allowing each user’s avatar or character to navigate through a virtual space and become immersed in different experiences everywhere from virtual hangouts to sports games, bar mitzvah’s, weddings, and more. In reality though, the metaverse doesn’t exist, well at least not yet.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*lTWNlvQNTwuJaWVH.jpg" /></figure><p>The idea of the metaverse was first developed in the science-fiction novel Snow Crash by Neal Stephenson. Stephenson had a vision of a virtual-reality (VR) based Internet evolving into a world that resembled a massively multiplayer online (MMO) game. In it, the metaverse would be populated by user-controlled as well as system daemons running in the background. While the idea of a metaverse was once fiction, it is looking more and more likely that it will soon be a reality. As you may know, the social networking giant Facebook has gone as far changing its name to Meta to reflect their belief that the metaverse is the next evolution of social connections, and are committed to bringing the metaverse to life.</p><h3>Where Can I Experience the Metaverse?</h3><p>Let’s take a look at some instances where the global coronavirus pandemic pushed quite a few metaverse-like experiences to the forefront of our personal and professional lives. Here, I’ll share a few of my own experiences and encourage you to chime in with any others…</p><h4>Gather.Town</h4><p>In the Fall of 2020, I was getting ready to log into the <a href="https://starwest.techwell.com">StarWest testing conference</a>. As a testing nerd, this was nothing new for me. After all, I’d attended this and several similar conferences over the last decade or so. However, this particular year, the conference had to be held virtually because of global shutdowns due to the pandemic. StarWest has always had a virtual component for folks who could not attend in-person to be able to watch the keynote sessions for free. However, upon logging in, I wasn’t greeted with the usual interface with web links and embedded video streams. Instead, I was transported into a 2D virtual space called <a href="https://gather.town">gather.town</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JFCh7aiqbjhtcLxfOJnrYw.png" /><figcaption>Waiting for Jason Arbon to show up in Gather.Town for our couch session at StarWest 2020</figcaption></figure><p>The floor plan for the virtual space was quite similar to the floor plan for the physical conference and, as an attendee, I could select an 8-bit avatar and now instead of jumping from link to link, it was possible to walk my avatar from one session to another, and even bump into other folks for a quick catch-up along the way. As you walk up to another avatar or group, your video feed automatically appears and you can immediately engage in the conversation. My buddy Jason Arbon and I, even held our “Ask Us Anything” couch session virtually in Gather. The above screenshot of me waiting for Jason to show up for our session is living proof that some things probably won’t change, even in the metaverse :)</p><p>It was also cool to walk up on the main stage with my avatar to see myself and the other keynote speakers. Although the experience was completely retro with the 2D space and 8-bit characters, this gave me a good glimpse of what the metaverse could be like.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*KWtJcSyHKdg2Xu-nutYknQ.png" /><figcaption>My virtual avatar walking up on stage during the lightning keynote session at StarWest 2020</figcaption></figure><h4>Virtual and Augmented Reality</h4><p>Once the pandemic hit, I found myself spending a lot more time using my Oculus Quest 2. When it was time for the olympics, I wondered if there was anything available in VR that could get me in close on the action. Thankfully, the Tokyo Olympics presented some live and full event replays on the Quest 2 for pay-TV subscribers in the United States. Set up was easy, as I just had to download an app is called <a href="https://www.oculus.com/experiences/quest/3833217603421008/">NBC Olympics VR by Xfinity</a> and sign in with my account. And there I was watching the opening and closing ceremonies, and my favorite Track &amp; Field and other sporting events in 3D VR. I even set up a watch party with a few of my Oculus Friends who were also subscribers.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*fuRmYyMZRKsl3TcD.jpg" /><figcaption>Watching the NBC Olympics VR by Xfinity on the Oculus Quest 2</figcaption></figure><p>I was also able to get my wife and kids involved in trying out various Quest 2 experiences, ranging from playing <a href="https://beatsaber.com/">Beat Saber</a> to realistic simulations like the <a href="https://www.oculus.com/experiences/quest/2557465320986444/">Jurassic World: Apatosaurus</a> VR experience. If you’re trying to get an idea of what the metaverse may be like, I’d suggest trying out some of the <a href="https://www.zdnet.com/article/best-vr-headset/">VR or augmented reality (AR) headsets</a> as the metaverse will likely be powered by these technologies.</p><h4>Video Games</h4><p>You can already find elements of the metaverse in popular video games like Second Life, World of Warcraft, and Fortnite. Because of the services they now offer, along with the emphasis on 3D VR, video games are perhaps the closest you can currently get to a metaverse experience. My kids are huge fans of video games like Roblox and Fortnite, which now host virtual events like concerts and meetups. That’s right, gamers aren’t just playing games anymore, they are using gaming platforms for all aspects of their lives in cyberspace. I just had to check out this stuff for myself and so in Fortnite, along with 12.3 million other players, I took part in Travis Scott’s virtual in-game music tour.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*87i7f3KeptYm0zQj.jpg" /><figcaption>Travis Scott’s In-Game Music Tour within the Fortnite Metaverse</figcaption></figure><p>It is important to note that many of these “metaverse” elements aren’t new to the gaming world. For instance, it’s been 20 years since a wedding was held in the game Second Life and, since 1996, player avatars have been roaming around the 32-bit meadows of Furcadia, one of the oldest massively multiplayer online role playing games (MMORPGs).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/720/0*-d4Ngb9aTmRkuIVf" /><figcaption>Furcadia is one of the longest running social MMORPG’s got a visual overhaul in 2016.</figcaption></figure><p>To bring things full circle, a group of developers came up with a novel way to host a DevOps conference within the popular Nintendo game Animal Crossing: New Horizons.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*IjRSZSFm7kQ-F8-5.jpg" /><figcaption>Deserted Island DevOps Conference 2020 hosted virtually within the game Animal Crossing: New Horizons.</figcaption></figure><h3>Why We Can’t Wait to Automate the Metaverse?</h3><p>As the buzz and hype around the metaverse continues, many are raising concerns about the potential risks in an environment where the boundaries between the physical and virtual worlds are blurred. These risks and concerns associated with the metaverse are a large part of the motivation for why we can’t wait to begin investigating automated metaverse testing techniques. Here’s a quick list of some of the key challenges:</p><h4>Risks and Quality Concerns</h4><ul><li><strong>Identity</strong> <strong>and Reputation</strong>— Ensuring an avatar is who they say they are in the metaverse. Along with identity authentication and verification comes the need to protect users in the metaverse against impersonation and activities that may harm their reputation.</li><li><strong>Ownership and Property</strong> — People have already started to purchase digital assets like NFT art and virtual properties. The metaverse raises two key questions: how can ownership rights be grated for creators of digital assets? and how can ownership be verified?</li><li><strong>Theft and Fraud</strong> — As banking, currency, payment systems, and other forms of commerce migrate to the metaverse, we are likely to see an increase in attacks that result in stealing, scamming and other types of crimes for financial gain.</li><li><strong>Data </strong>— Folks are already speculating that the metaverse is yet another ploy by the tech giants to get more data. After all, control of data can help organizations control markets. Whether or not you believe there is a conspiracy to get your data, there’s no doubt that nowadays the abuse of data and misinformation is widespread and needs much attention.</li><li><strong>Invisible Avatar Eavesdropping</strong> — Malicious actors may figure out how to make their presences in the metaverse undetectable, and use such an exploit to invisibly join meetings and eavesdrop on private conversations.</li><li><strong>Harassment and Personal Safety</strong> — Did you know that a woman was sexually harassed on Meta’s VR social media platform? Harassment and personal safety is not just a physical thing, it can be verbal and now a virtual experience that should be prevented.</li><li><strong>Legislation and Jurisdiction</strong> — In a virtual space that is accessible to anyone across the world, it is essential to be able to identify any boundaries of that space and put rules into place to make sure it is safe and secure for everyone.</li><li><strong>User Experience</strong> — The ability of the metaverse to become a space where people can connect, form meaningful relationships and become fully immersed in its surroundings, is directly correlated with its visual and graphical fidelity along with other aspects of look and feel. Visual, audio, performance, accessibility and other issues are therefore likely to detract from the overall metaverse user experience.</li></ul><h4>Promising Directions</h4><p>Even with such a tall order of risks, concerns, and testing challenges, there’s much more behind our motivation to automate testing of the metaverse. AI and machine learning (ML) has been helping us to design and develop new, more robust, and resilient, automated testing tools, products, and frameworks. The engineering team at test.ai has pioneered many of these innovations and continue to leverage AI to solve some of the hardest testing problems we have today. Here are some examples of where much of our work to date directly correlates and translates into automated testing of metaverse-like experiences.</p><p><strong>AI for Testing Digital Avatars</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/716/1*BEucN8D3ZNgbOZ7Etjqp2w.gif" /></figure><p>Computer vision unlocks a realm of possibilities for test automation. Bots can be trained to recognize and interact with visual elements, just like humans do. We applied our AI-driven testing technology to the validation of digital personas like those developed by <a href="https://www.soulmachines.com">SoulMachines</a>. The engineering team at test.ai trained ML object detection classifiers to recognize scenarios like when the digital person was speaking, waiting for a response, smiling, serious, or confused. Leveraging AI, we developed automated tests to validate conversation-based interactions with the digital avatars on SoulMachines. This included two forms of input actions, one using the on-screen textual chat window, and the other by tapping into the video stream to ‘trick’ the bots into thinking that pre-recorded videos were live interactions with humans. A test engineer could therefore pre-record video questions or responses for the digital person, and the automation could check that the avatar had an appropriate response or reaction.</p><p>Even in the early stages of their development, our bots were able to learn how to recognize interactions that were relevant to the application context, but ignore others. Let’s look at a concrete example. The figure below shows the results of running a test where the goal was to validate that the bot was able to respond appropriately to the gesture of smiling. We all know that smiles are contagious and it’s very hard to resist smiling back at someone who smiles at you, and so we wanted to test this visual aspect of the bot interactions. The automation therefore launched the digital person, tapped into the live video stream, and showed the digital avatar a video stream of one of our engineers who after a few moments started to smile. The automation then checked to see the avatar’s response to smiling, and here was the result.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*CBT6tYFKgI-jeM_akQN9rQ.png" /><figcaption>Bots detecting visual differences in digital avatars based on the application context, while ignoring others.</figcaption></figure><p>As shown in the figure, if you compare the bot’s current observation of the avatar with the prior observation, you will notice there are two differences. Firstly, the avatar’s eyes are closed at the moment of the capture as indicated by the blue boxes, and it is also smiling broadly enough that its teeth are now visible (red boxes). However, the difference mask generated by our platform only reports one difference — the smile. Can you guess why? Perhaps a bug in the test.ai platform? No, quite the contrary. Here the test.ai bots have learned that blinking is part of the regular animation cycle of the digital avatar. It’s not just trained on a single image, but actually trained on videos of the avatars, which include regular movements. With those animations now recognized as part of the ground truth, the bot distinguishes that the big smile is a deviation from the norm, and so produces an image difference mask highlighting that change and that change only. Just like a human would, AI can notice that the avatar smiled back in response to someone smiling at it, and knows that the eyes blinking at the moment of screen capture is just coincidental.</p><p>Want to play around with AI’s ability to detect emotions for yourself? Or maybe even ON yourself? Head over to <a href="https://cloud.google.com/vision">https://cloud.google.com/vision</a> and scroll down to the ‘Try It Yourself’ widget and upload a photo of yourself or someone else’s face. Under the ‘Faces’ tab of the output, you’ll see how the AI classifies the facial expression in the picture.</p><p>Pretty cool huh? At last year’s Conference for the Association for Software Testing (CAST), I gave a workshop on AI for software testing and had the participants play around with the Cloud Vision API. Testing guru Paul Holland took part in the workshop, and as a group we found his result somewhat amusing :) Check it out…</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*U7JfcanFSgdGHIbO3fhFJw.png" /><figcaption>Testing guru Paul Holland looking joyful according to the Google’s Cloud Vision API.</figcaption></figure><p>Well what do you think? Does Paul look joyful? Some folks detected a bit of a smile in Paul’s photo but Paul himself wasn’t so convinced :) On the flip side, the bot was 92% confident in its classification of Paul’s emotions!</p><p><strong>AI for Testing Video Games</strong></p><blockquote>AI plays games, why not test them too?”</blockquote><p>This was the tag line for a chapter I wrote in the 2021–22 World Report on the <a href="https://www.sogeti.be/explore/reports/state-of-ai-applied-to-quality-engineering-2021-22/">State of AI Applied to Quality Engineering</a>. In fact, much of my day-to-day focus for 2021 was on R&amp;D related to the use of AI for testing modern video games like League of Legends, Fortnite, Call of Duty, and more. Like a good software engineer, I’m going to apply the DRY (Do Not Repeat Yourself) principle to this article, and instead, point you to some of the resources we developed and shared last year on the subject.</p><p>Here’s a link to the aforementioned chapter entitled <a href="https://www.sogeti.com/ai-for-qe/section-4-1-automate-see/chapter-5/">Transforming Game Testing with AI-Driven Automation</a>, which also includes an audio book version for those who’d rather listen :) There were also a number of presentations, but one of my personal favorites was the talk I did for the AutomationGuild conference. Our friend and founder of <a href="https://guildconferences.com">TestGuild Conferences</a>, Joe Colantonio, has granted special permission to share the presentation video recording as part of this post. Enjoy! Thanks Joe!</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FMERWHLa-ZzA%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DMERWHLa-ZzA&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FMERWHLa-ZzA%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/00e40a5e00cbcd40fb1c4e4c5857c32a/href">https://medium.com/media/00e40a5e00cbcd40fb1c4e4c5857c32a/href</a></iframe><p>After watching the presentation is it should be clear why I can’t wait to automate the metaverse. These techniques certainly have a wow factor and I remember some days just spinning up our tech on some of the latest games, just to watch the bots explore and test the games. Finally, using the powers of AI for the good of testing and also getting paid for it :). Definitely a dream job for a testing nerd like me.</p><p><strong>AI for Testing Virtual and Augmented Reality</strong></p><p>Of course we couldn’t just stop with 2D and 3D game testing. Huge Kudos to Dionny Santiago for this next one. Dionny leads our core platform team at test.ai and recently extended that platform to handle Virtual Reality (VR) environments. Using a similar approach to how we interact with gaming consoles, controllers, and video streaming devices, we integrated tools and drivers that allow us to manipulate and observe the input-output functions of a VR headset. Once we could control inputs and observe outputs in VR, it was just a matter of tying that API into test.ai’s Game Testing Cortex, an ML brain that combines supervised ML and goal-based reinforcement learning to test video games in real-time.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*MYYX_jGZiXVpw89wIHSK6A.png" /><figcaption>Integrating Virtual Reality Headset I/O into Test.ai’s AI-Driven Testing Platform</figcaption></figure><p>The final result is that engineers or external programs can make calls to the VR API controller and leverage it to build and execute tests in that environment. Take a look at it in action as we programmatically modify the yaw causing the headset to rotate within the virtual space.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/660/1*A9u6dgxOzjKNuNq1aY1yag.gif" /></figure><p><strong>AI for Testing at Scale</strong></p><p>AI brings some other key advantages to the test automation world, including accelerated test coverage, reuse of tests across applications, domains, and platforms, among others. When it comes to fruition, the metaverse will undoubtedly be a big place, the bounds of which may not even be fully comprehensible to the human mind. Machines on the other hand, are good at handling large amounts of data and processes at scale, and AI and ML are paving the way forward. This happens to be one of Jason Arbon’s favorite topics, and if you are curious to learn more about this subject, including the future of testing at scale, check out <a href="https://info.test.ai/lp-webinar-testing-at-the-scale-of-the-web.html?utm_medium=social">this webinar</a> with Jason and Kevin Pyles. Our DevOps architect Patrick Alt also gave a technical presentation on using Kubernetes, AI, and other techniques for <a href="https://stareast.techwell.com/program/industry-technical-presentations/deploying-large-scale-army-ai-driven-testing-bots-stareast-virtual-2021">Deploying a Large Scale Army of AI-Driven Testing Bots</a>. After all, our mission at test.ai is to test the worlds apps… how’s that for a testing at scale problem? :)</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*jwqMwhvgKvAgeirc.png" /><figcaption>AI promotes accelerated test coverage and reuse across applications, domains, and platforms.</figcaption></figure><p><strong>AI for Non-Functional Testing</strong></p><p>AI for performance, accessibility, usability, trustworthiness and security testing are all topics that we have covered over the last year. AI is slowly taking over the testing space. It started with AI being incorporated into specific toolsets and programming languages, but now we’re seeing AI stretching beyond functionality into cross-cutting concerns. You can expect this type of growth until there is eventually a full-stack replacement for test automation using AI. It’s quite exciting to watch and as ideas like the metaverse become a reality, such AI-powered full-stack test automation will prove to be necessary to keep up with the pace of development.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PdANqKOZmqUubJaP7Yhm1Q.png" /><figcaption>Metaverse testing will require a full-stack approach to test automation powered by AI.</figcaption></figure><p>If you’re interested in learning more about each of the above dimensions of testing with AI, check out my e-book on <a href="https://www.oreilly.com/library/view/ai-driven-testing/9781098105983/">AI-Driven Testing</a>. It’s free if you are an <a href="https://www.oreilly.com">O’Reilly Learning Platform</a> subscriber, and if not, for a limited time, Keysight Technologies has made the book freely accessibly via the following <a href="http://bit.ly/AIDrivenTesting">sign up and download page</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/250/0*Ctr-VT5fm7rTgBuY" /><figcaption>Get your copy today, it’s free for a limited time :)</figcaption></figure><p><strong>AI for Testing AI</strong></p><p>So there’s one aspect of the metaverse that I’ve purposely left until last because its both particularly interesting and challenging. Human controlled avatars aren’t likely to be the only entities you can interact with in the metaverse. Yes, there is a great probability that there will be some equivalent to non-player characters within the metaverse. In gaming, a <strong>non-player character (NPC)</strong>, is any character that is not controlled by a human player. For example, in one of my favorite games FIFA soccer, there are several NPC’s ranging from the referee, goalkeeper, fans in the stadium, among others.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/371/0*gMKI1LHbDU7SRJx-.gif" /><figcaption>A non-player character (NPC) in FIFA. There will likely be the equivalent of NPC’s in the metaverse.</figcaption></figure><p>To enhance the experience, NPCs in the metaverse may themselves incorporate AI and ML so that they can adapt and evolve to changing user needs and conditions in the virtual environment. The open question therefore is how do we test these AI-controlled NPC’s in the metaverse. Well, my answer couldn’t possibly get anymore meta: use AI to test AI.</p><p>Now that I’m 100% confident you’ve now seen the true level of my crazy…</p><p>Let me explain :)</p><p>AI and ML are enabling highly dynamic behaviors in software today. A static approach to testing is likely to be inadequate in validating these self-adaptive and self-evolving capabilities. As a result, many of the current testing techniques and approaches will only take you so far with such a system. Automation itself will need to evolve and the testing framework itself will need to be adaptive so that it can monitor and regulate the system under test. Such a system would be trained, managed, and monitored by humans, while facilitating gathering and coalescing the vast amounts of data on metaverse interactions and transactions. This would allow us to apply the rules, laws, goals, and policies defined for the virtual space. Furthermore, testing will need to become an inherent part of the NPC’s and other aspects of the metaverse for the initiative to be successful. It is the only foreseeable way to ensure that all the risks and quality concerns mentioned in this article can be addressed. A holistic testing strategy for the metaverse would involve validation and verification activities across multiple disciplines that are triggered both offline, prior to deployment, as well as on-line, continuously, after deployment.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*BPSinWuO0bqZhvKx78Palg.png" /><figcaption>Holistic quality engineering practices in the Metaverse will stretch across multiple disciplines.</figcaption></figure><p>As we’ve been building out the next generation of automated testing at test.ai, I have noticed that there is a need to promote and share our practical experiences and strategies for testing AI-based systems. Furthermore, beyond testing, an end-to-end quality engineering approach should chart the path forward with AI. I recently had the privilege of working with former O’Reilly AI/ML editor, Rebecca Novak, designing a course on Quality Engineering for AI and Machine Learning. A short version course is available for individual subscribers on <a href="https://www.oreilly.com">O’Reilly’s Learning Platform</a>, or if you’d like to have your engineering team go through it, you can register your team for an <a href="https://qualityconsulting.talentlms.com/catalog/info/id:124,cms_featured_course:1">extended version of the course</a>.</p><h3>Wrap Up</h3><p>The metaverse isn’t here yet, but we can’t wait to automate it. Firstly, it’s too risky to wait around, and secondly the challenge itself is being met equally by some pretty cool and awesome technology that is driven by AI. It’s a great time to be in technology, and an even greater time to be in testing, so let’s look forward to testing the metaverse and beyond.</p><p>A huge thanks to Yashas Mavinakere, Jonathan Beltran, Justin Phillips, Jason Stredwick, and the entire engineering team at test.ai for all the work they do to make things like this possible.</p><p>— <a href="https://www.linkedin.com/in/tariqking/">Tariq King</a>, Chief Scientist, <a href="https://test.ai">test.ai</a></p><p><strong>References</strong></p><p>Balance Academy. <a href="https://academy.binance.com/en/articles/what-is-the-metaverse?utm_campaign=googleadsxacademy&amp;utm_source=googleads&amp;utm_medium=cpc&amp;gclid=Cj0KCQiA0eOPBhCGARIsAFIwTs5021E3DOLGlhm_lLHdfrcjfHWUbH7g0jxxGLzm5IloXT1gwsy3ESMaAiOFEALw_wcB">What is the Metaverse?</a> Published Sept. 21, 2021. Last Updated Jan. 13, 2022.</p><p>Wired. Cecilia D’Anastasio. <a href="https://www.wired.com/story/video-games-ahead-of-metaverse/">Video Games Already Do What the Metaverse Just Promises</a>. Jan, 10, 2022</p><p>Facebook. <a href="https://about.fb.com/news/2021/10/facebook-company-is-now-meta/">Introducing Meta: A Social Technology Company</a>. Oct. 28, 2021.</p><p>Michael Kan. <a href="https://www.pcmag.com/news/new-use-for-animal-crossing-virtual-tech-conference-venue">New Use for Animal Crossing: Virtual Tech Conference Venue</a>. Apr. 30, 2020.</p><p>MIT Technology Review. Tanya Basu. <a href="https://www.technologyreview.com/2021/12/16/1042516/the-metaverse-has-a-groping-problem/">The Metaverse has a Groping Problem Already</a>. Dec. 16, 2021</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5171ef934f0c" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Quantifying the Risk of AI Bias]]></title>
            <link>https://levelup.gitconnected.com/quantifying-the-risk-of-ai-bias-998a5542a5e0?source=rss-a951cf22285a------2</link>
            <guid isPermaLink="false">https://medium.com/p/998a5542a5e0</guid>
            <category><![CDATA[software-testing]]></category>
            <category><![CDATA[bias]]></category>
            <category><![CDATA[fairness]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[machine-learning]]></category>
            <dc:creator><![CDATA[Tariq M. King]]></dc:creator>
            <pubDate>Sun, 09 Aug 2020 17:06:13 GMT</pubDate>
            <atom:updated>2020-08-14T21:21:57.964Z</atom:updated>
            <content:encoded><![CDATA[<p><strong>A Testing Perspective of Unwanted AI Bias</strong></p><blockquote>Bias refers to prejudice in favor of or against one thing, person, or group compared with another, usually in a way considered to be unfair.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*C1zTsD_r23kFkWrF_5TCig.png" /></figure><h3>The World is Filled with Bias</h3><p>A quick search on bias reveals <a href="https://en.wikipedia.org/wiki/List_of_cognitive_biases">a list of nearly 200 cognitive biases</a> that psychologists have classified based on human beliefs, decisions, behaviors, social interactions, and memory patterns. Certainly, recent events stemming from racial inequality and social injustice are raising greater awareness of the biases that exist in the world today. Many would argue that our social and economic system is not designed to be fair and is even engineered in a way that marginalizes specific groups and benefits others. However, before we can improve such a system, we first have to be able to identify and measure where and to what degree it is unfairly biased.</p><p>Since the world is filled with bias, it follows that any data we collect from it contains biases. If we then take that data and use it to train AI, the machines will reflect those biases. So how then do we start to engineer AI-based systems that are fair and inclusive? Is it even practical to remove bias from AI-based systems, or is it too daunting of a task? In this article, we explore the world of AI bias and take a look at it through the eyes of someone tasked with testing the system. More specifically, we describe a set of techniques and tools for preventing and detecting unwanted bias in AI-based systems and quantifying the risk associated with it.</p><h3>Not All Bias is Created Equally</h3><p>While there is definitely some irony in this heading, one of the first things to recognize when designing AI-based systems is that there will be bias, but not all bias necessarily results in unfairness. In fact, if you examine the definition of bias carefully, the phrase “usually in a way considered to be unfair” implies that although bias generally carries a negative connotation, it isn’t always a bad thing. Consider any popular search engine or recommendation system. Such systems typically use AI to predict user preferences. Such predictions can be viewed as a bias in favor of or against some items over others. However, if the problem domain or target audience calls for such a distinction, it represents desired system behavior as opposed to unwanted bias. For example, it is acceptable for a movie recommendation system for toddlers to only display movies rated for children ages 1–3. However, it would not be acceptable for that system to only recommend movies preferred by male toddlers when the viewers could also be female. To avoid confusion, we typically refer to the latter as unwanted or undesired bias.</p><h3>The AI Bias Cycle</h3><p>A recent <a href="https://arxiv.org/pdf/1908.09635.pdf">survey on bias and fairness in machine learning</a> by researchers at the University of Southern California’s Information Sciences Institute defines several categories of bias definitions in data, algorithms, and user interactions. These categories of bias are summed up in a cycle depicted in Figure 1, and can be described as follows:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*imFBMg0X2t9gfNt-YMkbgA.png" /><figcaption>Figure 1. The Bias Cycle in AI and Machine Learning Systems</figcaption></figure><ol><li><strong>Data Bias</strong>: The cycle starts with the collection of real-world data that is inherently biased due to cultural, historical, temporal, and other reasons. Sourced data is then sampled for a given application which can introduce further bias depending on the sampling method and size.</li><li><strong>Algorithmic Bias</strong>: The design of the training algorithm itself or the way it is used can also result in bias. These are systematic and repeatable errors that cause unfair outcomes such as privileging one set of users over others. Examples include popularity, ranking, evaluation, and emergent bias.</li><li><strong>User Interaction Bias</strong>: Both the user interface and user can be the source of bias in the system. As such, care should be taken in how user input, output, and feedback loops are designed, presented, and managed. User interactions typically produce new or updated data that contains further bias, and the cycle repeats.</li></ol><h3>Resources on Bias in AI</h3><p>Interested in learning more about the unwanted AI bias and the bias cycle? Check out these video resources by Ricardo Baeza-Yates, Director of Graduate Data Science Programs at Northeastern University, and former CTO of <a href="http://www.ntent.com/">NTENT</a>. In the first video, Baeza-Yates does a great job of introducing bias and explaining the bias cycle in less than four minutes. In the second video, he takes a deeper dive into the data and algorithmic bias, providing several real-world examples of the different types of bias. Baeza-Yates is clearly an expert in the field and I highly recommend that you check out his <a href="https://scholar.google.com/citations?user=v9xULZwAAAAJ&amp;hl=en&amp;oi=ao">Google Scholar Profile</a> for additional resources and publications on this topic.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FK7k33_IrBEE%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DK7k33_IrBEE&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FK7k33_IrBEE%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/d41461829f35038c1684f9aff19506c3/href">https://medium.com/media/d41461829f35038c1684f9aff19506c3/href</a></iframe><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FW_mqrGAp3aU%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DW_mqrGAp3aU&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FW_mqrGAp3aU%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/3661bef3caaa76111d3c7af12a4c6823/href">https://medium.com/media/3661bef3caaa76111d3c7af12a4c6823/href</a></iframe><p>During last year’s <a href="https://www.questforquality.eu/">Quest for Quality</a> conference, I had the pleasure of meeting <a href="https://medium.com/u/e6e55a3700fe">Davar Ardalan</a>, founder and storyteller in chief of <a href="https://medium.com/u/f9919b1aa598">IVOW</a>. Her recent post: “<a href="https://medium.com/@idavar/ai-fail-to-popularize-and-scale-chatbots-we-need-better-data-88ed005724f6">AI Fail: To Popularize and Scale Chatbots We Need Better Data</a>” has a list of resources on different topics related to AI bias.</p><h3>Unwanted AI Bias: A Testing Perspective</h3><p>Having spent my career studying and practicing the discipline of software testing, it is evident that the testing community has a role to play in the engineering of AI-based systems. More specifically, on the issue of AI bias, I believe testers have the necessary skills to directly contribute to tackling the problem of unwanted bias in AI systems.</p><p>Shortly after my friend and colleague <a href="https://medium.com/@jarbon">Jason Arbon</a> gave a <a href="https://youtu.be/5jJR3FtTSdc">keynote</a> at <a href="https://www.pnsqc.org/archives/2019-conference-archives/">PNSQC 2019</a> on testing AI and bias and released a <a href="https://drive.google.com/file/d/13rVV-Vw9MiV8arEocHhDrSlAZ6Soib3R/view">free e-book</a> on the topic, we started brainstorming about what testers can bring to the table today to help with the challenge of unwanted AI bias. Here are the answers that came — testing heuristics for preventing and detecting AI bias, and a quantitative tool for assessing the risk of unwanted bias in AI systems. As life would have it, nearly a year later we’re only just getting around to putting these ideas out into the community.</p><h3>AI Bias Testing Heuristics</h3><p>It’s a myth that testers don’t like shortcuts. Tester’s actually love shortcuts — just not the kind of shortcuts that compromise quality. However, shortcuts that take complex testing problems and reduce them into simpler judgments are welcomed with open arms. That is exactly what testing heuristics are — cognitive shortcuts that help us to solve problems while testing software. We provide three types of heuristic-based artifacts to support testing AI for unwanted bias: a set of <em>mnemonics</em> and a <em>questionnaire checklist</em>.</p><h4>Mnemonics for Testing AI Bias</h4><p>If you’ve forgotten them, mnemonics are memory tools! just kidding :) But seriously, mnemonics help our brains package information, store it safely, and retrieve it at the right moment. To this day, I still recall many of the mnemonics I learned in math class such as <a href="https://www.yourdictionary.com/never-eat-shredded-wheat">Never Eat Shredded Wheat</a> for remembering the cardinal points and <a href="https://www.mathsisfun.com/operation-order-bodmas.html">BODMAS</a> or<strong> </strong><a href="https://study.com/academy/lesson/what-is-pemdas-definition-rule-examples.html#:~:text=Lesson%20Summary-,PEMDAS%20is%20an%20acronym%20for%20the%20words%20parenthesis%2C%20exponents%2C%20multiplication,subtraction%20from%20left%20to%20right.">PEMDAS</a><strong> </strong>for the order of mathematical operations.</p><p>As a starting point for developing a set of practical techniques for testing AI systems, we’ve created seven mnemonics to help engineers remember the key factors associated with unwanted AI bias. These mnemonics are displayed graphically over the AI bias cycle in Figure 2 and are described as follows:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*wRP0WO-vbg86b7Lh2wN7JQ.png" /><figcaption>Figure 2: 7 Mnemonics for Testing AI Bias</figcaption></figure><p><em>Mnemonic #1: </em><strong><em>DAUNTS<br></em></strong>The challenge of testing AI for bias can seem daunting and so it is only fitting that <em>DAUNTS </em>is our first mnemonic<em>. </em>It is a reminder of the top-level categories in the AI bias cycle — <strong><em>D</em></strong><em>ata, </em><strong><em>A</em></strong><em>lgorithm, </em><strong><em>U</em></strong><em>ser i</em><strong><em>NT</em></strong><em>eraction, </em><strong><em>S</em></strong><em>election/Sampling</em></p><p><em>Mnemonic #2: </em><strong><em>CHAT <br></em></strong>Since the 70’s, the real-time transmission of text has been a signature of the Internet. <em>CHATS </em>is meant <em>to r</em>emind us of the biases in data sourced from the web — <strong><em>C</em></strong><em>ultural, </em><strong><em>H</em></strong><em>istorical, </em><strong><em>A</em></strong><em>ggregation, and </em><strong><em>T</em></strong><em>emporal.</em></p><p><em>Mnemonic #3: </em><strong><em>Culture &gt; Language + Geography<br></em></strong>To break the monotony of all the acronyms, this mnemonic is in the form of a math equation. Actually, it’s more of an acronym hidden in an equation when in natural language: <strong><em>Culture</em></strong><em> is </em><strong><em>GREATER</em></strong><em> than </em><strong><em>Language</em></strong><em> and </em><strong><em>Geography. </em></strong>This mnemonic represents all the sub-types of cultural bias which in addition to <em>language</em> and <em>geography</em> include these seven other aspects of humanity — <strong><em>G</em></strong><em>ender, </em><strong><em>R</em></strong><em>ace, </em><strong><em>E</em></strong><em>conomics, </em><strong><em>A</em></strong><em>ge, </em><strong><em>T</em></strong><em>ribe, </em><strong><em>E</em></strong><em>ducation, and </em><strong><em>R</em></strong><em>eligion.</em></p><p><em>Mnemonic #4: </em><strong><em>SMS<br></em></strong>We’ve repurposed the well-known mobile acronym <em>SMS </em>to help refine the sampling bias category by indicating the need to check for diversity in data sources and appropriate sampling — <strong><em>S</em></strong><em>ources, Sampling </em><strong><em>M</em></strong><em>ethod, and </em><strong><em>S</em></strong><em>ize.</em></p><p>Mnemonic #5<em>: </em><strong><em>MOV<br></em></strong>Reminiscent of both the Quicktime movie file type and the machine instruction that moves data from one location to another, <em>MOV</em> now gives us an easy way to remember the types of selection bias — <strong><em>M</em></strong><em>easurement, and </em><strong><em>O</em></strong><em>mitted </em><strong><em>V</em></strong><em>ariable.</em></p><p>Mnemonic #6<em>: </em><strong><em>A PEER<br></em></strong>Inspired by the peer-to-peer (P2P) architecture made popular by the music sharing application Napster, <em>A</em> <em>PEER </em>encompasses five key biases — <strong><em>A</em></strong><em>lgorithmic</em><strong><em>, P</em></strong><em>opularity, </em><strong><em>E</em></strong><em>valuation, </em><strong><em>E</em></strong><em>mergent, and </em><strong><em>R</em></strong><em>anking.</em></p><p>Mnemonic #7<em>: </em><strong><em>S</em></strong><em>ome </em><strong><em>P</em></strong><em>eople </em><strong><em>O</em></strong><em>nly </em><strong><em>L</em></strong><em>ike </em><strong><em>B</em></strong><em>uying </em><strong><em>C</em></strong><em>ool </em><strong><em>P</em></strong><em>roducts<br></em>A set of testing mnemonics would not be complete without a good rhyme that feels a bit random and unscripted. This final mnemonic for the types of user interaction bias is just that — <strong><em>S</em></strong><em>ocial, </em><strong><em>P</em></strong><em>resentation, </em><strong><em>O</em></strong><em>bserver, </em><strong><em>L</em></strong><em>inking, </em><strong><em>B</em></strong><em>ehavioral, </em><strong><em>C</em></strong><em>ause-Effect, and </em><strong><em>P</em></strong><em>roduction</em>.</p><p>It should be noted that the aforementioned sub-categories of bias are heavily intertwined, and do not necessarily fit cleanly into the separate boxes as depicted in Figure 2. The goal is to place them where they have the most impact and relevance in your problem domain or application space.</p><h4>Questionnaire Checklist for Testing AI Bias</h4><p>Good testers ask questions, but great testers seem to know the right questions to ask and where they should look for the answer. This is what makes the questionnaire checklist a useful tool for understanding and investigating software quality. Such artifacts provide questions that provoke answers that reveal whether desirable attributes of the product or process have been met.</p><p>Based on our experiences testing AI systems, we have created a questionnaire checklist. The goal of the questionnaire is to ensure that people building AI-based systems are aware of unwanted bias, stability, or quality problems. If an engineer cannot answer these questions, it is likely that the system produced contains unwanted, and possibly even liable versions of bias.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.slideshare.net%2Fslideshow%2Fembed_code%2Fkey%2FBGPXopqHZNAUY6&amp;display_name=SlideShare&amp;url=https%3A%2F%2Fwww.slideshare.net%2Ftotallyacid%2Ftesting-ai-and-bias-questionnaire-checklist-237592610&amp;image=https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Ftestingaiandbiasquestionnairechecklist-200805212349-thumbnail-4.jpg%3Fcb%3D1596662896&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=slideshare" width="600" height="640" frameborder="0" scrolling="no"><a href="https://medium.com/media/166dd8c70a57a489e60a17db9fb1649f/href">https://medium.com/media/166dd8c70a57a489e60a17db9fb1649f/href</a></iframe><h3>AI Bias Risk Assessment Tool</h3><p>Although the mnemonics and questionnaire are a good start, let’s take it a step further and bring another contribution to the table — one that undeniably spells T-E-S-T-E-R. Surely nothing spells tester better than R-I-S-K. After all, testing is all about risk. One of the main reasons we test software is to identify risks with the release. Furthermore, if a decision is made to not test a system or component, then we’re probably going to want to talk to stakeholders about the risks of not testing.</p><p>Risk is anything that threatens the success of a project. As testers, we are constantly trying to measure and communicate quality and testing-related risks. It is clear that unwanted bias poses several risks to the success of AI, and therefore we are happy to contribute a tool for assessing the risk of AI bias.</p><p>The idea behind the tool is that, like the checklist questionnaire, it serves as a way to capture responses to questions about characteristics of the data, including its sampling and selection process, machine learning algorithm, and user interaction model. However, as responses are entered into the system, it quantifies the risk of unwanted bias.</p><h4>Introducing the AI BRAT</h4><p>Our first version of the AI bias risk calculation tool was a quick and easy <a href="https://docs.google.com/spreadsheets/d/1nvHvQ2DRIZ9cnjO3rH_xW8v08Xea_bfD63pQwToveeM/edit?usp=sharing">Google sheet template</a>. However, <a href="https://medium.com/u/785cae700b84">Dionny Santiago</a> and the team at <a href="https://test.ai">test.ai</a> have transformed it from template to tool and launched a mobile-friendly web application codenamed AI BRAT — <a href="https://bias.test.ai">AI Bias Risk Assessment Tool</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*SUN3xs_QE_PcpqK36ie1Wg.png" /></figure><p>To promote learning and application of the heuristics described in this article, questions in AI BRAT are grouped and ordered according to the mnemonics. Definitions for each type of bias appear below each sub-heading, and tooltips with examples can be viewed by hovering over or tapping on the question mark icon to the right.</p><p>Expanding a sub-heading reveals questions associated with the considerations made for detecting and/or mitigating each type of bias and the likelihood of it occurring in the dataset. AI BRAT tracks answered questions from each section to ensure each type of bias is being covered.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4BORRjF0mM6imw9WSONKNw.png" /></figure><h4>Risk Calculation</h4><p>As questions are answered, values for the severity and likelihood of AI bias are assigned to responses. Responses contribute to severity (impact) and likelihood (probability) values as follows:</p><p><strong><em>Severity/Impact</em></strong><br>I do not know or have not considered this type of bias <em>(3 Points)</em><br>I have discovered unwanted bias and am unable to mitigate it <em>(3 Points)</em><br>I have discovered unwanted bias but implemented bias mitigation <em>(2 Points)</em><br>I have not discovered unwanted bias or determined it is acceptable <em>(1 Point)</em></p><p><strong><em>Likelihood/Probability</em></strong><br>Likely <em>(3 Points), </em>Somewhat Likely<em> (2 Points), </em>Not Likely<em> (1 Point)</em></p><p>AI BRAT then calculates a risk score using a 3x3 risk matrix and classifies it into high, medium, or low based on the result of multiplying the likelihood and severity values.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/785/1*UJ8E4JxzDjanGtJBvMmU_Q.png" /></figure><h4>Interpreting, Using and Saving the Results</h4><p>AI BRAT is initialized with a risk score of 100%. In other words, there is a 0% chance that the system is fair and each section is highlighted red. As users respond to each question, the goal is to drive the risk of bias score down until the section turns green, or until the value is as low as possible (in this case 11% which is 1 out of 9).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*8fom3i5ej283hufgjRP2Lw.png" /></figure><p>Results can also be saved to a report using the <em>Export to PDF</em> button at the top-right. Check out AI BRAT today at <a href="https://bias.test.ai">https://bias.test.ai</a> and let us know what you think.</p><h3>Other Resources and Tools on Testing AI Bias</h3><p>Technology giants Google, Microsoft ,and IBM have all developed tools and guides for testing AI for bias and/or fairness.</p><h4>Google’s What-If Tool</h4><p>In this <a href="https://ai.googleblog.com/2018/09/the-what-if-tool-code-free-probing-of.html">Google AI Blog</a>, James Wexler describes the <a href="https://pair-code.github.io/what-if-tool/">What-If Tool</a>, a feature of the open-source <a href="https://github.com/tensorflow/tensorboard">TensorBoard</a> web application, that facilitates visually probing the behavior of trained machine learning models. Watch the video below for an introduction to the tool, including an overview of its major features.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FqTUUwfG1vSs%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DqTUUwfG1vSs&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FqTUUwfG1vSs%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/b12d67ea5ad75bb5dad588a220eda4ef/href">https://medium.com/media/b12d67ea5ad75bb5dad588a220eda4ef/href</a></iframe><h4>Microsoft’s Fairlearn Toolkit</h4><p>Microsoft is tackling bias in machine learning through its new open-source <a href="https://github.com/fairlearn/fairlearn">Fairlearn Toolkit</a>. Fairlearn is a Python package that enables ML engineers to assess their system’s fairness and mitigate observed unfairness issues. It contains mitigation algorithms as well as a Jupyter widget for model assessment. Besides the source code, this repository also contains Jupyter notebooks with examples of Fairlearn usage. In the video below, Mehrnoosh Sameki, Senior Product Manager at Azure AI, takes a deep-dive into the latest developments in Fairlearn.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FTs6tB2p97ek%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DTs6tB2p97ek&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FTs6tB2p97ek%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/1d156c0d492da24c8bc93849f1cbaf01/href">https://medium.com/media/1d156c0d492da24c8bc93849f1cbaf01/href</a></iframe><h4>IBM’s AI Fairness 360 Toolkit</h4><p>The staff members of the Trusted AI group of IBM Research have released <a href="https://aif360.mybluemix.net/?_ga=2.130485455.1744053973.1589509987-72020752.1588123896">AI Fairness 360</a> — an open-source toolkit that helps you examine, report, and mitigate discrimination and bias in machine learning models throughout the AI application lifecycle. The toolkit contains over 70 fairness metrics and 10 state-of-the-art bias mitigation algorithms that have been developed by the research community. Check out a quick demo of AI Fairness 360 below.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2F1f1tizCg4y4%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D1f1tizCg4y4&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2F1f1tizCg4y4%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/39ed651fa313db360b572dc6df3f9ce5/href">https://medium.com/media/39ed651fa313db360b572dc6df3f9ce5/href</a></iframe><h3>What’s Next?</h3><p>Wondering how to get involved? Here are some ways we believe folks can have an impact on testing AI and bias:</p><ol><li>Devising practical testing methods and processes for preventing and detecting unwanted bias in datasets.</li><li>Developing new coverage models and static/dynamic analysis tools for validating AI and ML systems.</li><li>Mastering and contributing to the existing open-source toolkits for measuring fairness and detecting/mitigating unwanted AI bias.</li></ol><h4>References</h4><ol><li><a href="https://dl.acm.org/doi/10.1145/3209581">Bias on the Web</a>. R. Baeza-Yates. Comm. of the ACM, Vol. 61, № 6.</li><li><a href="https://arxiv.org/pdf/1908.09635.pdf">A Survey on Bias and Fairness in Machine Learning</a>. N. Mehrabi, F. Morstatter, N. Saxena, K. Lerman, and A. Galstyan.</li><li><a href="https://www.test.ai/research/testing-ai-and-bias">Testing AI and Bias</a>. J. Arbon.</li><li><a href="https://www.ministryoftesting.com/dojo/lessons/software-testing-heuristics-mind-the-gap">Software Testing Heuristics: Mind the Gap!</a>. R. Bradshaw, and S. Deery.</li><li><a href="https://www.techcentral.ie/the-quest-for-quality-in-ai/">The Quest for Quality in AI</a>. D. Ardalan, T. M. King, N. Chelvachandran, K. Obring, Y. Sulaiman, J. Farrier, L. Zubyte, J. Jerina, and R. Mugri.</li><li><a href="https://lionbridge.ai/articles/7-types-of-data-bias-in-machine-learning/">7 Types of Data Bias in Machine Learning</a>, H. Lim.</li></ol><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=998a5542a5e0" width="1" height="1" alt=""><hr><p><a href="https://levelup.gitconnected.com/quantifying-the-risk-of-ai-bias-998a5542a5e0">Quantifying the Risk of AI Bias</a> was originally published in <a href="https://levelup.gitconnected.com">Level Up Coding</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Getting Started with AI for Testing]]></title>
            <link>https://medium.com/ai-for-software-testing/getting-started-with-ai-for-testing-571f88dff3c9?source=rss-a951cf22285a------2</link>
            <guid isPermaLink="false">https://medium.com/p/571f88dff3c9</guid>
            <category><![CDATA[artificial-intelligence]]></category>
            <category><![CDATA[software-testing]]></category>
            <dc:creator><![CDATA[Tariq M. King]]></dc:creator>
            <pubDate>Fri, 13 Oct 2017 17:00:27 GMT</pubDate>
            <atom:updated>2020-08-03T16:02:12.531Z</atom:updated>
            <content:encoded><![CDATA[<h4>Preparing the Human Brain for the Rise of the Machines</h4><p>Last week I had the honor of giving the opening keynote at StarWest 2017 and PNSQC 2018 on the topic of Artificial Intelligence for Software Testing (AIST). The talk, entitled “<a href="https://starwest.techwell.com/program/keynotes/rise-machines-can-artificial-intelligence-terminate-manual-testing-starwest-2017"><em>Rise of the Machines: Can Artificial Intelligence Terminate Manual Testing?</em></a><em>”</em>, created quite a bit of buzz at the conferences. You can check out the video below if you missed it. Aside from the “Do you think AI will take over the world?” type questions, one of the most popular things I was asked about after the talk was: “How do I get started with AIST?”</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FJAEMbgLYCvc%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DJAEMbgLYCvc&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FJAEMbgLYCvc%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/a896fa555a35210c43b0b322b5dd7469/href">https://medium.com/media/a896fa555a35210c43b0b322b5dd7469/href</a></iframe><p>The short answer to that question was to point delegates to general resources on AI and machine learning. However, it is important to recognize that such a question is loaded and therefore deserves a more detailed answer. First let’s start by revisiting the definition of AIST.</p><blockquote>Artificial Intelligence for Software Testing (AIST) is an emerging field aimed at the development of AI systems to test software, methods to test AI systems, and ultimately designing software that is capable of self-testing and self-healing.<br> — AISTA (<a href="http://www.aitesting.org">www.aitesting.org</a>)</blockquote><p>Examining the definition we can see that how to start depends on two things: <strong>what you are trying to achieve</strong> and <strong>where it lies in the intersection </strong>of using AI to test software, testing AI-based systems, and building software with intrinsic self-testing and self-healing capabilities. A safe place to start is pursuing knowledge and understanding in the areas of artificial intelligence, software testing, and self-managing systems.</p><h4>Artificial Intelligence</h4><p>AI is not new. It has been around since the 1950’s and knowing its historical progression and major advances over the years will help you to position your work in the AI space. Creating the vision for your tool, method, or approach, acquiring the right talent, aligning team members, developing the solution, and communicating the value of your work <strong>all start with positioning</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/574/1*XmLh14KwqGNfkrYROb3zuw.png" /></figure><p>The field of AI is broad and so I recommend that you gain an understanding of that breadth before you do a deep dive into specific areas. <a href="https://www.amazon.com/Artificial-Intelligence-Modern-Approach-3rd/dp/0136042597">Artificial Intelligence: A Modern Approach </a>by Stuart Russell and Peter Norvig is a great reference book for all things AI. When you are ready to go deeper, you’ll want to get your hands on more specialized books. For example, <a href="https://www.amazon.com/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1507486794&amp;sr=1-1&amp;keywords=deep+learning">Deep Learning</a> by Ian Goodfellow presents a broad range of topics on hierarchical learning architectures. In terms of freely available self-paced multimedia learning, check out the video courses on YouTube from <a href="https://www.youtube.com/view_play_list?p=A89DCFA6ADACE599">Andrew Ng</a> (Stanford University) and <a href="https://goo.gl/SLCb1y">Lex Fridman</a> (MIT).</p><h4>Software Testing</h4><p>For as long as there has been software, there has been software testing. Despite the rise of other approaches such as formal verification and model checking, testing remains the primary means of validation and verification (V&amp;V) used in the software industry today. Like AI, the field of software testing is extremely broad, but chances are that if you are looking into AIST you may already have a background in testing. However, if you don’t and are looking for online resources on software testing, check out this post on <a href="https://www.testing-whiz.com/blog/websites-every-software-tester-should-bookmark-in-2017">45 Websites Every Software Tester Should Bookmark in 2017</a>. For books, some old favorites of mine are James Whittaker’s series on <a href="https://www.amazon.com/How-Break-Software-Practical-Testing/dp/0201796198/ref=pd_sim_14_1?_encoding=UTF8&amp;psc=1&amp;refRID=WYSNG68RW4RNKNDXK7BT&amp;dpID=517Z12E2XNL&amp;preST=_SX218_BO1,204,203,200_QL40_&amp;dpSrc=detail">How to Break Software</a>, Lee Copeland’s <a href="https://www.amazon.com/Practitioners-Guide-Software-Test-Design/dp/158053791X">Practitioner’s Guide to Software Test Design</a>, and Cem Kaner’s <a href="https://www.amazon.com/Testing-Computer-Software-2nd-Kaner/dp/0471358460/ref=pd_lpo_sbs_14_img_1?_encoding=UTF8&amp;psc=1&amp;refRID=XP1G9X6VF34ZZGZF570M&amp;dpID=51%252BhCiP8PdL&amp;preST=_SX258_BO1,204,203,200_QL70_&amp;dpSrc=detail">Testing Computer Software</a>.</p><h4>Self-Managing Systems</h4><p>In 2001, software giants IBM, Microsoft, and HP all set out on their own initiatives to define the next generation of computing systems. Such systems were envisioned to be self-managing, and able to adapt to changes in order to meet the needs of its users. IBM coined the term autonomic computing and modeled their approach against the human autonomic nervous system (ANS). The ANS regulates critical bodily functions such as homeostasis without conscious involvement. Applying this idea to computing, systems should adapt to their environment through self-configuration, self-optimization, self-protection and self-healing. What? No testing? Although the giants weren’t talking about it, in order for autonomic computing to work in practice, self-testing needs to be an inherent part of the system.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/300/1*ojApfWQ3HUguBjTYzib2NA.png" /></figure><p>It was for this reason that I decided to pursue this research area during my graduate studies from 2005–2009. Unfortunately to date there is still a general lack of research in the area of self-testable autonomic software. However, the recent advances in AI/ML, Cloud Computing, DevOps, and Microservices, have improved the potential for self-testing to provide a formidable solution to the grand challenges of software testing. We’ll be posting some self-testing and autonomic computing foundation papers on <a href="http://www.aitesting.org">AISTA’s website</a> for those interested in learning to how self-testing systems can be designed and developed.</p><h4>Other AIST Presentations</h4><p>In addition to the <a href="https://www.slideshare.net/slideshow/embed_code/key/gffZraS6189iOJ">Rise of the Machines keynote</a>, StarWest this year featured two other talks on AIST. Jason Arbon gave an updated version of his talk “<a href="https://www.slideshare.net/TechWellPresentations/ai-and-machine-learning-for-testers"><em>AI and Machine Learning for Testers</em></a><em>”, </em>originally presented earlier this year at StarEast. Paul Merrill from <a href="http://beaufortfairmont.com/">Beaufort Fairmont</a> presented a concurrent session on “<a href="https://www.slideshare.net/QASymphony/quality-jam-2017-paul-merrill-machine-learning-how-it-affects-testers"><em>Machine Learning and How it Affects Testers</em></a><em>”</em>.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FkTjaf34U6tQ%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DkTjaf34U6tQ&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FkTjaf34U6tQ%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/5fb49c3fcde36696ddf5f6a4833717ec/href">https://medium.com/media/5fb49c3fcde36696ddf5f6a4833717ec/href</a></iframe><h4>What’s Next?</h4><p>As much as you can read books and watch videos about AIST, there is nothing more powerful than getting hands to keyboard. In a future post, we’ll cover some tools that you can play with to get a feel for AI and ML.</p><p>Tariq King — Co-Chair (AISTA)</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=571f88dff3c9" width="1" height="1" alt=""><hr><p><a href="https://medium.com/ai-for-software-testing/getting-started-with-ai-for-testing-571f88dff3c9">Getting Started with AI for Testing</a> was originally published in <a href="https://medium.com/ai-for-software-testing">AI for Software Testing</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>