Skip to Main Content
Software engineers usually approach complex problems by separating them into sub-problems. In multiagent systems, sub-problems are solved by autonomous agents that build organizational structures. Each agent internally further decomposes a problem by goal and plan hierarchies. The underlying design of a system rejects an engineers experience with approaching complex problems. It is desirable to reuse patterns and structures that proved their practical use and were validated (e.g. interaction protocols, goal hierarchies, behavior templates, organizational structures, etc.). This improves software quality and reduces development time and costs in the long run. Model-driven software engineering enables the separation of the platform independent design of the system under consideration and the actual implementation for a concrete execution platform. The gap between the different levels of abstraction is closed by model transformations. In this paper we propose a model-driven reverse engineering approach for lifting the underlying design of implemented multiagent systems to a platform independent level. For this purpose we specify conceptual mappings from the platform to our platform independent modeling language. The extracted structures have to be refined (e.g. by using existing platform independent artifacts) and can be re-used as blue print for solving similar problems on similar execution platforms. We evaluated our approach for the BDI agent platform Jadex and a real-world scenario.