Context: Conflicts between software requirements bring uncertainties to product development. Some great approaches have been proposed to identify these conflicts. However, they usually require the software requirements represented with specific templates and/or depend on other external source which is often uneasy to build for lots of projects in practice. Objective: We aim to propose an approach Finer Semantic Analysis-based Requirements Conflict Detector (FSARC) to automatically detecting the conflicts between the given natural language functional requirements by analyzing their finer semantic compositions. Method: We build a harmonized semantic meta-model of functional requirements with the form of eight-tuple. Then we propose algorithms to automatically analyze the linguistic features of requirements and to annotate the semantic elements for their semantic model construction. And we define seven types of conflicts as long as their heuristic detecting rules on the ground of their text pattern and semantical dependency. Finally, we design and implement the algorithm for conflicts detection. Results: The experiment with four requirement datasets illustrates that the recall of FSARC is nearly 100% and the average precision is 83.88% on conflicts detection. Conclusion: We provide a useful tool for detecting the conflicts between natural language functional requirements to improve the quality of the final requirements set. Besides, our approach is capable of transforming the natural language functional requirements into eight semantic tuples, which is useful not only the detection of the conflicts between requirements but also some other tasks such as constructing the association between requirements and so on.
翻译:软件要求之间的冲突给产品开发带来了不确定性。 方法: 我们为确定这些冲突提出了一些大的方法。 但是, 它们通常需要以特定模板和/或依赖其他外部来源来代表的软件要求, 而这种软件要求往往不易在实际中建立许多项目。 目标: 我们的目标是提出一种方法, 使用更精细的语义分析法分析要求 冲突探测器(FSARC) 自动发现特定自然语言功能要求之间的冲突。 最后, 我们设计并实施冲突探测算法, 分析其精细的语义构成 。 方法: 我们用8个图书的形式建立一个统一的语义元模型, 功能要求的功能性模式。 然后我们提出算法, 自动分析要求的语言特点, 并注意其语义模型构建的语义要素。 我们定义了七类冲突, 只要这些冲突在文本模式和语义依赖的地底线上发现规则。 最后, 我们设计并实施冲突探测算法。 结果: 对四种要求的实验显示, FSARC的回忆几乎是100 %, 而在冲突最后探测要求之间平均精确83.88% 。 结论: 我们提供一种功能性要求的功能性质量工具, 改进自然探测要求的功能性要求 。