Lawrence Cabac
.
Modeling Petri Net-Based Multi-Agent Applications.
Dissertation, Universität Hamburg, Department Informatik,
Vogt-Kölln Str. 30, D-22527 Hamburg, April 2010.
[link]
Abstract: For the construction of software systems, it is essential for the developers to have a profound understanding of the nature of the system. Modeling is the essential means for the understanding of complex systems. This is true for the construction as well as for the comprehension. The understanding of a system is a collective process, in which the whole development team participates. In order to integrate the models into this process, the models have to be made explicit: i.e. explicit representations (e.g. diagrams), which are the ground for communication, have to be provided. Petri net-based Agent-Oriented Software Engineering (Paose) is the systematic approach for the development of multi-agent systems on the basis of the Mulan reference model developed in the Theoretical Foundations Group (TGI) at the University of Hamburg. In the context of this approach, I present a set of modeling techniques that are able to support developers during design, construction and debugging of multi-agent applications built with the Mulan/Capa framework. For the organization of the development team, I provide the multi-agent system of developers as suitable guiding metaphor. I also present a tool set that provides the support for the developers to employ the presented techniques and I present a second tool set that helps the developers to analyze the systems at runtime and in their code base. The modeling techniques for the constructive modeling span all aspects of the framework and constitute a central part of the Paose approach. They facilitate the modeling of the system's overview in coarse (Coarse Design Diagrams, CDD), the application-specific agent ontology (Concept Diagrams, CD), the organizational structures in multi-agent applications (Dependency Diagrams, DD and R/D Diagrams), the agent interactions (Agent Interaction Protocol Diagrams, AIP) and the agent-internal processes as decision components (as reference nets). The set of supporting tools - one tool for each technique - is integrated in the development environment Renew as plugins. These tools provide the modeling facilities and additionally allow to generate design artifacts from the produced models. These generated artifacts are the system's initial project code base (from CDD), Java classes for the ontology (CD), the initial knowledge bases (DD and R/D) and the protocol net skeletons (AIP). For the agent-internal processes, Java classes are generated from abstract interface descriptions. The set of techniques and tools for the analysis are able to provide explicit models for the examination of the multi-agent applications. Some of these explicit models are diagrams and some of them make use of the original design artifacts. Finally, I describe and evaluate the AOSE projects, in which the techniques and tools have been applied and in which context they have been developed. All techniques and tools are integrated into the Paose approach through the multi-agent system metaphor. Within the approach, they further the integration and awareness of concurrency and distribution in the developed system as well as in the development system. By providing modeling techniques and supporting tools, I substantially improve the development of multi-agent applications with the Paose approach on a conceptual as well as on a technical level. On the conceptual level, improvements include support for the systematic development, structuring of models and means for the comprehension of the systems. On the technical level, they include the improvement of quality in the development and the observability through explicit representations.[link]
@PhdThesis{Cabac10, author = {Cabac, Lawrence}, address = FBIUniAdresse, school = FBIUniHHab2006, title = {Modeling {P}etri Net-Based Multi-Agent Applications}, type = dissertation, year = 2010, month = apr, url = {https://ediss.sub.uni-hamburg.de/handle/ediss/3691}, urn = {urn:nbn:de:gbv:18-46661}, abstract = {For the construction of software systems, it is essential for the developers to have a profound understanding of the nature of the system. Modeling is the essential means for the understanding of complex systems. This is true for the construction as well as for the comprehension. The understanding of a system is a collective process, in which the whole development team participates. In order to integrate the models into this process, the models have to be made explicit: i.e. explicit representations (e.g. diagrams), which are the ground for communication, have to be provided. Petri net-based Agent-Oriented Software Engineering (Paose) is the systematic approach for the development of multi-agent systems on the basis of the Mulan reference model developed in the Theoretical Foundations Group (TGI) at the University of Hamburg. In the context of this approach, I present a set of modeling techniques that are able to support developers during design, construction and debugging of multi-agent applications built with the Mulan/Capa framework. For the organization of the development team, I provide the multi-agent system of developers as suitable guiding metaphor. I also present a tool set that provides the support for the developers to employ the presented techniques and I present a second tool set that helps the developers to analyze the systems at runtime and in their code base. The modeling techniques for the constructive modeling span all aspects of the framework and constitute a central part of the Paose approach. They facilitate the modeling of the system's overview in coarse (Coarse Design Diagrams, CDD), the application-specific agent ontology (Concept Diagrams, CD), the organizational structures in multi-agent applications (Dependency Diagrams, DD and R/D Diagrams), the agent interactions (Agent Interaction Protocol Diagrams, AIP) and the agent-internal processes as decision components (as reference nets). The set of supporting tools - one tool for each technique - is integrated in the development environment Renew as plugins. These tools provide the modeling facilities and additionally allow to generate design artifacts from the produced models. These generated artifacts are the system's initial project code base (from CDD), Java classes for the ontology (CD), the initial knowledge bases (DD and R/D) and the protocol net skeletons (AIP). For the agent-internal processes, Java classes are generated from abstract interface descriptions. The set of techniques and tools for the analysis are able to provide explicit models for the examination of the multi-agent applications. Some of these explicit models are diagrams and some of them make use of the original design artifacts. Finally, I describe and evaluate the AOSE projects, in which the techniques and tools have been applied and in which context they have been developed. All techniques and tools are integrated into the Paose approach through the multi-agent system metaphor. Within the approach, they further the integration and awareness of concurrency and distribution in the developed system as well as in the development system. By providing modeling techniques and supporting tools, I substantially improve the development of multi-agent applications with the Paose approach on a conceptual as well as on a technical level. On the conceptual level, improvements include support for the systematic development, structuring of models and means for the comprehension of the systems. On the technical level, they include the improvement of quality in the development and the observability through explicit representations.} }
This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.