Downloads: 89 | Views: 199
Review Papers | Software Engineering | India | Volume 4 Issue 6, June 2015 | Rating: 7.1 / 10
Methodologies and Technique for Software Agent
Abstract: Software agents and multi agent systems are a promising technology for today's complex, distributed systems. Methodologies and techniques that address testing and reliability of these systems are increasingly demand in particular to support systematic verification/validation and automated test generation and execution. This work deals with two major research problems the lack of a structured testing process in engineering software agents and the need of adequate testing techniques to tackle the nature of software agents, e. g. , being autonomous, decentralized, collaborative. To address the first problem, we proposed a goal-oriented testing methodology, aiming at defining a systematic and comprehensive testing process for engineering software agents. It encompasses the development process from the early requirements analysis until the deployment. We investigated how to derive test arte facts, i. e. inputs, scenarios, and so on, from agent requirements specification and design, and use these arte facts to refine the analysis and design in order to detect problems early. More importantly, they are executed afterwards to and defects in the implementation and build confidence in the operation of the agents under development. Concerning the second problem, the peculiar properties of software agents make testing them troublesome. We developed a number of techniques to generate test cases, automatically or semi-automatically. These include goal-oriented, ontology-based, random, and evolutionary generation techniques. Our experiments have shown that each technique has different strength. For instance, while the random technique is effective in revealing crashes or exceptions, the ontology-based one is strong in detecting communication faults. The combination of these techniques can help to detect different types of fault, making software agents more reliable. We also investigated approaches to monitoring agent and evaluating them. All together, the generation, evaluation, and monitoring techniques form a bigger picture our novel continuous testing method. In this method, test execution can proceed independently of any other human-intensive activity, test cases are generated or evolved continuously using the proposed generation techniques, test results are observed and evaluated by our monitoring and evaluation approaches to give feedbacks to the generation step. The aim of continuous testing is to exercise and stress the agents under test as much as possible, the final goal being the possibility to reveal yet unknown faults. We applied a case study to illustrate the proposed methodology and performed three experiments to evaluate the performance of the proposed techniques. The obtained results are promising.
Keywords: Application, ECAT, Goal Types, Testing Suit, Testing Types, Mas
Edition: Volume 4 Issue 6, June 2015,
Pages: 1991 - 1994