<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">AN AGENT ORIENTED TOOL FOR NEW DESIGN PROCESSES</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Massimo</forename><surname>Cossentino</surname></persName>
							<email>cossentino@pa.icar.cnr.it</email>
							<affiliation key="aff1">
								<orgName type="institution" key="instit1">SET</orgName>
								<orgName type="institution" key="instit2">Université de Technologie Belfort</orgName>
								<address>
									<postCode>90010</postCode>
									<settlement>Montbéliard, Belfort cedex</settlement>
									<country key="FR">France</country>
								</address>
							</affiliation>
							<affiliation key="aff2">
								<orgName type="department">Istituto di Calcolo delle Reti ad Alte Prestazioni</orgName>
								<orgName type="institution">Consiglio Nazionale delle Ricerche</orgName>
								<address>
									<settlement>Palermo</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Luca</forename><surname>Sabatucci</surname></persName>
							<email>sabatucci@csai.unipa.it</email>
							<affiliation key="aff0">
								<orgName type="department">DINFO -Dipartimento di Ingegneria Informatica</orgName>
								<orgName type="institution">Università degli Studi di Palermo Viale delle Scienze</orgName>
								<address>
									<postCode>90128</postCode>
									<settlement>Palermo</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Valeria</forename><surname>Seidita</surname></persName>
							<email>seidita@csai.unipa.it</email>
							<affiliation key="aff0">
								<orgName type="department">DINFO -Dipartimento di Ingegneria Informatica</orgName>
								<orgName type="institution">Università degli Studi di Palermo Viale delle Scienze</orgName>
								<address>
									<postCode>90128</postCode>
									<settlement>Palermo</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Salvatore</forename><surname>Gaglio</surname></persName>
							<email>gaglio@unipa.it</email>
							<affiliation key="aff0">
								<orgName type="department">DINFO -Dipartimento di Ingegneria Informatica</orgName>
								<orgName type="institution">Università degli Studi di Palermo Viale delle Scienze</orgName>
								<address>
									<postCode>90128</postCode>
									<settlement>Palermo</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
							<affiliation key="aff2">
								<orgName type="department">Istituto di Calcolo delle Reti ad Alte Prestazioni</orgName>
								<orgName type="institution">Consiglio Nazionale delle Ricerche</orgName>
								<address>
									<settlement>Palermo</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">AN AGENT ORIENTED TOOL FOR NEW DESIGN PROCESSES</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">D6ECF455121CDF3DD4A0C1A160DDFD07</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T14:52+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In the last years we applied the Method Engineering paradigm to the development of agent-oriented design processes. The main difficulty in our initial experiments was ensuring the support of a customised CASE tool to the new methodology. In this paper we now present a Computer-Aided Process Engineering (CAPE) tool that we developed in order to allow the design of the new process and then its instantiation. The process is executed as a workflow, the designer receives the help of an expert system (for routine works automation and syntax/semantic checks) and can model his/her system using a set of Eclipse plug-ins supporting all UML diagrams. The development of this tool started from the definition of a system metamodel obtained from the initial requirements and then instantiated using open-source and ad hoc developed components; as it could be expected relevant portions of this tool are developed using the agent-oriented paradigm.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.">Introduction</head><p>Agent-oriented research in the last decade achieved significant advancements in the application of software engineering techniques to multi-agent systems (MAS). The growing interest for this field brought to the creation of a specific branch of software engineering called Agent-Oriented Software Engineering (AOSE) <ref type="bibr" target="#b1">[2,</ref><ref type="bibr" target="#b16">18,</ref><ref type="bibr" target="#b24">26]</ref>. Initial works in this field received a relevant influence by artificial intelligence and more attention was given to model reasoning capabilities of single agents rather than defining the system architecture and real implementation possibilities. This has been overcome by the availability of recent approaches that allows the successful application of the agent paradigm to real and complex problems. Complexity is indeed becoming one of the leading arguments in AOSE. Engineering very large complex system is a difficult challenge that can find interesting solutions in agent societies. New works on systems adaptation (also in relation with the relevant distribution rate of enormous number of agents) <ref type="bibr" target="#b10">[11]</ref> are arising from the attention of researchers and practitioners for such agent societies and the possibility of facing the problem with a kind of bottom-up approach based on agents self-organization capabilities. Several design methodologies have been developed in the last years, each one with a specific attention for some categories of problem, development context or design approach <ref type="bibr" target="#b0">[1,</ref><ref type="bibr" target="#b2">3,</ref><ref type="bibr" target="#b9">10,</ref><ref type="bibr" target="#b20">22,</ref><ref type="bibr" target="#b21">23,</ref><ref type="bibr" target="#b27">29,</ref><ref type="bibr" target="#b28">30]</ref>.</p><p>A growing interest for the possibilities offered by the results of (situational) method engineering <ref type="bibr" target="#b11">[12,</ref><ref type="bibr" target="#b12">13,</ref><ref type="bibr" target="#b19">21]</ref> is a natural consequence of this dynamic situation. The agent community work on this discipline is also characterized by a relevant attention for the system meta-model that is, in the case of MAS, not a well established one (like it is in the object-oriented world) but rather, it is one of the distinguishing elements of each existing design process. Just to provide an example of the great spread of MAS meta-models proposed in literature we can consider that even their real core, the concept of agent, is not subject to a commonly agreed definition and some moderately shared properties like autonomy, pro-activeness, social ability and reactivity <ref type="bibr" target="#b25">[27]</ref> are not adopted by all the authors. In this paper we are going to discuss the development of a tool we built in order to support our method engineering experiments. Our aim was to have a tool (we called it Metameth) that may be used to define a new (agent-oriented) design process and can support the design phases in both research activities as well as students' projects, where different stakeholders can participate in the design of an unique system in an asynchronous and distributed way.</p><p>The real development process of Metameth started with the collection of the requirements it should fulfill, after an analysis of these requirements we defined the system meta-model that could be used to satisfy all the constraints. This meta-model has been finally implemented in the real application that is essentially composed of 4 main components:</p><p>• the process definition component (an open source graphical tool, JaWE <ref type="bibr" target="#b15">[17]</ref> by Enhydra that allows the definition of a process in form of a workflow process); • the process execution (Shark <ref type="bibr" target="#b23">[25]</ref>, an open source workflow engine, again by Enhydra) that orchestrates the different activities allowing their distributed, asynchronous, and (in a limited way) collaborative execution;</p><p>• each designer essentially works in tight relationship with a personal agent that takes care of executing recursive tasks (like starting the automatic composition of some artifacts and performing several syntax/semantic checks during the design phase;</p><p>• the designer performs his/her work also with the support of a UML modeling tool we built as an IBM Eclipse plug-in <ref type="bibr" target="#b13">[14]</ref>. This tool supports UML 1.5 specifications and also extends them as requested for some diagrams of the PASSI process <ref type="bibr" target="#b9">[10]</ref>.</p><p>Metameth has been developed during the last two years with the involvement of two PhD students and up to twelve master graduating students for a total effort of almost seven man/years. The paper is organized as follows: in section 2 we discuss the requirements of the Metameth tool and some choices we adopted in its development. In section 3 we present the system meta-model we defined as a consequence of the previous discussed choices and then in section 4 we introduce a brief usage scenario in order to present the resulting prototype. Finally some conclusions are drawn in section 5.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">The Metameth Project</head><p>This work started from a set of requirements arising from our previous experiences. Our first attempt in the development of design tools was the creation of a plug-in for Rational Rose (we called it PTK, PASSI ToolKit) <ref type="bibr" target="#b6">[7]</ref> that introduced several checks in the design semantics and the automatic composition of several PASSI diagrams. Code generation was performed with the help of a pattern reuse tool and good results were obtained about that <ref type="bibr" target="#b5">[6]</ref>.</p><p>In 2004 there was an evolution of PASSI in the direction of agile processes. The consequent agile PASSI was the result of an experiment of design process creation using method engineering <ref type="bibr" target="#b7">[8]</ref>; it has been supported by a tool based on MetaEdit+ (by MetaCase) whose flexibility in modeling the semantic and notation of single method fragments proved very useful. We extended the MetaEdit+ features including the automatic composition of some diagrams (mostly based on reverse engineering of code for documentation purpose) and pattern reuse support <ref type="bibr" target="#b4">[5]</ref>. The development of such a tool although simple and not totally engineered was a high cost and not easily reproducible for future experiments of design process construction.</p><p>In the last year we decided to collect all the experiences done with the use of PASSI and evolve it towards a new release that is still under test in our laboratory. In the meanwhile we faced the need of producing a new tool (Metameth) to support it and decided to enlarge the requirements of this tool towards a more comprehensive system that could support our future experiments in method engineering. In the following subsections we discuss the requirements we identified for our tool; starting from these requirements we perform the fundamental architectural choices that are finally presented in subsection 1.2.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.1">Requirements for the Metameth tool</head><p>Our work started with the identification of the requirements for the tool to be built. As said before, we had some experience with the production and use of a couple of other tools in the past. It is obvious to expect a real enhancement with the new project without loosing any of the positive features of the old systems; their main limit was the impossibility of easily sharing the different design phases (collaborative work was not supported) and the resulting artifacts. To overcome this limitation we decided to explicitly support distributed design processes (involving several designer working on different phases at the same moment in different locations) (Req. 1).</p><p>As already discussed our attention was also focused on helping the designer in properly adopting the prescribed flow of activities. We estimate that our design processes will be very frequently iterative/incremental, also because no other specific needs arose in our previous works for the design of MAS on that, see <ref type="bibr" target="#b3">[4]</ref>; therefore we decided that the tool should support a design process composed of several activities (eventually organized in some kind of hierarchy) with several different possible iteration paths (Req. 2).</p><p>We also considered important to plan an easy extensibility of our tool. Being a method engineering tool it should obviously support several different design processes (this means allowing the composition of different processes starting from a repository of method fragments, Req. 3) and the related notations (proper design instruments should be available, Req. 4) but also different code generation modules in such a way that different coding languages or implementation frameworks could be adopted. As regards the fragments repository we explicitly address an existing proposal coming from the old FIPA Methodology Technical Committee <ref type="bibr" target="#b8">[9,</ref><ref type="bibr" target="#b22">24]</ref> whose general structure will be discussed later. Finally, the tool requirements include the possibility of automatically composing (portion of) diagrams when it is possible (Req. 5), the syntax check on notational aspects of the project (Req. 6) and the consistency check on some design issues like the correct instantiation of the most important elements of the MAS meta-model (Req. 7), pattern reuse (Req. 8), code generation (Req. 9) and finally the production of an adequate documentation (Req. 10) that, starting from the produced artifacts, is able of creating complex documents by merging diagrams, text, tables and so on.</p><p>In the next sub-section, from the analysis of the listed requirements we are going to deduce the strategic choices and general architecture for the tool.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.2">Requirements analysis and strategic choises</head><p>It is worth to remember that the tool we are discussing has been developed in the context of a research institute, with the work of PhD and graduating students. In this context and with these involved resources, the fulfillment of Req. 1 (distributed design process) and Req. 2 (support for iterative/incremental processes) was a relevant challenge for our group. We decided to adopt a well-known solution: supporting the software development process as a workflow management process. For the definition of workflow we refer to the WFMC <ref type="bibr" target="#b26">[28]</ref> specifications <ref type="bibr" target="#b14">[16]</ref>: "The automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules".</p><p>We think this concept could be profitably applied to the execution of a software development process and therefore we decided to separate the modeling phase of our processes from its enactment as it happens for the design of a WFM process and its execution.</p><p>During the process modeling phase we decided to adopt a standard by OMG, the Software Process Engineering Metamodel (SPEM) <ref type="bibr" target="#b18">[20]</ref> that we have been using during the last three years. Once the process is modeled in SPEM we use a graphical tool (JaWE) to produce its XPDL translation (XPDL is the process specification language adopted by WFMC). Obviously this requires some compromises that are related to the structure of the system meta-model we define and specifically to the relationships among the workflow elements and the process elements of the method fragments (more details on that will be provided in section 4). The fragment repository (Req. 3) is an extension of an existing repository we built according to the work done within FIPA and it has been extended with the proper set of expert system rules and software components (agents) used to support the specific GUIs required in the fragment; the repository of fragments already exists and we are working for integrating it in the tool. Only the fragments used to implement our own methodologies (classic and agile PASSI process) are already fully integrated in the tool, we are currently working on the software implementation of fragments from other methodologies that are by now described in only a textual form in the repository.</p><p>The next group of requirements is inherent to the instantiation of the XPDL produced with JaWE. For this aim we used an open source workflow engine (Shark) integrated in a multi-agent system realizing all the operations required for our tool. The system incorporates an engine for a logical Lisp-like language execution (Jess <ref type="bibr" target="#b17">[19]</ref>). This choice allows realizing some kind of reasoning about the information introduced by the designer during his/her work (fulfilling Req. 5-6: artifact auto-composition, syntax and semantic check). In order to support the modeling phases we integrated the system in the Eclipse (IBM Eclipse) infrastructure offering a well known architecture with an easy plug-in support. In this environment we developed a set of UML-compliant diagram editors. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">The system metamodel</head><p>In designing our method engineering tool we decided to spend a great attention on the system meta-model. Starting from the results of the requirements elicitation and analysis phases we deduced the fundamental aspects of this meta-model and then we started a more detailed design process. The inputs of our work as already discussed in previous sections were: the general structure of the fragment meta-model, the WFMC workflow process model and the SPEM (software development) process model. Our first step was merging these elements in a unique system meta-model that could profitably capture the best contribution of each of the different standards. The resulting system meta-model also included a specific support for fundamental aspects like system modeling (in form of a plug-in for IBM Eclipse), syntax/semantic check on design artifacts (and resulting instance of the MAS meta-model) and automatic compilation of some artifacts according to their composition rules.</p><p>The fundamental elements of the resulting system meta-model are reported in Figure <ref type="figure" target="#fig_0">1</ref>. About the method fragment definition, we can say it is composed of (see Figure <ref type="figure" target="#fig_1">2</ref>): a process description (in terms of activities and involved actors), produced work products, guidelines, glossary and aspects (regarding specific issues related to fragment reuse). A link to the MAS meta-model element(s) defined/refined in the activities of the specific fragment (and represented in the fragment work products) is also included.</p><p>Because of the choice of enacting our design process as a workflow, all process related elements in our system meta-model are substituted by the corresponding elements in the WFMC specifications. For this reason, in Figure <ref type="figure" target="#fig_0">1</ref> the fragment is related to a Workflow Process (also called Process in WFMC specifications <ref type="bibr" target="#b26">[28]</ref>) and it is composed of Workflow Activities. Relevant data as specified in the WFMC specifications is: "the data that is created and used within each process instance during process execution". Because of this meaning we related it to the work product that is used to represent this data. The WorkProduct element is also related to the Modeling Language that is used to draw it and to the MAS Model it represents. A MAS Model is the instance of the MAS meta-model underpinned by the design process. The WorkProduct is also related to the Composition Rules we use to represent all the norms (syntactic/semantic rules, document templates design conventions) defined for the artifact. These rules will automatically be checked by our expert system thus satisfying some of the previous discussed requirements.</p><p>Finally we can note that the Workflow Process Activity is realized by the Workflow Activity Implementation element. This is the result of a precise design choice: the workflow engine, as it is common, after triggering some activity, invokes an external application to support the stakeholder in his/her work. In a common business workflow process the application can be a word processor, a spreadsheet or another personal production tool. In our system, the external application is always an agent (we named it Activity Agent) that is responsible for the interaction with the user, the control of design applications (UML design modules built as a plug-in of IBM Eclipse), the collection of new data and the request for syntax/semantic checks (from the expert system). In order to better understand some details of the final configuration of our meta-model, we can start from its fundamental element, the Fragment reported in Figure <ref type="figure" target="#fig_1">2</ref>. Its main elements have been reported in Figure <ref type="figure" target="#fig_0">1</ref> with the changes needed to include the other parts (mainly workflow support and expert system rules). The original Process Description element has been replaced by the Workflow Process element coming from the WFMC specifications that is composed of Workflow Activities. Differently from the initial schema, these activities are not directly related to the WorkProduct. In fact, in our new approach, each Workflow Activity (here we mean the entity scheduled and managed by the workflow engine) is realized by a Workflow Activity Implementation that corresponds to a real piece of work done by the designer (and in so doing the designer generally interacts with a specific Activity Agent rather than the workflow engine). The implementation element has been further refined as reported in Figure <ref type="figure" target="#fig_2">3</ref> where we list the categories of design actions supported by our Activity Agents:</p><p>• User_Action; it is an action specified in the workflow but not supported at all by the tool (for instance the application of a heuristics). • GUI_Action: it is an action performed by the designer using a GUI. Two kinds of these actions exist:</p><p>Form_Action (the designer fills in a form) and Design_Action (the designer composes some diagram, for instance using our UML editor). Gui_Actions are related to WorkProduct since they participate to artifact composition. • WP_Composition: it is an action performed by the tool to create a new artifact (for instance it corresponds to the instantiation of a new UML diagram) and/or its population with elements already defined in previous steps of the process (this is usually done with the help of the expert system). The update of a work product in order to be consistent with other documents is another kind of possible action (suppose that a design element is renamed elsewhere from someone else, it is necessary to spread the change all over the design process). Obviously WP_composition actions are related to the WorkProduct element too. • Rule check: it is an action performed by the expert system when it executes the composition and design rules. The discussed system meta-model will find a realization in the system architecture discussed in the next section.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">The system architecture</head><p>The prototype we developed is based on several technologies, standards and existing tools. The architecture of Metameth is inspired both to the IEEE's recommended practice (see <ref type="bibr" target="#b13">[14]</ref>) and the OMG's MDA architecture <ref type="bibr" target="#b18">[20]</ref>. We need to adapt these abstract specifications to our specific application context; this caused a resulting architecture where the basic elements are still detectable, but other ones were changed in order to reflect the use of the agent paradigm.</p><p>Metameth main sub-systems are reported in Figure <ref type="figure" target="#fig_4">5</ref> and a great part of them has not been developed from scratch; listing the most relevant open source components we reused in our Metameth tool we have: 1. JaWE (by Enhydra) adopted as a graphical workflow editor to design the process (it exports the process using the XPDL format); 2. Shark (again by Enhydra) adopted as a workflow execution engine (it is able of reading XPDL files and also to interact with our Java-based Activity Agents); 3. Jade is the platform we used to develop our Activity Agents; this is the most diffused FIPA-compliant agent development platform. 4. Jess is the Java-based rule engine we used to build our expert system; such a system is the 'intelligent' part of the Metameth tool; a relevant portion of its services are required by the Activity Agents that need reasoning capabilities in order to assist the designer in his/her duty. 5. The MAS meta-model required by the adopted design process is depicted in form of an ontology using the tool Protégé by the Stanford University, California. 6. IBM Eclipse is the IDE we used to develop our UML editors. Now we are going to illustrate the main steps of the construction of a new design process and its enactment with the Metameth tool.</p><p>The scenario starts with the JaWE session used to define the new process; this tool offers a graphical interface to model the process as a flow of sub-processes, and activities; each activity may be atomic or decomposed in sub-activities (Figure <ref type="figure" target="#fig_3">4</ref>).</p><p>The next step in the definition of the design process is the specification (using Jess rules) of the semantics of the MAS meta-model elements and the (work products) composition rules of the process. This is done by using Protégé for drawing the ontology and a specifically built Rule editor tool for describing Jess rules starting from some templates. When the design process has been entirely described using the XPDL language (process aspects) and Jess rules (semantics and composition rules), the process administrator may instantiate it using the process execution module. This has been developed using a multi-agent system composed by: 1. A Controller agent (that is interfaced with the workflow execution engine). 2. One or more Stakeholder agents, one for each designer that uses it to accept, start, decline the activities assigned to him from the process definition. After a log-in session, the user may verify his activity list and can start/ refuse or delegate an activity. Figure <ref type="figure" target="#fig_5">6</ref> shows the user interface for a system analyst who is going to accept a define use case activity. 3. An Expert agent (used to wrap the Jess expert system). 4. One or more Activity agents. When the designer chooses to perform an activity, an agent becomes responsible for coordinating all the operations related to the specific activity (also in collaboration with the Expert agent and the UML editors). Activity agents offer several services to the designer: i) autocomposition used when a work product can be automatically modified/created or updated; ii) notation interpretation, used to map notational elements (use cases, classes, activities, …) into elements of the MAS meta model (requirements, agents, behaviours, …), iii) semantic validation used to verify the semantic consistence of the whole project. In Figure <ref type="figure">7</ref> the first three work products of the process are reported (domain requirements description, agent identification and role identification).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.">Conclusions and Future Work</head><p>Method Engineering received a relevant attention from some members of the agent-oriented community in the last few years. This is the consequence of a well-identified need for a rapid assessment of existing agent-oriented methodologies and possibly the development of a widely accepted standard in the field. The novelty brought by some of these works is the focus on the multi-agent system meta-model. This is a crucial element that can be seen as the signature of different approaches; it is a matter of fact that different methodologies in this context adopt models that differ starting from the definition of the same basic notion of agent.</p><p>In this paper we present the tool we developed to support our experiments of methodologies composition; it supports the method engineer in the definition of a design process (seen as a workflow process) and the definition of the composition/syntax/semantic rules of the work products; these rules will be used by an expert system to supervise the design activities and provide some automation level.</p><p>A workflow engine ensures the design process instantiation and allows the distributed and asynchronous execution of the different activities. The tool is completed by a set of plug-ins for IBM Eclipse we developed in order to support UML diagrams and some specific diagrams of our preferred methodologies. In the future we are going to complete this tool with more features; specifically we are going to interface it with an agent-oriented pattern reuse tool that allows code generation for one of the most diffused agent development platforms (Jade). The production of an extensive and well-formatted documentation from the design artifact is also scheduled and will be obtained through a society of agents; each one specialized for the composition of one specific kind of document.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 -</head><label>1</label><figDesc>Figure 1 -The fundamental elements of the Metameth meta-model</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 2 -</head><label>2</label><figDesc>Figure 2 -The Fragment Meta Model</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 3 -</head><label>3</label><figDesc>Figure 3 -A detail on the activities of the Metameth meta-model</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Figure 4 -</head><label>4</label><figDesc>Figure 4 -A screenshot of the JaWE tool used for designing the methodology</figDesc><graphic coords="5,95.58,112.32,410.04,133.74" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Figure 5 -</head><label>5</label><figDesc>Figure 5 -The abstract architecture of Metameth</figDesc><graphic coords="6,135.00,112.32,320.76,142.20" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_5"><head>Figure 6 -</head><label>6</label><figDesc>Figure 6 -A screenshot of the Stakeholder agent during the selection of an activity by the designer</figDesc><graphic coords="7,173.34,108.84,237.72,104.16" type="bitmap" /></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Engineering Adaptive Multi-Agent Systems: The ADELFE Methodology</title>
		<author>
			<persName><forename type="first">C</forename><surname>Bernon</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Camps</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">P</forename><surname>Gleizes</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Picard</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">To appear in Agent-Oriented Methodologies</title>
				<editor>
			<persName><forename type="first">B</forename><surname>Henderson-Sellers</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</editor>
		<imprint>
			<publisher>Idea Group Pub</publisher>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">An Overview of Current Trends in European AOSE Research</title>
		<author>
			<persName><forename type="first">C</forename><surname>Bernon</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Pavon</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Informatica Journal</title>
		<imprint>
			<biblScope unit="volume">29</biblScope>
			<biblScope unit="issue">4</biblScope>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">TROPOS: An Agent-Oriented Software Development Methodology</title>
		<author>
			<persName><forename type="first">P</forename><surname>Bresciani</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Giunchiglia</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mylopoulos</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Perini</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of Autonomous Agents and Multi-Agent Systems</title>
		<imprint>
			<biblScope unit="volume">8</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="203" to="236" />
			<date type="published" when="2004">2004</date>
			<publisher>Kluwer Academic Publishers</publisher>
		</imprint>
	</monogr>
	<note>Figure 7 -Some screenshots of the UML editors we developed as a plug-in for Eclipse</note>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Process Models for Agent-based Development</title>
		<author>
			<persName><forename type="first">L</forename><surname>Cernuzzi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Zambonelli</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of Engineering Applications of Artificial Intelligence</title>
		<imprint>
			<biblScope unit="volume">18</biblScope>
			<biblScope unit="issue">2</biblScope>
			<date type="published" when="2005">2005</date>
			<publisher>Elsevier</publisher>
		</imprint>
	</monogr>
	<note>EAAI)</note>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Agile PASSI: An Agile Process for Designing Agents</title>
		<author>
			<persName><forename type="first">A</forename><surname>Chella</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Sabatucci</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Seidita</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">International Journal</title>
		<imprint>
			<date type="published" when="2006-05">2006. May</date>
		</imprint>
		<respStmt>
			<orgName>Computer Systems Science &amp; Engineering ; Software Engineering for Multi-Agent Systems</orgName>
		</respStmt>
	</monogr>
	<note>Special issue on</note>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">A Possible Approach to the Development of Robotic Multi-Agent Systems</title>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Sabatucci</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Chella</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">IEEE/WIC Conf. on Intelligent Agent Technology (IAT&apos;03)</title>
				<meeting><address><addrLine>Halifax (Canada</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2003-10-13">2003a. October, 13-17</date>
			<biblScope unit="page" from="539" to="544" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Designing JADE systems with the support of CASE tools and patterns in Special Issue on JADE of the Telecom Italia</title>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Sabatucci</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Chella</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal EXP</title>
		<imprint>
			<date type="published" when="2003-09">2003b. September</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Composition of a New Process to Meet Agile Needs Using Method Engineering</title>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Seidita</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="s">Lecture Notes in Computer Science</title>
		<imprint>
			<biblScope unit="volume">3390</biblScope>
			<biblScope unit="page" from="36" to="51" />
			<date type="published" when="2005-02">2005a. Feb 2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<title level="m" type="main">Activity of the FIPA Methodology Technical Committee</title>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Garro</surname></persName>
		</author>
		<idno>RT-ICAR-PA-05-15</idno>
		<imprint>
			<date type="published" when="2005-12">2005b. Dec. 2005</date>
		</imprint>
	</monogr>
	<note type="report_type">ICAR-CNR Technical Report</note>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">From Requirements to Code with the PASSI Methodology</title>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Agent-Oriented Methodologies</title>
				<editor>
			<persName><forename type="first">B</forename><surname>Henderson-Sellers</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</editor>
		<meeting><address><addrLine>Hershey, PA, USA</addrLine></address></meeting>
		<imprint>
			<publisher>Idea Group Inc</publisher>
			<date type="published" when="2005">2005c</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Self-Organisation and Emergence in Multi-Agent Systems: An Overview -Informatica</title>
		<author>
			<persName><forename type="first">Marzo</forename><surname>Di</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Serugendo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M.-P</forename><surname>Gleizes</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Karageorgos</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">An International Journal of Computing and Informatics</title>
		<idno type="ISSN">0350-5596</idno>
		<imprint>
			<biblScope unit="volume">30</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="45" to="54" />
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">From Modeling to Simulation of Multi-Agent Systems: an integrated approach and a case study</title>
		<author>
			<persName><forename type="first">G</forename><surname>Fortino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Garro</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Russo</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Multiagent System Technologies</title>
		<title level="s">Lecture Notes in Artificial Intelligence (LNAI</title>
		<editor>
			<persName><forename type="first">Gabriela</forename><surname>Lindemann</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Jorg</forename><surname>Denzinger</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><surname>Ingo</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Rainer</forename><surname>Timm</surname></persName>
		</editor>
		<editor>
			<persName><surname>Unland</surname></persName>
		</editor>
		<meeting><address><addrLine>Berlin Heidelberg, Germany</addrLine></address></meeting>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2004">2004</date>
			<biblScope unit="volume">3187</biblScope>
			<biblScope unit="page" from="213" to="227" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Creating a comprehensive agent-oriented methodology -using method engineering and the OPEN metamodel</title>
		<author>
			<persName><forename type="first">B</forename><surname>Henderson-Sellers</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Agent-Oriented Methodologies Idea Group</title>
				<editor>
			<persName><forename type="first">B</forename><surname>Henderson-Sellers</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
	</analytic>
	<monogr>
		<title level="m">IEEE Recommended practice for architectural description of software-intensive systems</title>
				<imprint>
			<date type="published" when="2000">2000. 2000</date>
			<biblScope unit="volume">1471</biblScope>
			<biblScope unit="page">23</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<title level="m" type="main">Terminology &amp; Glossary</title>
		<idno>WFMC-TC-1011</idno>
		<ptr target="http://www.wfmc.org/standards/docs/TC-1011_term_glossary_v3.pdf" />
		<imprint>
			<date type="published" when="1999-02">Feb-1999</date>
			<biblScope unit="volume">3</biblScope>
		</imprint>
	</monogr>
	<note type="report_type">Document</note>
</biblStruct>

<biblStruct xml:id="b15">
	<monogr>
		<title level="m" type="main">the Enhydra Java Workflow Editor</title>
		<author>
			<persName><surname>Jawe</surname></persName>
		</author>
		<ptr target="http://www.enhydra.org/workflow/jawe/index.html" />
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">Agent-Oriented Software Engineering</title>
		<author>
			<persName><forename type="first">N</forename><surname>Jennings</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Wooldridge</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Handbook of Agent Technology</title>
				<editor>
			<persName><forename type="first">J</forename><surname>Bradshaw</surname></persName>
		</editor>
		<imprint>
			<publisher>AAAI/MIT Press</publisher>
			<date type="published" when="2000">2000</date>
		</imprint>
	</monogr>
	<note>edition</note>
</biblStruct>

<biblStruct xml:id="b17">
	<monogr>
		<ptr target="http://herzberg.ca.sandia.gov/jess/" />
		<title level="m">Jess Rule</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<monogr>
		<author>
			<persName><surname>Omg</surname></persName>
		</author>
		<idno>formal/02-</idno>
		<title level="m">Software Process Engineering Metamodel Specification, Version 1.0, Object Management Group</title>
				<imprint>
			<date type="published" when="2002-11">2002. Nov 2002</date>
			<biblScope unit="page" from="11" to="14" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<analytic>
		<title level="a" type="main">Assembling Agent Oriented Software Engineering Methodologies from Features</title>
		<author>
			<persName><forename type="first">T</forename><surname>Juan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Sterling</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Winikoff</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the Third International Workshop on Agent-Oriented Software Engineering</title>
				<meeting>of the Third International Workshop on Agent-Oriented Software Engineering</meeting>
		<imprint>
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
	<note>AAMAS&apos;02</note>
</biblStruct>

<biblStruct xml:id="b20">
	<analytic>
		<title level="a" type="main">Prometheus: A Methodology for Developing Intelligent Agents</title>
		<author>
			<persName><forename type="first">L</forename><surname>Padgham</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Winikoff</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="s">Lecture Notes in Computer Science</title>
		<imprint>
			<biblScope unit="volume">2585</biblScope>
			<biblScope unit="page" from="174" to="185" />
			<date type="published" when="2003-01">2003. Jan 2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b21">
	<analytic>
		<title level="a" type="main">Agent-Oriented Software Engineering with INGENIAS</title>
		<author>
			<persName><forename type="first">J</forename><surname>Pavón</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Gómez-Sanz</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Multi-Agent Systems and Applications III</title>
				<editor>
			<persName><forename type="first">V</forename><surname>Marík</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><surname>Müller</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Pechoucek</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2003">2003. 2003</date>
			<biblScope unit="volume">2691</biblScope>
			<biblScope unit="page" from="394" to="403" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b22">
	<analytic>
		<title level="a" type="main">A repository of fragments for agent systems design</title>
		<author>
			<persName><forename type="first">V</forename><surname>Seidita</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Cossentino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Gaglio</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. Of the Workshop on Objects and Agents (WOA06)</title>
				<meeting>Of the Workshop on Objects and Agents (WOA06)<address><addrLine>Catania, Italy</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2006-09">2006. September 2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b23">
	<monogr>
		<ptr target="http://www.enhydra.org/workflow/shark/index.html" />
		<title level="m">Java Open Source workflow engine based on XPDL)</title>
				<imprint/>
	</monogr>
	<note>Shark</note>
</biblStruct>

<biblStruct xml:id="b24">
	<analytic>
		<title level="a" type="main">Agent-based software engineering</title>
		<author>
			<persName><forename type="first">M</forename><surname>Wooldridge</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEE Proc Software Engineering</title>
		<imprint>
			<biblScope unit="volume">144</biblScope>
			<biblScope unit="page" from="26" to="37" />
			<date type="published" when="1997">1997</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b25">
	<analytic>
		<title level="a" type="main">Intelligent Agents: Theory and Practice</title>
		<author>
			<persName><forename type="first">M</forename><surname>Wooldridge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><forename type="middle">R</forename><surname>Jennings</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Workflow</title>
				<imprint>
			<date type="published" when="1995">1995</date>
			<biblScope unit="volume">10</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b26">
	<monogr>
		<title level="m" type="main">Workflow Standard Process Definition Interface -XML Process Definition Language</title>
		<idno>WFMC-TC-1025</idno>
		<ptr target="http://www.wfmc.org/standards/docs.htm#Interface_1" />
		<imprint>
			<date type="published" when="2005-10-03">October 3, 2005</date>
		</imprint>
	</monogr>
	<note>Version 2.00. Document Number</note>
</biblStruct>

<biblStruct xml:id="b27">
	<analytic>
		<title level="a" type="main">Developing Multiagent Systems: the Gaia Methodology</title>
		<author>
			<persName><forename type="first">F</forename><surname>Zambonelli</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Jennings</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Wooldridge</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Transactions on Software Engineering and Methodology</title>
		<imprint>
			<biblScope unit="volume">12</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="417" to="447" />
			<date type="published" when="2003">2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b28">
	<monogr>
		<author>
			<persName><forename type="first">A</forename><surname>Waern</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Gala</surname></persName>
		</author>
		<idno>KADS-II/M4/TR/SICS/004/V.1.0</idno>
		<title level="m">ESPRIT Project P5248 KADS II</title>
				<imprint>
			<date type="published" when="1993">1993</date>
		</imprint>
		<respStmt>
			<orgName>Swedish Institute of Computer Science</orgName>
		</respStmt>
	</monogr>
	<note>The commonkads agent model</note>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
