Issues in Multiagent System Development
Mehdi M. Dastani, Joris Hulstijn, Frank P. M. Dignum, John-Jules Meyer · 2004
In this paper we discuss development methodologies for multiagent systems. Besides guidelines for the analysis and design phase, a methodology should also provide guide-lines for the implementation phase, and explain how the design concepts can be mapped onto instructions of an available programming language. For applications that are best un-derstood in terms of norms and social structures, that implies that a methodology should indicate in which ways norms can be designed and implemented. For example, a general norm can be hardwired into the environment, but can also be translated into norm-abiding goals of the individual agents. This choice has important consequences for the internal design of an agent. Therefore we believe that a methodology should not only consider inter-agent, but also intra-agent aspects. Issues We selected four dedicated agent-oriented software methodologies and made a review. The methodologies are Gaia [8], AAII [6], SODA [7], and Tropos [1]. We identi-fied a number of issues that are problematic for these methodologies. – There is no agreement on how to identify and characterize roles in the analysis phase and agent types in the design phase. – The concepts used in the methodologies, like responsibility, permission, goals and tasks do not have a formal semantics or explicit formal properties. – There is a gap between the design models of the methodologies and the existing im-plementation languages. To bridge the gap, a methodology should either introduce design models that can be directly implemented, or use a dedicated agent-oriented programming language. – The methodologies that do include an implementation phase, such as Tropos, do not explain how to implement reasoning about beliefs, reasoning about goals and plans, reasoning about planning goals, or reasoning about communication. – It is widely recognized that an agent may enact several roles. None of the method-ologies address reasoning about playing different roles. – The methodologies, with the exception of [8], ignore organizational norms and do not explain how to specify and design them. – Open systems are not really supported. The methodologies implicitly suppose that agents are purposely designed to enact roles in a system. But as soon as agents 1This abstract summarizes [3].