TY - JOUR AU - Subramanian, Chitra, M AB - Abstract Goal-oriented requirements engineering frameworks are used to model stakeholders’ objectives and requirements using goals. In a real-time environment, stakeholders’ requirements may have opposing objectives. Hence, a novel framework is needed that captures the real issues in order to achieve multi-objective optimization of inter-dependent actors. For obtaining an optimum strategy for inter-dependent actors in the i* goal model, a multi-objective two-person zero-sum game theory-based approach is applied in this paper, by balancing the opposing goals reciprocally. The proposed approach involves the generation of each objective function based on the inter-dependency relationships, the creation of decision pay-off matrices based on the objective function values and their variation to a final decision pay-off matrix. A Maxmin solution is formulated for the multi-objective game model, in which the optimization problem for each player is a linear programming problem. Finally, the most desirable strategies and their proportion values are found. By integrating Java with the IBM CPLEX optimization tool, a simulation model based on the proposed method was developed. A successful evaluation was conducted on various case studies from the existing literature. Evaluation results indicate that the developed simulation model helps users to choose an optimal alternative design option feasible in real-time competitive environments that have goals with opposing objectives. 1. INTRODUCTION The accomplishment of any software development relies upon the degree to which its requirements are satisfied. In the course of the most recent two decades, requirements engineering (RE) has progressively been perceived as a significant part in the software development lifecycle. RE is a cyclic process of eliciting, analysing, modeling, communicating, agreeing on and evolving requirements [1, 2]. The initial and most significant phase of RE involves the elicitation of requirements. The elicitation process ascertains the stakeholders and identifies the goals and tasks which indicate the objectives of the system that need to be met. During the requirement analysis phase, the requirements analyst analyses the information received from stakeholders in order to identify their goals. Stakeholders have goals (hardgoal) that indicate the functions the system has to perform. The requirement analyst then analyses the goals in order to develop the system. Furthermore, the requirements analyst examines high-level alternative system design options and decides which system design to implement [1]. Goal-oriented requirements engineering (GORE) models the stakeholders’ requirements using goals by eliciting, elaborating, structuring, specifying, analysing, negotiating, documenting and modifying requirements [1, 2]. In GORE, goals play a critical part in understanding the domain and determining the stakeholders’ intentions [2]. Goals are elaborated at different abstraction levels, from strategic concerns to technical matters. Hence, it is a significant, well-thought-out artifact during the early phases of RE [1, 3]. This use of goals is modeled on a multi-view model or goal model that illustrates the way in which goals, actors, states, objects, tasks and its domain properties are inter-dependent in the given system [4]. Ever since the mid-1990s, goal models have been prominent in the software engineering discipline [5, 6]. GORE approaches/frameworks have a noteworthy part to play in the development of recent emerging technologies, for example, Internet of Things (IoT). These days, computer systems are getting pervasive in nature due to the advent of mobile technologies and the development of the IoT. In IoT systems, applications require high accessibility, reliability, safety and security as well as administrative consistency, adaptability and serviceability [7]. Likewise, they may be exposed to uncertainty and variability. Due to the interconnection with the real-world things, IoT requires more systematic techniques for capturing and reasoning about its framework. GORE is a candidate for meeting such requirements by characterizing the objectives and stakeholders of IoT systems, together with their relationships like decompositions, contributions and dependencies. Goal models can help to get the knowledge of who needs what and also help to perform analyses to determine the satisfaction of goals. The early identification of goals help stakeholders, inside and outside of the IoT frameworks. It also leads to a better knowledge and understanding about the system and help to perform reasoning with the specific non-functional requirements (NFR) (qualities) of the IoT systems. Also, goal modeling can help decision-makers in ensuring whether processes and tools are aligned with the goals of IoT systems. Thus, goal reasoning can be performed by systematically identifying and structuring IoT requirements [7]. Some of the more widely used goal models are knowledge acquisition in automated space (KAOS) model [8], i* goal model [9], non-functional requirements (NFR) model [2], attributed goal-oriented requirements analysis (AGORA) model [10], tropos model [11] and goal-oriented requirement language (GRL) [12] model. In the software engineering discipline, the i* goal model is one of the popular and well-known goal models because it helps goal-oriented modeling of socio-technical systems and organizations. The i* model supports modeling organizations and socio-technical systems with its essential course of actions, intentional elements and dependencies. The different goal reasoning methods in the i* goal model enables all types of qualitative analysis [13,14] or quantitative analysis [15], or even both [12] to be performed. In real-world competitive environments, the goals of many stakeholders of complex systems are of a conflicting or opposing nature. Moreover, each goal of a system may have several different alternative design options. Requirements-based engineering faces the challenge of identifying an optimal stratagic option to accomplish opposing goals. Decision-making in competitive environments involves various concerns. In the real-world, decision-makers have to consider the inter-dependent relationships among actors. Hence, a novel framework is needed that captures the real issues in order to achieve multi-objective optimization [16]. The adoption of a realistic decision-making process in our approach allows us to go beyond analytical tools, like game-theoretic concepts. Game theory is a decision-making tool that offers a scientific mathematical explication. It has a significant part in competing situations for analysing issues and obtaining the pay-off values based on the player’s results’. This paper proposes a novel methodology based on game theory for system exploration which involves alternative design evaluation [17]. Game theory is a powerful inter-disciplinary tool for the analysis of competitive situations (or situations of conflict) in multi-agent systems. It was originally developed for the domains of mathematics and economics. It can effectively characterize the interaction between decision-makers. It is an appropriate tool to analyse challenges of requirements-based engineering design [18]. The reason for choosing the game theory idea is that it finds an ideal solution under conditions of conflict assuming that players are rational and act based on their interests [17]. In this paper, analogous to game theory, the game players are considered as the top softgoals having opposing natures and the game strategy is treated as the alternative design options of inter-dependent actors in the i* goal model. In previous research [19], game theory-based goal analysis was proposed in the i* framework without considering the inter-dependency relationships between actors. In a real-world competitive environment, when making decisions, decision-makers have to consider the inter-dependent relationships among actors. In the proposed approach, a systematic decision-making method is developed when there are inter-dependent actors in the i* model by integrating the multiple opposing objectives together with their significance. To discover the optimal alternative options of inter-dependent actors by balancing their opposing objectives reciprocally, a two-person-zero-sum game method is applied and multi-objective functions are determined in order to decide their significance. Then, the alternative options for each actor are assessed according to each opposing softgoal, and pay-off matrices are formed for each type of top softgoals (by applying game theory). These matrices are transformed to a decision pay-off matrix in the subsequent phase. An optimal solution is found in the final phase that sees the adoption of a strategy under the circumstances of opposing objectives. To illustrate the evaluation of the developed approach, various case studies are applied. The paper is organized as follows. A motivating example to the proposed approach is illustrated in Section 2. Section 3 presents the existing approaches, techniques and methods related to the i* model, which are closely associated with our proposed approach. A brief introduction about how game theory and multi-objective optimization method related to our proposed approach is presented in Section 4. The methodology comprising the various steps of our approach with an example and a brief introduction of the methods used in the study are given in Section 5. The two case studies used for this work are described in Section 6. A tool is designed and implemented to discuss the viability and practicability of the proposed approach and is illustrated in Section 7. Finally, conclusions are drawn at the end of the paper. 2. MOTIVATING EXAMPLE : TELEMEDICINE SYSTEM—CASE STUDY Consider a telemedicine system [20], where each patient gets remote telemedicine amenities out of one or more healthcare service providers. Such arrangements may perhaps enhance the quality of care and minimize the typical medical costs. Thus, permitting the patients to lead a more normal life at home and receive greater personalized care. Also, healthcare specialists are relieved of the more regular factors of their duties. However, certain questions should be considered, such as: How can we reason about the functionalities of the system? Whom must these systems be responsible for? How duties must be divided among them? Why should tasks be divided? Do the stakeholders hold common goals? Will the system work regardless of continuous changes and conflicting interests? This would lead into specific solutions for each case, based on the situation. Several alternatives should be considered in each case. Initially, some options may work, but later on, they may not work, depending upon more analysis. Some may be technically infeasible, or not acceptable to some stakeholders. So, it is necessary for stakeholders, developers, designers and analysts to see each other’s concerns to discover alternative choices about the system to be built. There is a need for a systematic framework or model which can help in finding all the requirements, perform evaluation or analysis regarding their implications, and resolution based on different alternatives. In such situations, GORE approaches help us to perform identified tasks in an efficient, flexible and accurate manner. The GORE framework, specifically i* ⁠, is an efficient way for modeling and analysing the dependency between all the elements in a socio-economic communities environment [21–23]. Therefore, the i* framework is preferred in this proposed approach, for modeling social relationships in the telemedicine system [20]. In this view, the central unit to be modeled is the intentional strategic actor. The intentional aspects of an actor can be characterized by goals, beliefs, ability and commitment [21]. An actor is strategic, means it aims to achieve the goal successfully. Actors are also concerned about the structural relationships with other actors in sharing resources or performing some tasks to accomplish their goals. Explicitly clear representation of goals in the i* model helps to discover alternative choices through means-end (OR-decomposition) reasoning. A softgoal (non-functional goals) usually captures some preferred behaviors among those captured by functional goals (hardgoals). The i* goal modeling uses two models for representing the socio-economic systems: the strategic dependency (SD) model and the strategic rationale (SR) model [20–23]. The SD model represents a graph, which demonstrates a high-level explanation of a process or a system. It portrays the actors dependencies through goals (behavioral goals or softgoals), tasks and resources. For understandability and ease of presentation, the telemedicine case study has been used to describe the i* goal model. Figure 1 demonstrates a SD model of a simple telemedicine scenario with actors are portrayed as circles, hardgoals as ovals, softgoals as cloud images, resources as rectangles and tasks as hexagonal shapes. In the example telemedicine model (Fig. 1), a Patient depends upon HealthcareProvider for SicknessTreated and the latter consecutively follow on Patient toward FollowTreatmentPlan ⁠. If the Patient wants to incorporate treatment plan with some more activities, then it should be Flexible ⁠. The HealthcareProvider monitors Patient’s VitalSigns remotely through MonitoringAgent ⁠. Figure 1. Open in new tabDownload slide Simplified SD model for telemedicine system. Figure 1. Open in new tabDownload slide Simplified SD model for telemedicine system. While the SD framework centers around the dependency between actors, the SR model helps in demonstrating the modeling and analysis of all actors in the framework based on their internal intentional inter-dependencies. The intended function of the system is represented by behavioral goals. The non-functional goals of the system is represented as a softgoal. The SR model is also represented as a graph where nodes are goals or tasks or resources or softgoals which are inter-connected by means-end links or task decomposition links or contribution links [20, 23]. The goals are connected to one or more tasks through AND (decomposition links) or OR (means-end links) relationships for accomplishing it. The contribution links can be Make ⁠, Break ⁠, Help ⁠, Hurt ⁠, Some+ ⁠, Some− ⁠. These notions describe various types of contributions to various softgoals that leads to the satisfaction of softgoals [9, 20, 23]. Figure 2 represents a SR framework demonstrating the analysis of a simple telemedicine plan. Figure 2. Open in new tabDownload slide Simplified SR model for the telemedicine system. Figure 2. Open in new tabDownload slide Simplified SR model for the telemedicine system. For identifying the goals of each actors, a top-down approach is used in the i* model. The primary goal (hardgoal) is broken down into a collection of tasks, by answering ‘how to achieve?' or ‘what to achieve?' questions. The softgoal is decomposed by answering ‘how to achieve?'. This decomposition repeats till every leaf softgoals are atomic. The following section shows how the goals and the softgoals of an actor are broken down by applying telemedicine case study. For convenience and explanation purpose, only two actors, Patient and Healthcare Provider, are considered in Fig. 2 of simplified telemedicine model created for this domain. For the ease of illustration, the actor, Patient, has two NFR (softgoals) namely, Expense and Happiness, which consequently follow Time Saving and Quality of Care. The Patient has a functional requirement (hardgoal) to Keep Well. It can be accomplished through either of two alternative ways Patient Centered Care or Provider Centered Care. These alternatives impact the Patient’s softgoals in various ways. The contribution of Patient Centered Care to Time Saving is Help while contribution from Provider Centered Care to Time Saving is Hurt. The softgoal Time Saving which consequently contributes Help to Expense and Make to Happiness. The contribution of Patient Centered Care to Quality of Care is Make whereas Provider Centered Care to Quality of Care is Make. The Quality of Care which consequently contributes Help to Expense and Make to Happiness. The Patient has two top-most softgoals of opposing in nature such as Expense and Happiness. The actor Patient depends upon the actor Healthcare Provider through the softgoal Viable Healthcare Service for its telemedicine services. The actor Healthcare Provider also has its own hardgoal (functional requirement) of Treated to achieve and explores two options of implementing this goal: Patient Centered Care and Provider Centered Care. These alternatives impact the Healthcare Provider’s softgoals in various ways. The two main NFR of Healthcare Provider are Viable Healthcare Service and Maintenance Cost which consequently, follow to Efficient Operations and Effective Treatments. To illustrate, the contribution of Patient Centered Care to Efficient Operations is Hurt whereas Provider Centered Care to Efficient Operations is Help. The Efficient Operations which consequently contributes Help to both Viable Healthcare Service and Maintenance Cost. The contribution of Patient Centered Care to Effective Treatments is Some+ whereas Provider Centered Care to Effective Treatments is Help. The Effective Treatments consequently contributes Help to Viable Healthcare Service and Make to Maintenance Cost. The Healthcare Provider has two top softgoals of opposing in nature, Viable Healthcare Service and Maintenance Cost. The satisfaction percentage for Happiness of Patient and Viable Healthcare Service of Healthcare Provider should be maximized while Expense of Patient and Maintenance Cost of Healthcare Provider should be minimized based on the functional and NFR in the model [19]. The reasoning of this goal model (Fig. 2) points to a significant query: which alternative especially Patient Centered Care or Provider Centered Care is most effective for both actors who are dependent, to achieve their opposing goals simultaneously. The existing goal analysis approach [19] proposed an alternative selection technique based on softgoals having opposing objective functions. But the above approach cannot find a solution when actors have a dependency relationship in order to achieve their opposing softgoals simultaneously. Hence, there is a need for a novel reasoning method for alternative option selection in the situation where actors are inter-dependent for accomplishing their opposing softgoals reciprocally. In this paper, a novel approach is proposed for tackling the above-mentioned problem. An outline of the existing approaches, methods and techniques related to GORE and more precisely, i* model, which are closely associated with the proposed approach are presented in the next section. 3. BACKGROUND AND STATE OF THE ART Recent trends in requirements engineering recommend to use goals, as a means of discovering the ‘whys’ in the functionality as opposed to ‘what’ it has to do. Goals enable the requirements of the organization to be aligned with the functionality delivered by the system. Hence, an overview of the existing approaches and methods related to the i* model, that approximate our approach is presented in this section. First, the approaches that are appropriate for conducting requirements analysis is reviewed, although all the details of a system may have already been finalized. Before applying a lightweight quantitative method, a qualitative propagation algorithm was proposed by Van Lamsweerde for goal analysis of NFR [24, 25]. Based on the requirements specification of the given system, he modified this approach by including certain parameters namely gauge variable, optimal goal variable and satisfactory variable for each softgoal. A lightweight alternative evaluation system based on quantitative reasoning was developed by incorporating softgoal and goal concepts into the KAOS model. Hence, a complete system specification knowledge is required when designing a goal model. However, this approach cannot be used for large and complex systems [26]. In order to minimize the number of operations/goals for implementation, Affleck et al. [27–29] offered a quantitative goal analysis method for decision-making in the NFR model. First, Affleck proposed a lightweight process-oriented quantitative method as an extension of the NFR model [27]. By applying a single optimization step, they further improved this method [28, 29]. A qualitative and a quantitative axiomatization approach was introduced by Giorgini et al. [30] to develop a formal model for the reasoning of goals in the goal model. Based on their axiomatisations, they also presented a label propagation algorithm. Even though this proposal is stable and comprehensive, it still needs a solid numerical understanding. By assessing the qualitative and quantitative satisfaction values of actors and the intentional elements, Amyot et al. [12] developed an approach to analyse GRL modeling. Despite its simplicity, there arises an ambiguity when selecting numeric figures to represent the requirements. To prioritize goals, Liaskos et al. [31] developed a quantitative method using an analytical hierarchy process. Liaskos et al. prioritized optional goals for assessing alternative means of achieving mandatory goals. The drawback of this method is that it does not satisfy the specific structural features of a given goal model. The practical problems in requirements-based engineering design which includes poor or ambiguous requirements, inadequate, unreliable, incomplete, improper and outdated requirements, changing requirements over time, etc. are summarized by Firesmith [32]. A broad review of major challenges in requirements engineering design was provided by Shah et al. [33]. Sabaliauskaite et al. investigated a review in large-scale industry domain and discovered the major requirements engineering design problems [32–34]. Past literature shows that the performance of requirements-based engineering designs can be improved by increasing the quality of requirements and more efficient allocation of requirements [35–37]. The limitations of requirements-based design are addressed by [38–45]. All of these studies focus on the implementation challenges of requirements-based engineering design. Next, in the context of requirements-based engineering design challenges, several goal analysis procedures that were used in the early RE are discussed. An interactive, iterative, qualitative analysis method for i* goal models was proposed by Horkoff and Yu [21]. It included goal analysis using methods, algorithms and tools. The uncertainty of making decisions when more than one goal have the same label is the main limitation of this approach. For the purpose of analysing alternative design options in the KAOS model, Heaven et al. [46] proposed a multi-objective optimization model based on quantitative reasoning. It analysed a comprehensive range of options for alternative designs in a goal model. By applying probability distribution, the vector values of the quality variables of each leaf were implemented. However, the main issue with this multi-objective optimization model is that it does not consider the NFR of the stakeholder. In order to deal with the conflicts in NFR decision analysis, Mairiza et al. [47] developed a multi-criteria decision analysis (MCDA) and applied TOPSIS as an MCDA method for prioritizing the alternative options. The systematic application of TOPSIS for the selection design solution for decision-making was well presented. In i* model, Chitra et al. [26, 48] developed an inter-actor quantitative goal analysis method to decide on alternative design options. In order to avoid the ambiguity in selecting numeric numbers during quantitative analysis, fuzzy numbers are used. Later, in order to enhance this method, a multi-objective optimization method is applied for finding the optimal values of softgoals for alternative selection in goal analysis [16, 49]. It also prevents the decision analyst from imposing his/her own subjective values from being used for goal reasoning. However, all these aforementioned proposals for goal analysis are based on either quantitative or qualitative values, which are used when choosing a suitable design option for achieving maximum satisfaction of NFR. However, an ambiguity arises in making a decision when two or more NFR receive the same type of label [21]. This limitation of the qualitative approach to the i* framework that cause ambiguity in decision-making was overcome by Chitra et al. [19] who developed fuzzy-based optimal quantitative methods for goal analysis in the i* model. However, the above-mentioned literature shows that the qualitative and quantitative goal reasoning for the i* and other goal models does not consider NFR with opposing objectives. The first research work to apply the game theory-based analysis of goal models using optimization was conducted by Chitra et al. [19] who identified an alternative design option for each actor in an i* goal model. Chitra et al. formalize the evaluation of objective functions without addressing the actor’s inter-dependency relationships, which are essential for decision-making in a real-world competitive environment. This inability to address the dependency relationship among actors is the major drawback of this proposal. Overall, no previous research efforts have been able to develop a systematic game theory-based method for deciding on an optimal alternative design option for inter-dependent actors in the i* model. The issue lies in reciprocally balancing the multiple opposing objectives with their significance. The proposal forthwith examines the way requirements-based engineering design can deliver an optimal design outcome. In the next section, a brief introduction about how game theory and multi-objective optimization method related to our proposed approach is presented before proceeding to the proposed methodology for reasoning opposing goals using inter-actor dependency in the i* goal model. 4. MULTI-OBJECTIVE OPTIMIZATION FOR REASONING OF OPPOSING NFR BASED ON GAME THEORY This study provides a more precise decision-making in real-time competing environments by integrating multiple opposing objectives with their significance. To discover the optimal alternative options of inter-dependent actors, a two-person zero-sum game-theoretic approach is applied by balancing their opposing objectives simultaneously in the given i* goal model. In the proposed approach, multi-objective functions are determined to decide their significance. Then, the alternative options for each actor is assessed according to each opposing softgoal and pay-off matrices are established for each type of top softgoals by applying game theory. These matrices are converted to a decision pay-off matrix to obtain their optimal strategies and proportion values. To exhibit the applicability of the proposed approach, two case studies are illustrated in this paper. The following sub-section gives a brief introduction to the decision-making process using game theory. 4.1. Decision-making using game theory Game theory is defined as a multi-person decision analysis process based on the assumption that all players in the game know about the circumstances, the opposing player’s strategies and their preferences. However, it is impossible to formulate the majority of strategies due to the complexity of real situations [50, 51]. A game involves a set of players, a set of strategies and a pay-off for every strategy combination. When a game involves an interactive situation, a formal reasoning can discover the optimal strategies for players and can decide the expected outcome of the game [51]. In game theory, players’ strategies are assessed equally according to environmental factors. It also provides solutions to a game of strategy based on the assumption that each player behaves conservatively and as such would always wish to maximize his/her gains and minimize his/her opponents loss. In the proposed approach, the goals with conflicting objectives are considered as the game players and the alternative design options (tasks) are treated as the game strategies [51]. Initially, game theory is applied, from the actors’ perspective having opposing objectives, with the assumption that each actor in the goal model has the same set of alternative options for achieving his/her opposing objectives. Two-person zero-sum game-theoretic approach is used in the proposal to find optimal strategies for actors by balancing objectives reciprocally. According to the proposed approach, first objectives are evaluated to determine their importance. Then, strategies of players are evaluated for all their combinations according to each objective and then decision pay-off matrices are calculated by applying fuzzy logic mathematical concepts. In the next phase, these matrices are transformed into final decision pay-off matrix. Finally, optimal strategies and their values are found. In this case, players will try to balance all objectives and optimize them according to their importance. A game solution comprises a specific grouping of strategies known a Nash equilibrium in which no player can achieve success by unilaterally deviating from it [50, 51]. A game which has Nash equilibrium is known as a stable game. The saddle point in the Nash equilibrium is defined as the point where no player can gain more by altering the strategy as long as the other players remain unchanged. An unstable game is a game which has no Nash equilibrium. In such games, players have mixed strategies rather than pure strategies. The pay-off to a player is defined as the value of the game when both players play optimally [52]. Nash equilibrium is a point at which the following equation is satisfied: Maximum(RowMinimum)=Minimum(ColumnMaximum) (1) In order to anticipate more practical results using Nash equilibrium, a great deal of psychological work should be done to foresee how much the user tried to compute in specific cases. Another limitation of Nash equilibrium is that it always generates a very situationally dependent outcome. In the proposed decision-making approach, Nash equilibrium is used as a base for the generation of Pareto optimal output for a predefined situation. As long as it is adapted to a specific issue, it does well in discovering an optimal solution. The system where there is a dynamic change of requirements, then Nash equilibrium is not applicable for reasoning around such system. As explained in Section 2, all requirements of the telemedicine system are predefined for the reasoning of opposing goals. For any system with dynamic changes in the requirements, Nash equilibrium will not be an appropriate method for optimal task selection (for achieving the goals of the system). In competitive circumstances, instead of generating pay-off matrices from single-objective function, players may have more than one objective and can be opposing in nature. For the calculation convenience and ease of presentation, two-person zero-sum game is applied in this paper. It also suits to our requirements of choosing an alternative in situation of opposing goals. The next sub-section provides a short introduction about how multi-objective optimization helps decision-makers to discover an ideal alternative option for achieving opposing goals. 4.2. Multi-objective optimization problem Decision-making involves decision-makers, actors, goals or objectives, strategies or alternative options and criteria. In real-competitive circumstances, the effectiveness of decision-making relies upon recognizing all ecological factors and assessing them according to the objectives. Decision-makers aim to discover ideal strategies for opposing goals [51]. Optimization helps to decide optimal or best alternatives on a list of possible options by applying operations research methods namely linear programming, non-linear programming and quadratic programming [51, 47]. For real-competitive problems, single-objective optimization methods are not adequate for decision-making. So multi-objective optimization methods have been refined for solving real-world problems [47, 51, 52]. The task of decision-maker is to choose an ideal alternative option from the choices to accomplish multiple objectives. The multi-objective optimization methods can solve this problem. It creates a set of solutions and an optimal value is chosen named as optimal Pareto solution or optimal Pareto frontier based on the requirements [16]. Mathematically, the multi-objective optimization functions are represented as Max/Min[f1(x),f2(x),…,fn(x)] (2) where f1,f2,…,fn are scalar functions, x is an element of Y and Y is the set of constraints. 5. METHODOLOGY In this paper, a multi-objective two-person zero-sum game theory-based approach is proposed, for the optimal strategy selection for inter-dependent actors in the i* goal model. First, the proposed approach generates objective function for each actor to determine their importance based on the inter-dependency relationships. Then the game-theoretic approach is applied for the creation of pay-off matrix for each actor based on the objective function values and their variation to a final decision pay-off matrix. A Maxmin linear programming strategy is formulated for the proposed multi-objective game model. Finally, the most desirable optimal strategies and their proportion values are found. The proposed methodology is presented in the following sub-sections in detail, to obtain an optimal strategy for player’s having opposing objectives. 5.1. Formalization of multi-objective functions A generalized structure of an SR model is illustrated in this section, by formalizing the opposing objective functions in terms of softgoal, goal, task and resource dependencies. Based on the process of generating the scores of leaf softgoals in [26], the proposed approach formalizes the multi-objective functions of inter-actor dependencies. For clarity and understanding, a brief introduction on how to generate the scores of softgoals is provided in this section. For easy understanding of the formalization of our approach, consider a simple SR graph, as shown in Fig. 3, of single actor A ⁠, whose nodes are goals (⁠ G ⁠), tasks (⁠ T1 ⁠, T2 ⁠), leaf softgoals (⁠ LS1,LS2 ⁠) and top softgoals (⁠ TS1,TS2 ⁠). The goal (⁠ G ⁠) can be achieved by either of the two alternatives (⁠ A1 or A2 ⁠). The leaf softgoals (the softgoals that are lower in the hierarchy are called leaf softgoals) are assigned values based on their relative importance in percentage. Let the weights of leaf softgoals LS1 and LS2 be ωL1 and ωL2 respectively. Figure 3. Open in new tabDownload slide A simple SR model. Figure 3. Open in new tabDownload slide A simple SR model. The contributions of tasks to each softgoals are outlined by impacts such as Make ⁠, Help ⁠, Hurt ⁠, Break ⁠, Some− ⁠, Some+ ⁠. These uncertain or conflicting linguistic terms are represented as fuzzy numbers [53]. It indicates the extent to which an alternative option fulfils a leaf softgoal (Fig. 3). A fuzzy number is considered as a quantity whose value is imprecise rather than certain as in the case of single-valued numbers. It helps us to express the real-world problems in more practical manner than single-valued numbers [53]. In general, a fuzzy set is characterized as a set of items with graded membership between 0 and 1 and is represented by a fuzzy set A as A=(x,μA(x))xϵX,0<=μA(x)<=1 (3) where A(x) is a membership function. The membership function depicting a fuzzy number represents some obscure idea of that fuzzy number and is chosen subjectively. This implies distinctive people may choose diverse membership functions to represent a similar idea. In the proposed approach, triangular fuzzy numbers are applied because it is the simplest and most efficient approach [27]. The diagrammatic representation of a triangular fuzzy number is shown in Fig. 4. Moreover, triangular fuzzy numbers represent fuzzy numbers, whereas other fuzzy representations like trapezoidal fuzzy numbers involve fuzzy intervals. Triangular fuzzy numbers (TFN) are commonly represented as A=(a1,a2,a3) ⁠, where a2 is the value where the membership function of a fuzzy number is 1.0 ⁠, a1 is the left distribution of the confidence interval and a3 the right distribution of the confidence interval of the fuzzy number A [54]. The membership function of the interval is given as follows: μA(x)=(x−a1)(a2−a1),a1<=x<=a2(a3−x)(a3−a2),a2<=x<=a30,otherwise (4) Figure 4. Open in new tabDownload slide Membership functions of triangular fuzzy numbers. Figure 4. Open in new tabDownload slide Membership functions of triangular fuzzy numbers. In the proposed approach, to obtain quantifiable result, the scores are defuzzified by applying the α-cut operation using an optimal index λ [26]. The α-cut is the set of elements whose membership values exceed the threshold level α ⁠. A crisp interval of a fuzzy number A can be obtained by performing α-cut operation. The optimal index λ shows the degree of confidence and it can take esteems λ=0 for a pessimistic index, λ=0.5 for a moderate index and λ=1 for an optimistic index. To acquire the defuzzified value for a fuzzy number A=(a,b,c) ⁠, the following defuzzification formula is used: λ∗left+(1−λ)∗right (5) where left=α∗(b−a)+a and right=c−[α∗(c−b)] For moderate decision-making, α=0.5 and λ=0.5 ⁠. Based on this notion, we calculated the defuzzified values for all impacts specified in the i* model. The fuzzy values and its membership function for the softgoal contribution (impacts) are shown in Fig. 5. The impacts with the softgoal preferences are propagated to the top softgoals, to find the level of satisfaction or scores of top softgoals. The leaf softgoal scores are propagated backward to discover the scores of the softgoals that are higher in the hierarchy. Softgoals are the recipients of multiple contribution links. The membership values of each impacts (⁠ Make ⁠, Help ⁠, Hurt ⁠, Break ⁠, Some− ⁠, Some+ ⁠) are diagrammatically shown in Fig. 5. Figure 5. Open in new tabDownload slide Membership function values of impacts adapted from [26]. Figure 5. Open in new tabDownload slide Membership function values of impacts adapted from [26]. The scores are computed in two stages. In the initial stage, the score of its children is multiplied by their impact values. In the second stage, the impacts of all the children are combined by using an addition operation. For Fig. 3, let us represent the scores of leaf softgoals as S(LS1) ⁠, S(LS2) ⁠, which are computed based on the weights and the impact of chosen task (alternative) for the leaf softgoals. It also considers all dependency relationships with other actors. The score of leaf softgoals S(LS1) ⁠, S(LS2) for A1 alternative is represented as follows: SLS1A1=Help∗ωL1SLS2A1=Help∗ωL2 The score of leaf softgoals S(LS1),S(LS2) for A2 alternative is represented as follows: SLS1A2=Hurt∗ωL1SLS2A2=Make∗ωL2 The score of top softgoals S(TS1),S(TS2) for alternatives A1,A2 is represented as follows: STS1A1=Help∗SLS1A1+Help∗SLS2A1STS2A1=Make∗SLS1A1+Help∗SLS2A1STS1A2=Help∗SLS1A2+Help∗SLS2A2STS2A2=Make∗SLS1A2+Help∗SLS2A2 For further details on how to generate scores, readers are directed to [26, 48]. These scores of top softgoals are then applied to determine the multi-objective optimization functions under different alternatives. For formalization, SR model is considered as a directed graph which is represented as G(N,R) ⁠, where N represents the intentional elements such as goals, softgoals, resources and tasks that form a set of nodes and R represents the means-end link, task decomposition link, dependency link or contribution link that form a set of edges of the graphs [55]. The approach is illustrated with the telemedicine case study (Fig. 2) as a running example. The task of a decision-maker is to choose an ideal alternative option from the choices. An objective function for each choice can be generated based on the elements of the graph. Given an i* goal model, our aim is to select the best alternative option according to each of its impact on softgoals. First, the scores of each top softgoals of each actor based on its inter-actor dependency under each alternative is calculated. Consider a node that represents a leaf softgoal in the i* model. Let ωLik represents the weight of ith leaf softgoal of kth actor. From Fig. 6, ILijk means the impact on ith leaf softgoal of jth alternative. Let ωLijk represents the weight of ith leaf softgoal for actor k at level zero. Then, the score of ith leaf softgoal for jth alternative for the kth actor is as follows: SLijk=ILijk∗ωLijk+∑dLi=1ndi(SdLi∗IdLi) (6) where SdLi is the score of dLth dependent for the ith leaf softgoal, IdLi is the dLth dependent impact for the ith leaf softgoal and ndi is the number of dependencies for the ith leaf softgoal (i.e. at level zero). Figure 6. Open in new tabDownload slide Directed graph representation of SR model for an actor with dependency. Figure 6. Open in new tabDownload slide Directed graph representation of SR model for an actor with dependency. Telemedicine case study: For each actor Patient and HealthcareProvider ⁠, leaf softgoals are assigned an individual weight that can optimally select the best alternative option for achieving the opposing goals. Let the individual weights of leaf softgoals such as TimeSaving ⁠, QualityofCare ⁠, EfficientOperations and EffectiveTreatments be ω1 ⁠, ω2 ⁠, ω3 and ω4 ⁠, respectively. To improve the readability in writing, certain terms in telemedicine case study are abbreviated as shown in Table 1. The scores of the leaf softgoals for both actors, Patient and HealthcareProvider ⁠, under the alternative, PatientCenteredCare ⁠, are calculated as follows: STSPaCC=Help∗ω1SQoCPaCC=Help∗ω2+make∗(SVHSPaCC)SEOPaCC=Hurt∗ω3SETPaCC=Some+*ω4 The scores for the leaf softgoals for both actors, Patient and HealthcareProvider ⁠, under the alternative, ProviderCenteredCare are calculated as follows: STSPrCC=Hurt∗ω1SQoCPrCC=Make∗ω2+make∗(SVHSPrCC)SEOPrCC=Help∗ω3SETPrCC=Help∗ω4 Table 1. Abbreviation of terms in telemedicine system. Terms Abbreviation Patient P Healthcare Provider HCP Time Saving TS Quality of Care QoC Expense E Happiness H Viable Healthcare Service VHS Maintenance Cost MC Efficient Operations EO Effective Treatments ET Patient Centered Care PaCC Provider Centered Care PrCC Terms Abbreviation Patient P Healthcare Provider HCP Time Saving TS Quality of Care QoC Expense E Happiness H Viable Healthcare Service VHS Maintenance Cost MC Efficient Operations EO Effective Treatments ET Patient Centered Care PaCC Provider Centered Care PrCC Open in new tab Table 1. Abbreviation of terms in telemedicine system. Terms Abbreviation Patient P Healthcare Provider HCP Time Saving TS Quality of Care QoC Expense E Happiness H Viable Healthcare Service VHS Maintenance Cost MC Efficient Operations EO Effective Treatments ET Patient Centered Care PaCC Provider Centered Care PrCC Terms Abbreviation Patient P Healthcare Provider HCP Time Saving TS Quality of Care QoC Expense E Happiness H Viable Healthcare Service VHS Maintenance Cost MC Efficient Operations EO Effective Treatments ET Patient Centered Care PaCC Provider Centered Care PrCC Open in new tab Consider the case of t hierarchy levels in the directed graph, with leaf softgoals at level zero. Then, at level t=1 ⁠, the score of the ith softgoal for jth alternative for actor k is shown below: SSGi1jk=∑x=1nc(Ix∗SLxjk)+∑di1=1ni(Sdi1∗Idi1) (7) where nc is the number of children for each ith softgoal at level t=1 and ni is the number of dependencies at level t=1 for ith softgoal. Since the score of softgoals at level t=1 depends on the score of their leaf softgoal, Eq. (7) can be rewritten as SSGi1jk=I1∗SL1jk+I2∗SL2jk+………+Inc∗SLncjk+∑di1=1ni(Sdi1∗Idi1) (8) Substituting with Eq. (6), Eq. (8) becomes SSGi1jk=I1∗(IL1jk∗ωL1jk+∑dL1=1nd1(SdL1∗IdL1))+I2∗(IL2jk∗ωL2jk+∑dL2=1nd2(SdL2∗IdL2))+………+Inc∗(ILncjk∗ωLncjk+∑dLnc=1ndnc(SdLnc∗IdLnc))+∑di1=1ni(Sdi1∗Idi1) (9) In this way, it propagates upwards. At Level 1, if there are m number of softgoals, nc children and nd dependencies for the ith softgoal, then any softgoal’s score at higher level (⁠ t>1 ⁠) is found as the product of its impact and each child’s score. Therefore, the softgoal’s score at any level t for an actor with a dependency relationship can be generalized as SSGitjk=Πl=1tIijl∑i=1m∑d=1nc[(Idij∗IdLijk∗ωdLijk)]+∑y=1nc∑b=1nd(Sidby∗Iidby)+∑b=1nd(Sidb∗Iidb)] (10) Then, the objective function of top softgoals under each alternative for each actor is created from the scores as shown in Eq. (10). As discussed in Section 2, SD model shows a high-end explanation that focuses on the inter-dependency between actors of a system. Also, SR model help in demonstrating the analysis of each actor in the system based on their intentional inter-dependencies. In the proposed approach, the inter-actor dependency relationship is considered for selecting the optimal alternative to achieve the opposing goals. So, it is necessary to consider both SD model and SR model of the i* goal model with the assumption that only softgoal inter-dependency relationship is taken into account in this approach. Telemedicine case study: For actor Patient ⁠, the score of top softgoals, Expense and Happiness under both alternatives PatientCenteredCare and ProviderCenteredCare are calculated, respectively. Since the actor Patient has a softgoal dependency on the actor HealthcareProvider ⁠, then the score of ViableHealthcareService should be considered for calculating the score of top softgoals, Expense and Happiness ⁠, of actor Patient ⁠. Also, for simplicity of calculation, defuzzification is used to convert the impacts which are represented in fuzzy numbers to quantifiable values [56]. These defuzzified values shown in Table 2 are used to evaluate the scores of each softgoal. Table 2. Impact values. Impact Fuzzy value Defuzzified value Hurt (0, 0.16, 0.32) 0.16 Make (0.64, 0.8, 1) 0.8 Some− (0.16, 0.32, 0.48) 0.32 Some+ (0.32, 0.48, 0.64) 0.48 Break (0, 0, 0.16) 0 Help (0.48, 0.64, 0.80) 0.64 Impact Fuzzy value Defuzzified value Hurt (0, 0.16, 0.32) 0.16 Make (0.64, 0.8, 1) 0.8 Some− (0.16, 0.32, 0.48) 0.32 Some+ (0.32, 0.48, 0.64) 0.48 Break (0, 0, 0.16) 0 Help (0.48, 0.64, 0.80) 0.64 Open in new tab Table 2. Impact values. Impact Fuzzy value Defuzzified value Hurt (0, 0.16, 0.32) 0.16 Make (0.64, 0.8, 1) 0.8 Some− (0.16, 0.32, 0.48) 0.32 Some+ (0.32, 0.48, 0.64) 0.48 Break (0, 0, 0.16) 0 Help (0.48, 0.64, 0.80) 0.64 Impact Fuzzy value Defuzzified value Hurt (0, 0.16, 0.32) 0.16 Make (0.64, 0.8, 1) 0.8 Some− (0.16, 0.32, 0.48) 0.32 Some+ (0.32, 0.48, 0.64) 0.48 Break (0, 0, 0.16) 0 Help (0.48, 0.64, 0.80) 0.64 Open in new tab For actor HealthcareProvider ⁠, the score of top softgoals, ViableHealthcareService and MaintenanceCost under both alternatives are calculated as SVHSPaCC=Help∗SEOPaCC+Help∗SETPaCC=0.64∗(0.16∗ω3)+0.64∗(0.48∗ω4)=0.1024∗ω3+0.3072∗ω4 SMCPaCC=Help∗SEOPaCC+Make∗SETPaCC=0.64∗(0.16∗ω3)+0.8∗(0.48∗ω4)=0.1024∗ω3+0.384∗ω4 SVHSPrCC=Help∗SEOPrCC+Help∗SETPrCC=0.64∗(0.64∗ω3)+0.64∗(0.64∗ω4)=0.4096∗ω3+0.4096∗ω4 SMCPrCC=Help∗SEOPrCC+Make∗SETPrCC=0.64∗(0.64∗ω3)+0.8∗(0.64∗ω4)=0.4096∗ω3+0.512∗ω4 For actor Patient ⁠, the score of top softgoals, Expense and Happiness under both alternatives are calculated as SEPaCC=Help∗STSPaCC+Help∗SQoCPaCC=0.64∗(0.64∗ω1)+0.64∗(0.8∗ω2+0.8∗(0.1024∗ω3+0.3072∗ω4))=0.4096∗ω1+0.512∗ω2+0.0524∗ω3+0.1573∗ω4 SHPaCC=Make∗STPaCC+Help∗SQoCPaCC=0.8∗(0.64∗ω1)+0.8∗(0.64∗ω2+0.8∗(0.1024∗ω3+0.3072∗ω4))=0.512∗ω1+0.64∗ω2+0.0656∗ω3+0.1966∗ω4 SEPrCC=Help∗STSPrCC+Help∗SQoCPrCC=0.64∗(0.16∗ω1)+0.64∗(0.8∗ω2)+0.8∗(0.4096∗ω3+0.4096∗ω4))=0.1024∗ω1+0.512∗ω2+0.2097∗ω3+0.2097∗ω4 SHPrCC=Make∗STSPrCC+Help∗SQoCPrCC=0.8∗(0.16∗ω1)+0.8∗(0.8∗ω2)+0.8∗(0.4096∗ω3+0.4096∗ω4))=0.128∗ω1+0.64∗ω2+0.2∗ω3+0.2621∗ω4 Consider that if there are n number of alternative options for an actor, then there are n objective functions for each top softgoal. To obtain maximum score for the top softgoal under each alternative, the n objective functions that have to be maximized are given as fi(ω1)=SSGi1k=MaxΠl=1tIi1l∑i=1m∑d=1nc[(Idi1∗IdLi1k∗ωdLi1k)]+∑y=1nc∑b=1nd(Sidby∗Iidby)+∑b=1nd(Sidb∗Iidb) fi(ω2)=SSGi2k=MaxΠl=1tIi2l∑i=1m∑d=1nc[(Idi2∗IdLi2k∗ωdLi2k)]+∑y=1nc∑b=1nd(Sidby∗Iidby)+∑b=1nd(Sidb∗Iidb)……………………… fi(ωn)=SSGink=MaxΠl=1tIinl∑i=1m∑d=1nc[(Idin∗IdLink∗ωdLink)]+∑y=1nc∑b=1nd(Sidby∗Iidby)+∑b=1nd(Sidb∗Iidb) (11) where 0≤ωdLjk≤100ford=1tonc Correspondingly, the objective functions for all other actors that have to be maximized are formalized. Likewise, the objective functions that have to be minimized for each actor are formalized. The next section explains how the multi-objective functions of opposing goals (maximum and minimum in nature) are optimized using game theory. 5.2. Application of game theory for multi-objective optimization of the i* goal model Game theory is a method developed in the mathematics domain whereby players’ strategies are assessed equally according to the environmental factors. In the proposed approach, the goals with conflicting objectives are considered as the game players and the alternative design options (tasks) are treated as the game strategies [51]. Initially, the application of game theory from the actors’ perspective having opposing objectives is investigated with the assumption that each actor in the goal model has the same set of alternative options for achieving his/her opposing objectives. Consider that actor X in the i* goal model has two softgoals TS1 and TS2 of opposing objectives. Consider TS1’s objective is to be maximized and TS2’s objective is to be minimized. From the game theory point of view, these top softgoals TS1 and TS2 are considered as being the two game players and the alternatives are the strategies of the players. If there are n alternatives, then TS1 has strategies A1,A2,…,An and TS2 has strategies A1,A2,…,An ⁠. Of these, the best alternative is the one that can maximize TS1 and minimize TS2 simultaneously. The multi-objective optimization function of each opposing goal under each alternative for each actor are generated based on Eq. (10). From Eq. (11), the multi-objective optimization function of ith top softgoal for an actor k ⁠, with dependency relationship for jth alternative is written as fi(ωj)=SSGijk=MaxΠl=1tIijl∑i=1m∑d=1nc[(Idij∗IdLijk∗ωdLijk)]+∑y=1nc∑b=1nd(Sidby∗Iidby)+∑b=1nd(Sidb∗Iidb) (12) For the first top softgoal, TS1 ⁠, of an actor X ⁠, the multi-objective optimization function with first alternative A1 can be written as FTS1(ωA1)=STS1A1=MaxΠl=1tITS1A1l∑i=1m∑d=1nc[(IdiA1∗IdLiA1x∗ωdLiA1x)]+∑y=1nc∑b=1nd(Sidby∗Iidby)+∑b=1nd(Sidb∗Iidb) (13) Similarly, for second alternative, third alternative and so on: FTS1(ωA2),FTS1(ωA3),…,FTS1(ωAn) (14) Likewise, the multi-objective functions for the second softgoal, TS2 ⁠, which is to be minimized can be written as FTS2(ωA1)=STS2A1=MinΠl=1tITS2A1l∑i=1m(∑d=1nc(IdiA1∗IdLiA1x∗ωdLiA1x)+∑i=1m∑y=1nc∑b=1nd(Sdbyi∗Idbyi)+∑i=1m∑b=1nd(Sdbi∗Idbi) (15) Similarly, for FTS2(ωA2),FTS2(ωA3),…,FTS2(ωAn) (16) The multi-objective functions of TS1 that should be maximized (from Eqs. (13) and (14)) are written as Max(FTS1(ωA1),FTS1(ωA2),…,FTS1(ωAn)) (17) where n>1 and w an element of y where y is a constraint set. Similarly, the multi-objective functions of TS2 (from Eqs. (15) and (16)) are written as Min(FTS2(ωA1),FTS2(ωA2),…,FTS2(ωAn)) (18) where n>1 and w an element of y where y is the set of constraint. Telemedicine case study: For actor Patient ⁠, the objective functions for both the top softgoals, under the two alternatives Patient Centered care and Provider Centered care, are given using Eqs. (13) and (15), based on their scores are as follows: FTS2(ω)A1=FE(ω)PaCC=Min(SEPaCC)=Min(0.4096∗ω1+0.512∗ω2+0.0524∗ω3+0.1573∗ω4) FTS2(ω)A2=FE(ω)PrCC=Min(SEPrCC)=Min(0.1024∗ω1+0.512∗ω2+0.2097∗ω3+0.2097∗ω4) FTS1(ω)A1=FH(ω)PaCC=Max(SHPaCC)=Max(0.512∗ω1+0.64∗ω2+0.0656∗ω3+0.1966∗ω4) FTS1(ω)A2=FH(ω)PrCC=Max(SHPrCC)=Max(0.128∗ω1+0.64∗ω2+0.2621∗ω3+0.2621∗ω4) FTS1(ω)A1=FVHS(ω)PaCC=Max(SVHSPaCC)=Max(0.1024∗ω3+0.3072∗ω4) FTS1(ω)A2=FVHS(ω)PrCC=Max(SVHSPrCC)=Max(0.4096∗ω3+0.4096∗ω4) FTS2(ω)A2=FMC(ω)PaCC=Min(SMCPaCC)=Min(0.128∗ω3+0.384∗ω4) FTS2(ω)A2=FMC(ω)PrCC=Min(SMCPrCC)=Min(0.512∗ω3+0.512∗ω4) To obtain the optimal strategies for player’s having opposing objectives, the following listed steps are carried out. Step 1: Evaluation of the optimal solutions of multi-objective optimization functions of opposing top softgoals Step 2: Objective integrated game-theoretic approach for pay-off matrix transformations Step 3: Unification process for decision pay-off matrix formation Step 4: Application of linear programming model to obtain optimal strategy including decision-making Above steps are now explained in detail in the following sub-sections with the simplified telemedicine system. 5.2.1. Optimal solutions for multi-objective optimization functions Optimizing the objective functions individually can generate ideal solutions. The IBM ILOG CPLEX Optimization Studio (often informally referred to simply as CPLEX) is used for evaluating the optimization model using game theory. The IBM ILOG CPLEX Optimization tool is an optimization software package. The name ‘CPLEX’ is a combination of two words, Simplex algorithm and C programming language. Simplex algorithm (or simplex method) is a popular algorithm for linear programming as implemented in the C programming language. It is applied for solving mathematical business models by utilizing powerful algorithms to acquire precise and logical decisions [57]. Furthermore, IBM ILOG CPLEX has a modeling layer called Concert that empowers interfacing with Java, C++ and C# languages [57]. Let the ideal solutions for the objective functions in Eqs. (17) and (18) be expressed as (xTS1A1,xTS1A2,xTS1A3,…,xTS1An,xTS2A1,xTS2A2,xTS2A3,…,xTS2An) (19) with (xTS1A1,xTS1A2,xTS1A3,…,xTS1An) (20) representing the solution to Eq. (17) and (xTS2A1,xTS2A2,xTS2A3,…,xTS2An) (21) representing the solution to Eq. (18). Likewise, the multi-objective function values are generated for all the actors in the goal model and are shown in Tables 3 and 4. Table 3. Maximum objective functions values representation. Maximum objective function values X Y FTS1A1 xTS1A1 yTS1A1 FTS1A2 xTS1A2 yTS1A2 Maximum objective function values X Y FTS1A1 xTS1A1 yTS1A1 FTS1A2 xTS1A2 yTS1A2 Open in new tab Table 3. Maximum objective functions values representation. Maximum objective function values X Y FTS1A1 xTS1A1 yTS1A1 FTS1A2 xTS1A2 yTS1A2 Maximum objective function values X Y FTS1A1 xTS1A1 yTS1A1 FTS1A2 xTS1A2 yTS1A2 Open in new tab Table 4. Minimum objective functions values representation. Minimum objective function values X Y FTS2A1 xTS2A1 yTS2A1 FTS2A2 xTS2A2 yTS2A2 Minimum objective function values X Y FTS2A1 xTS2A1 yTS2A1 FTS2A2 xTS2A2 yTS2A2 Open in new tab Table 4. Minimum objective functions values representation. Minimum objective function values X Y FTS2A1 xTS2A1 yTS2A1 FTS2A2 xTS2A2 yTS2A2 Minimum objective function values X Y FTS2A1 xTS2A1 yTS2A1 FTS2A2 xTS2A2 yTS2A2 Open in new tab Telemedicine case study: The multi-objective function values for each actor for the telemedicine case study is illustrated in Tables 5 and 6. Table 5. Maximum objective function values for each actors in telemedicine system. Maximum functions Patient Healthcare provider FTS1A1 64 30.72 FTS1A2 64 40.96 Maximum functions Patient Healthcare provider FTS1A1 64 30.72 FTS1A2 64 40.96 Open in new tab Table 5. Maximum objective function values for each actors in telemedicine system. Maximum functions Patient Healthcare provider FTS1A1 64 30.72 FTS1A2 64 40.96 Maximum functions Patient Healthcare provider FTS1A1 64 30.72 FTS1A2 64 40.96 Open in new tab Table 6. Minimum objective function values for each actors in telemedicine system. Minimum functions Patient Healthcare provider FTS2A1 5.24 12.8 FTS2A2 10.24 51.2 Minimum functions Patient Healthcare provider FTS2A1 5.24 12.8 FTS2A2 10.24 51.2 Open in new tab Table 6. Minimum objective function values for each actors in telemedicine system. Minimum functions Patient Healthcare provider FTS2A1 5.24 12.8 FTS2A2 10.24 51.2 Minimum functions Patient Healthcare provider FTS2A1 5.24 12.8 FTS2A2 10.24 51.2 Open in new tab 5.2.2. Generation of pay-off matrices for each player The pay-off of a game is characterized as the quantifiable value that each player gets by choosing a particular strategy. Pay-off matrix is used for representing all the possible outcomes in the game with both player’s possible strategies. By analysing the pay-off matrix, optimal strategy is obtained. In this section, the objective function values of top softgoals are integrated for all actors in the goal model that are of the same nature (for example maximize) under each alternative to generate the pay-off matrix for each nature. For generating the pay-off matrix according to the objective function values, let us assume another actor Y in the same goal model which has an inter-actor dependency relationship with actor X ⁠. Also, assume that both actors X and Y have the same alternative options (⁠ A1 and A2 ⁠) for reaching their opposing top softgoals (⁠ TS1 and TS2 ⁠). The optimal function values that are of maximum in nature for each actor are represented in Table 3. The optimal function values that are of minimum in nature for each actor are represented in Table 4. According to the optimal function values shown in Tables 3 and 4, the pay-off matrices, TSMax and TSMin ⁠, are generated for each top softgoal that has an opposing nature. The sum of the objective function values of the same nature under each alternative for all actors produces the pay-off matrix for each nature. Now the pay-off matrix PTSMax for the top softgoal TSMax has to be maximized for two actors X and Y under n number of alternatives is generalized as PTSMax=A1A2AnA1A2AnpA1A1pA1A2…pA1AnpA2A1pA2A2…pA2An……………………pAnA1pAnA2…pAnAn where pA1A1=xTS1A1+yTS1A1pA2A1=xTS2A1+yTS1A1…………………………….…………………………….pAiAj=xTS1Ai+yTS1Aj,fori,j=1ton (22) Consider that there are s number of actors in an i* goal model, in such a way that each of the k (<=s) actors has the same set of n number of alternatives. Each element in the final pay-off matrix of top softgoal, that has to be maximized, can be generated as shown below: ∑i,j=1kaAl,Arij (23) where Al≥0forl=1tonAr≥0forr=1ton where aij denote an element of the pay-off matrix of every combination of ith and jth actor of k resulting from choosing the lth and rth alternative of n ⁠. Similarly, the pay-off matrix PTSMin for the top softgoal TSMin has to be minimized for two actors X and Y under n number of alternatives is generalized as PTSMin=A1A2..AnA1A2....AnqA1A1qA1A2…qA1AnqA2A1qA2A2…qA2An……………………qAnA1qAnA2…qAnAn where qA1A1=xTS2A1+yTS2A1qA2A1=xTS2A2+yTS2A1…………………………….…………………………….qAiAj=xTS2Ai+yTS2Aj,fori,j=1ton (24) If there are s number of actors in an i* goal model, in such a way that k(<=s) actors have the same set of n number of alternatives, then each element in the final pay-off matrix of top softgoal that has to be minimized is obtained as ∑i,j= 1kaAl,Arij (25) where Al≥0forl=1tonAr≥0forr=1ton where aij denote the pay-off matrix of every combination of ith and jth actor of k resulting from choosing the lth and rth alternative of n ⁠. Telemedicine case study: Therefore, the pay-off matrix that maximizes the top softgoals, PTSMax (Player 1) of telemedicine system using Eq. (22) is given as PTSMax=94.72104.9694.72104.96 (26) Therefore, the pay-off matrix that minimize the top softgoals, PTSMin (Player 2) of the telemedicine system using Eq. (24) is given as PTSMin=18.0456.4423.0461.44 (27) 5.2.3. Generation of decision pay-off matrix To achieve the overall objective of opposing goals simultaneously, the pay-off matrices which are obtained separately for each player should be merged together. As mentioned in the methodology, objectives have different importance (opposing). The strategies for the opposing objectives are evaluated based on their contributions to them. To discover all objectives simultaneously and to accomplish the overall objective, is the critical task in any decision-making process. Thus, the pay-off matrices formed individually for each player should be integrated together. This process of integrating objectives with their degree of importance based on alternatives is called the unification process. The optimal strategy is then obtained by analysing these unified pay-off matrices that contains both maximizing and minimizing multi-objective function values. Now, using matrices in Eqs. (22) and (24), the unified pay-off matrix P that contains both the maximizing and minimizing multi-objective function values is represented as P=A1A2..AnA1A2....An(pA1A1,qA1A1)(pA1A2,qA1A2)..(pA1An,qA1An)(pA2A1,qA2A1)(pA2A2,qA2A2)..(pA2An,qA2An)................(pAnA1,qAnA1)(pAnA2,qAnA2)..(pAnAn,qAnAn) i.e. P=A1A2..AnA1A2....AnzA1A1zA1A2…zA1AnzA2A1zA2A2…zA2An……………………zAnA1zAnA2…zAnAn where zA1A1=pA1A1+qA1A1…………………………………zAiAj=pAiAj+qAiAj,fori,j=1ton (28) Telemedicine case study: From the above matrices, PTSMax and PTSMin ⁠, the decision pay-off matrix is created for the telemedicine system using Eq. (28) and is given as P=112.76161.4117.76166.4 (29) When analysing a game, if player’s uses the same strategy at each round of the game, then it is called a pure strategy game. To obtain a solution of a zero-sum game with pure strategies, it is feasible to find out the best strategies for player’s through the saddle point calculation which is explained in the next paragraph. Consider the decision pay-off matrix generated as shown in Eq. (28). The element zAiAj is called a saddle point of the matrix P if zAiAj≤zAiAl∀l=1,…,nandzAiAj≥zAkAj∀k=1,…,n. (30) That is, the element zAiAj is simultaneously a minimum in its row and a maximum in its column. If (i, j) is a saddle point of a given game matrix, then the pay-off that the row player gets in the saddle point is called the value of the game and it corresponds to pure strategy Nash equilibrium of the game. In our reasoning, we made a rather subtle assumption that each player uses mixed strategies instead of pure strategies. In the case of mixed strategy Nash equilibrium, the value of the game can be obtained by applying primal linear programming. The following sub-section explains how the value of the game can be obtained using linear programming. 5.2.4. Linear programming model to obtain optimal strategy and decision-making In zero-sum games, the total benefit to all players, for every combination of strategies, always adds to zero. The pay-off of one player is the negative of the pay-off of the other player [58]. Two-person zero-sum games play a central role in the development of the theory of games, but it is difficult to solve two-person matrix game with the order m × n(m≥3,n≥3) ⁠. The connection with linear programming was discovered by von Neumann in 1947 [59] helped to solve two-person matrix game of higher order. The Minmax theorem is a simple consequence of the Duality Theorem of linear programming [60]. So using linear programming techniques, two-person zero-sum games can be solved. Mixed strategies must exist for two-player zero-sum games had been proven by John von Neumann and Oskar Morgenstern [61]. In this sub-section, we solve a two-person zero-sum game having mixed strategies by applying linear programming approach. In the last phase of our proposed approach, we obtained the unified decision pay-off matrix. In order to obtain the proposed optimal strategy, the operation research technique of linear programming is applied. Thus, a linear programming model is built in the proposed approach according to the decision pay-off matrix in Eq. (28), which is formed with the integration of objective function solutions. The value of the game is defined as the pay-off to player 1 when both players play optimally [52]. Based on the two-player zero-sum game-theoretic approach, the Player 1, who needs to maximize his gain, follows the Maxmin strategy and the Player 2 follows Minmax strategy. Based on the decision pay-off matrix given in Eq. (28), if the Softgoal 1 (Player 1) uses A1 ⁠, zA1A1 proportion of times, A2 ⁠, zA2A1 proportion of times, …. and An, zAnA1 proportion of times with Softgoal 2 (Player 2) consistently having A1 ⁠, then Player 1’s gain will be zA1A1∗A1+zA2A1∗A2+⋯+zAnA1∗An (31) Generally, using An ⁠, then the Player 1’s gain will be zA1An∗A1+zA2An∗A2+⋯+zAnAn∗An (32) Softgoal 1 knows that it has to maximize the minimum that it will get. Since it is linear, the minimum that softgoal 1 will get lie in Eq. (31) or (32) or it is the point of intersection of these equations. This implies that the top softgoal (⁠ TSMax ⁠) needs to be maximized. Therefore, Player 1 follows Maxmin strategy. The inexact values in the goal programming model reflect the vagueness or tolerance of the decision-maker as well as the imprecision of experts knowledge. To obtain the optimum value, we include a tolerance value in each constraints to keep all the constraints with consequent variations inside their bounds. Thus, a product of tolerance value and value of the game is subtracted from each constraints to eliminate the maximum acceptable absolute violation in maximum optimal value [62]. Let us assume v be the value of the game, v¯ be the maximum value of the game, v̲ be the minimum value of the game, u=v¯−v̲ be tolerance value for TSMax ⁠. The formulation of Maxmin strategy of Player 1 is given as follows: MaxvSubjecttothelinearconstraints−u∗v+zA1A1∗A1+zA2A1∗A2+⋯+zAnA1∗An≥v¯−u∗v+zA1A2∗A1+zA2A2∗A2+⋯+zAnA2∗An≥v¯……−u∗v+zA1An∗A1+zA2An∗A2+⋯+zAnAn∗An≥v¯ (33) ∑i=1nAi=1;Ai≥0fori=1ton Similarly, in the case of Player 2, top Softgoal 2 (⁠ TSMin ⁠), needs to be minimized. Therefore, it follows Minmax strategy. Based on the decision pay-off matrix given in Eq. (28), if the Softgoal 2 (Player 2) uses A1 ⁠, zA1A1 proportion of times, A2 ⁠, zA1A2 proportion of times, …. and An, zA1An proportion of times with Softgoal 1 (Player 2) consistently having A1 ⁠, then Player 2’s loss will be zA1A1∗A1+zA1A2∗A2+⋯+zA1An∗An (34) Generally, using An ⁠, then the Player 2’s loss will be zAnA1∗A1+zAnA2∗A2+⋯+zAnAn∗An (35) Softgoal 2 knows that it has to minimize the maximum that it will get. Since it is linear, the maximum that Softgoal 1 will get lie in Eq. (33) or (34) or it is the point of intersection of these equations. This implies that, the top softgoal (⁠ TSMin ⁠) needs to be minimized. Therefore, Player 2 follows Minmax strategy. The inexact values in the goal programming model reflect the vagueness or tolerance of the decision maker as well as the imprecision of experts knowledge. To obtain the optimum value, we include a tolerance value in each constraints to keep all the constraints with consequent variations inside their bounds. Thus, a product of tolerance value and value of the game is subtracted from each constraints to eliminate the maximum acceptable absolute violation in minimum optimal value [62]. Let us assume w be the value of the game, w¯ be the maximum value of the game, w̲ be the minimum value of the game and l=w¯−w̲ be tolerance value for TSMin ⁠. The formulation of Minmax strategy of Player 2 is given as follows: MinwSubjecttothelinearconstraints−l∗w+zA1A1∗A1+zA1A2∗A2+⋯+zA1An∗An≤w¯−l∗w+zA2A1∗A1+zA2A2∗A2+⋯+zA2An∗An≤w¯……−l∗w+zAnA1∗A1+zAnA2∗A2+⋯+zAnAn∗An≤w¯ (36) ∑i=1nAi=1;Ai≥0fori=1ton By solving either formulations, the proportion values of the strategies are obtained. The optimal strategy, the one with the high proportion value, is chosen. The chosen optimal strategy can accomplish the opposing NFR of each actor simultaneously. Since the linear formulation of TSMin is the dual of the linear formulation of TSMax ⁠, the solution to the game is found by solving either the formulation of TSMax or TSMin ⁠. The duality of Eqs. (33) and (36) is demonstrated as below. Linear programming duality proof of two-person zero-sum game theory Consider Player 1’s formulation given by Eq. (33) (which is called as primal). In order to find the dual of Player 1’s primal equation, the Player 1’s formulation given in Eq. (33) is rewritten as below: MaxvSubjecttothelinearconstraintsv¯+u∗v−zA1A1∗A1−zA2A1∗A2−…−zAnA1∗An≤0v¯+u∗v−zA1A2∗A1−zA2A2∗A2−…−zAnA2∗An≤0……v¯+u∗v−zA1An∗A1−zA2An∗A2−…−zAnAn∗An≤0 (37) ∑i=1nAi=1;Ai≥0fori=1ton Also, minimization formulation given in Eq. (36) is rewritten as below: MinwSubjecttothelinearconstraintsw¯+l∗w≥zA1A1∗A1+zA1A2∗A2+⋯+zA1An∗Anw¯+l∗w≥zA2A1∗A1+zA2A2∗A2+⋯+zA2An∗An……w¯+l∗w≥zAnA1∗A1+zAnA2∗A2+⋯+zAnAn∗An (38) ∑i=1nAi=1;Ai≥0fori=1ton The primal has n+1 constraints; hence, the dual will have n+1 variables. Let us define dual variables as X1,X2,…,Xn,y for the constraints in Eq. (37) as shown below: MaxvSubjecttothelinearconstraintsX1:v¯+u∗v−zA1A1∗A1−zA2A1∗A2−⋯−zAnA1∗An≤0X2:v¯+u∗v−zA1A2∗A1−zA2A2∗A2−⋯−zAnA2∗An≤0……Xn:v¯+u∗v−zA1An∗A1−zA2An∗A2−⋯−zAnAn∗An≤0 (39) y:∑i=1nAi=1;Ai≥0fori=1ton The dual will be given as y= value of the game A1,A2,…,An are the strategies y¯= maximum value of the game y̲= minimum value of the game l=y¯−y̲= tolerance value of the game y= value of the game A1,A2,…,An are the strategies y¯= maximum value of the game y̲= minimum value of the game l=y¯−y̲= tolerance value of the game Open in new tab y= value of the game A1,A2,…,An are the strategies y¯= maximum value of the game y̲= minimum value of the game l=y¯−y̲= tolerance value of the game y= value of the game A1,A2,…,An are the strategies y¯= maximum value of the game y̲= minimum value of the game l=y¯−y̲= tolerance value of the game Open in new tab MinySubjecttothelinearconstraints−zA1A1∗X1−zA1A2∗X2−⋯−zA1An∗Xn≥y¯+l∗y−zA2A1∗X1−zA2A2∗X2−⋯−zA2An∗Xn≥y¯+l∗y……−zAnA1∗X1−zAnA2∗X2−⋯−zAnAn∗Xn≥y¯+l∗y (40) ∑i=1nXi=1;Xi≥0fori=1ton Now rewriting Eq. (36) as y= value of the game A1,A2,…,An are the strategies y¯= maximum value of the game y̲= minimum value of the game l=y¯−y̲= tolerance value of the game y= value of the game A1,A2,…,An are the strategies y¯= maximum value of the game y̲= minimum value of the game l=y¯−y̲= tolerance value of the game Open in new tab y= value of the game A1,A2,…,An are the strategies y¯= maximum value of the game y̲= minimum value of the game l=y¯−y̲= tolerance value of the game y= value of the game A1,A2,…,An are the strategies y¯= maximum value of the game y̲= minimum value of the game l=y¯−y̲= tolerance value of the game Open in new tab MinySubjecttothelinearconstraintsy¯+l∗y≥zA1A1∗X1+zA1A2∗X2+⋯+zA1An∗Xny¯+l∗y≥zA2A1∗X1+zA2A2∗X2+⋯+zA2An∗Xn……y¯+l∗y≥zAnA1∗X1+zAnA2∗X2+⋯+zAnAn∗Xn (41) ∑i=1nXi=1;Xi≥0fori=1ton Comparing Eq. (41) with Player 2’s formulation Eq. (36), we can say that the dual of Player 1’s formulation is the Player 2’s formulation. There is a primal dual relationship between Players 1 and 2. Hence, by solving either Player 1’s linear formulation or Player 2’s linear formulation, the proportions for the strategies (in our case the alternatives) can be found. The strategy (alternative) with high proportion is selected. Hence, the linear formulation of TSMin is the dual of the linear formulation of TSMax ⁠, the solution to the game is found by solving either the formulation of TSMax or TSMin ⁠. Hence, by solving either formulations, the proportion values of the strategies are obtained. The optimal strategy, the one with the high proportion value, is chosen. The chosen optimal strategy can accomplish the opposing NFR of each actor simultaneously. Telemedicine case study: For obtaining the optimal strategy, a linear programming model is applied on Eq. (29). Since Player 1, PTSMax knows that it needs to be maximized, it, therefore, follows the Maxmin strategy with the formulation given below, using Eq. (33): MaxvSubjectto,−53.64∗v+112.76∗A1+117.76∗A2≥112.76,−53.64∗v+161.4∗A1+166.4∗A2≥112.76,∑i=1nAi=1,Ai≥0fori=1ton. (42) Similarly, Player 2, PTSMin knows that it needs to be minimized, it, therefore, follows the Minmax strategy with the formulation given below, using Eq. (36): MinwSubjectto,−53.64∗w+112.76∗A1+161.4∗A2≤112.76,−53.64∗w+117.76∗A1+166.4∗A2≤112.76,∑i=1nAi=1,Ai≥0fori=1ton. (43) Above Eqs. (42) and (43) are in linear form, so solving by means of the linear programming method can discover the optimal solution for the game. The IBM CPLEX tool has been used to optimize the linear programming model. Since the linear formulation of Player 1 is the dual of the linear formulation of Player 2, the solution to the game is found by solving either the formulation of Player 1 or of Player 2. By using the IBM ILOG CPLEX optimizer, optimal proportion values of the strategies for the linear formulation are found. These values are presented in Table 7. The results indicate that the alternative A2 (Provider Centered Care) has a higher value than the alternative A1 (Patient Centered care). This means that by choosing the A2 strategy, the system achieves the opposing top softgoals of inter-dependent actors in the i* goal model reciprocally. Hence, the approach is evaluated on telemedicine goal model. Table 7. Optimal solution of the linear formulation for telemedicine system. Alternatives Optimal solution A1 −9.728 A2 10.728 Alternatives Optimal solution A1 −9.728 A2 10.728 Open in new tab Table 7. Optimal solution of the linear formulation for telemedicine system. Alternatives Optimal solution A1 −9.728 A2 10.728 Alternatives Optimal solution A1 −9.728 A2 10.728 Open in new tab 6. APPLICATION OF GAME THEORETIC GOAL ANALYSIS IN THE i* FRAMEWORK To check the applicability and scalability of the proposed game theory-based approach, experiments were carried out on different case studies, namely Extended Telemedicine system [20] and Kids Youth Counseling [21]. The application of our proposed approach on these case studies are explained in this section. 6.1. Case Study 1: an extended telemedicine system In this section, an extended version of the telemedicine system with multiple internal intentional elements, is shown in Fig. 7. For both actors, Patient and Healthcare Provider ⁠, the softgoals and goals are decomposed into multiple levels as compared to simplified telemedicine system. In real-time situations, some patients reveal their cultural and spiritual well-beings. For example, each and every religion has got their own cultural preferences. Based on this, the functional requirement (hardgoal) of both actors is Treatment decomposed into three alternatives Patient Centered Treatment or Holistic Centered Treatment or Provider Centered Treatment. These alternatives impact each actor’s softgoals in various ways. The actor Patient has two top-most softgoals of opposing nature such as Happiness and Expense ⁠. For actor Patient ⁠, the atomic leaf softgoals, Comfort ⁠, Cultural Spiritual Well- being ⁠, Time for Treatment and Privacy ⁠, follow to the softgoal, Fast Recovery ⁠, which consequently follows to the softgoals, Quality of Care and Normal Lifestyle ⁠. Figure 7. Open in new tabDownload slide SR model of the extended telemedicine system. Figure 7. Open in new tabDownload slide SR model of the extended telemedicine system. Likewise, the leaf softgoals, Comfort ⁠, Cultural Spiritual Well- being and Privacy ⁠, lead to the softgoal, Flexible Treatment ⁠. The Flexible Treatment follows Normal Lifestyle and Time Saving ⁠. Subsequently, Quality of Care ⁠, Normal Lifestyle and Time Saving lead to the top-most softgoals of Happiness and Expense ⁠. The actor Patient depends upon the actor Healthcare Provider through the softgoal Viable Healthcare Service for providing telemedicine services. Similarly, the actor Healthcare Provider achieves the top-most opposing softgoals of Viable Healthcare Service and Cost through several levels of intermediary softgoals as shown in Fig. 7. The objective of this system is to select the best alternative option based on its impact on each of the softgoals. For illustration and simplicity purpose, the top softgoals with a maximizing nature (i.e. Happiness and Viable Healthcare Service ⁠) are represented as TS1 and with a minimizing nature (i.e. Expense and Maintenance Cost ⁠) are represented as TS2 under the three alternatives Patient Centered Treatment (⁠ A1 ⁠), Holistic Centered Treatment (⁠ A2 ⁠) and Provider Centered Treatment (⁠ A3 ⁠) (refer to Fig. 7). Terms used in the extended telemedicine system case study are provided as ready reference in Table 8. For the actor Patient ⁠, objective functions for both top softgoals, under the three alternatives Patient Centered Treatment, Holistic Centered Treatment and Provider Centered Treatment, are derived using Eqs. (13) and (15) (based on their scores) are represented as follows: FTS2(ω)A1=FE(ω)PaCT=Min(SEPaCT)=Min(0.7457∗ω1+0.3185∗ω2+0.236∗ω3+0.3224∗ω4) FTS2(ω)A2=FE(ω)HoCT=Min(SEHoCT)=Min(0.9018∗ω1+0.9339∗ω2+0.1887∗ω3+0.9252∗ω4) FTS2(ω)A3=FE(ω)PrCT=Min(SEPrCT)=Min(0.1724∗ω1+0.4779∗ω2+0.3146∗ω3+0.0807∗ω4) FTS1(ω)A1=FH(ω)PaCT=Max(SHPaCT)=Max(1.0092∗ω1+0.4324∗ω2+0.4326∗ω3+0.4326∗ω4) FTS1(ω)A2=FH(ω)HoCT=Max(SHHoCT)=Max(1.0091∗ω1+1.0813∗ω2+0.2884∗ω3+0.1082∗ω4) FTS1(ω)A3=FH(ω)PrCT=Max(SHPrCT)=Max(0.2523∗ω1+0.649∗ω2+1.8366∗ω3+0.1082∗ω4) Table 8. Abbreviation of terms used in the Extended Telemedicine system. Terms Abbreviation Happiness H Expense E Viable Healthcare Service VHS Cost C Patient Centered Treatment PaCT Holistic Centered Treatment HoCT Provider Centered Treatment PrCT Terms Abbreviation Happiness H Expense E Viable Healthcare Service VHS Cost C Patient Centered Treatment PaCT Holistic Centered Treatment HoCT Provider Centered Treatment PrCT Open in new tab Table 8. Abbreviation of terms used in the Extended Telemedicine system. Terms Abbreviation Happiness H Expense E Viable Healthcare Service VHS Cost C Patient Centered Treatment PaCT Holistic Centered Treatment HoCT Provider Centered Treatment PrCT Terms Abbreviation Happiness H Expense E Viable Healthcare Service VHS Cost C Patient Centered Treatment PaCT Holistic Centered Treatment HoCT Provider Centered Treatment PrCT Open in new tab Similarly, for the actor Healthcare Provider ⁠, objective functions of both the top softgoals, under the three alternatives Patient Centered Treatment, Holistic Centered Treatment and Provider Centered Treatment, are derived using Eqs. (13) and (15) (based on their scores) are represented as follows: FTS1(ω)A1=FVHS(ω)PaCT=Max(SVHSPaCT)=Max(0.5407∗ω1+0.3604∗ω3) FTS1(ω)A2=FVHS(ω)HoCT=Max(SVHSHoCT)=Max(1.408∗ω1+0.9344∗ω2)+0.5898∗ω3 FTS1(ω)A3=FVHS(ω)PrCT=Max(SVHSPrCT)=Max(0.1352∗ω1+0.8397∗ω2+0.1474∗ω3) FTS2(ω)A1=FC(ω)PaCT=Min(SCPaCT)=Min(0.4588∗ω1+0.3932∗ω3) FTS2(ω)A2=FC(ω)HoCT=Min(SCHoCT)=Min(0.5734∗ω1+0.3686∗ω2+0.5242∗ω3) FTS2(ω)A3=FC(ω)PrCT=Min(SMCPrCC)=Min(0.1638∗ω1+0.9216∗ω2+0.1311∗ω3) The values of objective functions are obtained by invoking the IBM ILOG CPLEX and are provided in Tables 9 and 10. The sum of the objective function values of the same nature (maximize or minimize) under each alternative for each actor leads to the pay-off matrix of each nature. To achieve the overall objective of conflicting goals simultaneously, the pay-off matrices which are obtained separately for each player should be merged into one. The optimal strategy is then realized by analysing these unified pay-off matrices that contain both maximizing and minimizing multi-objective function values. Table 9. Maximum objective function values for each actors in the Extended Telemedicine system. Maximum functions Patient Healthcare provider FTS1A1 100.92 54.07 FTS1A2 108.13 140.8 FTS1A3 183.66 83.97 Maximum functions Patient Healthcare provider FTS1A1 100.92 54.07 FTS1A2 108.13 140.8 FTS1A3 183.66 83.97 Open in new tab Table 9. Maximum objective function values for each actors in the Extended Telemedicine system. Maximum functions Patient Healthcare provider FTS1A1 100.92 54.07 FTS1A2 108.13 140.8 FTS1A3 183.66 83.97 Maximum functions Patient Healthcare provider FTS1A1 100.92 54.07 FTS1A2 108.13 140.8 FTS1A3 183.66 83.97 Open in new tab Table 10. Minimum objective function values for each actors in the Extended Telemedicine system. Minimum functions Patient Healthcare provider FTS2A1 23.6 39.32 FTS2A2 9.25 36.86 FTS2A3 8.07 13.11 Minimum functions Patient Healthcare provider FTS2A1 23.6 39.32 FTS2A2 9.25 36.86 FTS2A3 8.07 13.11 Open in new tab Table 10. Minimum objective function values for each actors in the Extended Telemedicine system. Minimum functions Patient Healthcare provider FTS2A1 23.6 39.32 FTS2A2 9.25 36.86 FTS2A3 8.07 13.11 Minimum functions Patient Healthcare provider FTS2A1 23.6 39.32 FTS2A2 9.25 36.86 FTS2A3 8.07 13.11 Open in new tab Hence, the pay-off matrix that maximizes the top softgoals, PTSMax (Player 1), of the extended telemedicine system using Eq. (22) is represented by PTSMax=154.99141.72184.89162.20148.93192.10237.73324.46267.63 (44) The pay-off matrix that minimizes the top softgoals, PTSMin (Player 2), of the extended telemedicine system using Eq. (24) is represented by PTSMin=62.9260.4639.7148.5846.1122.3647.3944.9321.18 (45) From the above matrices, PTSMax and PTSMin ⁠, the decision pay-off matrix is created for the extended telemedicine system using Eq. (28) and is represented as P=217.91202.18224.6210.78195.042214.46285.12369.39288.81 (46) For obtaining the optimal strategy, a linear programming model is applied on Eq. (46). Since PTSMax needs to be maximized, therefore, Player 1 follows the Maxmin strategy with the formulation as given below, using Eq. (33), MaxvSubjectto,−174.348∗v+217.91∗A1+210.782∗A2+285.12∗A3≥195.042,−174.348∗v+202.18∗A1+195.04∗A2+369.39∗A3≥195.042,−174.348∗v+224.6∗A1+214.46∗A2+288.81∗A3≥195.042,∑i=1nAi=1,Ai≥0fori=1tonandvisthevalueofthegame. (47) Similarly, since PTSMin needs to be minimized, therefore, Player 2 follows the Minmax strategy with the formulation as given below, using Eq. (36) MinwSubjectto,−174.348∗w+217.91∗A1+202.18∗A2+224.6∗A3≤195.042,−174.348∗w+210.782∗A1+195.04∗A2+214.46∗A3≤195.042,−174.348∗w+285.12∗A1+369.39∗A2+288.81∗A3≤195.042,∑i=1nAi=1,Ai≥0fori=1tonandwisthevalueofthegame. (48) The values obtained from Eqs. (47) and (48) are linear, so solving by means of the linear programming method can discover the optimal solution for the game. The IBM CPLEX tool has been used to optimize the linear programming model. Since the linear formulation of Player 1 is the dual of the linear formulation of Player 2, the solution to the game is found by solving either the formulation of Player 1 or of Player 2. By using the IBM ILOG CPLEX optimizer, optimal proportion values of the strategies for the linear formulation are found. These values are presented in Table 11. Table 11. Optimal solution of the linear formulation for the Extended Telemedicine system. Alternatives Optimal solution A1 0 A2 −1.134 A3 2.13 Alternatives Optimal solution A1 0 A2 −1.134 A3 2.13 Open in new tab Table 11. Optimal solution of the linear formulation for the Extended Telemedicine system. Alternatives Optimal solution A1 0 A2 −1.134 A3 2.13 Alternatives Optimal solution A1 0 A2 −1.134 A3 2.13 Open in new tab The results indicate that the alternative Provider Centered Treatment has a higher value than the other two alternatives, Patient Centered Treatment and Holistic Centered Treatment. This shows that home-based telemedicine Patient Centered Treatment and Holistic Centered Treatment would not be able to offer a wide range of viable healthcare services that make patients happy with low cost. Whereas with provider centered care, patients are brought into a room equipped with all the required medical equipment (for example interactive video camera operated by a licensed nurse practitioner) for comfortable and effective treatment. Thus, Healthcare Provider can incorporate treatment plan with more flexible options and activities. Hence, both actors who are dependent can achieve conflicting goals simultaneously by selecting Provider Centered Treatment. In other words, by choosing the Provider Centered Treatment strategy, the system achieves the opposing top softgoals of inter-dependent actors in the i* goal model reciprocally. This case study illustrates that the proposed approach can be applied to reasonably complex scenarios in practice. 6.2. Case study 2: Youth Counseling system Consider the Youth Counseling case study shown in Fig. 8. Three actors are involved in this model with dependency relationships between them. The opposing multi-objective functions developed for the youth counseling case study (Fig. 8) are described in this section. For better counseling services, the following alternative tasks are used for this goal model: Text Messaging (⁠ A1 ⁠) Kidsuse Cybercafe portal Chatroom (⁠ A2 ⁠) Figure 8. Open in new tabDownload slide Simplified SR model for Youth Counseling with inter-actor dependencies. Figure 8. Open in new tabDownload slide Simplified SR model for Youth Counseling with inter-actor dependencies. The actor Kids and Youth has two softgoals namely GetEffectiveHelp and DataVisibility. The non-functional goal, GetEffectiveHelp, should be maximized and the visibility of data (DataVisibility) should be minimized simultaneously. The primary objective of Counsellor is to make kids/youth happy while reducing the social anxiety. Similarly, the organization has to provide maximum help to children, and ensure that there are no scandals. The objective functions of both the top softgoals, GetEffectiveHelp and DataVisibility, for the actor KidsYouth are given below, using Eqs. (13) and (15), as FTS1(ω)A1=FGetEffectiveHelp(ω)TextMessaging=Max{0.4096∗ω1+0.4096∗ω2+0.1024∗ω3}FTS1(ω)A2=FGetEffectiveHelp(ω)KidsuseCybercafePortalChatroom=Max{0.4096∗ω1+0.1024∗ω2+0.512∗ω3}FTS2(ω)A1=FDataVisibility(ω)TextMessaging=Min{0.4096∗ω2}FTS2(ω)A2=FDataVisibility(ω)KidsuseCybercafePortalChatroom=Min{0.1024∗ω2} For Counseling, the objective functions of Happiness and Social Anxiety are shown below, using Eqs. (13) and (15), as FTS1(ω)A1=FHappiness(ω)TextMessaging=Max{0}FTS1(ω)A2=FHappiness(ω)KidsuseCybercafePortalChatroom=Max{0.0655∗ω4} FTS2(ω)A1=FSocialAnxiety(ω)TextMessaging=Min{0}FTS2(ω)A2=FSocialAnxiety(ω)KidsuseCybercafePortalChatroom=Min{0.1024∗ω4+0.512∗ω5} For Organization, the objective functions Helpkids and Scandal are shown below, using Eqs. (13) and (15), as FTS1(ω)A1=FHelpKids(ω)TextMessaging=Max{0.1024∗ω7}FTS1(ω)A2=FHappiness(ω)KidsuseCybercafePortalChatroom=Max{0.4096∗ω7+0.1024∗ω6}FTS2(ω)A1=FScandal(ω)TextMessaging=Min{0.4096∗ω8}FTS2(ω)A2=FScandal(ω)KidsuseCybercafePortalChatroom=Min{0.1024∗ω8} The optimal solutions to the objective functions defined for each actor are generated using CPLEX; the ideal values are presented in Tables 12 and 13. Based on the optimal solutions, pay-off matrix can be formed for each top softgoals: TS1 and TS2 ⁠. The sum of all objective functions of same nature under each alternative gives the pay-off matrix of each nature. Table 12. Maximum objective functions values for each actors in Youth Counseling system. Function Kids youth Counseling Organization FTS1(ω)A1 40.96 0 10.24 FTS1(ω)A2 51.2 6.55 40.96 Function Kids youth Counseling Organization FTS1(ω)A1 40.96 0 10.24 FTS1(ω)A2 51.2 6.55 40.96 Open in new tab Table 12. Maximum objective functions values for each actors in Youth Counseling system. Function Kids youth Counseling Organization FTS1(ω)A1 40.96 0 10.24 FTS1(ω)A2 51.2 6.55 40.96 Function Kids youth Counseling Organization FTS1(ω)A1 40.96 0 10.24 FTS1(ω)A2 51.2 6.55 40.96 Open in new tab Table 13. Minimum objective functions values for each actors in Youth Counseling system. Function Kids youth Counseling Organization FTS2(ω)A1 40.96 0 40.96 FTS2(ω)A2 10.24 10.24 10.24 Function Kids youth Counseling Organization FTS2(ω)A1 40.96 0 40.96 FTS2(ω)A2 10.24 10.24 10.24 Open in new tab Table 13. Minimum objective functions values for each actors in Youth Counseling system. Function Kids youth Counseling Organization FTS2(ω)A1 40.96 0 40.96 FTS2(ω)A2 10.24 10.24 10.24 Function Kids youth Counseling Organization FTS2(ω)A1 40.96 0 40.96 FTS2(ω)A2 10.24 10.24 10.24 Open in new tab The pay-off matrix that maximizes the top softgoals, PTSMax (Player 1), of Youth Counselling goal model using Eq. (22) is given as PTSMax=51.251.261.4467.99 (49) The pay-off matrix that minimizes the top softgoals, PTSMin (Player 2), of the Youth Counseling goal model using Eq. (24) is given as PTSMin=81.9261.4451.230.72 (50) To achieve the overall objective of opposing goals simultaneously, the pay-off matrices which are obtained separately for each player should be combined into one. From the above two matrices, PTSMax and PTSMin ⁠, the unified decision pay-off matrix P is created for the Youth Counselling goal model using Eq. (28) is given as P=133.12112.64112.6498.71 (51) The optimal strategy is obtained by analysing the decision pay-off matrix that contains both maximizing and minimizing multi-objective function values. In order to obtain an optimal strategy, a linear programming model is created using Eq. (33) and the decision pay-off matrix given in Eq. (51). Since Player 1, PTSMax ⁠, knows that it needs to be maximized, it, therefore, follows the Maxmin strategy with the formulation given as below: MaxvSubjectto−34.41∗v+133.12∗A1+112.64∗A2≥98.71,−34.41∗v+112.64∗A1+98.71∗A2≥98.71,∑i=1nAi=1,Ai≥0fori=1tonandvisthevalueofthegame. (52) Similarly, Player 2, PTSMin ⁠, knows that it needs to be minimized, it, therefore, follows the Minmax strategy and has a similar formulation given as below: MinwSubjectto−34.41∗w+133.12∗A1+112.64∗A2≤98.71,−34.41∗w+112.64∗A1+98.71∗A2≤98.71,∑i=1nAi=1,Ai≥0fori=1tonandwisthevalueofthegame. (53) All the values obtained in Eqs. (52) and (53) are in linear form, so an optimal solution for the game can be found with the help of linear programming. Hence, by solving either formulations using the IBM ILOG CPLEX tool, the optimal proportion values of the strategies are found and are shown in Table 14. The results indicate that the alternative A1 (Text Messaging) has a higher value than the alternative A2 (KidsuseCybercafePortalChatroom). The three actors can achieve their opposing non-functional goals simultaneously to make kids/youth happy while reducing the social anxiety by selecting Text Messaging. Also, the organization can provide maximum help and support to children, and ensure that there are no scandals. In other words, the system chooses the alternative, A1 strategy, to achieve opposing top softgoals simultaneously. Hence, the approach is evaluated using the kids youth counseling goal model in an effective manner. Table 14. Optimal solution of the linear formulation for Youth Counseling goal model. Alternatives Optimal solution A1 2.4702 A2 −1.4702 Alternatives Optimal solution A1 2.4702 A2 −1.4702 Open in new tab Table 14. Optimal solution of the linear formulation for Youth Counseling goal model. Alternatives Optimal solution A1 2.4702 A2 −1.4702 Alternatives Optimal solution A1 2.4702 A2 −1.4702 Open in new tab 7. TOOL DESIGN AND IMPLEMENTATION A tool is implemented for the proposed reasoning method based on game theory using Java Eclipse incorporated with IBM ILOG CPLEX optimization tool. The CPLEX tool solves the unified decision matrix formed using zero-sum game-theoretic approach. The developed tool evaluated the viability and practicability of the proposed optimization problem using game theory on the i* goal model. Various case studies, for example, Kids Youth Counseling [21] and Telemedicine [20] from the literature were tested using the developed tool. The pseudo-code for the proposed approach is illustrated in Algorithm 1. Algorithm 1 Pseudo-code for the analysis of opposing NFR in the i* goal model. Require: A set of directed graphs S={S1,S2,…,Ss} such that G is a subset of S that have same n set of tasks T ⁠, where G={G1,G2,…,Gk} ⁠. Each Gi is a quadruple {T,L,SG,TS} where each elements T,L,SG,TS represents alternative tasks, leaf softgoals, in-between softgoals, top softgoals respectively where each top softgoal is related to an opposing variable such as Max or Min ⁠. MAIN MODULE: Reasoning of opposing goals for all GiϵGdo  for all alternativestϵTdo   for all topsoftgoalstsϵTSdo    if tsisMinthen     Generate Minimization Objective Functions    else     Generate Maximization Objective Functions    end if   end for  end for end for Let FMax←Max{fMax1,fMax2,…,fMaxn} Let FMin←Min{fMin1,fMin2,…,fMinn} for all fMaxiϵFMaxdo  Let xMaxi←optimal(fMaxi,Max)//finding optimal solutions for maximum objective functions end for for all fMiniϵFMindo  Let xMini←optimal(fMini,Min)//finding optimal solutions for minimum objective functions end for Generate pay-off matrix, PTSMax ⁠, for maximum objective function values, by integrating xMaxi’s of all GiϵG as for all taskstl,trϵT where l,r=1 to ndo   PTSMax[i,j]←∑i,j=1kaMax(tl,tr)ij end for Generate pay-off matrix, PTSMin ⁠, for minimum objective function values, by integrating xMini’s of all GiϵG as for all taskstl,trϵT where l,r=1 to ndo   PTSMin[i,j]←∑i,j=1kaMin(tl,tr)ij end for Generate decision pay-off matrix P by merging pay-off matrices PTSMax and PTSMin for all tasksti,tjϵT where i,j=1 to ndo   Ptitj[i,j]=PTSMaxtitj+PTSMintitj end for Generate primal linear equation using Maxmin strategy Solve the primal linear equation to obtain an optimal Pareto value SUB-MODULE: Optimal(f,ts) Declare and define the variables, the expressions, the objective functions and the constraints based on ts if tsisMaxthen  Define maximization function else if tsisMinthen  Define minimization function end if CPLEX.solve()→W return W Require: A set of directed graphs S={S1,S2,…,Ss} such that G is a subset of S that have same n set of tasks T ⁠, where G={G1,G2,…,Gk} ⁠. Each Gi is a quadruple {T,L,SG,TS} where each elements T,L,SG,TS represents alternative tasks, leaf softgoals, in-between softgoals, top softgoals respectively where each top softgoal is related to an opposing variable such as Max or Min ⁠. MAIN MODULE: Reasoning of opposing goals for all GiϵGdo  for all alternativestϵTdo   for all topsoftgoalstsϵTSdo    if tsisMinthen     Generate Minimization Objective Functions    else     Generate Maximization Objective Functions    end if   end for  end for end for Let FMax←Max{fMax1,fMax2,…,fMaxn} Let FMin←Min{fMin1,fMin2,…,fMinn} for all fMaxiϵFMaxdo  Let xMaxi←optimal(fMaxi,Max)//finding optimal solutions for maximum objective functions end for for all fMiniϵFMindo  Let xMini←optimal(fMini,Min)//finding optimal solutions for minimum objective functions end for Generate pay-off matrix, PTSMax ⁠, for maximum objective function values, by integrating xMaxi’s of all GiϵG as for all taskstl,trϵT where l,r=1 to ndo   PTSMax[i,j]←∑i,j=1kaMax(tl,tr)ij end for Generate pay-off matrix, PTSMin ⁠, for minimum objective function values, by integrating xMini’s of all GiϵG as for all taskstl,trϵT where l,r=1 to ndo   PTSMin[i,j]←∑i,j=1kaMin(tl,tr)ij end for Generate decision pay-off matrix P by merging pay-off matrices PTSMax and PTSMin for all tasksti,tjϵT where i,j=1 to ndo   Ptitj[i,j]=PTSMaxtitj+PTSMintitj end for Generate primal linear equation using Maxmin strategy Solve the primal linear equation to obtain an optimal Pareto value SUB-MODULE: Optimal(f,ts) Declare and define the variables, the expressions, the objective functions and the constraints based on ts if tsisMaxthen  Define maximization function else if tsisMinthen  Define minimization function end if CPLEX.solve()→W return W Open in new tab Algorithm 1 Pseudo-code for the analysis of opposing NFR in the i* goal model. Require: A set of directed graphs S={S1,S2,…,Ss} such that G is a subset of S that have same n set of tasks T ⁠, where G={G1,G2,…,Gk} ⁠. Each Gi is a quadruple {T,L,SG,TS} where each elements T,L,SG,TS represents alternative tasks, leaf softgoals, in-between softgoals, top softgoals respectively where each top softgoal is related to an opposing variable such as Max or Min ⁠. MAIN MODULE: Reasoning of opposing goals for all GiϵGdo  for all alternativestϵTdo   for all topsoftgoalstsϵTSdo    if tsisMinthen     Generate Minimization Objective Functions    else     Generate Maximization Objective Functions    end if   end for  end for end for Let FMax←Max{fMax1,fMax2,…,fMaxn} Let FMin←Min{fMin1,fMin2,…,fMinn} for all fMaxiϵFMaxdo  Let xMaxi←optimal(fMaxi,Max)//finding optimal solutions for maximum objective functions end for for all fMiniϵFMindo  Let xMini←optimal(fMini,Min)//finding optimal solutions for minimum objective functions end for Generate pay-off matrix, PTSMax ⁠, for maximum objective function values, by integrating xMaxi’s of all GiϵG as for all taskstl,trϵT where l,r=1 to ndo   PTSMax[i,j]←∑i,j=1kaMax(tl,tr)ij end for Generate pay-off matrix, PTSMin ⁠, for minimum objective function values, by integrating xMini’s of all GiϵG as for all taskstl,trϵT where l,r=1 to ndo   PTSMin[i,j]←∑i,j=1kaMin(tl,tr)ij end for Generate decision pay-off matrix P by merging pay-off matrices PTSMax and PTSMin for all tasksti,tjϵT where i,j=1 to ndo   Ptitj[i,j]=PTSMaxtitj+PTSMintitj end for Generate primal linear equation using Maxmin strategy Solve the primal linear equation to obtain an optimal Pareto value SUB-MODULE: Optimal(f,ts) Declare and define the variables, the expressions, the objective functions and the constraints based on ts if tsisMaxthen  Define maximization function else if tsisMinthen  Define minimization function end if CPLEX.solve()→W return W Require: A set of directed graphs S={S1,S2,…,Ss} such that G is a subset of S that have same n set of tasks T ⁠, where G={G1,G2,…,Gk} ⁠. Each Gi is a quadruple {T,L,SG,TS} where each elements T,L,SG,TS represents alternative tasks, leaf softgoals, in-between softgoals, top softgoals respectively where each top softgoal is related to an opposing variable such as Max or Min ⁠. MAIN MODULE: Reasoning of opposing goals for all GiϵGdo  for all alternativestϵTdo   for all topsoftgoalstsϵTSdo    if tsisMinthen     Generate Minimization Objective Functions    else     Generate Maximization Objective Functions    end if   end for  end for end for Let FMax←Max{fMax1,fMax2,…,fMaxn} Let FMin←Min{fMin1,fMin2,…,fMinn} for all fMaxiϵFMaxdo  Let xMaxi←optimal(fMaxi,Max)//finding optimal solutions for maximum objective functions end for for all fMiniϵFMindo  Let xMini←optimal(fMini,Min)//finding optimal solutions for minimum objective functions end for Generate pay-off matrix, PTSMax ⁠, for maximum objective function values, by integrating xMaxi’s of all GiϵG as for all taskstl,trϵT where l,r=1 to ndo   PTSMax[i,j]←∑i,j=1kaMax(tl,tr)ij end for Generate pay-off matrix, PTSMin ⁠, for minimum objective function values, by integrating xMini’s of all GiϵG as for all taskstl,trϵT where l,r=1 to ndo   PTSMin[i,j]←∑i,j=1kaMin(tl,tr)ij end for Generate decision pay-off matrix P by merging pay-off matrices PTSMax and PTSMin for all tasksti,tjϵT where i,j=1 to ndo   Ptitj[i,j]=PTSMaxtitj+PTSMintitj end for Generate primal linear equation using Maxmin strategy Solve the primal linear equation to obtain an optimal Pareto value SUB-MODULE: Optimal(f,ts) Declare and define the variables, the expressions, the objective functions and the constraints based on ts if tsisMaxthen  Define maximization function else if tsisMinthen  Define minimization function end if CPLEX.solve()→W return W Open in new tab The tool evaluation on simplified telemedicine case study is shown in Fig. 9. Figure 9. Open in new tabDownload slide Tool result for the Youth Counseling case study with inter-actor dependency. Figure 9. Open in new tabDownload slide Tool result for the Youth Counseling case study with inter-actor dependency. 8. CONCLUSION A game theory-based reasoning of opposing NFR for the i* goal model has been proposed in this paper. The methodology for the proposed approach is implemented in Java Eclipse environment incorporated with the IBM CPLEX tool. The simulated model is tested on two different case studies drawn from the existing literature. The proposed approach was evaluated based on the optimal alternative selection by balancing the opposing objectives of inter-dependent actors in the i* goal model. The requirements from existing work are used in this approach for decision-making. However, these requirements may not be complete in all settings. In particular, new requirements may arise, or existing requirements may become more or less prominent, depending on the characteristics of a particular domain. This is a limitation of this approach. A game-theoretic concept known as Nash equilibrium is applied in the proposed methodology for generating and optimizing the opposing multi-objective functions. But Nash equilibrium does not hold generally for all repeated game applications. Further research topics include arriving at optimal solutions for conflicting goals among inter-dependent actors. Also, performing sensitivity analysis, for facilitating valuable input data to aid requirements analyst in the overall decision-making process. For future work, it is planned to conduct an empirical validation in order to gain feedback and to evaluate this proposal’s viability and usability. Future work in the same area would explore the viability of applying or adapting the optimization model to similar conceptual models. ACKNOWLEDGEMENTS We thank anonymous reviewers for their valuable suggestions and comments, which helped us to improve the quality of this paper. REFERENCES 1 Franch , X. , López , L. , Cares , C. and Colomer , D. ( 2016 ) The i* framework for goal-oriented modeling. In Karagiannis , D. , Mayr , H. and Mylopoulos , J. (eds) . Domain-Specific Conceptual Modeling , pp. 485 – 506 . Springer , Switzerland . Google Scholar Crossref Search ADS Google Preview WorldCat COPAC 2 Mylopoulos , J. , Chung , L. and Yu , E. ( 1999 ) From object-oriented to goal-oriented requirements analysis . Commun. ACM , 42 , 31 – 37 . Google Scholar Crossref Search ADS WorldCat 3 Karagiannis , D. , Mayr , H.C. and Mylopoulos , J. ( 2016 ) Concepts, Methods and Tools Domain-Specific Conceptual Modeling . Springer , Switzerland . Google Scholar Crossref Search ADS Google Preview WorldCat COPAC 4 van Lamsweerde , A. ( 2004 ) Goal-Oriented Requirements Enginering: A Roundtrip from Research to Practice. 12th IEEE Int. Require. Eng. Conf. Proc., Kyoto, Japan, 6–10 September, pp. 4–7. IEEE Computer Society. 5 Ashamalla , A. , Beydoun , G. and Low , G. ( 2017 ) Model driven approach for real-time requirement analysis of multi-agent systems . Comput. Lang. Syst. Struct. , 50 , 127 – 139 . WorldCat 6 Wautelet , Y. , Heng , S. , Kiv , S. and Kolp , M. ( 2017 ) User-story driven development of multi-agent systems: a process fragment for agile methods . Comput. Lang. Syst. Struct. , 50 , 159 – 176 . WorldCat 7 Ciccozzi , F. , Crnkovic , I. , Di Ruscio , D. , Malavolta , I. , Pelliccione , P. and Spalazzese , R. ( 2017 ) Model-driven engineering for mission-critical iot systems . IEEE Softw. , 34 , 46 – 53 . Google Scholar Crossref Search ADS WorldCat 8 Dardenne , A. , Fickas , S. and van Lamsweerde , A. ( 1991 ) Goal-Directed Concept Acquisition in Requirements Elicitation. Proc. 6th Int. Workshop on Software Specification and Design, Como, Italy, Italy, 25–26 October, pp. 14–21. IEEE Computer Society Press, Italy. 9 Yu , E.S. and Mylopoulos , J. ( 1995 ) From ER to AR’ modelling strategic actor relationships for business process reengineering . Int. J. Coop. Inf. Syst. , 4 , 125 – 144 . Google Scholar Crossref Search ADS WorldCat 10 Kaiya , H. , Horai , H. and Saeki , M. ( 2002 ) Agora: Attributed Goal-Oriented Requirements Analysis Method. Require. Eng. Proc. IEEE Joint Int. Conf. Germany, Germany, 4–6 August, pp. 13–22. IEEE. 11 Bresciani , P. , Perini , A. , Giorgini , P. , Giunchiglia , F. and Mylopoulos , J. ( 2004 ) Tropos: an agent-oriented software development methodology . Auton. Agents Multi Agent Syst. , 8 , 203 – 236 . Google Scholar Crossref Search ADS WorldCat 12 Amyot , D. , Ghanavati , S. , Horkoff , J. , Mussbacher , G. , Peyton , L. and Yu , E. ( 2010 ) Evaluating goal models within the goal-oriented requirement language . Int. J. Intell. Syst. , 25 , 841 – 877 . Google Scholar Crossref Search ADS WorldCat 13 Giorgini , P. , Mylopoulos , J. , Nicchiarelli , E. and Sebastiani , R. ( 2002 ) Reasoning with goal models . ER , 2 , 167 – 181 . WorldCat 14 Horkoff , J. and Yu , E. ( 2011 ) Analyzing Goal Models: Different Approaches and How to Choose Among Them. Proc. 2011 ACM Sympos. Applied Computing, TaiChung, Taiwan, 21–25 August, pp. 675–682. ACM. 15 Franch , X. ( 2006 ) On the quantitative analysis of agent-oriented models. In Dubois , E. and Pohl , K. (eds) . CAiSE , pp. 495 – 509 . Springer Verlag , Berlin, Heidelberg . Google Preview WorldCat COPAC 16 Subramanian , C. , Krishna , A. and Kaur , A. ( 2015 ) Optimal Reasoning of Goals in the i* Framework. Software Eng. Conf. (APSEC), New Delhi, India, 1–4 December, pp. 346–353. APSEC Asia-Pacific. 17 Kelly , A. ( 2003 ) Decision Making Using Game Theory: An Introduction for Managers . Cambridge University Press , Cambridge, UK . Google Scholar Crossref Search ADS Google Preview WorldCat COPAC 18 Yazdania , S. , Linb , Y.-T. , Caic , W. and Huanga , E. ( 2017 ) A Game Theory Perspective on Requirement-Based Engineering Design. Disciplinary Convergence: Implications for Systems Engineering Research, 15th Annu. Conf. System Engineering Research, Redondo Beach, CA, 23–25 March, pp. 901–910. System Engineering Research, CA. 19 Subramanian , C. , Krishna , A. and Kaur , A. ( 2018 ) Game theory-based requirements analysis in the i* framework . Comput. J. , 61 , 1 – 20 . Google Scholar Crossref Search ADS WorldCat 20 Yu , E. ( 2001 ) Agent-Oriented Modelling Software Versus the World. International Workshop on Agent-Oriented Software Engineering, Montreal, Canada, 29 May, pp. 206–225. Springer, Berlin, Heidelberg. 21 Horkoff , J. and Yu , E. ( 2016 ) Interactive goal model analysis for early requirements engineering . Requirements Eng. , 21 , 29 – 61 . Google Scholar Crossref Search ADS WorldCat 22 Yu , E.S. ( 1997 ) Towards Modelling and Reasoning Support for Early-phase Requirements Engineering. Proc. Third IEEE Int. Sympos. Requirements Engineering, 05–08 January, pp. 226–235. IEEE Computer Society Washington, DC, USA. 23 Yu , E. and Mylopoulos , J. ( 1998 ) Why Goal-oriented Requirements Engineering. Proc. 4th Int. Workshop on Requirements Engineering: Foundations of Software Quality, REFSQ 1998, Pisa, Italy, 08–09 June, pp. 15–22. Presses Universitaires de Namur. 24 Letier , E. and Van Lamsweerde , A. ( 2004 ) Reasoning About Partial Goal Satisfaction for Requirements and Design Engineering. ACM SIGSOFT Software Engineering Notes, Newport Beach, CA, USA, 31 October, pp. 53–62. ACM, New York, NY, USA. 25 van Lamsweerde , A. ( 2009 ) Reasoning about Alternative Requirements Options. Conceptual Modeling: Foundations and Applications. Lecture Notes in Computer Science, Vol. 5600, pp. 380–397. 26 Subramanian , C. , Krishna , A. , Kaur , A. and Gopalan , R. ( 2015 ) Quantitative Reasoning of Goal Satisfaction in the i* Framework. 27th Int. Conf. Software Engineering and Knowledge Engineering, SEKE 2015, Pittsburgh PA, USA, July 6–8, 2015, pp. 666–669. KSI Research Inc. and Knowledge Systems Institute Graduate School USA. 27 Affleck , A. and Krishna , A. ( 2012 ) Supporting Quantitative Reasoning of Non-functional Requirements: A Process-Oriented Approach. Proc. Int. Conf. Software and System Process, Zurich, Switzerland, June 2–3, 2012, pp. 88–92. IEEE Press. 28 Affleck , A. , Krishna , A. and Achuthan , N. ( 2013 ) Optimal Selection of Operationalizations for Non-functional Requirements. Proc. Ninth Asia-Pacific Conf. Conceptual Modelling, Adelaide, Australia, January 29–February 1, 2013, Vol. 143, pp. 69–78. Australian Computer Society, Inc. 29 Affleck , A. , Krishna , A. and Achuthan , N. ( 2014 ) Non-functional requirements framework: a mathematical programming approach . Comput. J. , 58 , 1122 – 1139 . Google Scholar Crossref Search ADS WorldCat 30 Giorgini , P. , Nicchiarelli , E. , Mylopoulos , J. et al. ( 2002 ) Formal Reasoning with Goal Models. Proc. Int. Conf. Conceptual Modeling. Tampere, Finland, October 7–11, 2002, pp. 167–181. Lecture Notes in Computer Science, Vol. 2503, Springer, Finland. 31 Liaskos , S. , McIlraith , S.A. , Sohrabi , S. and Mylopoulos , J. ( 2010 ) Integrating Preferences into Goal Models for Requirements Engineering. Require. Eng. Conf. (RE), 2010 18th IEEE Int., New South Wales, Australia, September 27–October 1, 2010, pp. 135-144. IEEE Computer Society USA. 32 Firesmith , D. ( 2007 ) Common requirements problems, their negative consequences, and the industry best practices to help solve them . J. Object Technol. , 6 , 17 – 33 . Google Scholar Crossref Search ADS WorldCat 33 Fazelpour , M. and Summers , J.D. ( 2014 ) Evolution of Meso-Structures for Non-pneumatic Tire Development: A Case Study. Int. Des. Eng. Techn. Conf. Computers and Information in Eng. Conf., ASME, Buffalo, NY, August 17–20, 2014, pp. DETC2014-34184, V02BT03A002. ASME NY. 34 Yoder , M. , Satterfield , Z. , Fazelpour , M. , Summers , J.D. and Fadel , G. ( 2015 ) Numerical Methods for the Design of Meso-Structures: A Comparative Review. ASME 2015 Int. Des. Eng. Techn. Conf. Comput. Inf. Eng. Conf., pp. V02BT03A003–V02BT03A003. American Society of Mechanical Engineers, New York. 35 Dargan , J.L. , Campos-Nanez , E. , Fomin , P. and Wasek , J. ( 2014 ) Predicting systems performance through requirements quality attributes model . Proc. Comput. Sci. , 28 , 347 – 353 . Google Scholar Crossref Search ADS WorldCat 36 Zhang , K.-S. , Li , W.-J. and Wei , H.-Y. ( 2006 ) A new method for optimum allocation of design requirements in aircraft conceptual design . Chin. J. Aeronaut. , 19 , 203 – 211 . Google Scholar Crossref Search ADS WorldCat 37 Génova , G. , Fuentes , J.M. , Llorens , J. , Hurtado , O. and Moreno , V. ( 2013 ) A framework to measure and improve the quality of textual requirements . Require. Eng. , 18 , 25 – 41 . Google Scholar Crossref Search ADS WorldCat 38 Group , R.W. et al. ( 2012 ) Guide for writing requirements . Int. Counc. Syst. Eng. INCOSE , 1 , 1 – 59 . WorldCat 39 Robertson , S. and Robertson , J. ( 2012 ) Mastering the Requirements Process: Getting Requirements Right . Addison-Wesley , USA . Google Preview WorldCat COPAC 40 Hausmann , J.H. , Heckel , R. and Taentzer , G. ( 2002 ) Detection of Conflicting Functional Requirements in a Use Case-Driven Approach: A Static Analysis Technique based on Graph Transformation. Proc. 24th Int. Conf. Softw. Eng., Orlando, FL, May 19–25, 2002, pp. 105–115. ACM, New York, NY, USA. 41 Fazelpour , M. ( 2016 ) Developing unit cell design guidelines for meso-scale periodic cellular materials. PhD thesis, Clemson University, South Carolina. 42 Eben , K.G. and Lindemann , U. ( 2010 ) Structural Analysis of Requirements—Interpretation of Structural Criteria. DSM 2010: Proc. 12th Int. DSM Conf., Cambridge, UK, July 22–23, 2010. Design Society, UK. 43 Juristo , N. , Moreno , A. and Silva , A. ( 2002 ) Is the European industry moving toward solving requirements engineering problems? IEEE Softw. , 19 , 70 . Google Scholar Crossref Search ADS WorldCat 44 Hall , T. , Beecham , S. and Rainer , A. ( 2002 ) Requirements problems in twelve software companies: an empirical analysis . IEEE Proc. Softw. , 149 , 153 – 160 . Google Scholar Crossref Search ADS WorldCat 45 Hofmann , H.F. and Lehner , F. ( 2001 ) Requirements engineering as a success factor in software projects . IEEE Softw. , 18 , 58 . Google Scholar Crossref Search ADS WorldCat 46 Heaven , W. and Letier , E. ( 2011 ) Simulating and Optimising Design Decisions in Quantitative Goal Models. Require. Eng. Conf. (RE) Trento, Italy, 2011 19th IEEE International, August 29–September 2, 2011, pp. 79–88. IEEE Italy. 47 Mairiza , D. , Zowghi , D. and Gervasi , V. ( 2014 ) Utilizing Topsis: A Multi criteria Decision Analysis Technique for Non-functional Requirements Conflicts. Requirements Engineering – First Asia Pacific Requirements Engineering Symposium, APRES 2014, Auckland, New Zealand, April 28–29, Communications in Computer and Information Science, pp. 31–44. Springer, Berlin, Heidelberg. 48 Subramanian , C. , Krishna , A. and Kaur , A. ( 2015 ) Reasoning About Goal Satisfaction for Early Requirements Engineering in the i* Framework using Inter-actor Dependency. 19th Pacific Asia Conf. Information Systems, Singapore, July 5–9 89. PACIS 2015, Singapore. 49 Subramanian , C. , Krishna , A. and Kaur , A. ( 2016 ) Optimal Goal Programming of Softgoals in Goal-Oriented Requirements Engineering. 20th Pacific Asia Conf. Inf. Syst., PACIS 2016, Chiayi, Taiwan, June 27–July 1, 2016, p. 202. 50 Law , W.-W. and Pan , S.-Y. ( 2009 ) Game theory and educational policy: private education legislation in china . Int. J. Educ. Dev. , 29 , 227 – 240 . Google Scholar Crossref Search ADS WorldCat 51 Aplak , H. , Kabak , M. and Köse , E. ( 2014 ) A two person zero sum game oriented to integration of objectives . J. Mil. Stud. , 5 , 65 – 85 . Google Scholar Crossref Search ADS WorldCat 52 Hillier , F.S. ( 2012 ) Introduction to Operations Research (9th edn). McGraw-Hill Science Engineering , New York . Google Preview WorldCat COPAC 53 Zadeh , L.A. ( 1975 ) The concept of a linguistic variable and its application to approximate reasoning . Inf. Sci. , 8 , 199 – 249 . Google Scholar Crossref Search ADS WorldCat 54 Gani , A.N. and Assarudeen , S.M. ( 2012 ) A new operation on triangular fuzzy number for solving fuzzy linear programming problem . Appl. Math. Sci. , 6 , 525 – 532 . WorldCat 55 Lucena , M. , Santos , E. , Silva , C. , Alencar , F. , Silva , M.J. and Castro , J. ( 2008 ) Towards a Unified Metamodel for i*. Second Int. Conf. Research Challenges in Information Science, 2008. RCIS 2008. Marrakech, Morocco, June 3–6, 2008, pp. 237–246. IEEE Morocco. 56 Chou , S.-Y. , Chang , Y.-H. and Shen , C.-Y. ( 2008 ) A fuzzy simple additive weighting system under group decision-making for facility location selection with objective/subjective attributes . Eur. J. Oper. Res. , 189 , 132 – 145 . Google Scholar Crossref Search ADS WorldCat 57 Lima , R. ( 2010 ) Ibm ilog cplex—What is Inside of the Box? Proc. 2010 EWO Seminar, July 12, 2010, pp. 1–72. Carnegie Mellon University, USA. 58 Yang , Y.M. , Guo , Y. , Feng , L.C. and Di , J.Y. ( 2011 ) Solving two-person zero-sum game by matlab . Appl. Mech. Mater. , 50–51 , 262 – 265 . Trans Tech Publ. Google Scholar Crossref Search ADS WorldCat 59 Kuhn , H.W. and Tucker , A.W. ( 1958 ) John von Neumann’s work in the theory of games and mathematical economics . Bull. Am. Math. Soc. , 64 , 100 – 122 . Google Scholar Crossref Search ADS WorldCat 60 Adler , I. ( 2013 ) The equivalence of linear programs and zero-sum games . Int. J. Game Theory , 42 , 165 – 177 . Google Scholar Crossref Search ADS WorldCat 61 Forgó , F. ( 2004 ) John von neumann’s contribution to modern game theory . Acta Oeconomica , 54 , 73 – 84 . Google Scholar Crossref Search ADS WorldCat 62 Kumar , S. ( 2016 ) Max–min solution approach for multi-objective matrix game with fuzzy goals . Yugosl. J. Oper. Res. , 26 , 51 – 60 . Google Scholar Crossref Search ADS WorldCat © The British Computer Society 2019. All rights reserved. For permissions, please e-mail: journals.permissions@oup.com This article is published and distributed under the terms of the Oxford University Press, Standard Journals Publication Model (https://academic.oup.com/journals/pages/open_access/funder_policies/chorus/standard_publication_model) TI - Game Theory-Based Reasoning of Opposing Non-functional Requirements using Inter-actor Dependencies JF - The Computer Journal DO - 10.1093/comjnl/bxy143 DA - 2019-11-11 UR - https://www.deepdyve.com/lp/oxford-university-press/game-theory-based-reasoning-of-opposing-non-functional-requirements-aZ06lWs2dQ SP - 1557 VL - 62 IS - 11 DP - DeepDyve ER -