=Paper=
{{Paper
|id=Vol-2490/paper1
|storemode=property
|title=Using GORO to Provide Ontological Interpretations of iStar Constructs
|pdfUrl=https://ceur-ws.org/Vol-2490/paper1.pdf
|volume=Vol-2490
|authors=César Bernabé,Pedro Negri,Vitor E. Silva Souza,Renata Guizzardi,Carla Silva
|dblpUrl=https://dblp.org/rec/conf/istar/BernabeNSGS19
}}
==Using GORO to Provide Ontological Interpretations of iStar Constructs==
Using GORO to provide ontological interpretations of iStar constructs? César Henrique Bernabé1 , Pedro Pignaton Negri1 , Vítor E. Silva Souza1 , Renata S. S. Guizzardi1 , and Carla Silva2 1 Ontology and Conceptual Modeling Research Group (NEMO) Department of Computer Science, Federal University of Espírito Santo (UFES), Brazil {chbernabe,vitorsouza,rguizzardi}@inf.ufes.br, pedropn@gmail.com 2 Centro de Informática, Universidade Federal de Pernambuco (UFPE), Brazil, ctlls@cin.ufpe.br Abstract. i* is the most popular goal modeling language and, there- fore, has several dialects that can interpret its concepts in different ways. iStar 2.0 was designed to lessen the misinterpretation problems of its constructs. Concepts can be well-defined in the language but, if not used properly, the produced models may become inconsistent. An ontology can be used to verify and help the construction of correct and consis- tent models. GORO is an ontology about GORE that was built based on different goal modeling languages. This paper interprets some iStar ’s constructs and proposes some discussions in the light of GORO. Keywords: i* · iStar · GORE · Ontology 1 Introduction Due to the popularity of iStar , different extensions have been proposed, leading to different interpretation of its constructs. This led the community to propose iStar 2.0 [2] in order to unify and simplify the language [2]. However, some sim- plifications may cause exactly the same misinterpretation problem as before. Let us take the example of the refinement link, created to replace the means-end and decomposition links. This new link allows different interpretations given that it connects different pairs of elements and, for each pair, the relationship entails distinct semantics. Hence, when analyzing models produced using iStar , it is possible to iden- tify inconsistencies that are not related to misconstructions of the language, but to improper use of its constructs, due to misunderstandings regarding its con- structs’ semantics. Moreover, we argue that a syntactic analysis of the language is not enough. We need a deeper understanding of the constructs with a well ? This study was financed in part by the Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - Brasil (CAPES) - Finance Code 001. NEMO(.inf.ufes.br) is cur- rently supported by CNPq (processes 407235/2017-5 and 433844/2018-3), CAPES (process 23038.028816/2016-41), and FAPES (process 69382549/2015). Copyright © 2019 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). 2 C. Bernabé et al. founded artifact that provides a common and unique interpretation of concepts: an ontology. Several interpretations are given to the iStar constructs, which lead to models with multiple meanings and confusion among beginners. This motivated us to analyze the definitions of the language elements in the light of a well-founded ontology. One of the main focuses of ontologies is to provide a non-ambiguous con- ceptualization of a specific domain. As a consequence, modeling languages that are created with support of an ontology will have a very precise definition of its constructs. Indeed, giving an ontological interpretation of modeling language constructs has been recognized as a good practice in modeling language devel- opment [3], and it is also intended in the iStar 2.0 proposal. In this paper, we propose the use of the Goal Oriented Requirements Ontol- ogy (GORO) [7, 1] as a tool to semantically analyze and interpret the constructs of the iStar language. We use GORO as a reference model and a well founded basis for (1) making explicit the ontological commitments of the iStar language; (2) defining (ontological) real-world semantics for their underlying concepts; and (3) providing guidelines for the correct use of these concepts. To put it more precisely, in this paper, we provide possible interpretations of some iStar ’s constructs in the light of GORO. By analyzing different in- terpretations of constructs, we seek to solidify the definitions of concepts in a consensual manner. Thus, this paper intends to raise discussions about some constructs, namely: (i) the Refinement Link; (ii) the Task/Goal refinement inter- pretation given the different modeling phases to which they belong; and (iii) the Role element definition and its relation with intentionality. The remainder of the paper is organized as follows: Section 2 presents a brief theoretical background on GORO. Section 3 proposes the ontological interpreta- tion of some iStar ’s constructs based on GORO, also presenting some modeling guidelines based on such interpretation. Finally, Section 4 concludes this paper. 2 Goal Oriented Requirements Ontology Due to the large number of languages proposed since the first GORE approach emerged [6], many concepts became dubiously interpreted and it became in- creasingly difficult to delimit the scope of the GORE field. Thus, the need for an artifact that deals with this domain was perceived. In this context, the Goal Oriented Requirements Ontology (GORO) [7, 1] was proposed. GORO is an on- tology based on UFO [3] and was built to be used as an interlanguage between GORE languages and also to be used as an instrument of consensual conceptu- alization of GORE elements. The Goal Oriented Requirements Ontology (GORO) [7, 1] was proposed aim- ing at providing formal semantics to the concepts of GORE and serving as a common vocabulary for this domain. Moreover, the ontology can be used as ba- sis for analysis and construction of languages and as a interlanguage between different GORE approaches. GORO is based on UFO [3] and was built to be Using GORO to provide ontological interpretations of iStar constructs 3 Fig. 1: The Goal Oriented Requirements Ontology used as an interlanguage between GORE languages and also to be used as an instrument of consensual conceptualization of GORE elements. Figure 1 presents an excerpt of GORO. The ontology focuses on the concept of Goal and defines it as a Mental Moment, which is a mental property existen- tially dependent on a single individual. A Goal in GORO can assume four types of classifications, according to [5]: Functional Hardgoal, Non-functional Hardgoal, Functional Softgoal and Non-functional Softgoal. A Goal-Based Requirement Arti- fact (GBRA) (a documented requirement) describes a Goal-Based Requirement (a requirement that exists only in the stakeholder’s mind). A GBRA can be an Atomic GBRA or a Complex GBRA. The latter defines a Goal that is decomposed into smaller ones, either using AND Refinements (AND Complex GBRA), imply- ing that the supergoal will only be achieved if all of its subgoals are; or in OR Refinements (OR Complex GBRA), implying that a goal is considered satisfied when at least one of its subgoals is satisfied. A Task is a subtype of Action Universal (Plan), which is a specific way to do something. In this context, a Task describes a process that a stakeholder wants to follow in order to achieve a Goal. A Task can be an Atomic Task or a Complex Task. A Complex Task can be broken down into other Tasks, whereas an Atomic Task cannot. A Task can require and/or produce a Resource. Assumptions are domain properties expected to be true in a specific con- text (the context in which a Goal is expected to be achieved). Assumptions are 4 C. Bernabé et al. classified according to [8]. Contributions are positive/negative total/partial rela- tionships, which relates a Goal or Task with a Non-functional GBRA. We emphasize that the entire process of building GORO and mapping con- structs of GORE languages to GORO (including both versions of i* /iStar) was carried out with the support of a group of domain specialists, as described in [1]. The iStar constructs definition was extracted from the literature ([2]) and then mapped to GORO concepts only after the agreement of at least 80% of the group. The group is made up of five academic professionals with considerable experience in the field. Table 1 shows the iStar to GORO concepts mapping. Table 1: iStar to GORO concepts mapping. GORO Construct iStar Construct GORO Construct iStar Construct Requirements Stake- Actor, Agent, Role Resource Resource holder Functional Require- Goal AND GBRA AND-Refinement ment Hardgoal Functional Require- Quality OR GBRA OR-Refinement, ment Softgoal Qualification Task Task Contribution Make, Help, Hurt, Break 3 Ontological Interpretation of iStar Constructs This section discusses the interpretation of different concepts of iStar and is divided in three parts. Subsection 3.1 describes the multiple semantics of the Refinement Link, while subsections 3.2 and 3.3 propose open discussion topics about the Task/Goal refinement and the Role element, respectively. We use sans serif and slanted to represent concepts and relations of GORO, respectively, and boldface for iStar constructs. 3.1 The Refinement Link With the aim of alleviating the complexity of the language and thus facilitate its adoption, iStar proposes gathering multiple relations between goals and tasks in just one relation called refinement link, which can be of two types: AND or OR. Indeed, this choice simplifies the language’s syntax; however, this can also lead to confusion regarding semantics. In iStar , a goal can be (AND/OR) refined in goals and tasks. Also, tasks can be (AND/OR) refined in goals and tasks. With GORO, we can explore the very nature of all these relations. The iStar AND refinement between goals is interpreted as GORO’s And Complex GBRA, which represents a complex Goal (an implicit concept derived from Goal-Based Requirement, analogous to And Complex GBRA) decomposed in sub-parts (sub-goals). Being Goal a Proposition, it is possible to separate it in different parts that, together, compose the original (G ⇐⇒ G1 ∧G2 ∧G3 ∧. . . Gn). That means, G is satisfied by exactly those situations which satisfy G1 . . . Gn conjunctively and, so, satisfying all subgoals implies satisfying the supergoal. Using GORO to provide ontological interpretations of iStar constructs 5 Moreover, the OR refinement element in iStar can be used to represent GORO’s Or Complex GBRA indicating alternatives, in which Goals are not broken down in sub-parts but in alternative Goals in which a situation that satisfies each of them (separately) also satisfies the main goal. Hence, considering S(G) as a situation that satisfies G: S(G) ⇐⇒ S(G1 ) ∨ S(G2 ) ∨ . . . ∨ S(Gn ). The iStar refinement link can also be used to refine a goal into tasks. If the goal is OR refined into tasks, then the child task is a particular way for achieving the parent goal. In GORO, these relations can be interpreted as the intends to operationalize relation between a Task and a Goal. This relation denotes that the successful execution of a Task — i.e., the action of executing this specific process — will interfere in the reality, producing a post-situation that may satisfy the Goal. However, if a goal is AND refined into tasks, the child tasks are sub-tasks that must all be executed to achieve the goal. In this case, there is an implicit Complex Task that intends to operationalize the Goal and is OR refined in the child tasks, as explained next. Regarding task decomposition/refinement, iStar tasks can also be re- fined in other tasks. When OR refined, the child task represents a specific way to execute the parent task, whereas when AND refined, the child task is a set of steps that need to be performed in order to complete the parent task. In GORO, Tasks can be Complex Tasks or Atomic Tasks. The former can have sub- parts that, when executed together, achieve the whole Task. The iStar AND refinement of tasks is in agreement with GORO’s concept of Task decompo- sition, whereas the OR refinement of tasks is not covered in GORO. We do not consider OR refined tasks in GORO as we propose a different approach for this type of modeling: if a task has alternative ways of being achieved, then it is actually a Goal and hence, its subtasks are Tasks that intend to operationalize such Goal. Consequently, a task that is OR refined into other tasks should be modeled as a goal that can be achieved by performing different tasks. In iStar , it is also possible to refine tasks into goals. This specific type of refinement will be discussed in Subsection 3.2. iStar refinements have different meanings depending on the elements they connect. Ontologically speaking, grouping different semantics into one syntax leads to construct overload, which may cause these elements to be misinterpreted by modelers. Nevertheless, we here try to minimize the impact of this issue, by providing explicit ontological interpretation (i.e., ontological commitment) of the languages’ constructs. We firmly believe that such interpretation helps clarifying the meaning of its construct, and ultimately lead to better iStar models. 3.2 The Task/Goal Refinement In iStar , a task can also be refined in goals. GORO does not predict this kind of relation. As GORO defines, Goals are the propositional content of an intention to achieve a specific situation (state of affairs) in reality. This means that Goals refer to desired situations in reality. On the other hand, Tasks describes specific processes executed with some intention. 6 C. Bernabé et al. A possible interpretation is to consider that goals that are children of a task refer to the post-situation brought about in the reality after that task’s execution. However, it is our belief that being goals and tasks of different ontological nature, the trade-off of allowing such refinement is not a positive one, possibly leading to much confusion. After all, how can a process (i.e., a Task be decomposed into propositions (i.e., Goals)? Yu [9] argues that the refinement between goals and tasks is a way to cap- ture the transition between the problem domain (goal) and the solution domain (task). In addition, according to him, refining a task into a goal would be nat- ural in the analysis and modeling cycle, which generally iterates between these two domains. However, by ontologically analyzing these concepts, the relation- ship between a task and a goal is not a “refinement”. Rather, the aformetioned possible interpretation proposes that the task analysis may motivate the “emer- gence” of new goals, possibly better characterized in different models, created for the different analysis’ cycles. 3.3 The Role Element iStar propose actors as active and autonomous entities that aim to achieve their goals and may be further classified as roles or agents. In GORO, an actor corresponds to the Requirement Stakeholder Kind concept. A role, in its turn, is interpreted as a Requirement Stakeholder Role. The distinction between a kind and a role, according to UFO, is that a kind represents essential properties of objects (they are also termed rigid or static types [3]), whereas a role represents contingent or accidental properties of objects (termed anti-rigid types [3]). As stated before, GORO interprets a Goal as the propositional content of an intention, which is a mental property existentially dependent on a single individ- ual. Thus, a Goal is related to an individual Requirements Stakeholder. However, being a type, a role represents expected behavior patterns of several individuals. To explain that, we resort to the ontological clarification made by Guizzardi et al. [4]: “(...) a physical role is characterized by social moment types, which de- scribe the set of general commitments and general claims that a physical agent playing a particular role has” (p. 559). Thus, we interpret the goals of a role as commitments to execute Goals of those particular types. By analogy, similar interpretations may be inferred to role’s tasks and resources. So, expressing Goals of Roles may not represent the particular goals of individuals that will assume that role, but general goals that they are expected to achieve. 4 Conclusion and Future Works Among the various GORE modeling languages, iStar has been one of the most popular ones, further leveraging the GORE field. Therefore, conceptually stan- dardizing all concepts common to this field becomes an increasingly important need. This is the goal of iStar 2.0. This standard can be considerably improved with the support of ontologies, such as GORO, making explicit the semantics Using GORO to provide ontological interpretations of iStar constructs 7 behind the language’s constructs. In addition, ontologies can be used to guide users in adopting best practices in iStar modeling, thus preventing modelers from creating inconsistent, low-quality models. We emphasize that an ontolog- ical analysis is not intended to limit or restrict the use of a language, but to provide a well-founded and unambiguous interpretation of its concepts. In this paper, we propose an ontological interpretation for iStar role, we ar- gue that agent is not a necessary concept, and we explain why it is not a good idea to refine tasks into goals. Moreover, we presented different ontological in- terpretations of the iStar ’s refinement link. We acknowledge that this element groups different semantics in order to reduce the complexity of the language. However, we emphasize the need to find a balance between simplification and loss of meaning. We understand that this is a hard task and that the line that defines a good balance between both sides is thin. Therefore, the use of an ontol- ogy to mitigate the risk of having the language’s construct misunderstood and misused may be a suitable approach. We are currently using GORO to analyze a greater number of languages, also facilitating their interoperability. In addition, GORO can be used to solidify GORE concepts, so that they can be properly used, thus allowing new adepts to learn GORE in a simpler and faster way. References 1. Bernabé, C., Souza, V., Falbo, R., Guizzardi, R., Silva, C.: GORO 2.0: Evolving an Ontology for Goal-Oriented Requirements Engineering. In: 7th Intl. Ws. on Ontolo- gies and Conceptual Modelling (Onto.com) (in press) (2019) 2. Dalpiaz, F., Franch, X., Horkoff, J.: iStar 2.0 Language Guide (2016) 3. Guizzardi, G.: Ontological foundations for structural conceptual models (2005) 4. Guizzardi, R., Guizzardi, G.: Ontology-based transformation framework from tropos to aorml. In: Yu, E., Giorgini, P., Mainden, N., Mylopoulos, J. (eds.) Social Mod- eling for Requirements Engineering, chap. 16, pp. 547–570. MIT Press, Cambridge, Massachusetts (2011) 5. Guizzardi, R., Li, F.L., Borgida, A., Guizzardi, G., Horkoff, J., Mylopoulos, J.: An Ontological Interpretation of Non-Functional Requirements 6. Horkoff, J., Aydemir, F.B., Cardoso, E., Li, T., Mate, A., Paja, E., Salnitri, M., Mylopoulos, J., Giorgini, P.: Goal-Oriented Requirements Engineering: A System- atic Literature Map. In: 2016 IEEE 24th International Requirements Engineering Conference (RE). pp. 106–115. IEEE (2016) 7. Negri, P., Souza, V., Leal, A., Falbo, R., Guizzardi, G.: Towards an ontology of goal-oriented requirements. In: CIbSE 2017 - XX Ibero-American Conference on Software Engineering (2017) 8. Wang, X., Mylopoulos, J., Guizzardi, G., Guarino, N.: How software changes the world: The role of assumptions. In: 2016 IEEE Tenth International Conference on Research Challenges in Information Science (RCIS). pp. 1–12. IEEE (jun 2016) 9. Yu, E.S.K.: Modelling strategic relationships for process reengineering. Ph.D. thesis, PhD thesis, University of Toronto (1996)