GO2S: a systematic process to derive the behavior of contextsensitive systems from requirements models - VILELA, Jéssyka Flavyanne Ferreira (2015)
Context: Context-sensitive systems use context in order to adapt to the user’s current needs or requirements failure. Therefore, they need to dynamically adapt their behavior. It is of paramount importance to specify and analyze the intended behavior of these systems before they are fully implemented. The behavioral specification can be used for requirements validation in order to verify if these systems will be able to achieve their goals. Moreover, the reasoning about properties of these systems, such as deadlocks, reachability, completeness and correctness of the system, can be supported. Therefore, the dynamic behavior of the context-sensitive systems requires an approach to specify it from their requirements. Objective: In this work, we propose the GOals to Statecharts (GO2S) process to systematically derive the behavior of context-sensitive systems, expressed as statecharts, from requirements models, described as goal models. The process takes into consideration the impact of non-functional requirements of these systems through their operationalization and prioritization of alternatives to be used at runtime (variants). Method: The research presented in this dissertation followed the engineering approach to define the GO2S (GOals to Statecharts) process and its suitability was empirically evaluated. Results: The GO2S process addresses the specification of the tasks required for monitoring of the requirements satisfaction as well as the system adaptation according to the context, the operationalization of non-functional requirements and prioritization of variants. This is an iterative process centered on the incremental refinement of a goal model, obtaining different views of the system (design, contextual, behavioral). Furthermore, we conducted a controlled experiment to evaluate the statecharts produced following the GO2S (experimental group) in relation to the ones elaborated by not using it (control group). Conclusions: The experiment results show that the structural complexity of the statecharts of the group that used the GO2S approach was lower in relation to the control group. Moreover, the average of functionalities whose behavior was modeled according to the specification and the time spent to produce the models of the experimental group were higher in relation to the control group. Besides, the subjects agreed that the GO2S process is easy to use.