Detection of conflicting functional requirements in a use case-driven approach

Detection of conflicting functional requirements in a use case-driven approach
复制标题

DOI:
10.1145/581352.581355
复制
发表时间:
2002-05
期刊:
Proceedings of the 24th International Conference on Software Engineering. ICSE 2002
影响因子:
--
通讯作者:
Jan Hendrik Hausmann;R. Heckel;Gabriele Taentzer
Jan Hendrik Hausmann;R. Heckel;Gabriele Taentzer
中科院分区:
其他
文献类型:
--
作者:
Jan Hendrik Hausmann;R. Heckel;Gabriele Taentzer

文献摘要

被引文献

相似文献

在面向对象的软件开发中,不同涉众的需求通常表现在用例模型中,用例模型通过动态和功能需求补充静态领域模型。在开发过程中,对这些需求进行分析和集成,以生成一致的总体需求规范。模型的迭代可能由不同方的需求之间的冲突触发。然而,由于多样性,不完整性和非正式的性质,特别是功能和动态需求,这种冲突很难找到。需求工程的形式化方法通常基于逻辑来解决这些问题,但需要高度专业化的专家来编写和推理这些规范。我们提出了一个正式的解释用例模型组成的UML用例,活动和协作图。形式化,这是基于从图变换理论的概念,允许精确的概念之间的冲突和依赖关系的功能需求表示不同的用例。然后,可以静态地分析用例模型,并且可以通过对模型进行注释来将分析所检测到的冲突或依赖性传达给建模者。在一个图形转换工具的静态分析的实现。
In object-oriented software development, requirements of different stakeholders are often manifested in use case models which complement the static domain model by dynamic and functional requirements. In the course of development, these requirements are analyzed and integrated to produce a consistent overall requirements specification. Iterations of the model may be triggered by conflicts between requirements of different parties. However, due to the diversity, incompleteness, and informal nature, in particular of functional and dynamic requirements, such conflicts are difficult to find. Formal approaches to requirements engineering, often based on logic ' attack these problems, but require highly specialized experts to write and reason about such specifications. We propose a formal interpretation of use case models consisting of UML use case, activity, and collaboration diagrams. The formalization, which is based on concepts from the theory of graph transformation, allows to make precise the notions of conflict and dependency between functional requirements expressed by different use cases. Then, use case models can be statically analyzed, and conflicts or dependencies detected by the analysis can be communicated to the modeler by annotating the model. An implementation of the static analysis within a graph transformation tool is presented.