基于随机过程仿真的测试驱动开发策略研究及其实现


Autoria(s): 苏峰
Contribuinte(s)

王永吉

Data(s)

27/05/2010

Resumo

现代软件开发项目规模的日益增大和复杂度的日益提高要求软件组织采用更有效的软件开发方法。学术界和工业界提出了一系列的软件工程方法,其主要目的是提高软件产品质量,保障项目进度,降低项目成本,减少维护费用。测试驱动开发(Test-Driven Development TDD),作为敏捷开发中一种非常流行的方法,经过最近十来年的发展,无论在工业界还是在学术界均有大量成功应用案例;同时测试驱动开发的思想也已经日益为越来越多的软件开发组织和开发者所接受。尽管测试驱动开发(TDD)可以提高软件产品的质量和软件开发人员的生产率,但是其实施难度令众多软件开发组织对于测试驱动开发方法望而却步。同时在实际项目中由于进度压力,严格的测试驱动开发往往不能自始至中贯彻执行,而且在满足软件产品质量要求的条件下,我们没有必要为了达到零缺陷而对每个开发模块进行测试驱动开发。因此我们有必要对于软件组织是否采用TDD方式开发,对于哪些模块采用TDD方式开发进行有效合理的评价,以便为软件项目管理人员提供决策依据。软件过程仿真,无疑是一种低成本,且较为科学的方法,它能够在已有信息的基础上,提供科学的决策依据。本文以测试驱动开发大量的经验研究结论为依据,提出一种基于过程模型随机仿真的TDD模块选取方法。该方法以随机进程代数为建模工具,通过用例度量软件模块的复杂性,来获取模型的仿真参数,进行仿真并得到该模型的仿真结果。最终采用TDD模块选取算法来分析仿真结果,得出最佳TDD实施策略,可以为项目经理提供合理的TDD实施策略。本文主要研究内容包括第一、提出一种度量软件模块复杂性的简易计算方法,该方法从软件模块的内部复杂度和外部复杂度出发,引入结构熵的概念;用结构熵度量软件外部复杂度,用例中的事件流来度量内部复杂度,最终得到模块复杂度和该模块相应的仿真参数。第二、对于测试驱动开发过程和传统的软件开发过程,建立随机进程代数仿真模型。经过比较多种仿真方法后,选取Gibson-Bruck随机仿真方法对于软件过程进行仿真。并分析了采用该算法的合理性。第三、提出一种基于过程模型随机仿真的TDD实施模块选取算法,从仿真结果出发,为项目经理提供合理的决策支持。同时为了便于本方法的应用,设计实现了基于过程模型随机仿真的TDD模块选取系统。

Identificador

http://ir.iscas.ac.cn/handle/311060/2844

http://www.irgrid.ac.cn/handle/1471x/68155

Idioma(s)

中文

Fonte

苏峰.基于随机过程仿真的测试驱动开发策略研究及其实现[硕士].北京.中国科学院研究生院.2010

Palavras-Chave #计算机软件 #软件过程
Tipo

学位论文