Agent Oriented Software Engineering with INGENIAS 1 Jorge J. Gómez-Sanz, Rubén Fuentes Facultad de Informática, Universidad Complutense de Madrid {jjgomez,ruben}@sip.ucm.es Abstract. INGENIAS is an agent oriented software engineering methodology for Multi-Agent Systems development. It combines agent research results with concepts and methods established in MESSAGE/UML. The result is a development process in the line of conventional software engineering processes, like object oriented software development paradigm or structured paradigm. INGENIAS defines deliverables and default activities to help in planning effort along a project. INGENIAS also provides with tools that facilitate the production of these deliverables. As a result, INGENIAS can be considered a valuable alternative in the Agent Oriented Software Engineering research field. 1. Introduction Different proposals in the field of Agent Oriented Software Engineering (AOSE) try to integrate results from agent research with engineering practices, some from the perspective of agent theory (KAOS [1], Vowel Engineering [2], or GAIA [3]), some as an evolution of object-oriented systems (e.g. Kendall [4]), other as task execution models (e.g. Desire [5]), or from a knowledge-based systems approach (e.g. TROPOS [6] , MAS-CommonKADS [7]). Although they start from valid scientific assumptions, their application to real problems is still challenging because the only address specific phases of the software lifecycle, or concrete issues, such as goal extraction, definition and verification of communication protocols, or task execution. Another difficulty, so much important, is the scale of application of these methodologies and their ability to be incorporated in common software engineering practices. In most of the cases the engineer, the end user of the methodology, needs to acquire further expertise from what is required at his position in order to successfully apply the methodology. Facing these problems, the grasia! (http://grasia.fdi.ucm.es) research group has developed a new methodology named INGENIAS. It relays on engineering concepts such as definition of workflows, encapsulation of functionality through roles, groups and organizations, or distinction of different views of the system, like structural or 1 This work is sponsored in part by the Spanish Committee for Science and Technology (CICYT, TIC2000-0737-C03-02).