Testers in the Agile world



                        Wiktor Żołnowski
                                @streser


                         blog.testowka.pl
                    www.agileszkolenia.pl
I considered myself a Tester (on my team)
“Tester is the most important role in the
                       team”


Tester is the most important role in the team because:
- only testers and testing can add quality to the software...
- thanks to them there are fewer bugs in the software...
- they are adding high value to our products...
- it is impossible to work in a team without testers...
“Only testers can add quality to
         software...?”




  Quality is not a result of software testing - testing is
                                     only quality control
                           (and even not always this)...
“If you have testers in the team then the
number of bugs in the software is lower...?”




          Amount of implemented bugs could be lower than
                          without testers, but not always...
         It's not a tester who is responsible for implementing
                                          bugs or fixing them..
        Testing is proving that there are bugs in the software
                                             not fixing them...
“Software testing adds value to the product”




      Software testing doesn't add any value to the product
                                                  by itself...
      Try to do only software testing without programming...
“It is impossible to deliver high quality
        software without testers”




             There are many teams that work just fine
                                    without testers...
“Who is a tester?”


                                     “What is a tester?”




Tester is a state of mind...
Software testing is continuously stressing the product
and hunting for bugs...
Testing is not just clicking around...
“What is the role of a tester in an Agile
Team?”




     By "...Agile Team..." I mean collocated, cross-functional
                                                       team...
                I don't believe in “Agile Testing Teams” etc...
“From the beginning...”
Testing is not just creating and executing test scenarios...
It's not even about test automation...

               Testing is the art of asking correct questions at
               the right time:
                                    What are you working on?
                             How do you plan to implement it?
                                         What about our DoD?
                   Can you name all the test cases which you
                                  will use in your unit tests?
                                Is this feature ready for tests?
“What next?”




                              It's no more: “We – Them”
     Now WE are the team, and WE have a common goal
                       so WE will be working together...
“Feedback”




                           Is our product working properly?
       Are there any major bugs still there that need to be
                                                     fixed?
     What is the probability/risk of there being critical bugs
                                      that we didn't find yet?
                               Is it Done? Is it Done WELL?
    Could we do this better than it is right now? Should we
                                               do this better?
“The team”




                                     Higher expectations...
          Agile means continuous improvement – also your
                                  personal improvement...
   Increasing our effectiveness – it means that we will need
                       to automate some parts of our work..
“The Tester”


                      You need to be prepared for any changes...
                                        You need to be pro-active...
                                        Asking questions is crucial...
You need to find a way to react before bugs will be implemented...


                        It's because:
     “Responding to changes over following a plan”
“Testers are (?) different than programers”



                                   Different point of view...
                         Tester is closer to the customer...
           They behave as a user more than programers...


       Working with testers can be effective, because:
      “Individuals and interactions over process and
                           tools”
“Tester is the most a very important role in
the team”



           Working with testers in the team could be very
                                               effective...
        Testers need to ask questions and be pro-active...
                       Communication skills are crucial...
“There is no place for testers in the Agile
World...”


Why the hell testers aren't mentioned in methodologies like
Scrum or XP?
“Scrum tester?”


In Scrum we have cross-functional teams where everyone is
called “developer”...
Could “developer” mean “tester”?
There is Definition of Done – but there is more than one way
to assure that this done is done...
“XP tester?”


In eXtreme Programming the most important part of testing is
test automation...
But can high quality be assured only by TDD, BDD or ATDD?
Is there any place for non-technical testers?
Even if they don't know how to automate tests they always
could learn how to do it...
Could you even try Pair Programming with testers?
“Tester”


Testers with their domain knowledge and experience could be
very helpful in the programming process...
Their input into TDD or BDD can be crucial...
They are closer to the customer...
                      And we know that:
   “Customer collaboration over contract negotiation”
                    is not always so easy...
“What next?”


Tester is the most a very important role in the Agile Team!
There is no a place for testers in the Agile Team!
“We are all testers?”


Everyone is testing what she is doing – one way or another...
Everyone likes to prove that something is broken...
Everyone could ask questions mentioned before...
“We are the team”


It is crucial to work together, as a team...
Cross-functionality works only with cooperation...
You can be the most senior programmer and the most junior
tester in the team or you can be the most senior tester and the
most junior programmer...
We are the team and we have common goal which is:
 “Working software over comprehensive documentation”
Finally




There are testers among us!
Their knowledge is priceless...
Testers could be valuable team members but you need to
create proper environment for them...
Empower them!
In the end...


   "There are no testers (mentioned) in the Agile world"
                             ...
                            But
                             ...
   "Testers are very important members of agile teams."
                             ...
                            And
                             ...
                    "We are all testers."
So how many of you would call yourself a
tester now?




                          Wiktor Żołnowski
                          wiktor.zolnowski@gmail.com
                          www.agileszkolenia.pl
                          www.byop.pl
                          www.blog.testowka.pl

Abe 2012

  • 1.
    Testers in theAgile world Wiktor Żołnowski @streser blog.testowka.pl www.agileszkolenia.pl
  • 3.
    I considered myselfa Tester (on my team)
  • 4.
    “Tester is themost important role in the team” Tester is the most important role in the team because: - only testers and testing can add quality to the software... - thanks to them there are fewer bugs in the software... - they are adding high value to our products... - it is impossible to work in a team without testers...
  • 5.
    “Only testers canadd quality to software...?” Quality is not a result of software testing - testing is only quality control (and even not always this)...
  • 6.
    “If you havetesters in the team then the number of bugs in the software is lower...?” Amount of implemented bugs could be lower than without testers, but not always... It's not a tester who is responsible for implementing bugs or fixing them.. Testing is proving that there are bugs in the software not fixing them...
  • 7.
    “Software testing addsvalue to the product” Software testing doesn't add any value to the product by itself... Try to do only software testing without programming...
  • 8.
    “It is impossibleto deliver high quality software without testers” There are many teams that work just fine without testers...
  • 9.
    “Who is atester?” “What is a tester?” Tester is a state of mind... Software testing is continuously stressing the product and hunting for bugs... Testing is not just clicking around...
  • 10.
    “What is therole of a tester in an Agile Team?” By "...Agile Team..." I mean collocated, cross-functional team... I don't believe in “Agile Testing Teams” etc...
  • 11.
    “From the beginning...” Testingis not just creating and executing test scenarios... It's not even about test automation... Testing is the art of asking correct questions at the right time: What are you working on? How do you plan to implement it? What about our DoD? Can you name all the test cases which you will use in your unit tests? Is this feature ready for tests?
  • 12.
    “What next?” It's no more: “We – Them” Now WE are the team, and WE have a common goal so WE will be working together...
  • 13.
    “Feedback” Is our product working properly? Are there any major bugs still there that need to be fixed? What is the probability/risk of there being critical bugs that we didn't find yet? Is it Done? Is it Done WELL? Could we do this better than it is right now? Should we do this better?
  • 14.
    “The team” Higher expectations... Agile means continuous improvement – also your personal improvement... Increasing our effectiveness – it means that we will need to automate some parts of our work..
  • 15.
    “The Tester” You need to be prepared for any changes... You need to be pro-active... Asking questions is crucial... You need to find a way to react before bugs will be implemented... It's because: “Responding to changes over following a plan”
  • 16.
    “Testers are (?)different than programers” Different point of view... Tester is closer to the customer... They behave as a user more than programers... Working with testers can be effective, because: “Individuals and interactions over process and tools”
  • 17.
    “Tester is themost a very important role in the team” Working with testers in the team could be very effective... Testers need to ask questions and be pro-active... Communication skills are crucial...
  • 18.
    “There is noplace for testers in the Agile World...” Why the hell testers aren't mentioned in methodologies like Scrum or XP?
  • 19.
    “Scrum tester?” In Scrumwe have cross-functional teams where everyone is called “developer”... Could “developer” mean “tester”? There is Definition of Done – but there is more than one way to assure that this done is done...
  • 20.
    “XP tester?” In eXtremeProgramming the most important part of testing is test automation... But can high quality be assured only by TDD, BDD or ATDD? Is there any place for non-technical testers? Even if they don't know how to automate tests they always could learn how to do it... Could you even try Pair Programming with testers?
  • 21.
    “Tester” Testers with theirdomain knowledge and experience could be very helpful in the programming process... Their input into TDD or BDD can be crucial... They are closer to the customer... And we know that: “Customer collaboration over contract negotiation” is not always so easy...
  • 22.
    “What next?” Tester isthe most a very important role in the Agile Team! There is no a place for testers in the Agile Team!
  • 23.
    “We are alltesters?” Everyone is testing what she is doing – one way or another... Everyone likes to prove that something is broken... Everyone could ask questions mentioned before...
  • 24.
    “We are theteam” It is crucial to work together, as a team... Cross-functionality works only with cooperation... You can be the most senior programmer and the most junior tester in the team or you can be the most senior tester and the most junior programmer... We are the team and we have common goal which is: “Working software over comprehensive documentation”
  • 25.
    Finally There are testersamong us! Their knowledge is priceless... Testers could be valuable team members but you need to create proper environment for them... Empower them!
  • 26.
    In the end... "There are no testers (mentioned) in the Agile world" ... But ... "Testers are very important members of agile teams." ... And ... "We are all testers."
  • 27.
    So how manyof you would call yourself a tester now? Wiktor Żołnowski wiktor.zolnowski@gmail.com www.agileszkolenia.pl www.byop.pl www.blog.testowka.pl