实证调查

经验调查涉及对任何工具,技术或方法的科学研究.此调查主要包含以下4项原则.

  • 选择调查技巧

  • 陈述假设

  • 维持对变量的控制

  • 使调查更有意义

选择调查技术

软件工程中实证调查的关键组成部分是 :

  • 调查

  • 案例研究

  • 正式实验

调查

调查是对记录关系和结果的情况的回顾性研究.它总是在事件发生后完成.例如,在软件工程中,可以执行民意调查以确定用户对特定方法,工具或技术的反应,以确定趋势或关系.

在这种情况下,我们没有控制手头的情况.我们可以记录情况并将其与类似情况进行比较.

案例研究

这是一种研究技术,可以确定可能的关键因素影响活动的结果,然后记录活动:其输入,约束,资源和输出.

正式实验

这是一个严谨的对活动进行受控制的调查,确定并操纵关键因素,以记录其对结果的影响.

调查

可以根据以下指南选择特定的调查方法 :

  • 如果活动已经发生,我们可以进行调查或案例研究.如果尚未发生,则可以选择案例研究或正式实验.

  • 如果我们对可能影响到的变量有高水平的控制权结果,然后我们可以使用一个实验.如果我们无法控制变量,那么案例研究将是首选技术.

  • 如果无法在更高级别进行复制,则无法进行实验.

  • 如果复制成本很低,那么我们可以考虑试验.

陈述假设

为了促进特定调查技术的决策,研究的目标应该表达为我们想要测试的假设.假设是程序员认为解释他们想要探索的行为的暂定理论或假设.

维持对变量的控制

在陈述假设后接下来我们必须决定影响其真实性的不同变量,以及我们对它的控制程度.这是必不可少的,因为实验和案例研究之间的关键鉴别因素是对影响行为的变量的控制程度.

状态变量是可以表征项目的因素并且还可以影响评估结果用于区分正式实验中的实验控制情况.如果我们无法将控制与实验区分开来,案例研究技术将是首选.

例如,如果我们想确定编程语言的变化是否会影响项目的生产率那么语言就是一个状态变量.假设我们正在使用FORTRAN,我们想用Ada替换它.然后FORTRAN将成为控制语言,Ada将成为实验性语言.

使调查有意义

实验结果通常更具概括性案例研究或调查.案例研究或调查的结果通常只适用于特定组织.以下几点证明了这些技术回答各种问题的效率.

符合理论和传统智慧

案例研究或调查可用于在单个组织中遵循传统智慧和许多其他标准,方法或工具的有效性和实用性.但是,正式实验可以调查索赔通常属实的情况.

探索关系

资源和软件产品的各种属性之间的关系可以通过案例研究或调查来建议.

例如,对已完成项目的调查可以发现,使用特定语言编写的软件比使用其他语言编写的软件具有更少的错误.

理解和验证这些关系对于未来任何项目的成功至关重要.这些关系中的每一个都可以表示为假设,并且可以设计正式实验来测试关系所持有的程度.通常,通过保持其他属性不变或受控制来观察一个特定属性的值.

评估模型的准确性

通常使用模型预测活动的结果或指导方法或工具的使用.在设计实验或案例研究时,它提出了一个特别困难的问题,因为它们的预测通常会影响结果.项目经理经常将预测转化为完成目标.当使用成本和进度模型时,这种影响很常见.

某些模型(如可靠性模型)不会影响结果,因为在软件之前无法评估作为平均故障时间测量的可靠性已准备好在现场使用.

验证度量

有许多软件度量来捕获属性的值.因此,必须进行一项研究,以测试给定的度量是否反映了它应该捕获的属性的变化.通过将一个度量与另一个度量相关联来执行验证.第二项措施也是影响因素的直接有效衡量标准,应用于验证.这些措施并非总是可用或易于衡量.此外,所使用的措施必须符合被测因子的人类概念.