Abstract:
It is percieved that only pure object-oriented techniques are inadequate to face challenges effectively in intelligent software development. To overcome this limitation, the agent concept has been used to extend traditional object-oriented paradigm resulting in the important basis for effective intelligent-software developing approach. Yet, almost all software agent-based systems and frameworks in present existence have been doing many of the same things. The differences in the way agents communicate, their level of autonomy, intelligence, and mobility have created difficulties in development. These have led to formalizing wisdom and experiences of developers by formulating the Agent Design Patterns as presented in this piece of work.
Besides the agent principle, the formulated approach in this piece of work has foundations upon the specialization of common activities typically performed in many object-oriented methods, the object-oriented modeling techniques, and the combination of new additional phase termed Agentification into it. The agentification phase plays the role of gateway to embed some useful agents into the developing system. Additionally, every phase of formulated methodology highly expects to gain directly and indirectly the reusability advantages derived from some of captured agent design patterns.
The proposed methodology and agent design patterns were evaluated with a prototype named Component Upgrader. It consists of mobile and collaborative agents, which were systematically developed by means of the formulated methodology; and all created agent design patterns were fully applied to it to increase efficiency and acceleration of the development. The Java-based Aglet platform was used during its implementation.