Agent-Oriented Software Engineering

Agent-Oriented Software Engineering

Kuldar Taveter, Leon Sterling
ISBN13: 9781605660264|ISBN10: 1605660264|EISBN13: 9781605660271
DOI: 10.4018/978-1-60566-026-4.ch017
Cite Chapter Cite Chapter

MLA

Taveter, Kuldar, and Leon Sterling. "Agent-Oriented Software Engineering." Encyclopedia of Information Science and Technology, Second Edition, edited by Mehdi Khosrow-Pour, D.B.A., IGI Global, 2009, pp. 93-98. https://doi.org/10.4018/978-1-60566-026-4.ch017

APA

Taveter, K. & Sterling, L. (2009). Agent-Oriented Software Engineering. In M. Khosrow-Pour, D.B.A. (Ed.), Encyclopedia of Information Science and Technology, Second Edition (pp. 93-98). IGI Global. https://doi.org/10.4018/978-1-60566-026-4.ch017

Chicago

Taveter, Kuldar, and Leon Sterling. "Agent-Oriented Software Engineering." In Encyclopedia of Information Science and Technology, Second Edition, edited by Mehdi Khosrow-Pour, D.B.A., 93-98. Hershey, PA: IGI Global, 2009. https://doi.org/10.4018/978-1-60566-026-4.ch017

Export Reference

Mendeley
Favorite

Abstract

Over the past decade, the target environment for software development has complexified dramatically. Software systems must now operate robustly in a dynamic, global, networked environment comprised of distributed diverse technologies, where frequent change is inevitable. There is increasing demand for flexibility and ease of use. Multiagent systems (Wooldridge, 2002) are a potential successor to object-oriented systems, better able to address the new demands on software. In multi-agent systems, heterogeneous autonomous entities (i.e., agents) interact to achieve system goals. In addition to being a technological building block, an agent, also known as an actor, is an important modeling abstraction that can be used at different stages of software engineering. The authors while teaching agent-related subjects and interacting with industry have observed that the agent serves as a powerful anthropomorphic notion readily understood by novices. It is easy to explain to even a nontechnical person that one or more software agents are going to perform a set of tasks on your behalf. We define software engineering as a discipline applied by teams to produce high-quality, large-scale, cost-effective software that satisfies the users’ needs and can be maintained over time. Methods and processes are emerging to place software development on a parallel with other engineering endeavors. Software engineering courses give increasing focus to teaching students how to analyze software designs, emphasizing imbuing software with quality attributes such as performance, correctness, scalability, and security. Agent-oriented software engineering (AOSE) (Ciancarini & Wooldridge, 2001) has become an active research area. Agent-oriented methodologies, such as Tropos (Bresciani, Perini, Giorgini, Giunchiglia, & Mylopoulos, 2004), ROADMAP (Juan & Sterling, 2003), and RAP/AOR (Taveter & Wagner, 2005), use the notion of agent throughout the software lifecycle from analyzing the problem domain to maintaining the functional software system. An agent-oriented approach can be useful even when the resulting system neither consists of nor includes software agents. Some other proposed AOSE methodologies are Gaia (Wooldridge, Jennings, & Kinny, 2000), MESSAGE (Garijo, Gomez-Sanz, & Massonet, 2005), TAO (Silva & Lucena, 2004), and Prometheus (Padgham & Winikoff, 2004). Although none of the AOSE methodologies are yet widely accepted, AOSE is a promising area. The recent book by Henderson-Sellers & Giorgini (2005) contains a good overview of currently available agent-oriented methodologies. AOSE approaches loosely fall into one of two categories. One approach adds agent extensions to an existing objectoriented notation. The prototypical example is Agent UML (Odell, Van Dyke, & Bauer, 2001). The alternate approach builds a custom software methodology around agent concepts such as roles. Gaia (Wooldridge et al., 2000) was the pioneering example. In this article, we address the new paradigm of AOSE for developing both agent-based and traditional software systems.

Request Access

You do not own this content. Please login to recommend this title to your institution's librarian or purchase it from the IGI Global bookstore.