The Application of Object-Oriented Analysis to Agent-Based Systems

Agents are important software abstractions for dist ribu ed problem solving and autonomous, proactive behavior. They have been used in many application s, i cluding manufacturing, enterprise integration , network management, and advanced user interfaces fo r worldwide web applications. As agent systems become more prevalent, the need arises for software engineering methodologies. The relationships between agents and objects, and the role of object oriented analysis in multiagent system development are discussed here. The approach is illustrated wi th a case study from discrete parts manufacturing. 1.0 INTRODUCTION Numerous examples can be found of applications of a gent based systems to enterprise integration ; concurrent engineering ; and manufacturing . Many agent based systems have also been develope d f r network management , scheduling, and advanced user interfaces . These systems exhibit significant advances in distributed problem solving and pro-act ive behavior. For many areas, especially humancomputerinteraction (HCI), worldwideweb appli cations, and business process management , agents that pro-actively carry out autonomous behav ior and cooperate with each other through negotiation represent the next important software a bstr ction or metaphor . As agent oriented systems become more widely u sed and integrated to mainstream applications, software engineering becomes an important considera t on. To date, most agent based systems have been developed within the artificial intelligence c ommunity, and the need for development methodologies has become well known. Some initial work in software engineering of agent based systems has been completed, but most of it has conc entrated on software architecture and omitted specification entirely 18, . Previous work 15 indicated that an agent could be identified as a p rocess or a data store in a data flow diagram with real time ex tensions. However, agent behavior is actually quit e different from a data flow process. The need to co nsider work flow and not just data flow 23 for agents has been discussed, as agents cooperate and coordin ate their activities much as individuals do in organizations or enterprises. As agents must be designed and implemented in software, a workflow representation alone can not be used. In this paper, existing methodologies fo r object oriented modelling and analysis are extend ed to encompass agent oriented systems. In particula r, the use case driven object oriented software engineering (OOSE) approach is utilized, with exten sio s for constraint technologies. The result is a methodology for specifying and analysing agent base d systems.

[1]  Elizabeth A. Kendall,et al.  Design Patterns for the Development of Multi-Agent Systems , 1996, DAI.

[2]  Stephen F. Smith,et al.  ISIS—a knowledge‐based system for factory scheduling , 1984 .

[3]  Mark S. Fox,et al.  COOL: A Language for Describing Coordination in Multi Agent Systems , 1995, ICMAS.

[4]  David C. Brown,et al.  Using Single Function Agents to investigate conflict , 1995, Artificial Intelligence for Engineering Design, Analysis and Manufacturing.

[5]  Nicholas R. Jennings,et al.  Agent Theories, Architectures, and Languages: A Survey , 1995, ECAI Workshop on Agent Theories, Architectures, and Languages.

[6]  Timothy W. Finin,et al.  Specification of the KQML Agent-Communication Language , 1993 .

[7]  Pattie Maes,et al.  Agents that reduce work and information overload , 1994, CACM.

[8]  Michael Wooldridge,et al.  Proceedings of the workshop on agent theories, architectures, and languages on Intelligent agents , 1995 .

[9]  Douglas C. Schmidt,et al.  Active object: an object behavioral pattern for concurrent programming , 1996 .

[10]  Surya B. Yadav,et al.  Requirement definition architecture—an overview , 1985 .

[11]  Margaret T. Malkoun,et al.  A Methodology for Developing Agent Based Systems for Enterprise Integration , 1996 .

[12]  Thomas R. Gruber,et al.  Toward principles for the design of ontologies used for knowledge sharing? , 1995, Int. J. Hum. Comput. Stud..

[13]  Kazuhiro Kuwabara,et al.  AgenTalk: describing multiagent coordination protocols with inheritance , 1995, Proceedings of 7th IEEE International Conference on Tools with Artificial Intelligence.

[14]  Nicholas R. Jennings,et al.  How Agents Do It in Stream Logic Programming , 1995, ICMAS.

[15]  R GruberThomas Toward principles for the design of ontologies used for knowledge sharing , 1995 .

[16]  Surya B. Yadav,et al.  A methodology to model the functional structure of an organization , 1985 .

[17]  Douglas H. Norrie,et al.  Intelligent agent systems for manufacturing applications , 1993, J. Intell. Manuf..

[18]  Nicholas R. Jennings,et al.  Using Intelligent Agents to Manage Business Processes , 1996, PAAM.

[19]  Mark Klein,et al.  Supporting conflict resolution in cooperative design systems , 1991, IEEE Trans. Syst. Man Cybern..

[20]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[21]  Ivar Jacobson,et al.  Object-oriented software engineering - a use case driven approach , 1993, TOOLS.

[22]  Mark R. Cutkosky,et al.  PACT: an experiment in integrating concurrent engineering systems , 1993, Computer.

[23]  Jay M. Tenenbaum,et al.  An intelligent agent framework for enterprise integration , 1991, IEEE Trans. Syst. Man Cybern..

[24]  Michael R. Genesereth,et al.  Software agents , 1994, CACM.