论文部分内容阅读
软件过程是软件开发中用于开发和维护软件及其相关产品的一系列活动、方法、实践和改造的步骤。它是对软件项目进行过程的一种抽象表示。目前对软件过程的研究通常采用建模方法,这些方法分别从两种角度对软件过程进行研究:从宏观的角度关注软件过程阶段模型、从微观的角度关注软件过程组成(如活动、角色、产品、资源和约束等)的模型。软件过程组成模型能够直观地反映实际过程的工作流程,使人们容易理解和分析软件过程,也易于计划、管理过程和控制过程的执行,故而本文选择软件过程活动模型对软件过程进行研究。 本文将软件过程抽象为一个活动规划网络,将软件过程考虑的工期、资源、风险等因素作为属性附加在各个活动之上。基于这个活动规划网络,采用复杂性理论中的若干方法,集中对软件过程的工期风险、工期计算、软件活动规划进行研究,最后运用遗传算法以工期、工期风险为约束,构建了软件过程优化模型。 论文完成的主要工作包括: 1.通过系统地分析和总结软件过程模型,剖析各种模型的优点、缺点。确定论文对软件过程研究采用的描述模型。 2.论述软件过程的工期风险评估方法,完成了工期风险表示方法的改进,设计了风险传递算法。对常见的若干风险量化方法进行分析和比较,选择了计划评审技术中基于标准偏差的工期风险评估方法,该方法采用标准偏差来评估各个活动之上的风险,随后采用网络中的风险传递规则来计算整个活动规划的风险值。论文指出了使用标准偏差量化工期风险的不足,对标准偏差进行了改进,对于风险在活动规划网络中的传递,论文采用元胞自动机扩展模型设计了基于元胞自动机模型的风险传递算法。 3.设计了软件过程活动规划生成算法。对一般软件过程活动规划方法进行分析,指出其要求活动之间完备逻辑关系获取的困难,从实际工程面临的这一困难出发,构造不完备逻辑关系约束条件下的活动规划算法,算法由拓扑序列生成算法、活动规划生成算法两个算法组成。分别实现了不完备逻辑关系约束条件下的拓扑排序,而后由拓扑排序生成活动规划网络。 4.综合风险评估方法和活动规划算法的研究成果,运用遗传算法构造了以工期和工期风险最优的活动规划方案为目标的基于遗传算法的软件过程优化模型。最后采用项目实例对该模型的有效性进行验证。