Autonomy and inter- operability are two characteristics of software agents that are advocating agent technology as an ideal candidate to support next generation of software systems. This paper presents a Java development toolkit supporting the realization of autonomous and inter- operable agents. This toolkit provides the developer with a goal- oriented agent architecture for FIPAcompliant agents. Goal- orientation supports autonomy because the developer is no longer requested to describe what the agent should do in reaction to events. To this extent, our development toolkit provides a planning engine capable of building plans to achieve the agents goals autonomously. Goal- orientation is also a key aspect of inter- operability because it is the basis of the semantics of FIPA ACL. Our development toolkit can be used at two levels of abstraction. The higher level, that we call the agent level, allows describing the agent in terms of its natural characteristics such as goals, beliefs and social organization. A code generator producing Java skeletons from UML diagrams supports this level. The developer can choose any UML CASE tool to model her agents because this code generator works with files in a standard format. The generated skeletons must be completed with application- specific code at the lower level of abstraction, that we call object level. At this level, agents are seen as Java programs and the developer is provided with a development library to integrate her code within the generated skeletons. This two- level approach allows describing agents in their natural terms at the agent level, while supporting the integration of application- specific and legacy code at the object level. Moreover, the generated code can be customized at the object level to integrate application- specific optimizations.
['Federico Bergenti', 'Agostino Poggi']
A development toolkit to realize autonomous and interoperable agents