MotivationThe motivations of the study are summarized under three categories. These are 1) to give a programming approach based on agent programming to aspect oriented programming, 2) to propose a solution for simulation time management modeled as an aspect and not coded into simulation kernel to make simulation execution algorithms plug-
AbstractWhile object-oriented programming paradigm gives a vertical software design, aspect orientation enhances this vertically deep design by horizontal association. An agent based solution is offered for aspect-oriented programming paradigm in agent and simulation development. Agent driven simulation framework (AdSiF) is technological background of the study. AdSiF provides a declarative scripting agent programming language and it combines object oriented programming, logic programming, and agent based programming in state oriented programming paradigm as a surrounding paradigm. State-oriented programming paradigm is at the background of script and it allows programming by extended state charts. In this paper, the solution given by AdSiF for aspect-oriented programming paradigm that draws a solution background related with scattered codes, scattered requirements and tangled requirements is examined. It is explained how to distribute states and behaviors to satisfy scattered requirements, to behaviors and behavior lists, respectively and how behavior phase transitions are used to activate specific behaviors and behavior lists (a group of behaviors) to satisfy a set of requirements and to show different behavioral aspects of an agent and/ or a simulation entity. The solution also provides a solution by shifting modeling aspects conditionally in run time for conceptually different modeling requirements as well as tangled requirements. From this respect, the solution carries aspect oriented programming from design time to execution time and provides a dynamically manageable, flexible, loosely coupled and high coherent simulation and agent design. Using dynamic aspect management, parallel simulation synchronization algorithms are modeled as behaviors and each of them is grouped as an aspect and a rule based reasoning mechanism is developed to shift between algorithms depending on control criteria.