当前位置: X-MOL 学术Sci. Comput. Program. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Use case evolution analysis based on graph transformation with negative application conditions
Science of Computer Programming ( IF 1.3 ) Pub Date : 2020-06-05 , DOI: 10.1016/j.scico.2020.102495
Leila Ribeiro , Lucio Mauro Duarte , Rodrigo Machado , Andrei Costa , Érika Fernandes Cota , Jonas Santos Bezerra

Use Case (UC) quality impacts the overall quality and defect rate of a system, as they specify the expected behavior of an implementation. In a previous work, we have defined an approach for a step-by-step translation from UCs written in natural language to a formal description in terms of Graph Transformation (GT), where each step of the UC was translated to a transformation rule. This UC formalization enables the detection of several specification problems even before an actual implementation is produced, thus reducing development costs. In this paper, we extend our approach to handle UC evolution by defining evolution rules, which are described as higher-order rules, simultaneously changing the behavior of a set of transformation rules. We also support the use of negative application conditions (NAC) associated both to the transformation and evolution rules. Analysis of the interplay between the evolution rules and the rules describing UC steps shows the effects of an evolution and serves to identify potential impacts, even before the changes are actually carried out. Besides defining the theoretical foundations of UC evolution with NACs, we have implemented the evolution analysis technique in the Verigraph tool and used it to verify impacts in 3 different case studies. The results demonstrate the applicability and usefulness of our approach to help developers in the evolution process based on UCs.



中文翻译:

基于带有负应用条件的图变换的用例演化分析

用例(UC)的质量会影响系统的整体质量和缺陷率,因为它们指定了实现的预期行为。在先前的工作中,我们定义了一种方法,可将以自然语言编写的UC逐步转换为图形转换(GT)形式的正式描述,其中UC的每个步骤均转换为转换规则。这种UC形式化甚至可以在实际实施之前就检测出几个规范问题,从而降低了开发成本。在本文中,我们通过定义演化规则(扩展规则被描述为高阶规则),同时更改一组转换规则的行为,扩展了处理UC演化的方法。我们也支持使用与转换和演化规则相关的负面应用条件(NAC)。分析演化规则与描述UC步骤的规则之间的相互影响,可以显示演化的效果,甚至可以在实际执行更改之前识别潜在的影响。除了定义使用NAC进行UC演化的理论基础之外,我们还在Verigraph工具中实施了演化分析技术,并使用该技术来验证了3种不同案例研究的影响。结果证明了我们的方法在基于UC的演化过程中帮助开发人员的适用性和实用性。

更新日期:2020-06-05
down
wechat
bug