We use cookies to improve your experience with our site.

对需求的自动分析过程产生的影响的实证研究

An Empirical Study on the Impact of Automation on the Requirements Analysis Process

  • 摘要: 现有的用于需求管理的工具和技术主要着眼于提供一个框架来定义需求,管理需求配置以及控制需求在相关主体间的分配。然而它们很少能对自然语言描述的规范进行自动的质量分析。二义性分析以及一致性、完备性验证一般来说是一位或多位评审者对需求文档进行单纯的阅读和寻找缺陷的过程。这种一般被称为需求审查的文书工作即枯燥又费时,并且常常是效率低下。需求审查可以突出不同类型的缺陷,这包括从简单的词法错误到一致性问题,即存在矛盾需求的问题。恶劣的写作风格(例如包含歧义及可读性差)能够导致软件开发中的严重问题。ISTI-CNR开发的QuARS工具能够对自然语言需求进行系统和自动的二义性分析。它允许需求工程师对需求进行初始的语法分析以自动检测可能存在的语言缺陷,而正是这些语言缺陷可能会导致在软件开发的后续阶段中出现二义性问题。已有的论文已经对该工具经行过描述,同时也有过一些致力于对其经行技术调试和成熟度评价的研究。然而这些工作并不能切实有效的评估该工具的效力。事实上,只有评估了它对实践活动的影响之后,我们才能真正说这个工具是切实有效的。为了评估该工具对工业应用可能产生的影响,我们建立并开展了一项大型的实证研究,目的在于评估对实际工业项目使用QuARS分析自然语言需求的效果。本文描述了建立该实证研究所遵循的标准,给出了从中收集到的证据,并对获得的结果进行了讨论。开展这类研究离不开公司的参与。参与本研究的是一家电信业跨国公司的一个部门。为了完成对自然语言需求文档的分析,这家公司指派外部顾问来检查需求文档以发现和报告缺陷。公司收集并维护了需求的分析过程的性能数据,也就是分析过程中发现缺陷的数目和所需的代价。依赖这些数据,我们的实验对比分析纯人工评审和有QuARS支持的评审所需的代价以及这两种途径在需求中发现二义性缺陷的效力。我们使用QuARS来处理那些曾被顾问评审过的文档,处理的结果也被表示为发现缺陷的数目和所需的代价。这样,通过与顾问评审的分析报告进行比较,我们就能评估出使用QuARS可能带来的增值。我们需要对一套假定做经验性的验证,并定义了一组相关的评价标准用以更精确和严谨的开展实验。为了提高结果的可信度,也为了使它们更具一般性,我们从方法论的观点对这项实证研究经行了验证。事实上,我们首先明确了建立实证研究时需要集中关注的关键因素,然后通过它们与实证研究特定本质的对比来验证了我们的实证研究。研究结果表明,QuARS(强调语言的二义性)大大改进了需求分析过程。事实上相对人工审查而言,我们观察到的好处表现在发现缺陷的数量及其成本——效率关系中。但是搜集到的证据表明,人工审查并不能完全被类似QuARS的工具所取代。因为人工审查可以指出QuARS所不能发现的语义缺陷,至少在现阶段情况确实如此。对实证结果的分析也突出了一些关键问题。特别是类似QuARS的工具并不能排除假阳性现象(即存在某些被工具判断为缺陷的地方却并不是分析者认定的真正缺陷)。但是我们可以根据特定使用背景来修改QuARS以减轻这类问题。作为一种在自然语言需求的审核中使用这种工具的途径,我们可以在人工评审过程之前使用它。这样就能减少评审者在语言缺陷上花费的精力,而让他们更集中于从语义和语用角度考虑二义性和需求正确性。本工作的贡献在于:从一个实际工业项目出发,我们给出了基于经验的导出数据,表明了使用一种处理自然语言需求的自动语言分析工具所带来的好处。这些数据说表明了在一个工业项目中可能得到的潜在相关的实际收益。这个结果的重要性表现在它明确了一个软件工程研究领域(即实现对自然语言需求的自动审核)。虽然之前很少被研究界所关注,这项研究却能在开发成本和软件品质等方面为软件工业带来有意义的改进。

     

    Abstract: Requirements analysis is an important phase in asoftware project. The analysis is often performed in an informal way byspecialists who review documents looking for ambiguities, technicalinconsistencies and incomplete parts. Automation is still far frombeing applied in requirements analyses, above all since naturallanguages are informal and thus difficult to treat automatically. Thereare only a few tools that can analyse texts. One of them, called QuARS,was developed by the Istituto di Scienza e Tecnologie dell'Informazioneand can analyse texts in terms of ambiguity. This paper describes howQuARS was used in a formal empirical experiment to assess the impact interms of effectiveness and efficacy of the automation in therequirements review process of a software company.

     

/

返回文章
返回