Satish Yogachar & Anurag Sharma, Intel Security
Artificial Intelligence is always a fascinating field. An intelligent system which can perceive its environment, learn, adapt and take action to maximize the success. AI has always been considered a highly specialized field limited to research labs where researchers are using various techniques such as Genetic Algorithms, Fuzzy Logic Approach and Data mining etc. to build problem solving, logical deduction and reasoning capabilities into machines, with limited success. On the other hand, movies such as Terminator (1984), Artificial Intelligence (2001), Matrix (1999) and Her (2013) etc. have stretched our imagination and fascinated us with possibilities of Artificial Intelligence.
Deep Blue chess playing system, IBM’s Watson question answering system and more recently, intelligent person assistants such as Siri and Cortana are more close to an intelligent software. When, more and more intelligent applications become mainstream, the traditional software principles and practices will require a paradigm shift. Verification of these applications will present new and unique challenges. For example, a simple test case which is expected to return “FALSE” may work correctly today but may return “TRUE” tomorrow, because application learned and started behaving differently. Thus, tests will not be repeatable. Similarly, we may need to think differently while developing a regression test suite and designing automation framework. It may even lead to the test system being an intelligent system. When such intelligent systems integrate with intelligent sensors and/or web as a part of intelligent network, the testing becomes even more complex.
This paper
- Is a commentary on testing challenges which we may face in verifying intelligent software applications and will propose ideas to overcome some of these challenges.
- Will stimulate discussion on how traditional testing concepts may evolve to cater to intelligent software verification.
- Is not a technical paper on artificial intelligence techniques such as neural networks, machine learning etc. and will try to stay away from that.
- Is not a paper on applications of artificial intelligence techniques in software testing.
Target Audience: Introductory
2015 Technical Paper, Satish Yogachar & Anurag Sharma, Paper, Slides, Notes, Video.