论文部分内容阅读
软件项目规模越来越大,开发和应用环境越来越复杂,尤其是在项目开发前期,项目信息不全面,需求不明确,导致软件项目成本估算不准确,导致项目成本超支,成本控制不当引发的不能按期交付上线甚至无法投入使用的失败案例越来越多。因此,为提高软件项目前期成本估算准确率,研究在项目初始阶段的软件成本估算方法,构建相对完善的软件项目成本估算体系,确保在预计的成本和时间内,完成符合用户质量要求的软件项目,具有重要的理论价值和现实意义。论文主要研究内容如下:首先,在分析软件项目特征和现有软件成本估算研究成果,重点研究常用的软件项目成本估算方法。比较类比估算法、专家判断法、参数模型法、遗传算法等常用估算模型优缺点和适用条件,结合软件项目特征和CBR模型原理,分析构建基于CBR的软件项目成本估算模型(CBRCEM)的可行性和有效性。其次,为充分描述软件项目成本属性,建立了基于项目自身特征、项目技术因素、开发人员因素的软件项目源案例属性特征;结合COCOMO模型成本驱动因子理论,建立软件成本属性特征二级指标体系、指标计算公式及约定取值范围,并设计软件项目成本估算案例库结构。整理已经按期交付、类型相同或应用领域具有代表性的软件项目案例,对影响软件项目成本估算的各关键因素分类整合,建立源案例库。第三,为准确搜索案例库中与目标案例特征相近的已完成软件项目信息,引入归一化效用函数,应用层次分析法和改进最优梯度下降法确定软件成本关键属性的权重;由于软件项目源案例相对较少,灰色关联不受样本数量和样本规律限制,建立基于改进的灰色关联分析理论的软件项目相似案例匹配算法,计算目标案例和源案例的相似度,实现相似案例的检索。第四,为了提高软件项目成本估算精度,根据案例相似度排序选取与目标案例相近的多个软件项目,将软件项目成本估算值转化为属性权重信息不完全的多属性决策问题求解,对软件项目成本属性权重进行优化;应用粒子群算法结合软件项目权重特征,将成本估算权重编码成PSO的一个粒子,选取成本估算误差函数作为适应度函数,迭代更新粒子位置信息和速度信息,搜寻到项目最优权重,得到更加接近实际的目标项目软件成本。最后,将软件项目成本估算模型(CBRCEM)应用于东方电子研发的南方电网营销管理信息系统的成本估算,通过多种算法对比分析,CBRCEM计算软件成本估算值与实际成本值的相对估算误差较小,评估结果更接近项目实际成本,可有效地避免由于专家经验差异与专业局限性等影响成本估算准确性,因此,CBRCEM具有一定的实际应用价值。