The Journal of Object Technology · 2002 · 136 citations · 3 references
ComputingComputer ScienceSoftware EngineeringSystems ArchitectureSystems ModelingMulti-agent SystemsObject-oriented DesignSoftware ArchitectureSoftware ConstructionSoftware DesignSoftware ModelingAgent Oriented DesignAgent Oriented Software EngineeringObjects
Just how different—or the same—are objects and agents? Some developers consider agents to be objects, except with more bells and whistles. Then, there are those who see agents and objects as different even though they share many things in common. Both approaches, however, envision using objects and agents together in the development of software systems. In other words, objects and agents are two distinct notions—each having its own particular place in software development. The important point here is that the agent-based way of thinking brings a useful and important perspective for system development, which is different from—while similar to—the object-oriented way. This paper discusses some of the differences and similarities between agents and objects and lets you decide which viewpoint you want to choose. 1 EVOLUTION OF PROGRAMMING APPROACHES Figure 1 illustrates one way of thinking about the evolution of programming languages. Originally, the basic unit of software was the complete program where the programmer had full control. The program’s state was the responsibility of the programmer and its invocation determined by the system operator. The term modular did not apply because the behavior could not be invoked as a reusable unit in a variety of circumstances.
3