<?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">Applying Tropos Early Requirements Analysis for defining a Tropos tool</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Paolo</forename><surname>Bresciani</surname></persName>
							<email>bresciani@irst.itc.it</email>
							<affiliation key="aff0">
								<orgName type="institution">ITC-irst Via Sommarive</orgName>
								<address>
									<addrLine>18</addrLine>
									<postCode>I-38050</postCode>
									<settlement>Trento-Povo</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Fabrizio</forename><surname>Sannicol</surname></persName>
							<email>sannico¡@irst.itc.it</email>
							<affiliation key="aff0">
								<orgName type="institution">ITC-irst Via Sommarive</orgName>
								<address>
									<addrLine>18</addrLine>
									<postCode>I-38050</postCode>
									<settlement>Trento-Povo</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Applying Tropos Early Requirements Analysis for defining a Tropos tool</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">5DE78139F0377DCA28E7E5BF7E2D19DB</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T15:22+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/>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Tropos <ref type="bibr" target="#b7">[8,</ref><ref type="bibr" target="#b5">6]</ref> is a novel agent-oriented software engineering methodology characterized by three key aspects <ref type="bibr" target="#b6">[7]</ref>. First, it pays attention to the activities that precede the specification of the prescriptive requirements, like understanding how the intended system would meet the organizational goals. Second, it deals with all the phases of system requirement analysis and all the phases of system design and implementation in a uniform and homogeneous way, based on common mentalistic notions as those of actors, goals, softgoals, plans, resources and intentional dependencies. Third, the methodology rests on the idea of building a model of the system-to-be that is incrementally refined and extended from a conceptual level to executable artifacts, by means of a sequence of transformational steps <ref type="bibr" target="#b0">[1]</ref>.</p><p>One of the main advantages of the Tropos methodology is that it allows to capture not only the what or the how, but also the why a piece of software is developed. This, in turn, allows for a more refined analysis of the system dependencies and, in particular, for a much better and uniform treatment not only of the system functional requirements, but also of the non-functional requirements. Tropos, although not exclusively, addresses particularly well the Agent Oriented Programming. In fact, the decision of using mentalistic notions in all the analysis phases has important consequences. Agent oriented specifications and programs use the same notions and abstractions used to describe the behavior of the human agents and the processes involving them; thus, the conceptual gap between users' specification (in terms of why and what) and system realization (in terms of what and how), is reduced to a minimum.</p><p>Tropos supports five phases of software development: early requirements, late requirements, architectural design, detailed design and implementation <ref type="bibr" target="#b4">[5,</ref><ref type="bibr" target="#b5">6]</ref>.</p><p>The present short paper concentrates on the analysis of the early requirement phase for the definition of a support tool for the Tropos methodology itself, called, since now on, the Tropos tool. In particular, the task of encoding initial informal requirement into the diagrammatic format used in the methodology, as well as the incremental transformational process that is at the basis of the construction of the complete model, will be addressed. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Early Requirement Analysis</head><p>The early requirements analysis concerns with the understanding of a problem by studying an existing organizational setting. The intentions of the stakeholders are modeled as goals and goal dependencies among actors, and analyzed by means some form of goal analysis <ref type="bibr" target="#b2">[3,</ref><ref type="bibr" target="#b3">4]</ref>. The output of this phase is an organizational model including the relevant actors and their respective dependencies for the achievement of the goals and the softgoals, and for performing or obtaining resources. The model is visualized by means of actor diagrams, describing the network of social dependencies among actors, and goal diagrams, analyzing the goal fulfillments. An awful lot of high level requirements has been identified, listed and justified in <ref type="bibr" target="#b1">[2]</ref>; due to lack of space, only a short subset of these requirements are introduced here. For example, the actor diagram of Figure <ref type="figure" target="#fig_0">1</ref> shows the actor PRG manager who depends on the Analyst for two goals: feasibility study delivered and requirements modeled.</p><p>A further step concerns the decomposition of each goal from the point of view of the actor who committed for its fulfillment. Goals are analyzed by using three basic analysis techniques: means-ends analysis, contribution analysis and AND-OR decomposition <ref type="bibr" target="#b2">[3,</ref><ref type="bibr" target="#b8">9]</ref>. Means-ends analysis proceeds by refining a goal into subgoals in order to identify goals, plans, resources and softgoals that provide means for achieving the goal (the end). Contribution analysis allows the designer to point out goals, softgoals and plans that can contribute positively or negatively at reaching the goal. AND-OR decomposition allows for a combination of AND and OR decompositions of a root goal into subgoals.</p><p>In Figure <ref type="figure" target="#fig_1">2</ref>, the goal requirements modeled is the "end" in a means-ends analysis where the "mean" is the goal build a requirements Tropos model. This last is AND-decomposed into the four subgoals: learn Tropos language, model managed, model documented and model reasoned.</p><p>An instance of contribution analysis is provided, in the figure, between the softgoal exhaustive guide and the goal learn Tropos language. Of course, subgoals deriving from an AND-OR analysis can be further AND-OR analyzed. For example, model managed is decomposed into the retrotraceability managed, multiple views visualized, diagrams edited and syntax of model checked. some views on it, while the second regards the management of different versions for each analyst.</p><p>The final setting of each Tropos phase may be reached after possibly several refinements, in each one of which not only new details may be added, but, also, already present elements and dependencies can be revised or even deleted <ref type="bibr" target="#b0">[1]</ref>.</p><p>It is obvious that the diagram of Figure <ref type="figure" target="#fig_1">2</ref> (and other developed during a first loop <ref type="bibr" target="#b1">[2]</ref>) may be not sufficiently detailed. For this reason, iterative steps of incremental refinement of the model have to be performed. As already mentioned in the introduction, this way of proceeding is a typical feature of the Tropos methodology. The iterative process not only may require intra-phase refinements, but, possibly, also revisions of artifacts produced during early phases (inter-phases refinements). The importance of retrotraceability is, here, evident. Just as an example of the intra-phase refinement activity, the revision of the goal diagram in Figure <ref type="figure" target="#fig_1">2</ref> is presented in Figure <ref type="figure" target="#fig_2">3</ref>. The contributions from build a requirements Tropos model to organization described and understand customer requirements are here introduced. These were initially considered as original Analyst's goal (see Figure <ref type="figure" target="#fig_0">1</ref>), but then not further analyzed in Figure <ref type="figure" target="#fig_1">2</ref>. The revision proposed in Figure <ref type="figure" target="#fig_2">3</ref> is necessary to complete the analysis of the requirements of Figure <ref type="figure" target="#fig_1">2</ref>, according to what was initially introduced in Figure <ref type="figure" target="#fig_0">1</ref>. Among others elements introduced in the revision, let's list: design case tests, text documented, graphic documented and feasibility study delivered (see Figure <ref type="figure" target="#fig_0">1</ref>), that became the end in a means-ends analysis where the "mean" is the goal record interview. For more details, see <ref type="bibr" target="#b1">[2]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Conclusion</head><p>In the present paper the early analysis for a Tropos tool has been used as a case study for presenting some features of the Tropos methodology itself.</p><p>One point that deserves a note here is that the management of traceability has been raised as a crucial point for correctly dealing with the revision (specially the inter-phase revision) process. In future works, we aim at further developing this issue with other specifically focused case studies and examples.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 .</head><label>1</label><figDesc>Fig. 1. An actor diagram specifying the stakeholders of the Tropos tool project.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig. 2 .</head><label>2</label><figDesc>Fig. 2. Goal analysis from the perspective of the Analyst.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Fig. 3 .</head><label>3</label><figDesc>Fig. 3. Revising Goal analysis from the point of view of the Analyst.</figDesc></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Modelling early requirements in Tropos: a transformation based approach</title>
		<author>
			<persName><forename type="first">P</forename><surname>Bresciani</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Perini</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>
	</analytic>
	<monogr>
		<title level="m">Agent-Oriented Software Engineering II, LNCS 2222</title>
				<editor>
			<persName><forename type="first">P</forename><surname>Ciancarini</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><forename type="middle">J</forename><surname>Wooldridge</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><surname>Weiß</surname></persName>
		</editor>
		<meeting><address><addrLine>Montreal</addrLine></address></meeting>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2002-05">May 2002</date>
			<biblScope unit="page" from="151" to="168" />
		</imprint>
	</monogr>
	<note>, Second International Workshop. AOSE2001 edition</note>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<title level="m" type="main">Applying Tropos to requirement analysis for a Tropos tool</title>
		<author>
			<persName><forename type="first">P</forename><surname>Bresciani</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Sannicolò</surname></persName>
		</author>
		<idno>0204-01</idno>
		<imprint>
			<date type="published" when="2002-04">April 2002</date>
			<pubPlace>Trento</pubPlace>
		</imprint>
		<respStmt>
			<orgName>ITC-IRST, via Sommarive</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical Report</note>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Exploring alternatives during requirements analysis</title>
		<author>
			<persName><forename type="first">L</forename><surname>Chung</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Liao</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Huaiqing</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Yu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mylopoulos</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Software</title>
		<imprint>
			<biblScope unit="volume">18</biblScope>
			<biblScope unit="issue">1</biblScope>
			<date type="published" when="2001-02">jan, feb 2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Goal-directed requirements acquisition</title>
		<author>
			<persName><forename type="first">A</forename><surname>Dardenne</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Van Lamsweerde</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Fickas</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Science of Computer Programming</title>
		<imprint>
			<biblScope unit="volume">20</biblScope>
			<biblScope unit="issue">1-2</biblScope>
			<biblScope unit="page" from="3" to="50" />
			<date type="published" when="1993">1993</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Agent-oriented software development: A case study</title>
		<author>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Perini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mylopoulos</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Giunchiglia</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Bresciani</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the Thirteenth International Conference on Software Engineering -Knowledge Engineering (SEKE01)</title>
				<editor>
			<persName><forename type="first">S</forename><surname>Sen</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><forename type="middle">P</forename><surname>Müller</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">E</forename><surname>Andre</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">C</forename><surname>Frassen</surname></persName>
		</editor>
		<meeting>the Thirteenth International Conference on Software Engineering -Knowledge Engineering (SEKE01)<address><addrLine>Buenos Aires</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2001-06">June 2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Knowledge level software engineering</title>
		<author>
			<persName><forename type="first">F</forename><surname>Giunchiglia</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Perini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Sannicolò</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of ATAL 2001</title>
				<meeting>ATAL 2001<address><addrLine>Seattle; Trento, Italy</addrLine></address></meeting>
		<imprint>
			<publisher>Springer Verlag</publisher>
			<date type="published" when="2001-12">December 2001</date>
		</imprint>
		<respStmt>
			<orgName>Istituto Trentino di Cultura</orgName>
		</respStmt>
	</monogr>
	<note>Also IRST TR 0112-22</note>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Towards an Agent Oriented approach to Software Engineering</title>
		<author>
			<persName><forename type="first">A</forename><surname>Perini</surname></persName>
		</author>
		<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>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the Workshop, dagli oggetti agli agenti: tendenze evolutive dei sistemi software</title>
				<meeting>the Workshop, dagli oggetti agli agenti: tendenze evolutive dei sistemi software<address><addrLine>Modena</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2001-09">Sep 2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">A Knowledge Level Software Engineering Methodology for Agent Oriented Programming</title>
		<author>
			<persName><forename type="first">A</forename><surname>Perini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Bresciani</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Giunchiglia</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Giorgini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mylopoulos</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the Fifth International Conference on Autonomous Agents</title>
				<meeting>the Fifth International Conference on Autonomous Agents<address><addrLine>Montreal CA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2001-06-01">28 May -1 June 2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<title level="m" type="main">The Tropos modeling language. A User Guide</title>
		<author>
			<persName><forename type="first">F</forename><surname>Sannicolò</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Perini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Giunchiglia</surname></persName>
		</author>
		<idno>0202-12</idno>
		<imprint>
			<date type="published" when="2002-01">Jan 2002</date>
		</imprint>
		<respStmt>
			<orgName>ITC-IRST</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical Report</note>
</biblStruct>

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