Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Refactoring Test Collaboration

67 views

Published on

Presented at Agile Testing Days US 2018
https://agiletestingdays.us/session/refactoring-test-collaboration/

Collective ownership for testing starts with understanding testing. Rework your team dynamics to evolve past duplication and improve performance through whole team testing. Take home practical patterns for improving your team's collaboration on testing. Because teams who own testing have more confidence in the customer value of their results.

As the Pragmatic Programmers say, "refactoring is an activity that needs to be undertaken slowly, deliberately, and carefully," so how do we begin? In this session, we will experience the complex interactions of an agile team focused on demonstrating customer value by answering a series a questions:
Where do testers get their ideas?
How are you planning to accomplish this proposed testing, tester?
Why not automate all the things?
Who is going to do this manual testing and how does it work?
How do we know whether we're testing the right things?

Build your own list of TODOs from these various practical collaboration approaches and begin deduping your team's testing for a better first day back at the office.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Refactoring Test Collaboration

  1. 1. @aclairefication #AgileTDUSA Refactoring Test Collaboration Connecting Software Testing to Development Through Analogy Claire Moss @aclairefication #AgileTDUSA
  2. 2. @aclairefication #AgileTDUSA Goal • Make getting into testing easier for someone with less* experience • * Maybe not less but just different (i.e. developers) • More emphasis on testing skills and less on testing role • Focus our work • “…a team has ‘won’ when its teams have become self-sufficient, high- performing, mighty forces fully enabled for participatory, collaborative decision-making” – Jean Tabaka Source: Collaboration Explained by Jean Tabaka
  3. 3. @aclairefication #AgileTDUSA Burning Questions? • Write them down and bring them forward so I can work them in along the way! • Rather than going straight back to your seats, let’s form 3 groups: • Not quite yet • On the way • Ready to roll Sources: http://bowperson.com/training-from-the-back-of-the-room/; https://www.kisspng.com/png-question-mark-free-content-clip-art-pictures-of-qu-204382/
  4. 4. @aclairefication #AgileTDUSA Learning Outcomes • Approaches to handle objections to executing the testing work • Ways to mentor test helpers, including pairing • Team buy-in to testing investment • Understand how other team members have been testing the work so far • Advising on opportunities to inject test thinking into all of the team activities, from story writing through to unit testing, to make the system more testable See more at https://agiletestingdays.us/session/refactoring-test-collaboration/; Source: https://www.iconsdb.com/purple-icons/opera-glasses-icon.html
  5. 5. @aclairefication #AgileTDUSA Source: https://devops-research.com/assets/transformation_practices.pdf High Performance Practices
  6. 6. @aclairefication #AgileTDUSA Fast Pass • Brainstorm what you already know about this topic • Be ready to report back some facts from this list • You have 5 minutes – go! Source: http://bowperson.com/training-from-the-back-of-the-room/
  7. 7. @aclairefication #AgileTDUSA Refactoring changing its observable behavior • Refactoring (verb): to restructure software by applying a series of refactorings without changing its observable behavior Source: https://martinfowler.com/bliki/DefinitionOfRefactoring.html; https://dzone.com/articles/what-is-refactoring • Development concept • Refactoring (noun): a change made to the internal structure of software to make it easier to understand and cheaper to modify without
  8. 8. @aclairefication #AgileTDUSA Test • This word is overloaded! • Different roles have our own ideas of what we mean when we say this word • Talking past each other?? • Beware shallow agreement! • Test not equal to automated script • Testing includes automation but isn’t the same! Source: https://watirmelon.blog/testing-pyramids/
  9. 9. @aclairefication #AgileTDUSA Collaboration • Working together: quality is everyone’s job! • Pay attention to what you produce • Patterns exist & we can leverage them • Tag Team (e.g. exchange of team roles) • 1on1 communication (e.g. Pairing) • Small groups (e.g. Mobbing) • Leaving messages/Handoffs • Are the devs on your “team” or somewhere else? Source: https://memegenerator.net/instance/22605665/disaster-girl-worked-fine-in-dev-ops-problem-now
  10. 10. @aclairefication #AgileTDUSA Who is in this room? • Quick show of hands… • Are we all testers? • A tester is somebody who knows that things can be different. – Jerry Weinberg • If not, do you even have testers? On your team? • Are we all agile? • Learning? • Practicing? • Leading?
  11. 11. @aclairefication #AgileTDUSA Fast Pass Share • Someone in each role represented here in the room • Share something you already know about test collaboration Source: http://bowperson.com/training-from-the-back-of-the-room/
  12. 12. @aclairefication #AgileTDUSA Culture • What seems to be driving the people around you to do a good job? Primarily internal or external? • Motivates decisions
  13. 13. @aclairefication #AgileTDUSA Context “The practice of testing, when applied in specific contexts, changes the purpose of testing, the relations of people, what test planning means … interactively adapting their practice of testing to a new sort of project.” – Brian Marick Source: Foreword, Testing Extreme Programming (2002)
  14. 14. @aclairefication #AgileTDUSA What is the context you want to adapt? • Role analysis • Constraints • Enablers • Measurements • Existing collaboration patterns? • Decision points!
  15. 15. @aclairefication #AgileTDUSA Test Strategy Retro • May reduce resistance by calling this a “project retrospective”? • Everyone is • Encouraged to understand • Supported to perform (testing) activities • Responds to problems rapidly Sources: https://leanpub.com/testingindevops; Collaboration Explained by Jean Tabaka
  16. 16. @aclairefication #AgileTDUSA Test Strategy Retro • Let’s focus on the observable tasks & activities in your path to production • Timeline from idea to production, from inception to completion • Silently place people, activities/practices/tasks, events, wait states, milestones, risks, impacts, dependencies, etc • Highlights, lowlights • Feelings about the timeline content Sources: https://leanpub.com/testingindevops; Collaboration Explained by Jean Tabaka
  17. 17. @aclairefication #AgileTDUSA Mature Scrum Team Interactions See more at http://sched.co/XDEkoD
  18. 18. @aclairefication #AgileTDUSA User Value Idea Discuss Idea Sketch Approach Code It Brainstorm Tests Pairing w/Dev Try It Ship MVP! Revise Discuss Idea See more at https://www.slideshare.net/aclairefication/c-moss-bigvisibletesting
  19. 19. @aclairefication #AgileTDUSA Test Strategy Retro • Let’s focus on the observable tasks & activities in your path to production • Dialogue, engaging with all the content • Contrast current with ideal (h/t Sean Cresswell) • Observations (e.g. rearranging stickies, critical path) • Appreciations • Recommendations, action plan to follow up (e.g. keep these, try these, table these, ongoing problems) Sources: https://leanpub.com/testingindevops; Collaboration Explained by Jean Tabaka
  20. 20. @aclairefication #AgileTDUSA Example XP User Story Lifecycle Source: https://blogs.msdn.microsoft.com/jmeier/2014/06/06/extreme-programming-xp-at-a-glance-visual/
  21. 21. @aclairefication #AgileTDUSA Example XP User Story Lifecycle ET! Source: https://blogs.msdn.microsoft.com/jmeier/2014/06/06/extreme-programming-xp-at-a-glance-visual/
  22. 22. @aclairefication #AgileTDUSA Stand, Stretch, & Share • What is something you see in these graphical representations that interests you? surprises you? • What is something you’ve learned that you didn’t know before? • Go write your learning down on your handout & tell your neighbor Source: http://bowperson.com/training-from-the-back-of-the-room/
  23. 23. @aclairefication #AgileTDUSA Agile “Individuals and interactions over processes and tools … Customer collaboration over contract negotiation” - Agile Manifesto Source: http://agilemanifesto.org/
  24. 24. @aclairefication #AgileTDUSA What are you trying to collaborate on? • Probably testing, right? • Skill analysis of what “testing” is for you (and others at your table) • Take 10 minutes to discuss testing skills needed to do the work! • “Often the true value of a thing isn’t the thing itself, but instead is the activity that created it.” – Dave Thomas Sources: http://pragdave.blogspot.com/2003/03/artifacting.html; https://mysoftwarequality.wordpress.com/2014/09/04/cross-dysfunctional-teams/
  25. 25. @aclairefication #AgileTDUSA Testing Activity/Skill Analysis Workshop On Self-Education (WhOSE) in software testing • Test Design • Communication • Community • Time Management • Critical Thinking • Management Source: http://whose.associationforsoftwaretesting.org
  26. 26. @aclairefication #AgileTDUSA Each Teach • Role play with the person next to you for the next 5 minutes • One of you is the tester • The other is a developer • Tester teach the developer about one of these key skills of testing that you think is most urgent & important • Then switch roles – for another 5 minutes! • What differences did you notice? • How would you change your approach? Source: http://bowperson.com/training-from-the-back-of-the-room/
  27. 27. @aclairefication #AgileTDUSA Rising’s Change Patterns • Low-Hanging Fruit / Just Do It • Trial Run / Just Enough • Easier Path • Which barriers are presently standing in the way of this change? • Which barrier do I need to tackle now? • Champion Skeptic / Fear Less • Concrete Action Plan • Small Successes / Hometown Story • Evolving Vision • Involve Everyone? Source: https://www.fearlesschangepatterns.com/
  28. 28. @aclairefication #AgileTDUSA Connecting the dots… • Okay now you have buy-in – Congrats!! • … but everything looks easier from the outside • So selling others on learning testing may not be easy… • Let’s hook into things our developers already know and pay attention to!
  29. 29. @aclairefication #AgileTDUSA Microservices • In breaking down a monolith, we are achieving microservices • More self-serve • Less mystery / selective cluelessness • Going from testing-as-a-service (i.e. you do it all for the team) • To testing as composable activites we can do to be more responsive to context
  30. 30. @aclairefication #AgileTDUSA Source: https://continuousdelivery.com/implementing/culture/ Westrum Organizational Culture
  31. 31. @aclairefication #AgileTDUSA Source: https://devops-research.com/assets/transformation_practices.pdf High Performance Practices
  32. 32. @aclairefication #AgileTDUSA Shout Out • I want to hear 8 new things we now know about this topic Source: http://bowperson.com/training-from-the-back-of-the-room/
  33. 33. @aclairefication #AgileTDUSA Goals are… • Guidance • Focus for testing • Directions without over-specifying actions • Sometimes informal • Don’t be too specific! • Making implicit expectations explicit
  34. 34. @aclairefication #AgileTDUSA Source: https://continuousdelivery.com/implementing/patterns/#the-deployment-pipeline
  35. 35. @aclairefication #AgileTDUSA Tests are… • Looking past what you hope or expect to see • Changing perspectives • Expecting surprises! • Curiosity filled by your previous knowledge & expertise • Asking a question • When you think of another one, keep track of it somewhere shared
  36. 36. @aclairefication #AgileTDUSA Test ideas • Everyone contributes!! • Directing attention • Expect to learn as you go • Be prepared to react to what you learn – new test ideas come up all the time! • Not necessarily specified things • What deliverables/outcomes will support your purpose?
  37. 37. @aclairefication #AgileTDUSA Generating test ideas • Subject Matter Experts (SMEs) / Expert input • User-oriented framing (UX) • Picking apart the requirements/problem statement • Analyzing the solution statement/implementation (e.g. using heuristics) • Sequential questioning
  38. 38. @aclairefication #AgileTDUSA Automate • Just because you have a test idea doesn’t mean it’s something worth doing over and over… but you could • And you could do it faster using a computer • But doing the wrong thing faster doesn’t sound like a great idea… • Strategy!! • ATDD • BDD • TDD • xDD??? Source: http://www.satisfice.com/blog/archives/category/exploratory-testing
  39. 39. @aclairefication #AgileTDUSA Execute • Facilitating testing – don’t do it all yourself! • People learn by doing, but not only by doing!
  40. 40. @aclairefication #AgileTDUSA Leading the way See more at http://sched.co/XDEkoD
  41. 41. @aclairefication #AgileTDUSA Communication techniques • Self-organization • Modeling • Reflection/Retrospective • Brainstorming vs listing • Participating vs observing • Writing vs speaking • Sequential questioning • Affinity grouping • Card sorting • Appreciative inquiry • Timelining (e.g. Test Strategy Retro) • Lean Coffee + Multi-voting/Dot voting Source: Collaboration Explained by Jean Tabaka
  42. 42. @aclairefication #AgileTDUSA Action Plan • What needs to be done to complete this item? • Who is prepared to own the completion of this item? • When does this item need to be completed? Conflict Resolution • Help your team seek middle ground? • Create a new solution whole team can live with & support! Source: Collaboration Explained by Jean Tabaka
  43. 43. @aclairefication #AgileTDUSA QA = Quality Acceleration • Ultimately, we want to deliver quality at speed • Let’s make that more possible through • Refactoring • Test • Collaboration! • Walk & Talk: Form pairs to walk around the room while you discuss: • What is a concrete way you will accelerate quality when you head back to work? Hear more on https://letstalkabouttests.xyz/

×