当前位置: 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.)
A domain-specific language for verifying software requirement constraints
Science of Computer Programming ( IF 1.5 ) Pub Date : 2020-06-17 , DOI: 10.1016/j.scico.2020.102509
Marzina Vidal , Tiago Massoni , Franklin Ramalho

Software requirement analysis can undoubtedly benefit from prevention and early detection of failures, in particular by some kind of automatic analysis. Formal methods offer means to represent and analyze requirements with rigorous tools, avoiding ambiguities, and allowing automatic verification of requirement consistency. However, formalisms often clash in the culture or lack of software analysts' skills, making them challenging to apply. In this article, we propose a Domain-Specific Language (DSL) based on Set Theory for requirement analysts. The Graphical InvaRiant Language (GIRL) can be used to specify software requirement structural invariants, with entities and their relationships. Those invariants can then have their consistency evaluated by the Alloy Analyzer, based on a translational semantics we provide for transforming GIRL models into Alloy specifications with no user intervention. With a prototypical language editor and transformations implemented into an Eclipse plugin, we carried out a qualitative study, with requirement analysts working for a government software company in Brazil, to evaluate usability and effectiveness of the GIRL-based analysis of real software requirements. The participants were able to effectively use the underlying formal analysis since 79 out of 80 assigned invariants were correctly modeled. While participants perceived as low the complexity of learning and using GIRL's simplest, set-based structures and relationships, the most complex logical structures, such as quantification and implication, were challenging. Furthermore, almost all post-study evaluations from the participants were positive, especially as a tool for discovering requirement inconsistencies.



中文翻译:

用于验证软件需求约束的特定领域语言

毫无疑问,软件需求分析可以从预防和早期发现故障中受益,特别是通过某种自动分析。形式化方法提供了使用严格工具表示和分析需求的方法,避免了模棱两可,并允许自动验证需求一致性。但是,形式主义经常会在文化中发生冲突,或者缺乏软件分析师的技能,这使它们难以应用。在本文中,我们为需求分析人员提出了一种基于集合论的领域特定语言(DSL)。图形InvaRiant语言(GIRL)可用于指定带有实体及其关系的软件需求结构不变式。然后可以通过合金分析仪评估这些不变量的一致性,根据翻译语义,我们提供了将GIRL模型转换为Alloy规范的方法,而无需用户干预。通过使用原型语言编辑器并将其转换为Eclipse插件,我们进行了定性研究,由需求分析师在巴西的一家政府软件公司工作,以评估基于GIRL的实际软件需求分析的可用性和有效性。由于正确建模了80个分配的不变式中的79个,因此参与者能够有效地使用基础形式分析。尽管参与者认为学习和使用GIRL最简单的基于集合的结构和关系的复杂性较低,但是最复杂的逻辑结构(例如量化和蕴含)却具有挑战性。此外,

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