A Group of Action Design Patterns for Mobile Agents
李钢,李增智,王宇,王立
DOI: https://doi.org/10.3321/j.issn:0254-4164.2002.12.007
2002-01-01
Abstract:By analyzing mobile agent's running process, this paper gives a group of action design patterns, its core thinking is the separation of variable parts and non-variable parts, and the separation of functions at different layers of the system. In detail, these patterns, in up-to-down order, divide mobile agent' behavior into three layers: task flow, cooperation and communion, basic function. At first, task flow layer describes mobile agent's high-level behavior, namely, mobile agent's behavior can be seen as performing corresponding task on every agent execution environment, which can be devised using order itinerary pattern and finite state itinerary pattern according to concrete application. Secondly, mobile agent collaborate with other mobile agents and local services, which is the task of cooperation and communication layer, separation pattern and union collaboration pattern can fit it, wherein, separation pattern is responsible for the separation of agent collaboration function and basic function, here, agent collaboration functions are encapsulated into a single object, through dynamically binding the object, mobile agent can complete corresponding collaboration task, on the other hand, union collaboration pattern introduces a middle layer to deal with the details of collaboration. At last, mobile agent's behavior is based on its basic functions at basic function layer such as security, control, mobility etc., which can be solved using MVC-based pattern. MVC-based pattern separate agent's interface with its implementation, thereby complexity is encapsulated into local, extensibility is gotten. By using these design patterns, high development efficiency, high portability, and maintainable, flexible application framework can be got during the design of mobile agents based system, so they have fine practical and theoretical values.