论文部分内容阅读
软件规模估算在软件生命周期特别是早期开发阶段有着重要作用,是作为项目计划以及资源分配的重要依据。虽然占据重要地位,但是软件估算在软件工程中一直是比较薄弱的一环。软件估算根据软件的某些属性度量数据来预测,估算软件的另一些属性,主要是软件的规模大小,开发软件所需要的成本,工作量等。术语“基于搜索软件工程(Search-based Software Engineering SBSE)”由M.Harman和B.F.Jones[27]于2001年首次提出,旨在利用各种搜索算法尤其是启发式搜索算法,例如遗传算法,模拟退火算法,禁忌搜索算法等来求解软件工程领域问题。基于搜索软件工程的基础是一个软件工程领域的客观事实,既大多数软件工程的领域问题都可以被建模成带有约束条件的搜索问题。
本文围绕软件规模估算问题研究基于搜索软件工程思想在该问题上的应用,通过对2008年基于搜索软件工程社论文章中收录的典型基于搜索软件工程文献的研究分析,从基本思想,问题建模形式以及方法技术等方面综述基于搜索软件工程思想在软件工程领域的可行性,并结合各种已有的技术实现,研究比较基于搜索软件工程的思想在软件规模估算问题上的应用。针对面向对象软件的特点,本文采用一组精简的软件度量作为估算输入,提出一种专注于面向对象软件规模估算问题,由聚类阶段以及搜索阶段组合而成的组合分类估算框架(Object-Oriented Hybrid Classification Estimation Framework OOHCEF),以灵活使用各种优良的聚类以及搜索算法实现面向对象软件的多类别模糊分类估算。最后使用人工生成符合一定概率分布的测试数据对框架模型进行实验,并用纯遗传算法,爬山法以及神经网络估算方法与框架模型进行实验对比。