Abstract :
A standard criticism of artificial intelligence is that it does not direct itself to real problems: and yet, we argue that AI research on intelligent agents, and in particular, work on agent architectures and agent oriented programming, is aimed at developing software systems that have precisely these attributes. Specifically, the term agent is used to refer to a system that is: autonomous in that it operates independently; reactive; pro-active in that it is capable of taking the initiative, and is not driven solely by events; and social in that it can communicate, cooperate, and negotiate with other agents in order to achieve its tasks. A particularly interesting tradition in intelligent agent research is that of viewing agents as rational systems. We argue that this notion of agents is of importance to software engineering researchers, who require tools to design and implement particularly complex computer systems