论文部分内容阅读
软件是信息社会的基石,软件产业也因此成为当今世界各国竞争的关键之一。半个多世纪以来,软件发展历程中暴露出种种问题,例如成本超支、进度失控、工期超期、生产率和资源利用率低等,统称为“软件危机”。改进软件过程对于缓解软件危机具有重要的现实意义。 软件过程是一个典型的多元非线性复杂系统,是软件生存周期中与活动、约束和资源相关的有序步骤集合。目前的软件过程模型主要有线性模型、V模型、增量模型、螺旋模型、原型模型和并行网络模型。从提高生产率和资源利用率的角度看,并行网络模型是软件过程体系结构发展的趋势之一,如何构建并行模型也成为研究热点。进化计算是系统科学与人工智能的一个分支,为解决复杂系统问题提供了一种研究思路,近年来在工程领域得到了广泛应用。 本文以提高软件生产率、资源利用率和成本估算精度为目的,以进化计算为研究手段,以软件过程为研究对象,集中探讨了成本估算、活动规划和资源配置的问题,主要内容包括: 1.简要介绍软件的发展历程及其对国家经济、社会、军事的重要性。分析目前软件产业发展面临的危机与挑战,以及改进软件过程的必要性。 2.系统总结软件过程的发展脉络,剖析各学科在不同发展阶段对软件过程研究的优点、缺点。论述进化计算的产生背景、基本原理、方法体系和特点。 3.分析软件成本的要素与结构特点,阐述成本估算的必要性和复杂性,按照估算原理对估算方法进行归类与总结。神经网络操作的“黑箱性”不利于发掘成本值与驱动因子间的因果关系,而进化计算建模能够得到数学公式,运用数理统计工具可进一步实现系统分析。本文利用GAPSO混合规划算法,结合CoCoMo成本驱动因子,提出一种基于进化计算原理的软件成本估算方法,以相关性系数、PRED、MMRE为对比参数,通过实例证明该模型有效提高了估算精度。 4.分析软件过程中普遍存在的约束关系,构筑基于活动优先级的软件过程活动规划方法。系统研究人员的组织、分工、配置方式,建立软件领域的人力资源质量评估体系。通过任务分解、接口分析、环路处理、资源评估的步骤,结合矩阵编码的遗传算法提出了ASRC-GA模型,并采用项目实例对该模型在节约成本、缩短工期、提高适应度方面的有效性进行验证。