Identifying Boundary Conditions with the Syntax and Semantic Information of Goals

03/24/2022
by   Yechuan Xia, et al.
0

In goal-oriented requirement engineering, boundary conditions(BC) are used to capture the divergence of goals, i.e., goals cannot be satisfied as a whole in some circumstances. As the goals are formally described by temporal logic, solving BCs automatically helps engineers judge whether there is negligence in the goal requirements. Several efforts have been devoted to computing the BCs as well as to reducing the number of redundant BCs as well. However, the state-of-the-art algorithms do not leverage the logic information behind the specification and are not efficient enough for use in reality. In addition, even though reducing redundant BCs are explored in previous work, the computed BCs may be still not valuable to engineering for debugging. In this paper, we start from scratch to establish the fundamental framework for the BC problem. Based on that, we first present a new approach SyntacBC to identify BCs with the syntax information of goals. The experimental results show that this method is able to achieve a >1000X speed-up than the previous state-of-the-art methodology. Inspired by the results, we found the defects of BCs solved by our method and also by the previous ones, i.e., most of BCs computed are difficult for debugging. As a result, we leverage the semantics information of goals and propose an automata-based method for solving BCs, namely SemanticBC, which can not only find the minimal scope of divergence, but also produce easy-to-understand BCs without losing performance.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset