Exploratory method provides more cost-effective software testing
Master of Science (Technology) Juha Itkonen’s dissertation in the software production field proves that exploratory software testing can in some cases be as effective as test case based testing at a lower cost.
The dissertation reports empirical results on the benefits, challenges and suitability of exploratory testing, and analyses the significance of this knowledge in detecting software defects. Itkonen’s doctoral dissertation is the first scientific study on this topic.
Computer software is tested in order to find and correct defects before delivery to the customer. According to Itkonen, the tests used in test case based software testing are performed on the basis of detailed instructions, which are documented and planned prior to the testing. Test performance involves mechanical repetition of the instructions.
“Exploratory software testing is a completely different approach. Rather than being given detailed instructions, the testers utilise their understanding of the system and its operating context. The method emphasises the tester’s personal experience and expertise in the application area.”
Itkonen’s studies showed that cost effectiveness improved when detailed advance planning of software testing processes were left out of the cycle. The testers were able to reveal defects in the system quite effectively without documented planning – simply by using their personal know-how.
“For example, if the testers have an understanding of the customer’s business processes and the actual intended use of the program being tested, they can identify problems relevant to the customer. A purely technical analysis is not capable of finding such problems.”
Exploratory software testing to supplement automatic testing
Itkonen says that until now software engineering research has focused very strongly on automating test case based software testing. According to Itkonen, exploratory software testing should supplement automated testing.
“The undeniable strength of automated testing is the fact that the tests can be run often and they never get tired. However, the tests only find problems that they have been designed to find. In contrast, people who know the software application area can find new and surprising problems that automated tests are incapable of revealing. On the other hand, it would be ridiculous for people to work like robots on matters that can be done automatically. ”
Juha Itkonen will defend his dissertation “Empirical studies on exploratory software testing” at noon on 18 November 2011 in lecture hall T1 at Aalto University School of Science, Department of Computer Science and Engineering, Konemiehentie 2, Espoo.
The dissertation is available online at:
School of Science
puh. 050 577 1688
juha.itkonen [at] aalto [dot] fi