Loading ...
Sorry, an error occurred while loading the content.
 

Testing without Unit Testing

Expand Messages
  • Asad
    Hello Folks , We have a develop a software but unfortunately we don t have automate tests. Now in emergency state we must find the software bugs and fix them
    Message 1 of 19 , Jun 6, 2010
      Hello Folks ,

      We have a develop a software but unfortunately we don't have automate tests.

      Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
      1- we don't have enough time.
      2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
      3-write unit test after writing code is not efficient-er that write test before code(TDD).

      Now I'm looking for ways to testing this software with our limitations.

      Cheers

      Asad Safari
      http://sirasad.wordpress.com
      http://www.iragile.com
    • Tara Santmire
      I would argue that you don t have time not to do unit testing. Trying to identify all of the bugs and fix them at the integration system user level will be
      Message 2 of 19 , Jun 6, 2010

        I would argue that you don’t have time not to do unit testing. 

         

        Trying to identify all of the bugs and fix them at the integration\system\user level will be VERY time consuming and is  unlikely to find all of the bugs because of the exponential number of paths through a system.

         

        The efficient way of testing is to write the unit tests.  Teaching the concepts of unit testing to experienced developers should not be very time consuming.

         

        Assuming that you have individuals other than developers on your team they can start the integration\system\user testing while the developers are working on unit testing.  Possibly not the most efficient strategy as you may identify bugs more than once, but may be your best path given your time constraint. 

         

        Also, like  the product backlog you can prioritize the areas that you will test.  Which areas of code are reused the most – unit test those first.  Which areas of the software are most critical for the user – test those first.    Etc. 

         

        Tara E. Santmire, CSM, PMP
        tara@...

         

        From: scrumdevelopment@yahoogroups.com [mailto:scrumdevelopment@yahoogroups.com] On Behalf Of Asad
        Sent: Sunday, June 06, 2010 8:08 AM
        To: scrumdevelopment@yahoogroups.com
        Subject: [scrumdevelopment] Testing without Unit Testing

         

         

        Hello Folks ,

        We have a develop a software but unfortunately we don't have automate tests.

        Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
        1- we don't have enough time.
        2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
        3-write unit test after writing code is not efficient-er that write test before code(TDD).

        Now I'm looking for ways to testing this software with our limitations.

        Cheers

        Asad Safari
        http://sirasad.wordpress.com
        http://www.iragile.com

      • PeteCRuth@aol.com
        It seems to me that the lack of time is something of a red herring ; if you ve never done it, how do you know how long it will take? This looks like a case
        Message 3 of 19 , Jun 6, 2010
          It seems to me that the lack of time is something of a "red herring"; if you've never done it, how do you know how long it will take? This looks like a case of looking through the wrong end of the telescope.
           
          Inserting automated unit tests provides the fastest way to determine the status of the software; just adding  the tests will help you to understand what the software is supposed to be doing, and running them will determine whether the software is running properly or not. If it looks like a daunting task, it might be because you haven't done anything like it before. At a certain point, when enough tests have been applied and run, it's likely that you'll get to a point at which the proper operation of the software may be inferred from the aggregate results obtained in the process. You can get to that "critical point" as quickly as possible by applying the tests to those functions that provide the highest value or the most important functionally, and working back from that.
           
          In a recent post on this topic, Tara@... provides what might be the best advice, under the current circumstances:
           
          "Assuming that you have individuals other than developers on your team they can start the integration\ system\user testing while the developers are working on unit testing.  Possibly not the most efficient strategy as you may identify bugs more than once, but may be your best path given your time constraint."  and "Also, like  the product backlog you can prioritize the areas that you will test.  Which areas of code are reused the most – unit test those first.  Which areas of the software are most critical for the user – test those first."     
           
          I suspect that this strategy will yield the best results for the effort. Further, nothing succeeds like success. Achieving positive results quickly may also yield a more cooperative and reasonable attitude on the part of your customer.
           
          Good luck to you.
           
          Regards,
           
          Pete
           
           
          In a message dated 6/6/2010 5:09:03 A.M. Pacific Daylight Time, safari_asad@... writes:
           

          Hello Folks ,

          We have a develop a software but unfortunately we don't have automate tests.

          Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
          1- we don't have enough time.
          2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
          3-write unit test after writing code is not efficient-er that write test before code(TDD).

          Now I'm looking for ways to testing this software with our limitations.

        • PeteCRuth@aol.com
          Excellent advice. In a message dated 6/6/2010 5:30:49 A.M. Pacific Daylight Time, tara@maresreach.net writes: The efficient way of testing is to write the
          Message 4 of 19 , Jun 6, 2010
            Excellent advice.
             
            In a message dated 6/6/2010 5:30:49 A.M. Pacific Daylight Time, tara@... writes:

            The efficient way of testing is to write the unit tests.  Teaching the concepts of unit testing to experienced developers should not be very time consuming.

            Assuming that you have individuals other than developers on your team they can start the integration\ system\user testing while the developers are working on unit testing.  Possibly not the most efficient strategy as you may identify bugs more than once, but may be your best path given your time constraint. 

            Also, like  the product backlog you can prioritize the areas that you will test.  Which areas of code are reused the most – unit test those first.  Which areas of the software are most critical for the user – test those first. 

          • George Dinwiddie
            Asad, Yes, everybody says they don t have enough time when they really mean they haven t taken the time. You get to choose your actions. If you re trying to
            Message 5 of 19 , Jun 6, 2010
              Asad,

              Yes, everybody says they "don't have enough time" when they really mean
              they haven't taken the time. You get to choose your actions.

              If you're trying to prevent future bugs, then automated testing is the
              way to go. If you're trying to identify bugs and estimate the quality
              of the software you've got, then the "Rapid Software Testing" techniques
              of James Bach and Michael Bolton will be useful for you.

              No single technique will prove to be sufficient in the long run. You
              have to cover all the bases if you want a quality product to release.

              - George

              Asad wrote:
              > Hello Folks ,
              >
              > We have a develop a software but unfortunately we don't have automate tests.
              >
              > Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
              > 1- we don't have enough time.
              > 2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
              > 3-write unit test after writing code is not efficient-er that write test before code(TDD).
              >
              > Now I'm looking for ways to testing this software with our limitations.
              >

              --
              ----------------------------------------------------------------------
              * George Dinwiddie * http://blog.gdinwiddie.com
              Software Development http://www.idiacomputing.com
              Consultant and Coach http://www.agilemaryland.org
              ----------------------------------------------------------------------
            • irvingthemagnificent
              How will you know if you ve fixed a bug if you DON T write a test for it? If you really do have a terrible time crunch, then it is probably too hard to go back
              Message 6 of 19 , Jun 6, 2010
                How will you know if you've fixed a bug if you DON'T write a test for it?

                If you really do have a terrible time crunch, then it is probably too hard to go back and write tests for the whole code base. But it IS possible to write a test for a particular behavior that is known buggy, find the problem and then fix it.

                In your case, I would probably start with functional tests against the major user stories and work backwards to the model as problem areas are identified.

                Also immediately spend some time on version 2 of the app - with tests in place right from the beginning this time.

                Good luck!



                --- In scrumdevelopment@yahoogroups.com, "Asad" <safari_asad@...> wrote:
                >
                > Hello Folks ,
                >
                > We have a develop a software but unfortunately we don't have automate tests.
                >
                > Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
                > 1- we don't have enough time.
                > 2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
                > 3-write unit test after writing code is not efficient-er that write test before code(TDD).
                >
                > Now I'm looking for ways to testing this software with our limitations.
                >
                > Cheers
                >
                > Asad Safari
                > http://sirasad.wordpress.com
                > http://www.iragile.com
                >
              • Adam Sroka
                If time is the most important criteria then give it to the customers. They will find the bugs faster than you can.
                Message 7 of 19 , Jun 6, 2010
                  If time is the most important criteria then give it to the customers. They will find the bugs faster than you can.

                  On Sun, Jun 6, 2010 at 5:07 AM, Asad <safari_asad@...> wrote:
                   

                  Hello Folks ,

                  We have a develop a software but unfortunately we don't have automate tests.

                  Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
                  1- we don't have enough time.
                  2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
                  3-write unit test after writing code is not efficient-er that write test before code(TDD).

                  Now I'm looking for ways to testing this software with our limitations.

                  Cheers

                  Asad Safari
                  http://sirasad.wordpress.com
                  http://www.iragile.com


                • Dan Rawsthorne
                  And they ll find the ones that really matter, too! Dan Rawsthorne, PhD, CST Senior Trainer/Coach, CollabNet drawsthorne@collab.net, 425-269-8628
                  Message 8 of 19 , Jun 6, 2010
                    And they'll find the ones that really matter, too!

                    Dan Rawsthorne, PhD, CST
                    Senior Trainer/Coach, CollabNet
                    drawsthorne@..., 425-269-8628

                    Adam Sroka wrote:
                    >
                    >
                    > If time is the most important criteria then give it to the customers.
                    > They will find the bugs faster than you can.
                    >
                    > On Sun, Jun 6, 2010 at 5:07 AM, Asad <safari_asad@...
                    > <mailto:safari_asad@...>> wrote:
                    >
                    >
                    >
                    > Hello Folks ,
                    >
                    > We have a develop a software but unfortunately we don't have
                    > automate tests.
                    >
                    > Now in emergency state we must find the software bugs and fix them
                    > in 3 weeks. i know that the efficient way is Write unit tests for
                    > software but we have three problems :
                    > 1- we don't have enough time.
                    > 2- developers are not familiar with unit testing and their
                    > learning will be take time and we don't have time.
                    > 3-write unit test after writing code is not efficient-er that
                    > write test before code(TDD).
                    >
                    > Now I'm looking for ways to testing this software with our
                    > limitations.
                    >
                    > Cheers
                    >
                    > Asad Safari
                    > http://sirasad.wordpress.com <http://sirasad.wordpress.com>
                    > http://www.iragile.com <http://www.iragile.com>
                    >
                    >
                    >
                    >
                    >
                    >
                    >
                    >
                    > =======
                    > Email scanned by PC Tools - No viruses or spyware found.
                    > (Email Guard: 7.0.0.18, Virus/Spyware Database: 6.15150)
                    > http://www.pctools.com
                    > <http://www.pctools.com/?cclick=EmailFooterClean_51>
                    > =======
                  • Parag Gadhia
                    Hi, There is no alternative to unit testing. If you cannot do automated testing then you need to do the manual testing. It s always better to buy time from
                    Message 9 of 19 , Jun 6, 2010

                      Hi,

                       

                      There is no alternative to unit testing. If you cannot do automated testing then you need to do the manual testing.

                       

                      It’s  always better to buy time from customer rather than skip unit testing.

                       

                       

                      Regards

                       

                      Parag Gadhia

                    • Roy Morien
                      I always felt that having end of sprint demo s, and putting the components in the hands of the users, for them to work with, familiarise, train on ... and find
                      Message 10 of 19 , Jun 7, 2010
                        I always felt that having end of sprint demo's, and putting the components in the hands of the users, for them to work with, familiarise, train on ... and find bugs in ... was a pretty normal activity. Users are really good at finding bugs, especially those wo take it upon themselves to try to sink the boat as quickly as possible. But, it is a great way to lighten your development testing burden, but it does not replace it. There is great value in involving the client in this way. But also remember, that bugs sometimes aren't bugs. Often they are a result of a misunderstanding or communications glitch between developer and user. Often they are new ideas that the user comes up with when using the software delivered. But be up-front with the users. Tellthem straight 'we want you to exercise this software, and find all the bugs we couldn't'. This takes away the view that you have delivered working software but weren't careful enough to ensure it is correct. The users should be aware that software is complex, and they have a role in proving that it works too.
                         
                        Regards,
                        Roy Morien
                         

                        To: scrumdevelopment@yahoogroups.com
                        From: adam.sroka@...
                        Date: Sun, 6 Jun 2010 16:29:12 -0700
                        Subject: Re: [scrumdevelopment] Testing without Unit Testing

                         
                        If time is the most important criteria then give it to the customers. They will find the bugs faster than you can.

                        On Sun, Jun 6, 2010 at 5:07 AM, Asad <safari_asad@ yahoo.com> wrote:
                         

                        Hello Folks ,

                        We have a develop a software but unfortunately we don't have automate tests.

                        Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
                        1- we don't have enough time.
                        2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
                        3-write unit test after writing code is not efficient-er that write test before code(TDD).

                        Now I'm looking for ways to testing this software with our limitations.

                        Cheers

                        Asad Safari
                        http://sirasad. wordpress. com
                        http://www.iragile. com






                        Meet local singles online. Browse profiles for FREE!
                      • Stephan
                        Hi Asad, As I read your question, I wondered whether users have already seen the product. The mission of finding bugs sounds even more challenging if users
                        Message 11 of 19 , Jun 7, 2010
                          Hi Asad,

                          As I read your question, I wondered whether users have already seen the product. The mission of "finding bugs" sounds even more challenging if users of the system never saw it before.

                          I'll give you my two cents.

                          First, I would suggest that users be given the system asap so that they be able to validate whether it is what they expected. In addition to the risk of finding bugs, you might run into a "this is not what we expected" situation.

                          If you don't have any test, and have loads of bugs to solve, you cannot fix anything safely. I would suggest that you try and add tests before fixing a bug at least. Try and reproduce the problem with a test and the fix the code. In the mean time, manual regression testing will be needed to continuously test the integrated bug fixes. You will need humans in minutes, hours or days what automated tests do in seconds or minutes.

                          It is also important to prioritise bugs and try not to bite off more than you can chew. In such a stressful situation, it is important to keep one's head cool and remain pragmatic. Running one day sprints is a good way to approach you problem. Plan, do, check and act in one day.

                          Cheers,

                          Stephan

                          --- In scrumdevelopment@yahoogroups.com, "Asad" <safari_asad@...> wrote:
                          >
                          > Hello Folks ,
                          >
                          > We have a develop a software but unfortunately we don't have automate tests.
                          >
                          > Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
                          > 1- we don't have enough time.
                          > 2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
                          > 3-write unit test after writing code is not efficient-er that write test before code(TDD).
                          >
                          > Now I'm looking for ways to testing this software with our limitations.
                          >
                          > Cheers
                          >
                          > Asad Safari
                          > http://sirasad.wordpress.com
                          > http://www.iragile.com
                          >
                        • Asad
                          Thanks for Answers Some of friends said that we must give software to customer and customer must test it. yeah , we did it . it was our strategy . we deliver
                          Message 12 of 19 , Jun 7, 2010
                            Thanks for Answers

                            Some of friends said that we must give software to customer and customer must test it. yeah , we did it .

                            it was our strategy . we deliver demo every 3,4 days to customer , customer tested it and we solve bugs and embrace the changes. (customer test it every day ex 10 hours per day)

                            But it's our mistake that we thought in this strategy doesn't need Unit Tests . I think the current bugs made on Embrace changes.

                            Now the customer is not with us. when we deliver a demo to him . he test it , when he find a bug , he stop the testing and send a bug for us. we should fix a bug and create a patched version and send it to him . so he find a bug and ... .

                            the customer testing are efficient , but he kill the time .

                            I think this solution :

                            irvingthemagnificent wrote:

                            >it IS possible to write a test for a particular behavior that is known buggy, find the problem and then fix it.


                            Can be useful

                            Cheers
                          • George Dinwiddie
                            Asad, ... http://blog.gdinwiddie.com/2010/03/05/testing-in-depth/ ... You ve got a large loop, there, within your feedback cycle. How can you find some of
                            Message 13 of 19 , Jun 7, 2010
                              Asad,

                              Asad wrote:
                              > Thanks for Answers
                              >
                              > Some of friends said that we must give software to customer and
                              > customer must test it. yeah , we did it .
                              >
                              > it was our strategy . we deliver demo every 3,4 days to customer ,
                              > customer tested it and we solve bugs and embrace the changes.
                              > (customer test it every day ex 10 hours per day)
                              >
                              > But it's our mistake that we thought in this strategy doesn't need
                              > Unit Tests . I think the current bugs made on Embrace changes.

                              http://blog.gdinwiddie.com/2010/03/05/testing-in-depth/

                              > Now the customer is not with us. when we deliver a demo to him . he
                              > test it , when he find a bug , he stop the testing and send a bug for
                              > us. we should fix a bug and create a patched version and send it to
                              > him . so he find a bug and ... .
                              >
                              > the customer testing are efficient , but he kill the time .

                              You've got a large loop, there, within your feedback cycle. How can you
                              find some of these bugs with less delay?

                              - George

                              --
                              ----------------------------------------------------------------------
                              * George Dinwiddie * http://blog.gdinwiddie.com
                              Software Development http://www.idiacomputing.com
                              Consultant and Coach http://www.agilemaryland.org
                              ----------------------------------------------------------------------
                            • Adam Sroka
                              Hmm... I agree that customer testing does not replace developer testing (nor vice versa). However, the premise was, Here we are at the end of a release and we
                              Message 14 of 19 , Jun 7, 2010
                                Hmm... I agree that customer testing does not replace developer testing (nor vice versa). However, the premise was, "Here we are at the end of a release and we haven't tested anything, how should we find the bugs?"

                                My reaction is:

                                1) It is too late to start developer testing.
                                2) You are going to have bugs.
                                3) Your customers will find them faster than you will.

                                I am not suggesting that this is the "right way" to do it, nor how I would do it, but that it satisfies the premise.

                                On Mon, Jun 7, 2010 at 12:41 AM, Roy Morien <roymorien@...> wrote:
                                 

                                I always felt that having end of sprint demo's, and putting the components in the hands of the users, for them to work with, familiarise, train on ... and find bugs in ... was a pretty normal activity. Users are really good at finding bugs, especially those wo take it upon themselves to try to sink the boat as quickly as possible. But, it is a great way to lighten your development testing burden, but it does not replace it. There is great value in involving the client in this way. But also remember, that bugs sometimes aren't bugs. Often they are a result of a misunderstanding or communications glitch between developer and user. Often they are new ideas that the user comes up with when using the software delivered. But be up-front with the users. Tellthem straight 'we want you to exercise this software, and find all the bugs we couldn't'. This takes away the view that you have delivered working software but weren't careful enough to ensure it is correct. The users should be aware that software is complex, and they have a role in proving that it works too.
                                 
                                Regards,
                                Roy Morien
                                 


                                To: scrumdevelopment@yahoogroups.com
                                From: adam.sroka@...
                                Date: Sun, 6 Jun 2010 16:29:12 -0700
                                Subject: Re: [scrumdevelopment] Testing without Unit Testing

                                 
                                If time is the most important criteria then give it to the customers. They will find the bugs faster than you can.

                                On Sun, Jun 6, 2010 at 5:07 AM, Asad <safari_asad@...> wrote:
                                 

                                Hello Folks ,

                                We have a develop a software but unfortunately we don't have automate tests.

                                Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
                                1- we don't have enough time.
                                2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
                                3-write unit test after writing code is not efficient-er that write test before code(TDD).

                                Now I'm looking for ways to testing this software with our limitations.

                                Cheers

                                Asad Safari
                                http://sirasad.wordpress.com
                                http://www.iragile.com






                                Meet local singles online. Browse profiles for FREE!

                              • Steven
                                Where is the Definition of Done ? and why unit test is not even included? I wonder if there is anything can be brought into Sprint Review in this case. Having
                                Message 15 of 19 , Jun 7, 2010
                                  Where is the "Definition of Done"? and why unit test is not even included?

                                  I wonder if there is anything can be brought into Sprint Review in this case.

                                  Having unit test in place, or better develop in TDD, would only make people develop faster. Not having enough time is not the reason for not doing them.

                                  In particular, good unit tests help developers locating the bugs.

                                  Be honest, pay the technical debt, and cover the code by unit tests.

                                  --- In scrumdevelopment@yahoogroups.com, Adam Sroka <adam.sroka@...> wrote:
                                  >
                                  > Hmm... I agree that customer testing does not replace developer testing (nor
                                  > vice versa). However, the premise was, "Here we are at the end of a release
                                  > and we haven't tested anything, how should we find the bugs?"
                                  >
                                  > My reaction is:
                                  >
                                  > 1) It is too late to start developer testing.
                                  > 2) You are going to have bugs.
                                  > 3) Your customers will find them faster than you will.
                                  >
                                  > I am not suggesting that this is the "right way" to do it, nor how I would
                                  > do it, but that it satisfies the premise.
                                  >
                                  > On Mon, Jun 7, 2010 at 12:41 AM, Roy Morien <roymorien@...> wrote:
                                  >
                                  > >
                                  > >
                                  > > I always felt that having end of sprint demo's, and putting the components
                                  > > in the hands of the users, for them to work with, familiarise, train on ...
                                  > > and find bugs in ... was a pretty normal activity. Users are really good at
                                  > > finding bugs, especially those wo take it upon themselves to try to sink the
                                  > > boat as quickly as possible. But, it is a great way to lighten your
                                  > > development testing burden, *but it does not replace it.* There is great
                                  > > value in involving the client in this way. But also remember, that bugs
                                  > > sometimes aren't bugs. Often they are a result of a misunderstanding or
                                  > > communications glitch between developer and user. Often they are new ideas
                                  > > that the user comes up with when using the software delivered. But be
                                  > > up-front with the users. Tellthem straight 'we want you to exercise this
                                  > > software, and find all the bugs we couldn't'. This takes away the view that
                                  > > you have delivered working software but weren't careful enough to ensure it
                                  > > is correct. The users should be aware that software is complex, and they
                                  > > have a role in proving that it works too.
                                  > >
                                  > > Regards,
                                  > > Roy Morien
                                  > >
                                  > > ------------------------------
                                  > > To: scrumdevelopment@yahoogroups.com
                                  > > From: adam.sroka@...
                                  > > Date: Sun, 6 Jun 2010 16:29:12 -0700
                                  > > Subject: Re: [scrumdevelopment] Testing without Unit Testing
                                  > >
                                  > >
                                  > > If time is the most important criteria then give it to the customers.
                                  > > They will find the bugs faster than you can.
                                  > >
                                  > > On Sun, Jun 6, 2010 at 5:07 AM, Asad <safari_asad@...> wrote:
                                  > >
                                  > >
                                  > >
                                  > > Hello Folks ,
                                  > >
                                  > > We have a develop a software but unfortunately we don't have automate
                                  > > tests.
                                  > >
                                  > > Now in emergency state we must find the software bugs and fix them in 3
                                  > > weeks. i know that the efficient way is Write unit tests for software but we
                                  > > have three problems :
                                  > > 1- we don't have enough time.
                                  > > 2- developers are not familiar with unit testing and their learning will be
                                  > > take time and we don't have time.
                                  > > 3-write unit test after writing code is not efficient-er that write test
                                  > > before code(TDD).
                                  > >
                                  > > Now I'm looking for ways to testing this software with our limitations.
                                  > >
                                  > > Cheers
                                  > >
                                  > > Asad Safari
                                  > > http://sirasad.wordpress.com
                                  > > http://www.iragile.com
                                  > >
                                  > >
                                  > >
                                  > >
                                  > >
                                  > > ------------------------------
                                  > > Meet local singles online. Browse profiles for FREE!<http://clk.atdmt.com/NMN/go/150855801/direct/01/>
                                  > >
                                  > >
                                  >
                                • Adam Sroka
                                  ... The evidence does not show that TDD is faster. A couple of studies found it to be faster, but others found it to be significantly slower or about the same.
                                  Message 16 of 19 , Jun 8, 2010
                                    On Mon, Jun 7, 2010 at 9:29 PM, Steven <tcmak@...> wrote:
                                    >
                                    >
                                    >
                                    > Where is the "Definition of Done"? and why unit test is not even included?
                                    >
                                    > I wonder if there is anything can be brought into Sprint Review in this case.
                                    >
                                    > Having unit test in place, or better develop in TDD, would only make people develop faster. Not having enough time is not the reason for not doing them.
                                    >

                                    The evidence does not show that TDD is faster. A couple of studies
                                    found it to be faster, but others found it to be significantly slower
                                    or about the same. In my own experience I am slightly slower at first
                                    but it takes me much, much longer to get bogged down in some mess of
                                    my own making (With a competent pair I can avoid that indefinitely ;-)

                                    A lack of time is not really a good reason for doing anything. "I
                                    would have done a better job if I had more time," should get you fired
                                    from any job. It's a sorry excuse for an excuse. Go with, "my dog ate
                                    my tests" next time.

                                    > In particular, good unit tests help developers locating the bugs.
                                    >

                                    Unit tests don't help developers find bugs, in my experience, but TDD
                                    does help them avoid creating bugs in the first place. Good unit test
                                    coverage can make regression bugs much easier to find and fix, but I
                                    have never seen a team achieve real coverage without TDD. Plus, not
                                    all bugs are regression bugs. In my experience most bugs are the
                                    result of overly complex code (duplication, unclear code, intricate
                                    frameworks, etc.) and failing to ask good questions (Of the customer,
                                    generally.)

                                    > Be honest, pay the technical debt, and cover the code by unit tests.
                                    >

                                    Teams that are in the situation Asad describes might be able to really
                                    kill themselves and get 20-30% coverage while still delivering value.
                                    They won't do much better than that, again, in my experience. They may
                                    as well give up and start over again. We all know that TDD is the
                                    answer, right? So, how come we don't do it? I can't figure that one
                                    out.

                                    > --- In scrumdevelopment@yahoogroups.com, Adam Sroka <adam.sroka@...> wrote:
                                    > >
                                    > > Hmm... I agree that customer testing does not replace developer testing (nor
                                    > > vice versa). However, the premise was, "Here we are at the end of a release
                                    > > and we haven't tested anything, how should we find the bugs?"
                                    > >
                                    > > My reaction is:
                                    > >
                                    > > 1) It is too late to start developer testing.
                                    > > 2) You are going to have bugs.
                                    > > 3) Your customers will find them faster than you will.
                                    > >
                                    > > I am not suggesting that this is the "right way" to do it, nor how I would
                                    > > do it, but that it satisfies the premise.
                                    > >
                                    > > On Mon, Jun 7, 2010 at 12:41 AM, Roy Morien <roymorien@...> wrote:
                                    > >
                                    > > >
                                    > > >
                                    > > > I always felt that having end of sprint demo's, and putting the components
                                    > > > in the hands of the users, for them to work with, familiarise, train on ...
                                    > > > and find bugs in ... was a pretty normal activity. Users are really good at
                                    > > > finding bugs, especially those wo take it upon themselves to try to sink the
                                    > > > boat as quickly as possible. But, it is a great way to lighten your
                                    > > > development testing burden, *but it does not replace it.* There is great
                                    > > > value in involving the client in this way. But also remember, that bugs
                                    > > > sometimes aren't bugs. Often they are a result of a misunderstanding or
                                    > > > communications glitch between developer and user. Often they are new ideas
                                    > > > that the user comes up with when using the software delivered. But be
                                    > > > up-front with the users. Tellthem straight 'we want you to exercise this
                                    > > > software, and find all the bugs we couldn't'. This takes away the view that
                                    > > > you have delivered working software but weren't careful enough to ensure it
                                    > > > is correct. The users should be aware that software is complex, and they
                                    > > > have a role in proving that it works too.
                                    > > >
                                    > > > Regards,
                                    > > > Roy Morien
                                    > > >
                                    > > > ------------------------------
                                    > > > To: scrumdevelopment@yahoogroups.com
                                    > > > From: adam.sroka@...
                                    > > > Date: Sun, 6 Jun 2010 16:29:12 -0700
                                    > > > Subject: Re: [scrumdevelopment] Testing without Unit Testing
                                    > > >
                                    > > >
                                    > > > If time is the most important criteria then give it to the customers.
                                    > > > They will find the bugs faster than you can.
                                    > > >
                                    > > > On Sun, Jun 6, 2010 at 5:07 AM, Asad <safari_asad@...> wrote:
                                    > > >
                                    > > >
                                    > > >
                                    > > > Hello Folks ,
                                    > > >
                                    > > > We have a develop a software but unfortunately we don't have automate
                                    > > > tests.
                                    > > >
                                    > > > Now in emergency state we must find the software bugs and fix them in 3
                                    > > > weeks. i know that the efficient way is Write unit tests for software but we
                                    > > > have three problems :
                                    > > > 1- we don't have enough time.
                                    > > > 2- developers are not familiar with unit testing and their learning will be
                                    > > > take time and we don't have time.
                                    > > > 3-write unit test after writing code is not efficient-er that write test
                                    > > > before code(TDD).
                                    > > >
                                    > > > Now I'm looking for ways to testing this software with our limitations.
                                    > > >
                                    > > > Cheers
                                    > > >
                                    > > > Asad Safari
                                    > > > http://sirasad.wordpress.com
                                    > > > http://www.iragile.com
                                    > > >
                                    > > >
                                    > > >
                                    > > >
                                    > > >
                                    > > > ------------------------------
                                    > > > Meet local singles online. Browse profiles for FREE!<http://clk.atdmt.com/NMN/go/150855801/direct/01/>
                                    > > >
                                    > > >
                                    > >
                                    >
                                    >
                                  • xJUSSIx
                                    Hey Adam, I think it s the human nature. We do many hurtful things to ourselves (and even to those close to us) knowingly even if we know the end results of
                                    Message 17 of 19 , Jun 8, 2010
                                      Hey Adam,

                                      I think it's the human nature. We do many hurtful things to ourselves (and even to those close to us) knowingly even if we know the end results of those actions.
                                      This might be the worst analogy ever but it's like junk food. We know it's no good but still some people eat it daily. Clearly it's an easy and quick way to make your hunger go away but soon you start feeling hungry again. So off to Mickey D you go. Then one day you realize your arteries are almost useless and see an obese version of you in the mirror. At this stage very few people are able to pay the price to get back up to better shape.

                                      TDD ftw!

                                      --- In scrumdevelopment@yahoogroups.com, Adam Sroka <adam.sroka@...> wrote:
                                      >
                                      > We all know that TDD is the
                                      > answer, right? So, how come we don't do it? I can't figure that one
                                      > out.
                                      >
                                      > > --- In scrumdevelopment@yahoogroups.com, Adam Sroka <adam.sroka@> wrote:
                                      > > >
                                      > > > Hmm... I agree that customer testing does not replace developer testing (nor
                                      > > > vice versa). However, the premise was, "Here we are at the end of a release
                                      > > > and we haven't tested anything, how should we find the bugs?"
                                      > > >
                                      > > > My reaction is:
                                      > > >
                                      > > > 1) It is too late to start developer testing.
                                      > > > 2) You are going to have bugs.
                                      > > > 3) Your customers will find them faster than you will.
                                      > > >
                                      > > > I am not suggesting that this is the "right way" to do it, nor how I would
                                      > > > do it, but that it satisfies the premise.
                                      > > >
                                      > > > On Mon, Jun 7, 2010 at 12:41 AM, Roy Morien <roymorien@> wrote:
                                      > > >
                                      > > > >
                                      > > > >
                                      > > > > I always felt that having end of sprint demo's, and putting the components
                                      > > > > in the hands of the users, for them to work with, familiarise, train on ...
                                      > > > > and find bugs in ... was a pretty normal activity. Users are really good at
                                      > > > > finding bugs, especially those wo take it upon themselves to try to sink the
                                      > > > > boat as quickly as possible. But, it is a great way to lighten your
                                      > > > > development testing burden, *but it does not replace it.* There is great
                                      > > > > value in involving the client in this way. But also remember, that bugs
                                      > > > > sometimes aren't bugs. Often they are a result of a misunderstanding or
                                      > > > > communications glitch between developer and user. Often they are new ideas
                                      > > > > that the user comes up with when using the software delivered. But be
                                      > > > > up-front with the users. Tellthem straight 'we want you to exercise this
                                      > > > > software, and find all the bugs we couldn't'. This takes away the view that
                                      > > > > you have delivered working software but weren't careful enough to ensure it
                                      > > > > is correct. The users should be aware that software is complex, and they
                                      > > > > have a role in proving that it works too.
                                      > > > >
                                      > > > > Regards,
                                      > > > > Roy Morien
                                      > > > >
                                      > > > > ------------------------------
                                      > > > > To: scrumdevelopment@yahoogroups.com
                                      > > > > From: adam.sroka@
                                      > > > > Date: Sun, 6 Jun 2010 16:29:12 -0700
                                      > > > > Subject: Re: [scrumdevelopment] Testing without Unit Testing
                                      > > > >
                                      > > > >
                                      > > > > If time is the most important criteria then give it to the customers.
                                      > > > > They will find the bugs faster than you can.
                                      > > > >
                                      > > > > On Sun, Jun 6, 2010 at 5:07 AM, Asad <safari_asad@> wrote:
                                      > > > >
                                      > > > >
                                      > > > >
                                      > > > > Hello Folks ,
                                      > > > >
                                      > > > > We have a develop a software but unfortunately we don't have automate
                                      > > > > tests.
                                      > > > >
                                      > > > > Now in emergency state we must find the software bugs and fix them in 3
                                      > > > > weeks. i know that the efficient way is Write unit tests for software but we
                                      > > > > have three problems :
                                      > > > > 1- we don't have enough time.
                                      > > > > 2- developers are not familiar with unit testing and their learning will be
                                      > > > > take time and we don't have time.
                                      > > > > 3-write unit test after writing code is not efficient-er that write test
                                      > > > > before code(TDD).
                                      > > > >
                                      > > > > Now I'm looking for ways to testing this software with our limitations.
                                      > > > >
                                      > > > > Cheers
                                      > > > >
                                      > > > > Asad Safari
                                      > > > > http://sirasad.wordpress.com
                                      > > > > http://www.iragile.com
                                      > > > >
                                      > > > >
                                      > > > >
                                      > > > >
                                      > > > >
                                      > > > > ------------------------------
                                      > > > > Meet local singles online. Browse profiles for FREE!<http://clk.atdmt.com/NMN/go/150855801/direct/01/>
                                      > > > >
                                      > > > >
                                      > > >
                                      > >
                                      > >
                                      >
                                    • woynam
                                      A man was working in the woods and a new guy came on the crew. As a joke they gave him the dullest saw they could find and sent him off to cut the biggest tree
                                      Message 18 of 19 , Jun 8, 2010
                                        A man was working in the woods and a new guy came on the crew. As a
                                        joke they gave him the dullest saw they could find and sent him off to
                                        cut the biggest tree in the stand. About lunch time the old-timer
                                        figured he would check on the new fellow and see how he was doing.

                                        He found the guy sawing like crazy, but he had gotten only about 3"
                                        into the tree. Feeling sorry for the fellow he said, "Why don't you
                                        sharpen that saw?"

                                        "Can't," the fellow replied. "I'm too busy cutting down this tree."


                                        If you don't have the time to stop and fill up your gas tank, you'll soon run out of gas, and lengthen your trip considerably. With that known, we still see plenty of people on the side of the road waiting for a service truck to bring them gasoline.

                                        If you don't take the time to maintain your house, e.g. paint, repair the roof, you'll eventually wind up in a crumbling, water damaged abode.

                                        Maintaining tests is simply part of the overall development process. Those who try to cheat the taxman eventually wind up paying (more) for it one way or another.

                                        Mark


                                        --- In scrumdevelopment@yahoogroups.com, "xJUSSIx" <xjussix@...> wrote:
                                        >
                                        > Hey Adam,
                                        >
                                        > I think it's the human nature. We do many hurtful things to ourselves (and even to those close to us) knowingly even if we know the end results of those actions.
                                        > This might be the worst analogy ever but it's like junk food. We know it's no good but still some people eat it daily. Clearly it's an easy and quick way to make your hunger go away but soon you start feeling hungry again. So off to Mickey D you go. Then one day you realize your arteries are almost useless and see an obese version of you in the mirror. At this stage very few people are able to pay the price to get back up to better shape.
                                        >
                                        > TDD ftw!
                                        >
                                        > --- In scrumdevelopment@yahoogroups.com, Adam Sroka <adam.sroka@> wrote:
                                        > >
                                        > > We all know that TDD is the
                                        > > answer, right? So, how come we don't do it? I can't figure that one
                                        > > out.
                                        > >
                                        > > > --- In scrumdevelopment@yahoogroups.com, Adam Sroka <adam.sroka@> wrote:
                                        > > > >
                                        > > > > Hmm... I agree that customer testing does not replace developer testing (nor
                                        > > > > vice versa). However, the premise was, "Here we are at the end of a release
                                        > > > > and we haven't tested anything, how should we find the bugs?"
                                        > > > >
                                        > > > > My reaction is:
                                        > > > >
                                        > > > > 1) It is too late to start developer testing.
                                        > > > > 2) You are going to have bugs.
                                        > > > > 3) Your customers will find them faster than you will.
                                        > > > >
                                        > > > > I am not suggesting that this is the "right way" to do it, nor how I would
                                        > > > > do it, but that it satisfies the premise.
                                        > > > >
                                        > > > > On Mon, Jun 7, 2010 at 12:41 AM, Roy Morien <roymorien@> wrote:
                                        > > > >
                                        > > > > >
                                        > > > > >
                                        > > > > > I always felt that having end of sprint demo's, and putting the components
                                        > > > > > in the hands of the users, for them to work with, familiarise, train on ...
                                        > > > > > and find bugs in ... was a pretty normal activity. Users are really good at
                                        > > > > > finding bugs, especially those wo take it upon themselves to try to sink the
                                        > > > > > boat as quickly as possible. But, it is a great way to lighten your
                                        > > > > > development testing burden, *but it does not replace it.* There is great
                                        > > > > > value in involving the client in this way. But also remember, that bugs
                                        > > > > > sometimes aren't bugs. Often they are a result of a misunderstanding or
                                        > > > > > communications glitch between developer and user. Often they are new ideas
                                        > > > > > that the user comes up with when using the software delivered. But be
                                        > > > > > up-front with the users. Tellthem straight 'we want you to exercise this
                                        > > > > > software, and find all the bugs we couldn't'. This takes away the view that
                                        > > > > > you have delivered working software but weren't careful enough to ensure it
                                        > > > > > is correct. The users should be aware that software is complex, and they
                                        > > > > > have a role in proving that it works too.
                                        > > > > >
                                        > > > > > Regards,
                                        > > > > > Roy Morien
                                        > > > > >
                                        > > > > > ------------------------------
                                        > > > > > To: scrumdevelopment@yahoogroups.com
                                        > > > > > From: adam.sroka@
                                        > > > > > Date: Sun, 6 Jun 2010 16:29:12 -0700
                                        > > > > > Subject: Re: [scrumdevelopment] Testing without Unit Testing
                                        > > > > >
                                        > > > > >
                                        > > > > > If time is the most important criteria then give it to the customers.
                                        > > > > > They will find the bugs faster than you can.
                                        > > > > >
                                        > > > > > On Sun, Jun 6, 2010 at 5:07 AM, Asad <safari_asad@> wrote:
                                        > > > > >
                                        > > > > >
                                        > > > > >
                                        > > > > > Hello Folks ,
                                        > > > > >
                                        > > > > > We have a develop a software but unfortunately we don't have automate
                                        > > > > > tests.
                                        > > > > >
                                        > > > > > Now in emergency state we must find the software bugs and fix them in 3
                                        > > > > > weeks. i know that the efficient way is Write unit tests for software but we
                                        > > > > > have three problems :
                                        > > > > > 1- we don't have enough time.
                                        > > > > > 2- developers are not familiar with unit testing and their learning will be
                                        > > > > > take time and we don't have time.
                                        > > > > > 3-write unit test after writing code is not efficient-er that write test
                                        > > > > > before code(TDD).
                                        > > > > >
                                        > > > > > Now I'm looking for ways to testing this software with our limitations.
                                        > > > > >
                                        > > > > > Cheers
                                        > > > > >
                                        > > > > > Asad Safari
                                        > > > > > http://sirasad.wordpress.com
                                        > > > > > http://www.iragile.com
                                        > > > > >
                                        > > > > >
                                        > > > > >
                                        > > > > >
                                        > > > > >
                                        > > > > > ------------------------------
                                        > > > > > Meet local singles online. Browse profiles for FREE!<http://clk.atdmt.com/NMN/go/150855801/direct/01/>
                                        > > > > >
                                        > > > > >
                                        > > > >
                                        > > >
                                        > > >
                                        > >
                                        >
                                      • rudra tripathy
                                        Just ask one question, How much time you invest to test whole functionality with out automate test. Only feasibility looks that developer would involved in
                                        Message 19 of 19 , Jun 9, 2010
                                          Just ask one question,

                                          How much time you invest to test whole functionality with out automate test. Only feasibility looks that developer would involved in testing and would see which area the code may impact.

                                          Thanks and Regards,
                                          Rudar

                                          On Sun, Jun 6, 2010 at 5:37 PM, Asad <safari_asad@...> wrote:
                                           

                                          Hello Folks ,

                                          We have a develop a software but unfortunately we don't have automate tests.

                                          Now in emergency state we must find the software bugs and fix them in 3 weeks. i know that the efficient way is Write unit tests for software but we have three problems :
                                          1- we don't have enough time.
                                          2- developers are not familiar with unit testing and their learning will be take time and we don't have time.
                                          3-write unit test after writing code is not efficient-er that write test before code(TDD).

                                          Now I'm looking for ways to testing this software with our limitations.

                                          Cheers

                                          Asad Safari
                                          http://sirasad.wordpress.com
                                          http://www.iragile.com


                                        Your message has been successfully submitted and would be delivered to recipients shortly.