Formal techniques help software developers delivering correct agent-based software by design

Publication date
17 Jan 2011



Research on methodologies and programming languages to design specifically agent-based software is of increasing importance. Lacramioara Astefanoei, from the Centrum Wiskunde & Informatica (CWI) in Amsterdam, constructed a new theory that helps software developers to deliver correct agent-based software by design. On 19 January 2011 she defends her thesis ‘An executable Theory of Multi-Agent Systems Refinement’ at Leiden University. The results of her research are of potential interest for agent-based software developers.

Agent-oriented methodologies are meant to facilitate modeling complex applications such as incident management, manufacturing and electronic auctions. For instance, in a typical scenario in incident management, a police department is an organization which includes, in turn, other organizations and individual agents like detectives and police officers. Concepts like agents, organizations, interaction, are inherent to agent-oriented methodologies. Thus the design of agent languages based on these concepts is a crucial element.

In her thesis, Astefanoei adapted formal techniques from process theory, rewriting logic, and timed automata to an agent-oriented methodology that resulted in an executable theory of refinement for the design of agent languages. The main conclusion of her research is to advocate top-down design methodologies, from abstract agent specifications to more concrete implementations. Secondly, she also illustrates how rewriting logic is a suitable framework for the design of agent languages. Her research enables software engineers to experiment with agent languages without having the trouble to build language specific interpreters, but directly focus on the agent languages themselves.

One of the more practical results of Astefanoei’s thesis was to integrate 2APL and Reo, two Java based tools. 2APL is an agent platform developed at Utrecht University in the Intelligent Systems group and Reo is a coordination language developed in the Foundations of Software Engineering research group of CWI. This integration makes it possible to coordinate 2APL agents by means of Reo connectors. One of the benefits is in ‘The Eclipse Coordination Tools’, which facilitates the verification of interaction between 2APL agents.

Astefanoei formed part of the research group Foundations of Software Engineering at CWI, under the leadership of Frank de Boer. The research of the group focuses on concurrent distributed software systems and encompasses foundations, technology, and applications, specifically in the context of component-based software engineering and service-oriented computing.

 

Illustration: Images from 'Le Mystere Picasso' by H. Clouzot.