APICe » Publications » On Agent-Based Software Engineering

On Agent-Based Software Engineering

Nicholas R. Jennings
Agent-based computing represents an exciting new synthesis both for Artificial Intelligence (AI) and, more generally, Computer Science. It has the potential to significantly improve the theory and the practice of modeling, designing, and implementing computer systems. Yet, to date, there has been little systematic analysis of what makes the agent-based approach such an appealing and powerful computational model. Moreover, even less effort has been devoted to discussing the inherent disadvantages that stem from adopting an agent-oriented view. Here both sets of issues are explored. The standpoint of this analysis is the role of agent-based software in solving complex, real-world problems. In particular, it will be argued that the development of robust and scalable software systems requires autonomous agents that can complete their objectives while situated in a dynamic and uncertain environment, that can engage in rich, high-level social interactions, and that can operate within flexible organisational structures.
Keywords: Agent interactions; Agent-based computing; Multi-agent systems; Social level; Software engineering
Artificial Intelligence 117(2), pages 277-296, March 2000, Elsevier Science B.V.
@article{jennings-ai117,
	Author = {Jennings, Nicholas R.},
	Doi = {10.1016/S0004-3702(99)00107-1},
	Issn = {0004-3702},
	Journal = {Artificial Intelligence},
	Keywords = {Agent interactions; Agent-based computing; Multi-agent systems; Social level; Software engineering},
	Month = mar,
	Number = 2,
	Pages = {277--296},
	Publisher = {Elsevier Science B.V.},
	Title = {On Agent-Based Software Engineering},
	Url = {http://www.sciencedirect.com/science/article/pii/S0004370299001071},
	Volume = 117,
	Year = 2000,
	Abstract = {Agent-based computing represents an exciting new synthesis both for Artificial Intelligence (AI) and, more generally, Computer Science. It has the potential to significantly improve the theory and the practice of modeling, designing, and implementing computer systems. Yet, to date, there has been little systematic analysis of what makes the agent-based approach such an appealing and powerful computational model. Moreover, even less effort has been devoted to discussing the inherent disadvantages that stem from adopting an agent-oriented view. Here both sets of issues are explored. The standpoint of this analysis is the role of agent-based software in solving complex, real-world problems. In particular, it will be argued that the development of robust and scalable software systems requires autonomous agents that can complete their objectives while situated in a dynamic and uncertain environment, that can engage in rich, high-level social interactions, and that can operate within flexible organisational structures.}}