STARCANADA 2013 Keynote: Cool! Testing’s Getting Fun Again


Published on

The last exciting era in testing was in the late ‘90s when the web turned technology on its ear, the agile movement overthrew our processes, and the rise of open source gave us accessible and innovative tools. However, since then, Jonathan Kohl finds it has been a lot of the same-old, same-old: more web applications, variants of agile, and testing tool debates. After a while, you start to feel like you’ve “Been there, Done that, Got that t-shirt.” However, testing doesn’t have to be a rehash of all the things you’ve done before. It is an exciting time to be a tester! Major changes are happening all at once. Smartphones and tablets have upended computing. Continuous release movements like DevOps are challenging our processes. BigData, the Cloud, and other disruptive technologies are fostering the development of new tools. These innovations are pushing testers in new directions. While this upheaval is challenging, it also offers enormous opportunity for growth. Jonathan challenges you to embrace these changes—and have fun doing it. Discover today’s amazing new opportunities, and how we can learn, adapt, and ride the wave.

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

STARCANADA 2013 Keynote: Cool! Testing’s Getting Fun Again

  1. 1. Cool! Testing’s Getting Fun Again Jonathan Kohl @jonathan_kohl 1
  2. 2. Author: Contributing Author: 2
  3. 3. Welcome to the Paradigm Shift “We shape our tools, and thereafter they shape us.” –Marshall McLuhan 3
  4. 4. Forces for Change from the Past ❯Traditional QA process: 1970s ❯Test case management tools: 1980s ❯The World Wide Web: 1992 ❯Scrum: created in 1992 ❯GUI Automation tools: 1990s ❯Agile methods: 1990s-early 2000s ❯Exploratory Testing: coined in 1987 4
  5. 5. New Forces of Change ❯Mobile devices: smartphones, tablets, apps and wireless infrastructure ❯The Cloud: utility computing distributed geographically for low cost ❯BigData: noSQL, different tools, models and enormous scale of queries ❯DevOps: combine development and operations teams. – Themes: continuous releases, little regression testing, tools to test in production 5
  6. 6. Combining Technologies ❯Pervasive computing: – Devices everywhere, embedded within our lives in the real world, not just an office or home ❯Personalized computing: – Content and processing dependent on location, activity and demographics ❯Enormous scale: – Scalability, performance are vital ❯Usability, Privacy and Security: – Embedded technology can cause more harm 6
  7. 7. New Testing Pressures ❯Technology – More technical skills, new technologies to learn ❯Tools – Old tools don’t work as well, new areas have poor tool support ❯Process – Enmeshed with other teams, more troubleshooting and monitoring required ❯Test execution: – Computing is context and people-dependent, so our testing needs to reflect that 7
  8. 8. “Testing has to Adapt” ❯To technology changes ❯To new methodologies: Agile, Lean, kanban, others ❯To different styles of working and tools ❯To different terminology ❯To different products, expectations and consumer behavior 8
  9. 9. A New Era for Testing It’s the end of the (testing) world as we know it! ❯Less individual testing – New technology depends on distribution and user collaboration in different locations worldwide ❯No more “black box” – Pervasive technology requires knowledge of new computing devices, sensors, communication, wireless and distributed computing ❯New productivity tools – Need to support testing on the move, and distributed collaboration, rich system information 9
  10. 10. Problems With The Status Quo 2 10
  11. 11. Testing Loses Out ❯People don’t want to test, so it gets outsourced: – To tools – To other people – We lose jobs, lose new entrants into the field ❯Viewed as a drag on productivity: – “Testing is always behind.” – “Testers just test what we tell them to – they don’t provide value.” 11
  12. 12. We Follow Rather than Innovate ❯What we do is dictated by others – Tradition: test the way it has always been done – Programmers: automate it! – Managers : count the test cases ❯Our tools aren’t compatible with new technology and methodologies – Test case management systems & mobile – Test cases and Agile methods – Regression automation rather than real world conditions and distributed testing 12
  13. 13. Profession Loses Credibility ❯Rather than deal with what people dislike about testing and address that, we will continue to lose out: – Why would I want to go into testing? It looks boring and the tools are outdated. – I see no career path here – management doesn’t value testing enough to invest in it. – Why should we help the testing team when they get behind? I’d rather do anything else. 13
  14. 14. Improve Testing Engagement: FUN! 3 14
  15. 15. Reinvent Reality to be More Like a Game 15
  16. 16. Game Definition ❯“All games share four defining traits: a goal, rules, a feedback system and voluntary participation” – Jane McGonigal [1] ❯“A situation involving conflict and cooperation.” – McFadzean/Kohl [2] ❯“Games make us happy because they are hard work that we choose for ourselves.” – Jane McGonigal [1] Reality is Broken, McGonigal, Jane. 2010. [2] The Software Development Game, McFadzean, Kohl. 2012. Better Software Magazine. [1] 16
  17. 17. Gamification Happiness Goals ❯More satisfying work – It feels good to work hard at testing ❯Hope of success – My testing work matters to me, my team and our customers ❯Social Connections – I don’t feel alone, I am part of a team who is learning together ❯Meaning in what we do – My contributions matter to the success of our products Reality is Broken, McGonigal, Jane. 2010. 17
  18. 18. Idea 1: Alternate Reality Games ❯Taking game mechanics and applying them to the real world – Chore Wars: makes household chores a fun activity – Super Better: helps people assist you when recovering from illness ❯We can do this in testing as well – If we do it right, you won’t get distracted by the gaming aspects, you’ll just have a different approach Reality is Broken, McGonigal, Jane. 2010. ch. 7 18
  19. 19. Idea 2: Bring Reality Into Games ❯Solve real-world problems within video games: – e.g. Anna Sort’s World of Warcraft Diabetes Mod ❯Distribute basic testing to gamers – Utilize location and distribution to find out important information such as Yes/No tests – Integrate a test task within a game quest Designing Games as a Nurse, Sort, Anna. 2012. Games for Health Europe 19
  20. 20. A Gamification Model 4 20
  21. 21. Use Intrinsic and Extrinsic Rewards ❯Exploratory testing: qualitative focus. Reward is based on approach, testers have reasonable amount of choice and autonomy in work. ❯Scripted testing: quantitative focus. Reward based on coverage. Very little choice in what to test, regression-heavy. ❯Gamified testing: – blend the quantitative and qualitative while creating an effective approach that works for you. 21
  22. 22. Quality Discoveries – Epic Wins ❯There is joy and incredible value in discovering important issues in the software we test. Epic Win – Reality is Broken, McGonigal, Jane. 2010. pp. 247-48 22
  23. 23. A Gamified Model of Testing 23
  24. 24. Test Quests ❯Create a challenge for testers ❯Adventures rather than coverage ❯Share information, visibility on coverage and progress ❯Extrinsic and intrinsic rewards ❯Can contain: – – – – – Tests Tasks Tours Sessions, threads, etc Anything useful for testing 24
  25. 25. Test Quests 1. Goal statement (what we intend to accomplish) 2. Why the goal matters (why are we doing this?) 3. Where to go in the application (what technique or approach are we using to test?) 4. Instructions (not detailed steps, but enough guidance to help) 5. Proof of completion (how do you know when you are finished?) Quests – Reality is Broken, McGonigal, Jane. 2010. pp. 56-57 25
  26. 26. Guidance ❯Test plans, strategies ❯Video demos and activities ❯Documentation: – How to and other guides – Coverage models – Checklists – Mind maps ❯Utilize and exploit technology provide enough guidance to be effective, but not so much to crush creativity and choice. 26
  27. 27. Rewards from Games ❯Leveling up – Provide experience points for those who have completed testing activities ❯Character growth – Developing your skills personally and professionally ❯Completion – Visible progress on testing and coverage ❯A meaningful test approach – We don’t have control over bug finding, so reward testers for having a great methodology ❯Make difficult tasks fun – Extra rewards for regression testing, maintenance work, and anything unpleasant 27
  28. 28. Social Interactions ❯Mentoring and guidance ❯Healthy competition – Fun collaboration ❯Knowledge and information exchange with technology – Video, chat, social networking ❯Harness people’s talents physically and virtually to help complete quests – Collaborate to get there faster 28
  29. 29. Use of Tools ❯Gain visibility into what is being done – Like heads-up displays in games ❯Understand progress and quality information at a glance – Visible, simple dashboards ❯Use automation and other tools to help testers do more – Tools to help us have more power like weapons, vehicles and magic in games 29
  30. 30. Ideals in Testing ❯Many epic wins – extraordinary positive outcomes ❯Epic meaning – feel capable and inspired ❯Urgent optimism – work to find those wins ❯Blissful productivity – people work hard if it makes you happy ❯Strong social fabric – we can build bonds of trust and co-operation ❯ We can create the testing future we need. Gaming can Make a Better World, TED Talk. McGonigal, Jane. 2010. 30
  31. 31. Create New Tools to Shape Us It’s time to create a new model of testing that is effective, engaging, and fun. 31
  32. 32. Jonathan Kohl @jonathan_kohl ©2013 Kohl Concepts Inc. 32