Let us firstly see why we test software?
The simple answer as to why we test software is that developers are unable to build defect-free software. If the development processes were perfect, meaning no defects were produced, testing would not be necessary.
Let’s compare the manufacturing process of producing boxes of cereal to the process of making software. We find that, as is the case for most food manufacturing companies, testing each box of cereal produced is unnecessary. Making software is a significantly different process than making a box of cereal however. Cereal manufacturers may produce 50,000 identical boxes of cereal a day, while each software process is unique. This uniqueness introduces defects, and thus making testing software necessary.
Now let us see why developers are not Good Testers:
Testing by the individual who developed the work has not proven to be a substitute to building and following a detailed test plan.
The disadvantages of a person checking their own work using their own documentation are as under:
1) Misunderstandings will not be detected, because the checker will assume that what the other individual heard from him was correct.
2) Improper use of the development process may not be detected because the individual may not understand the process.
3) The individual may be “blinded” into accepting erroneous system specifications and coding because he falls into the same trap during testing that led to the introduction of the defect in the first place.
4) Information services people are optimistic in their ability to do defect-free work and thus sometimes underestimate the need for extensive testing.
Without a formal division between development and test, an individual may be tempted to improve the system structure and documentation, rather than allocate that time and effort to the test.
Tags: Quality Control, Quality Assurance, Software Testing
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment