Test coach versus test specialist, impact on queues


I recently had a very interesting conversation with a group of skilled testers on whether or not there should always be a test specialist in a cross-functional team.

A lot of people say yes, my personal experience says not.

My personal experience tells me that the most effective and efficient approach uses a test coach that slowly makes himself scarce. My experience focuses on creating competencies for completing an activity (testing) in a collaborative context.

One aspect I am finding difficult to explain is the impact on queues of a test coach approach, I will use a series of Scenarios and pictures to facilitate my reasoning.

If you feel like substituting activity A = development and activity B = testing feel free, but this approach is activity agnostic in my experience as I have applied it to analysis, and development obtaining similar results.

Scenario 1 – Test specialist

In the presence of one specialist on Activity B and many specialists on activity A.
Problem: Long q
ueues form in Ready for Activity B (Case1) or worse specialist multitasks on many activities at the same time slowing down flow of work as per Little’s law (Case2)

Screen Shot 2017-05-29 at 10.40.47

Scenario 2 – Test coach

Stage 1: In the presence of one coach on Activity B and many specialists on activity A
Initially coach pairs on Activity B with people that do activity A. This way we obtain 2 benefits:

  1. Queue in “Waiting for Activity B” is reduced as one person normally performing activity A is busy pairing with coach on one activity B task
  2. By pairing on activity B feedback loops are shortened
  3. Person with activity A acquires new skills to perform activity B from pairing with coach
  4. Quality of activity B increases as it is a paired activity
  5. Flow improves because of 1 and 2

Screen Shot 2017-05-29 at 11.22.49

Stage 2: When cross-pollination of skills required for activity B starts to pay off, we have 2 benefits

  1. Normally some activity A person will show particular abilities with activity B, in this case this person can pair with another less skilled activity A person to perform activity B
  2. Queue in “Waiting for Activity B” is reduced as more people with activity A skills are performing activity B
  3. Flow of value improves lead time decreases
  4. More activity A people get skills on activity B

Screen Shot 2017-05-29 at 10.56.00

Stage 3: All activity A people are able to perform activity B
Activity B Coach can abandon the team to return only occasionally to check on progress. Benefits:

  1. Activity A and activity B can be performed by every member of the team
  2. the WIP limit can be changed to obtain maximum flow and eliminate the queue in Ready for Activity B.
  3. The flow of value is maximised
  4. The lead time is minimised

Screen Shot 2017-05-29 at 10.58.05

WARNING: I have applied this approach to help teams with testing for many years. It has worked in my context giving me massive improvements in throughput and reduction of lead time. This is not a recipe for every context, it might not work in your context, but before you say it won’t work, please run an experiment and see if it is possible.

This is not the only activity that a good test coach can help a team on, there are many shift left and shift right activities that will also reduce the dependency on activity B.

I have been told a million times “it will never work”, I never believed the people who told me and tried anyway, that’s why it worked.

Try for yourself, if it doesn’t work, you will have learned something anyway.

Advertisements

9 thoughts on “Test coach versus test specialist, impact on queues

  1. Posting this on behalf of Lisa Crispin:
    Here’s my comment though: Interesting way to compare and contrast! You make the problems of having only testers do testing quite visible.

    I’ve had good success with a combination. The test specialists on the team also act as test coaches, pairing with the devs, doing group or mob testing along with workshops to teach testing skills. Developers, PMs and designers take on more testing activities on their own, and testing specialists keep working together with them too. We keep identifying and solving the problems in the way of the quality we desire and frequent delivery of new value to production.

    I think some delivery teams can do testing activities they need without a permanent tester. However most teams I see do better with one or more permanent test specialists. New problems around testing will always come up. A specialist can help the team experiment with possible solutions quicker, in my view.

    • Replying to Lisa’s message above:

      Thanks for sharing your experience Lisa, it is definitely context dependent as you say. Test challenges change continuously as you say and a good tester is always welcome in a team, you are right. In my case, as a coach I see this happening with check ins happening on demand or periodically or in the most ideal case, with developers, PO’s and business analysts growing strong testing capability and being able to resolve the new challenges.

      One thing that has helped me greatly in the process of coaching developers on testing has been reducing the batch size of the delivery and in particular applying continuous delivery. Developers are very receptive when challenged with reducing risk by reducing the size of the delivery. This has also greatly simplified exploratory testing on individual user stories as the breadth of the change is often extremely small and has allowed me to convince even the most resistant developers to perform exploratory testing.

      Thanks again for your feedback, it is always very much appreciated

  2. Nice article and good insights in the comments. My first reaction was that I personally think tjat a skilled tester always should act as a test coach in a cross-functional team so why bother making a difference. But taking it one step further, there can be a point making thus destinction to point out that the testing is a team responsibility.

  3. The proposed approach could definitely work in specific contexts. In fact I have also seen good agile teams with no testers. Their context demanded good enough automated checks.
    Saying that – to me a queue build up would mean the basic manifesto of `Individuals and interactions over processes and tools` not practised. Quality in an agile team should be owned by the team and not an individual with hat of a tester. Good agile teams pair with one another at every stage. Which brings me to your question of why are the stories queuing up? Should all stories be tested by a tester on the team? What is stopping dev’s to test and move some of the cards across? Why is more work taken up when the stories in play are not Done? Is the focus on velocity encouraging such a behaviour? Do testers not pair with dev’s before the card is dev complete?

    • Thanks for your feedback Sharath. I think we are saying the same thing. The queues form when we expect a tester to always test every user story. This is extremely common in many agile teams, hence my post.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s