John Thangarajah

Prof. John Thangarajah


Research Focus & Metrics

Academic Career Length

25Years (2002-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
19 February 2013 in IEEE Transactions on Software Engineering
Verified
Journal Article
Closed access
LPLin Padgham
Lin Padgham
ZZZhiyong Zhang
Zhiyong Zhang
JTJohn Thangarajah
John Thangarajah
TMTim Miller
Tim Miller
Software testing remains the most widely used approach to verification in industry today, consuming between 30-50 percent of the entire development cost. Test input selection for intelligent agents presents a problem due to the very fact that the agents are intended to operate robustly under conditions which developers did not consider and would therefore be unlikely to test. Using methods to automatically generate and execute tests is one way to provide coverage of many conditions without significantly increasing cost. However, one problem using automatic generation and execution of tests is the oracle problem: How can we automatically decide if observed program behavior is correct with respect to its specification? In this paper, we present a model-based oracle generation method for unit testing belief-desire-intention agents. We develop a fault model based on the features of the core units to capture the types of faults that may be encountered and define how to automatically generate a partial, passive oracle from the agent design models. We evaluate both the fault model and the oracle generation by testing 14 agent systems. Over 400 issues were raised, and these were analyzed to ascertain whether they represented genuine faults or were false positives. We found that over 70 percent of issues raised were indicative of problems in either the design or the code. Of the 19 checks performed by our oracle, faults were found by all but 5 of these checks. We also found that 8 out the 11 fault types identified in our fault model exhibited at least one fault. The evaluation indicates that the fault model is a productive conceptualization of the problems to be expected in agent unit testing and that the oracle is able to find a substantial number of such faults with relatively small overhead in terms of false positives.

14 July 2003
Verified
Conference Paper
Open access
PDF file
JTJohn Thangarajah
John Thangarajah
LPLin Padgham
Lin Padgham
MWMichael Winikoff
Michael Winikoff
Rational agents typically pursue multiple goals in parallel. However most existing agent systems do not have any infrastructure support for reasoning about either positive or negative interactions between goals. Negative interactions include such things as competition for resources, which if unrecognised can lead to unnecessary failure of both goals requiring the resource. Positive interactions include situations where there is potentially a common subgoal of two goals. This paper looks at mechanisms for identifying potential common subgoals, and attempting to schedule the actions of the agent to take advantage of this. Potential common subgoals are identified by maintaining summaries of definite and potential effects of goals and plans to achieve those goals. Template summaries for goal types are produced at compile time, while instance summaries are maintained and updated at execution time to allow the agent to choose and schedule its plans to take advantage of potential commonality where possible. This increases the ability of the agent to act in a rational manner, where rational is loosely defined as the sensible behaviour exhibited by humans.

25 January 2006
Verified
Conference Paper
Closed access
LPLin Padgham
Lin Padgham
JTJohn Thangarajah
John Thangarajah
MWM. Winikoff
M. Winikoff
We believe that tool support is very important for any methodology. In this paper we describe PDT (Prometheus Design Tool) which supports the design of an intelligent agent system using the Prometheus methodology. We describe how PDT supports the various stages of Prometheus through various means such as consistency checking, support for entity propagation, and hierarchical views. We will also describe work that is currently in progress which involves the development of a plug-in for Eclipse with the aim of creating a single integrated development environment which will support the complete development cycle of an agent system from design to deployment.

1 January 2011
Verified
Book Chapter
Closed access
PDF file
CNCu D. Nguyen
Cu D. Nguyen
APAnna Perini
Anna Perini
CBCarole Bernon
Carole Bernon
JPJuan Pavón
Juan Pavón
JTJohn Thangarajah
John Thangarajah

8 May 2010 in Journal of Automated Reasoning
Verified
Journal Article
Closed access
PDF file
JTJohn Thangarajah
John Thangarajah
LPLin Padgham
Lin Padgham

8 May 2006
Verified
Conference Paper
Open access
SDSimon Duff
Simon Duff
JHJames Harland
James Harland
JTJohn Thangarajah
John Thangarajah