09 February 2012

Cross-Pollination

  I've been working in an agile development environment for a couple of months now and a thought has been niggling away in the back of my mind.
  One of the ideas that agile raises is the idea that people are not segregated, or purely responsible for their own silos. The most common scenario I have seen is developers helping out testers. But I have not seen the reverse. I've not been asked, when there is a backlog of development work, if there are any cards I can work on.
  So here is my question. Are there any testers out there who can and will take on development work if required? I don't mean automating tests, but actively contributing to a products code base.
  Personally, I think it is a good idea, especially for cleaning up small issues (e.g. spelling mistakes) where the time it takes to send it back to dev and have someone else do it is longer than just doing it yourself. The biggest problem I can see is that a tester is never going to know the code as well as a dev. Therefore, knowing which activities it is worth you performing may be a bit tricky, but I do believe it is worth trying.

5 comments:

  1. for this, testers, need to have submit rights, and I'm not sure about this. Today I'll fix a misspelling, tomorrow I'll try to fix some broken links, or something like this, and in time I'll be sure about me and I'll rewrite a function or a broken formula which interact with a lot of other functions and when you have a complex project will crash entire project.
    If testers will have submit rights, in time, can rise the problem between testers and developers and at the end testers will lose submit rights.

    ReplyDelete
    Replies
    1. You are probably right when touching code we are testing, but does that mean you shouldn't be able to change code at all? I'd expect my contributions to be code reviewed certainly, but that doesn't follow then that I couldn't do the work at all. Bear in mind, you can end up in the situation you describe just by having devs change code.

      Delete
  2. Interesting - I've started a discussion on the STC to see if anyone is doing this

    http://www.softwaretestingclub.com/forum/topics/anyone-changing-production-code

    ReplyDelete
  3. Thanks Phil. I was going to post it there myself, I look forward to seeing how people answer.

    ReplyDelete
  4. Hi Andrew,

    I've responded on Phils post on STC, but the crux of the reply was:

    We (Testers) pair with Programmers to fix defects we've raised. This means we get to learn the code in that specific area & any potential regressions that may have been introduced due to impacting other areas of the code.
    We'll write the failing test to reproduce the bug, & we'll set about fixing the bug.

    We do fix typos & the like without collaboration

    We also pair with the Designers to fix look n feel issues.

    I think part of this flexibility is due to Continuous Integration - we'll know immediately if we've made a mistake.
    This also helps to establish trust in the Dev team that we're all able to edit/write code.

    ReplyDelete