论文标题

Rulepad:可检查设计规则的交互式创作

RulePad: Interactive Authoring of Checkable Design Rules

论文作者

Mehrpour, Sahar, LaToza, Thomas D., Sarvari, Hamed

论文摘要

良好的文档提供了使开发人员能够轻松理解设计决策的希望。不幸的是,在实践中,设计文档通常很少更新,变得不准确,不完整和不信任。一个更好的解决方案是使开发人员能够写下针对代码检查以保持一致性的设计规则。但是现有规则检查器需要学习专业的查询语言或程序分析框架,从而为编写特定项目规则创造了障碍。我们介绍了两种用于创作设计规则的新技术:基于摘要的创作和半自然语言的创作。在基于摘要的作者中,开发人员指定了通过编写部分代码段来匹配元素的特征。在半自然语言创作中,文本表示为理解设计规则和解决歧义提供了代表。我们在Rulepad中实施了这些方法。为了评估Rulepad,我们与14位参与者进行了一项主题间研究,将Rulepad与PMD设计师进行了比较,PMD设计师是在流行规则检查员中编写规则的实用程序。我们发现,那些患有Rulepad的人能够成功地在更少的时间内成功撰写13倍的查询元素,并且据报道,在日常工作中更愿意使用Rurepad。

Good documentation offers the promise of enabling developers to easily understand design decisions. Unfortunately, in practice, design documents are often rarely updated, becoming inaccurate, incomplete, and untrustworthy. A better solution is to enable developers to write down design rules which are checked against code for consistency. But existing rule checkers require learning specialized query languages or program analysis frameworks, creating a barrier to writing project-specific rules. We introduce two new techniques for authoring design rules: snippet-based authoring and semi-natural-language authoring. In snippet-based authoring, developers specify characteristics of elements to match by writing partial code snippets. In semi-natural language authoring, a textual representation offers a representation for understanding design rules and resolving ambiguities. We implemented these approaches in RulePad. To evaluate RulePad, we conducted a between-subjects study with 14 participants comparing RulePad to the PMD Designer, a utility for writing rules in a popular rule checker. We found that those with RulePad were able to successfully author 13 times more query elements in significantly less time and reported being significantly more willing to use RulePad in their everyday work.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源