Page 12 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 12

Unit 1: Introduction to Software Testing



                5.   Poor  Coding Practices:  Poor coding practices such as inefficient use of codes, misspelled
                     keywords, or incorrect validation of variables will lead to bugs. Sometimes, faulty tools such as
                     editors, compilers, and debuggers generate wrong codes, which cause errors in the software and
                     it is difficult to debug such errors.
                6.   Lack of Skilled Testing: If there are any drawbacks in the testing process of the software, bugs go
                     unnoticed.
                7.   Change Requests: If there are last minute changes on requirements, tools, or platform, it could
                     cause errors and can lead to serious problems in the application.


                           Browse the  web and collect information pertaining to  some of the famous bugs
                           encountered during a project and the reasons for their occurrence.

                           http://www.wired.com/software/coolapps/news/2005/11/69355
                           http://www5.in.tum.de/~huckle/bugse.html
                           http://www.cds.caltech.edu/conferences/1997/vecs/tutorial/Examples/Cases/failur
                           es.htm

               1.2.2   Cost of Bugs

               Any bug that exists in the software delivered to the customer can lead to huge financial losses. It will
               bring down the  reputation of the organization  developing the software. In case the bug causes  any
               damage to life or property of the customer, it can also lead to huge penalty on the organization that
               developed the software. Bugs that are detected during the testing stage will take some time to get fixed,
               affecting the timeline and increasing the project cost.
               If the bugs are detected and fixed at the earliest in the software development life cycle, it can result in
               higher return on investment for the organization with respect to time and cost. The cost of fixing a bug
               differs depending on the development stage at which it is detected. Let us analyze the impact when
               bugs are detected at different stages of project life cycle.
                1.   Requirement Stage: It would cost the organization some time to rewrite the requirements and can
                     be easily detected and fixed.
                2.   Coding Stage:  It would make the developer spend some time to debug. However, the time
                     required to fix the bug will vary depending on the complexity of the bug. A bug detected by the
                     developer at this stage can be resolved easily, since the developer understands the problem and
                     will be able to fix it.
                3.   Integration Stage: It will require more time to be resolved. Since the problem occurs at a higher
                     level, it requires time to check the part of the code or configuration which is wrong and
                     additional time to fix the bug. The developer and other system engineers will be involved in
                     detecting and resolving the bug.
                4.   Testing Stage: It will involve the developer, system engineer, and project manager for detecting
                     and resolving the bug. It is an iterative process, which takes a lot of time and effort with respect
                     to man hours and cost in order to detect and fix the bug.  Since the bugs have to be tracked and
                     prioritized for debugging, it will increase the project cost in terms of man power  and tools
                     required and causes delay in the delivery times as well.
                5.   Production Stage:  It will take huge time and investment for the organization,  as  it  involves
                     developers, system engineers, project managers, and customers for detecting and resolving the
                     bug. It demands prioritizing and detailed planning when compared to a bug detected in testing
                     stage. Such bugs not only cause  a  huge loss, but  also bring down the reputation  of the
                     organization.
               A bug found and fixed during the early stages – say, while defining the specification or requirements,
               might cost the company a very small amount, for example, consider it to be one rupee per bug. If the
               same bug is found during the coding and testing stage, it costs the company reasonably, for example, 10




                                        LOVELY PROFESSIONAL UNIVERSITY                           5
   7   8   9   10   11   12   13   14   15   16   17