Improving the Quality of Agent-Based Systems: Integration of Requirements Modeling into Gaia Lorena Rodriguez 1 , Alethia Hume 1 , Luca Cernuzzi 1 , Emilio Insfran 2 1 DEI - Universidad Católica “Nuestra Señora de la Asunción”, Paraguay Campus Universitario – C.C. 1683 Asunción, Paraguay, Tel: +595-21-334650 lorerod@gmail.com ; alethia.hume@gmail.com ; lcernuzz@uca.edu.py 2 ISSI Research Group – Universidad Politécnica de Valencia, Spain einsfran@dsic.upv.es Abstract Nowadays, there is growing interest in the agent- oriented paradigm to deal with the construction of modern and complex software systems. However, most of the current agent-oriented development methodologies focus mainly on the design and implementation phases and do not appropriately cover the requirements phase. As poor requirements engineering is recognized as the root of most errors in current software systems, and as a means for improving the quality of these systems, the objective of our work is to propose a specific requirements modeling phase to extend Gaia, one of the most recognized agent-oriented methodologies. The proposal includes the adoption of techniques from goal-oriented and functional-oriented approaches for the modeling of requirements, according to the abstractions of agent-based systems. We describe how these complementary proposed techniques contribute to the models provided by Gaia in its analysis and design phase establishing a clear traceability framework. Finally, a case study outlines the feasibility of our approach. 1. Introduction Different approaches for designing and building modern information systems in complex and open environments have been proposed in the last years. Some of them focus on the methods, abstractions, and techniques used in traditional software engineering methods (e.g., component-based, functional-based) [15], [16]. More recent efforts try to take advantage of the agent-oriented paradigm to model/engineer complex information systems in terms of independent components. These components should collaborate in a computational organization (multi-agent systems, MAS) by playing some specific roles having to interact with others in order to reach a global or individual goal [17], [18], [19]. The Agent-Oriented Software Engineering, (AOSE) has had remarkable growth in recent years, and many methodologies have been proposed for the design and development of multi-agent systems (MAS). Even though, this new paradigm is continuously evolving to cope with new technologies and types of applications, we are facing the challenge of elicitation and modeling requirements in terms of the same abstractions that remain unchanged. The requirements engineering phase has been traditionally seen as a fuzzy task in the software development life cycle. This task must produce a precise specification of what the system should do starting from informal ideas. Nowadays, this phase is considered a key step in the development of quality complex systems. The purpose of the requirements modeling is to faithfully and accurately capture the main features of the software system to be built. The requirement specifications should allow the representation of the system requirements in a way that any potential user would be able to review and understand it, without the need for a special training. Nevertheless, the notation used in this representation is expected to be sufficiently accurate to provide clear