General Concepts Agent-Oriented Software Engineering Agents and Components Views MASSIVE Protocol Specification with UML Agent Patterns Cognitive Aspects of Software Engineering Patents

General Concepts of Agents and Multiagent Systems

On this page, I will outline the basic characteristics of intelligent agents and multiagent systems (MAS). I will start with an introduction to intelligent agents and then extend the single-agent case to systems with several intelligent agents. The basic concepts are presented from a very general point-of-view; the reader already familiar with MAS may safely skip this page. The main aspect of this introduction is its use of a very general notation scheme for the description of agents in order to be independent of any particular agent school. (more)

top

Agent Oriented Software Engineering

Agents and multi-agent systems are currently one of the most interesting research fields in the computer science community. But is this enough to make agent oriented software engineering (AOSE) a new software paradigm? What makes the idea distinctive from other approaches? How does it fit in a more general picture of software engineering? (more)

top

Relating Agent Technology and Component Models

In this paper, I discuss some conceptual and technical similarities and differences between component models and agent technology. To this end, I briefly introduce three component platforms and relate conceptual and technical aspects to the agent world with respect to the entities, interactions and problem solving capabilities that are characteristic for either technology. From this comparison, I finally derive some ideas on where agent technology could extend the component approach to make it easier to build complex and distributed systems. (more)

top

Views

The product model of the MASSIVE development method for multiagent system is based on so-called views, where a view represents a particular perspective onto the whole system. In will discuss the basic ideas of views and the view analysis process that describes how to develop a set of views for a particular problem domain. Furthermore, I will discuss the fundamental requirements for the MASSIVE view system. (more)

top

The MASSIVE Method

MASSIVE is a pragmatic software engineering method that was specifically developed for multiagent systems. It provides a multiagent specific, view-oriented product model that is used to describe the various aspects of a multiagent application from different points-of-view. Furthermore, MASSIVE suggests a multi-level process model that can be used to develop multiagent applications. (more)

top

Specifying Agent Interaction Protocols with Standard UML

In this paper, I will demonstrate how the Unified Modeling Language (UML) can be used to describe agent interaction protocols. The approach that is presented in this paper does not propose enhancements or completely new diagrams but instead relies on existing UML elements and the UML extension mechanism that is part of the standard. This conformity with the base UML is a major advantage of the idea as it prevents a diversification of the UML into different potentially incompatible dialects. The practical use of the method is demonstrated with an example on how to specify a realistic agent interaction protocol. (more)

top

Patterns in Agent-Oriented Software Engineering

In this paper, I will show how the now popular concept of software patterns can be used in agent-oriented software engineering. To this end, I will present a possible structure of a pattern catalog for agent-oriented patterns and introduce a pattern description scheme that accounts for the specific needs of agent patterns. Then, I will provide two examples for how this scheme can be used to describe actual agent patterns. (more)

top

Cognitive Aspects of Software Engineering

Until now, the cognitive aspects of Software Engineering have not been investigated in great depth. Fortunately, however, the tasks that occur in developing a software system share some similarities with design tasks in general. Therefore, some of the results that have been found there can be applied to Software Engineering as well. (more)

top

Patents

The heading of this section is a bit misleading as there is currently only a single patent signed under my name. As time goes by, however, the list might become longer...

The patent that was granted to Donald Steiner, Harmut Dieterich, Alastair Burt and myself is entitled "Method and Device for Finding a Route from a Starting Point to a Terminal Point" - which is a very general characterization. The basic idea that is protected by the patent together with the environement in which it was devloped is described here (the text is provided in postscript format because it contains many formulas that are difficult to lay out in HTML). The scope of the patent is limited to section 4 of the paper that describes the interaction schemes between the route planning agents.

top