Evolving Intentions: Support for Modeling and Reasoning about Requirements that Change over Time
Alicia M. Grubb, “Evolving Intentions: Support for Modeling and Reasoning about Requirements that Change over Time.” University of Toronto, 2019.
Abstract: In early-phase requirements engineering, modeling stakeholder goals and intentions helps stakeholders understand the problem context and evaluate tradeoffs, by exploring possible “what if” questions. Prior research allows modelers to make evaluation assignments to desired goals and generate possible selections for task and dependency alternatives, but this treats models as static snapshots, where once the evaluation of the fulfillment of an intention is determined, it remains constant. Using these techniques stakeholders are unable to reason about possible evolutions, leaving questions about project viability unanswered when the fulfillment of goals or availability of components is not guaranteed in the future. In this dissertation, we propose Evolving Intentions: a framework for specifying, modeling, and reasoning about goals that change over time, enabling stakeholders to explore model evolution. We present Evolving Intentions in the context of both the i* and Tropos goal modeling languages. We specify a set of functions that define how intentions and relationships evolve, and use simulation strategies for asking a variety of “what if” questions about such changes. We present GrowingLeaf and BloomingLeaf, two web-based goal modeling and analysis tools that implement this technique for iStar and Tropos models, respectively. Using the development of GrowingLeaf as an example, we demonstrate that this technique is effective for debugging goal models and answering stakeholder questions, and show the analysis to be scalable for representative goal models. We describe a between-subjects controlled experiment that empirically validated the effectiveness of our approach and tool usability. We also report on the applicability and effectiveness, of our technique on a substantial case, where we use historical data and rational reconstruction to understand how a project evolved in the past, and explore alternative futures.