Computer Science > Software Engineering
[Submitted on 24 Mar 2022 (v1), last revised 25 Mar 2022 (this version, v2)]
Title:Identifying Boundary Conditions with the Syntax and Semantic Information of Goals
View PDFAbstract: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.
Submission history
From: Yechuan Xia [view email][v1] Thu, 24 Mar 2022 07:41:55 UTC (132 KB)
[v2] Fri, 25 Mar 2022 06:19:13 UTC (132 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.