学位论文 > 优秀研究生学位论文题录展示

基于经验的软件测试执行工作量估算模型

作 者: 侯莉
导 师: 杨小虎
学 校: 浙江大学
专 业: 计算机应用技术
关键词: 软件测试 工作量估算 机器学习 测试套件执行矢量
分类号: TP311.52
类 型: 硕士论文
年 份: 2008年
下 载: 136次
引 用: 1次
阅 读: 论文下载
 

内容摘要


随着软件产品在整个社会中的作用越来越重要,公司在生产和交付软件产品及服务上的竞争进一步加剧,使得在短时间内有效地开发出高质量的软件成为必须。其中,测试是保证软件质量最重要和最常用的手段。对测试工作量进行合理准确的估算是制定测试计划并顺利完成测试工作的重要前提。一个好的测试工作量估算模型可以帮助测试经理更加合理地计划和安排测试进度与资源,以此来进一步提高机构软件产品的竞争力。而事实上,到目前为止对软件测试执行工作量估算的研究非常匮乏,并且这些模型通常具有时间开销较大,主观性较强等缺陷。基于此,本文首先对现有常用的软件估算模型和方法进行了全面而详细的研究,并对当前仅有的一些软件测试执行工作量估算方法进行了重点讨论。然后,在此基础上,本文提出了一个基于经验的软件测试执行工作量估算模型STEEM。本模型将测试套件特征化为一个包含了测试用例数量,测试执行复杂度和测试人员熟练程度的三维矢量,即测试套件执行矢量,并定义了关于这三个矢量的度量标准,然后建立经验数据库。基于回归分析的思想,模型通过收集机构项目的经验数据来分析和研究测试套间矢量中的三个参数与执行完该测试套件所需要的工作量时间之间的关系,并使用机器学习方法对该关系进行建模,以此来实现对执行给定的测试套件所需要工作量的估算。本文在某金融软件公司内部使用该模型进行了实例分析,以此来评估该模型,根据公司的实际情况配置测试套件执行矢量的三个元素,并依此来收集公司内部项目的历史数据,然后利用支持向量机方法进行训练得到最终的模型,取得了较好的估算效果。并在该公司中某具体项目的实际测试周期中使用该模型,从而帮助了测试经理更好地完成制定测试计划和资源分配等测试管理工作。

全文目录


摘要  3-4
Abstract  4-9
第1章 绪论  9-14
  1.1 研究意义  9-12
    1.1.1 工作量估算  9-10
    1.1.2 测试工作量估算重要性  10-11
    1.1.3 估算方法研究现状  11-12
  1.2 研究工作  12
  1.3 本文组织结构  12-14
第2章 软件测试相关理论和估算常用方法研究  14-37
  2.1 软件测试知识概述  14-17
    2.1.1 软件测试  14-15
    2.1.2 软件功能测试  15-16
    2.1.3 软件测试流程和管理  16-17
  2.2 工作量估算常用方法研究  17-29
    2.2.1 功能点分析法  17-19
    2.2.2 COCOMO模型  19-23
    2.2.3 用例点分析法  23-27
    2.2.4 回归分析  27-28
    2.2.5 机器学习  28-29
  2.3 软件测试执行工作量估算模型研究  29-36
    2.3.1 传统方法  30
    2.3.2 功能点分析估算  30
    2.3.3 用例点分析估算  30-33
    2.3.4 基于测试规格说明书的测试工作量估算模型  33-36
  2.4 本章小结  36-37
第3章 基于经验的软件测试执行工作量估算模型  37-50
  3.1 STEEM模型设计原则  37-39
  3.2 STEEM模型概要  39-40
  3.3 测试套件执行矢量  40-46
    3.3.1 测试用例数量  40-41
    3.3.2 测试执行复杂度  41-44
    3.3.3 测试人员熟练程度  44-46
  3.4 STEEM模型训练和预测  46-49
    3.4.1 支持向量机的优势  47-48
    3.4.2 STEEM模型建立  48-49
  3.5 本章小结  49-50
第4章 STEEM在某金融软件公司的应用实例  50-64
  4.1 实验公司背景介绍  50-51
  4.2 配置测试套件执行矢量  51-57
    4.2.1 专家讨论  51-53
    4.2.2 内部问卷调查  53-55
    4.2.3 确定Guideline  55-57
  4.3 数据收集及预处理  57
  4.4 数据训练  57-61
  4.5 STEEM模型估算精确度分析  61-63
    4.5.1 评价标准  61-62
    4.5.2 实验结果分析  62-63
  4.6 本章小结  63-64
第5章 STEEM在具体项目测试管理中的应用实例  64-73
  5.1 实验项目背景介绍  64-65
  5.2 模型应用  65-71
    5.2.1 确定测试范围  66-67
    5.2.2 明确测试人员  67
    5.2.3 工作量估算  67-71
    5.2.4 制定测试计划  71
  5.3 对软件测试管理的帮助和意义  71-72
  5.4 本章小结  72-73
第6章 总结及未来工作  73-75
  6.1 总结和讨论  73-74
  6.2 不足与展望  74-75
参考文献  75-79
致谢  79-80
作者简历  80

相似论文

  1. 面向对象分层测试的方法研究,TP311.53
  2. 基于形式化UML测试序列生成方法研究,TP311.53
  3. 基于程序切片的电子海图系统软件测试技术研究,TP311.53
  4. 用户权限管理系统可靠性测试的研究与应用,TP311.53
  5. 高职院校教学案例库的创建探究,TP311.53-4
  6. 基于数据分布特征的文本分类研究,TP391.1
  7. 基于中国电信闪铃系统与平台项目的软件测试,TP311.53
  8. 基于条件随机场的中文分词技术的研究与实现,TP391.1
  9. 表面形貌区域法分析评定算法及软件系统研究,TP311.52
  10. 领域知识指导的半监督学习和主动学习倾向性分类研究,TP181
  11. Android恶意软件静态检测方案的研究,TP309
  12. 基于Process Engine的Web Services自动化测试研究,TP311.52
  13. 自动化测试在分组传输网管接口测试中的应用,TP311.52
  14. 一个自动化软件测试系统的设计与实现,TP311.53
  15. 基于QTP的SAFFRON自动化测试框架的研究,TP311.52
  16. 监督主题模型的研究与应用,TP391.1
  17. 基于失真效应的图像质量评价与分类,TP391.41
  18. 基于学习的逆向运动学人体运动合成,TP391.41
  19. 基于内容的网页恶意代码检测的研究与实现,TP393.092
  20. 学术主页信息抽取系统的研究,TP393.092
  21. 社会化网络中的推荐算法及其应用,TP391.3

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 软件工程 > 软件开发
© 2012 www.xueweilunwen.com