WG Methodology Chair: Massimo Cossentino (Italian National Research Council)
Outline • AOSE (Agent Oriented Software Engineering) today • Our goals • The proposed approach • What is Method Engineering • The WG Methodology work plan • What has been done, what is to be done • List of supporters • Agenda of the Budapest meeting
AOSE Today • Several methodologies with different advantages: • Gaia • Mase • Message • PASSI • Prometheus • Tropos • … • No standard modeling language • Modeling TC activity, AUML • Different tools • How to make them interact?
Our Goals Let the developer of a multi-agent system create his own methodology: • Suited for the specific problem/system to be built • Not conflicting with his (development) environmental constraints • Coherent with his (or his group) knowledge and skills • Supported by a CASE tool • Using a standard modeling language
The proposed approach Method Engineering • The development methodology is built by the developer assembling pieces of the process (method fragments) from a method base. • The method base is composed of contributions coming from existing methodologies and other novel and specifically conceived fragments Modeling Language: Modeling WG activity
Method Engineering:people, artifacts and tools The Method Engineer uses a CAME tool to compose the new methodology by reusing fragments from the repository The Method Engineer analyzes the problem and the development context/people to deduce new methodology features The CAME tool is used to instantiate a methodology specific tool The System Designer using the CASE tool specifies and develops the agent solution
What is a (method) fragment • A fragment1 is a portion of the development process, composed as follows: • A portion of process (what is to be done, in what order), defined with a SPEM diagram • One or more deliverables (artifacts like (A)UML/UML diagrams, text documents and so on). • Some preconditions (they are a kind of constraint because it is not possible to start the process specified in the fragment without the required input data or without verifying the required guard condition) • A list of concepts (related to the MAS meta-model) to be defined (designed) or refined during the specified process fragment. • Guideline(s) that illustrates how to apply the fragment and best practices related to that • A glossary of terms used in the fragment (in order to avoid misunderstandings if the fragment is reused in a context that is different from the original one) • Other information (composition guidelines, platform to be used, application area and dependency relationships useful to assemble fragments) complete this definition. 1According to the FIPA Methodology TC definition (see http://www.pa.icar.cnr.it/~cossentino/ FIPAmeth/metamodel.htm)
The new methodology production process Fragments are identified and described according to the previous discussed definition New fragments are defined if necessary All methodologies are expressed in a standard notation (we adopt SPEM - Software Process Engineering Metamodel – by OMG) The desired MAS-Meta-Model is composed according to problem specific needs (for instance including or not self-organizing agents) A CASE (Computer Aided Software Engineering) tool is used to effectively design the multi-agent system A new and problem specific methodology is built A method fragments repository is composed with all existing fragments The multi-agent system has been coded, tested and is ready to be deployed A CAME (Computer Aided Method Engineering) tool assists in the selection of fragments and composition of design process
OO vs AO Method Engineering • Method Engineering has been introduced in the object oriented (OO) context some years ago • It could seem that introducing the method engineering paradigm in the agent oriented (AO) context is a plain operation. • It is not so, because in the OO context the construction of method fragments (pieces of methodology), the assembling of the methodology with them and the execution of the design rely on a common denominator, the universally accepted concept of object and related model of the object oriented system. • In the agent context, there is not an universally accepted definition of agent nor it exists any very diffused model of the multi-agent system.
MAS meta-models • It is the meta-model of the system to be built • It specifies • which elements (agents, roles, behaviors, communications, …) will constitute the agent solution • which relationships exist among these elements • The MAS meta-model (when chosen before of the methodology) provides a guideline for the methodology pieces selection and assembling
Methodology TC Work Plan • Creation of the meta-model. It is necessary to formally represent method fragments in order to store them in the method base. • Identification of the method base architecture. The method base needs of a technological infrastructure for the instantiation of the method meta-model previously described. • the details of this architecture strongly effect the possibility of a CASE/CAME tool support and availability. • Collection of method fragments. They can origin from the most diffused methodologies and other specific contributions. After the formalization they will be introduced in the method base. • Description of techniques for method integration. Product-oriented integration allows the composition of different fragments emphasizing their inter-relationships, process-oriented integration facilitate the composition of the logical sequence of steps of the methodology.
Deliverables • A specification document of fragment methods meta-model; • A specification document for the architecture of the method base; • A set of reusable methods obtained from existing agent-based development methodologies; • A collection of guidelines for method integration; • A glossary of methodology-related terms
What has been done • First release of a glossary of agent-design related terms (one of the TC deliverables) (see http://www.pa.icar.cnr.it/~cossentino/ FIPAmeth/glossary.htm) • Definition of the method fragment specification in terms of a portion of process, some deliverables, preconditions, list of concepts addressed in the fragment, guidelines, glossary of terms, composition guidelines, aspects and dependencies. • Definition of a proposal of MAS meta-model • Extensive experimentation of OMG SPEM as a modeling language for representing process aspects of fragments of MAS design processes • Description of several methodologies in a form that is suitable for fragment extractions (in several cases set of fragments are already available) (one talk about that later in the methodology meeting) • Preliminary definition of an architecture for the fragment repository • Experiments of methodologies composition
Description of a methodology in SPEM (From the PASSI process)
Fragment Fragment Fragment Fragment Description of a methodology in SPEM (From PASSI process: the Agent Society Phase)
Relationship with the MAS meta-model • MAS meta-model elements and work products are directly related • Kinds of relationships: • Define • Refine • Quote • Relate • …
A unifying MAS meta-model (from Adelfe, Gaia, Ingenias, PASSI) C. Bernon, M. Cossentino, M.P. Gleizes, J. Pavon, P. Turci, F. Zambonelli. Towards Unification of Multi-Agent Systems Meta-Models.
Experiments of methodologies compositions • Recently, several papers have been written • Among the others: • Following the Methodology TC approach: • M. Cossentino, V. Seidita. Composition of a New Process to Meet Agile Needs Using Method Engineering. Software Engineering for Large Multi-Agent Systems vol. III. LNCS Series, Elsivier Ed. (2004) • A. Garro, G. Fortino, W. Russo. Using Method Engineering for the Construction of Agent-Oriented Methodologies. In Proc. of WOA 04 - Dagli Oggetti agli Agenti, Sistemi Complessi e Agenti razionali, pages 51–54, Torino, Italy, December 2004. • Following similar approaches: • B. Henderson-Sellers. Method Engineering for OO Systems Development. Communications of the ACM, 46(10), 2003.  B. Henderson-Sellers. Creating a comprehensive agent-oriented methodology - using method engineering and the OPEN metamodel. In B. Henderson-Sellers and P. Giorgini, editors, Agent-Oriented Methodologies Idea Group, 2005. • T. Juan, and L. Sterling, and M. Winikoff. Assembling Agent Oriented Software Engineering Methodologies from Features. In Proc. of the Third International Workshop on Agent-Oriented Software Engineering, at AAMAS’02.
What is (still) to be done(according to the old plan) • Extraction of more fragments from existing methodologies in order to improve the methods base • Documents to be completed: • Fragment Repository architecture definition • Methodology Assembying Guidelines
Proposals for a new plan • Merging with OPF(Open Process Framework)? • Design tools • A standardization effort could help in enabling the development of this kind of tools • Specific topics of interest for FIPA: • Definition of a MAS meta-model, • Definition of the methodology meta-model • Identification of the basic activities that constitute a MAS design process (?) • Proposals?
Budapest Meeting Agenda • Discussion on method fragment definition and submission to the FIPA board for approval • Discussion on the new work plan • Definition of the new WG proposal document • Other topics?
Bernhard Bauer, Technische Universität München Monique Calisti, Whitestein Technologies Massimo Cossentino, ICAR-CNR (considering FIPA membership) Renato Levy, Intelligent Automation, Inc. James Odell, James Odell Associates Radovan Cervenka, Whitestein Technologies Paola Turci, University of Parma (considering FIPA membership) Gerhard Weiss, Technische Universität München Supporters of the initial plan (2003)
Babar Zia, San Jose State University, California Bauer Bernhard, University of Augsburg Bernon Carole, IRIT / University Paul Sabatier, Toulouse - France Beydoun Ghassan, School of Information Systems and Management, University of New South Wales, Australia Calisti Monique,Whitestein Technologies Cossentino Massimo, Italian National Research Council Cysneiros Gilberto Amado de Azevedo Cysneiros Filho, City University, London - PhD Student David Nuno, ADETTI/ISCTE Eggenberger Martin, Personal Research & ACM Member Garro Alfred, D.E.I.S. - University of Calabria Gleizes Marie-Pierre IRIT Henderson-Sellers Brian, University of Technology, Sydney Hopmans Gabriel, Communications Research & Semiotics, University Maastricht Huget Marc-Philippe, Agent ART Group, University of Liverpool Ingram Maciej, the Cracow University of Technology (Poland) Jouvin Denis, LIRIS (CNRS FRE 2672), université Lyon 1 Leversee Kevin, Zed Tycho Pty. Ltd Levy Renato, IAI Inc. Massonet Philippe, CETIC Mattocks Charles, CHECKMi Mellouli Sehl, Laval University Morreale Vito, Engineering Ingegneria Informatica Odell James,James Odell Associates Pavon Juan, Universidad Complutense Madrid Pinto Rosa Candida, Nilson Borba Bezerra Cavalcanti and Maria Luiza de Souza Leão Cavalcanti Pirker Michael, PROFACTOR GmbH Postnikov Alexey, Russia, Taganrog State University Of Radioengineering Reitbauer Alois, Profactor GmbH Sabatucci Luca, Univ. of Palermo Silva Ismênia, MSc student on CIN, Federal University of Pernambuco -UFPE, Brazil Turci Paola, University of Parma Unland Rainer, University of Duisburg-Essen Ye Shiren, National Univ of Singapore Yusko Jay, Illinois Institute of Technology Zambonelli Franco, University of Bologna Members subscribed to the Mailing List