Skip to content

Team work – its all about team cohesion and cooperation!

May 4, 2010

In my testing career, I have worked for a longer time, in fact almost 90%, on Agile projects that followed the Scrum methodology. One aspect of being a part of Agile teams is that I got a chance to work closely with developers, actually physically located alongside the development team. I have been a part of the dev teams, working on sprint tasks… understanding task requirements, getting clarifications, writing test cases and then testing the tasks as and when they are implemented, as opposed to testing in a separate testing phase. ‘Working as a team’ has made all the difference in the way I think about software testing.

As opposed to the traditional thinking that quality is the responsibility of the testers/QA team, Agile emphasizes that the onus of quality lies on the whole team and not only on the testers. This presented a whole new approach to testing and a new meaning to the role of testing/tester in the project. The way to go forward was with a ‘developer + tester’ attitude rather than the ‘developer Vs tester’ one. As we got together, working on our mindsets and approaching things differently, we realized the value of working as allies who share a common goal; that of completing and delivering a task/feature/defect fix on time and getting it ‘accepted’ by the product management. We were able to provide quick turnarounds, sometimes even when the target seemed unachievable.

The methods of testing varies from the informal quick checks on the dev machines, which is quite unthinkable in a traditional setup, to formal testing providing quick feedback in case of any issues found.

Informal methods do not include scripted test cases. It is something akin to smoke testing on the developer’s machine, before he/she can commit the code. In many instances this has helped us quickly uncover bugs and fix them at the initial stage itself. Lot of time saved in moving the task to and fro with elaborate notes! Here the point to be noted is that – the tester’s credibility no longer depends on the number of bugs reported or logged in the tracking system, but rather in the number of issues averted. I know that this could really be a point of contention for most testers. But that is how I have been able to achieve credibility with the developers in the team; by actually helping them do their job better!!

Working closely with them has also reinforced the fact that, by testing, I don’t intend to catch and expose their mistakes. Rather, the developers have come to realize is that all I’m trying to do is to help them deliver what is ‘required’ by the client/customer. How else can I explain the umpteen times when they have appreciated my effort and actually said ‘Thank You!’ I truly believe that such a thing would be really rare to come by in a traditional setup where developers think of testers as lesser beings and whom they have to fight to vindicate their own work.

The feeling of a shared vision and common goals is something that has got the team through the rough patches. This is something unique to Agile, I believe. It is something that we, as a team, cherish. Another significant advantage of working in this setup is that, as an outcome of my testing combined with domain knowledge, I have been able to provide significant inputs that aid in the development effort, either in the approach or as a pointer to the cause of an issue.

On the whole, I am as much a team player as a developer on the team. And collaboration and communication are what keep the team going!

Signing off with a very crisp and precise article by Lisa Crispin ; it is very pertinent to the things that I have said here.

Advertisements
5 Comments leave one →
  1. jini permalink
    May 6, 2010 5:22 pm

    Nice post! totally agree about team cohesion and cooperation!

  2. May 7, 2010 9:27 pm

    Hey never knew abt this blog. Got to leave office nw. Wil b bk to read 🙂

    • May 10, 2010 1:38 pm

      I started this one just sometime back.. linked it recently 🙂

  3. May 23, 2010 5:31 pm

    That is well summarized on how to work in agile way,but sadly at most place agile is used to pressurize team,it is the mindset that helps to achieve good results in agile. It is very pathetic that a person working in agile still reports to a team lead who is no way involved in that agile team.Trying to separate testing team from developer in an agile environment.
    For successful agile team you need people with agile mindset ,else it is hard to achieve, at least good to see you working a better environment.
    I am fighting hard to achieve that.
    –Dhanasekar S

    • May 24, 2010 2:56 pm

      Thanks Dhanasekar. Indeed, success or failure in Agile depends on the mindset of people in an Agile team.
      I have been lucky to have worked on teams that valued and encouraged the Agile mindset and didnt depend on pressure tactics to get things done!
      All the best in your endeavors towards a better working environment 🙂

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

%d bloggers like this: