首页> 外文会议>Annual Pacific Northwest Software Quality Conference >EFFICIENT SOFTWARE TESTING USING STATISTICAL METHODS
【24h】

EFFICIENT SOFTWARE TESTING USING STATISTICAL METHODS

机译:使用统计方法有效的软件测试

获取原文

摘要

In a software life cycle, testing is crucial as it directly impacts the quality of the product. As the complexity and size of software products increase, testing cost also increases resulting in a growing need for efficient software testing. The challenge of striking a balance between the limited test resources and the desired product quality has become common in most modern software organizations. The objective of this paper is to present an approach that is geared towards higher product quality and lower testing cost. The overall strategy is to predict the fault proneness of the constituents of a software system and, direct the test resource requirements based on the fault proneness. In the presented approach, a large software system is decomposed into smaller units that can be tested independently. This specific type of code unit is referred to as a component; it can be an executable file or any module which is part of the overall software product. For each component, a large number of software metrics such as code complexity, code criticality, code churn, historic defect metrics etc are considered as contributors to risk. Statistical models, such as neural networks and logistic regression, are then used to predict future risk by correlating the combination of these metrics to a measure of failures fixed. Relationship amongst components is also considered to determine the impact of the risk that one unit has to the other. Components are calibrated on the basis of their predicted risk of having failures. A model based on constraint satisfaction problems has been developed to minimize risk and maximize test efficiency for a given set of resource and risk constraints. The paper will conclude with a case study conducted at Microsoft in the Windows Serviceability group. Key factors leading to software failures were investigated and the presented approach has been applied for achieving test efficiency. The paper will include an elaboration on the end-to-end process of achieving test efficiency, risk assessment, quantifying relationship between components and, finally the method of coming up with test recommendations. Results are presented where reduction in test efforts is achieved with minimal risk to product quality.
机译:在软件生命周期中,测试是至关重要的,因为它直接影响了产品的质量。随着软件产品的复杂性和大小的增加,测试成本也增加,导致越来越多的有效软件测试需求。在最现代化的软件组织中,在有限的测试资源和所需产品质量之间击中平衡的挑战在大多数现代软件组织中变得普遍。本文的目的是提出一种旨在实现更高产品质量和更低的测试成本的方法。整体策略是预测软件系统成分的故障典范,并根据故障透明指导测试资源需求。在呈现的方法中,大型软件系统被分解成可以独立测试的较小单元。这种特定类型的代码单元被称为组件;它可以是一个可执行文件或任何模块,它是整体软件产品的一部分。对于每个组件,许多软件度量标准,例如代码复杂性,代码关键性,代码流失,历史缺陷指标等被视为风险的贡献者。然后,统计模型(例如神经网络和逻辑回归)然后通过将这些指标的组合与固定的故障的量度相关联来预测未来的风险。组件之间的关系也被认为是确定一个单位对另一个单元的风险的影响。组件基于其预测失败的风险校准。已经开发了一种基于约束满意度问题的模型,以最大限度地减少风险并最大限度地提高给定的资源集和风险限制的测试效率。本文将在Windows Servicaility Group中在Microsoft进行的案例研究结束。调查了导致软件故障的关键因素,并申请了卓越的方法来实现测试效率。本文将在实现测试效率,风险评估,量化之间的终端到结束过程中的阐述,最终提出测试建议的方法。介绍了测试努力降低的结果,以最小的产品质量的风险最小。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号