软件过程性能模型的工程化方法研究

软件过程性能模型的工程化方法研究

论文摘要

软件过程性能模型是高成熟度的软件组织进行预测和控制软件过程的有效手段,也是很多企业实施CMMI(Capability Maturity Model Integration)模型的一个难点。大部分企业在建立软件过程性能模型时都面临如下的五个难点:(1)没有正确理解软件过程性能模型的含义,将一般的预测模型作为过程性能模型对待,将确定型的模型作为过程性能模型对待了。(2)没有历史数据,很多企业在积累历史数据时,仅仅针对过程的输出,度量了历史数据,没有度量过程的输入与属性值。(3)有历史数据,但是本身度量数据的质量不高,数据中存在很多错误,基于错误的数值建立的模型会导致错误的结论。(4)有准确的历史数据,但是选择的x和y本身不够代表性,或者组织级的过程本身不稳定,识别的x与y之间无法建立起量化的关系。(5)没有采用正确的建模方法,导致无法建立过程性能模型或建立的模型没有实际意义。针对上述的五个问题,本文给出了完整的工程化解决方案,尤其是对于建立过程性能模型时如何识别Y与X,本文独创性地给出了GQM与过程属性相结合的方法,帮助企业完备、实用的识别软件性能模型,具有很强的实用价值。并且对于软件企业中常用的线性回归分析方法、方差分析方法、蒙特卡洛模拟方法、贝叶斯网络方法,本文给出了具体的工程化方法、注意事项以及建模的实例,对于采用这四种方法的具体的实践性问题都给出了解决方案,如何综合的运用这四种建模方法,笔者也给出了具体的操作步骤,真正使软件过程性能模型的建立从理论落实到了工程实践。本文的研究成果主要包括了如下的三点:(1)提出了两种确定过程性能模型的自变量与因变量的方法;(2)定义了最常用的四种性能模型建模方法的工程化方法;(3)给出了软件过程性能模型用于预测与优化的方法。本文首先对软件过程性能模型的特征、分类、用途进行了刻画,深入剖析了软件过程性能模型的概念,回顾了软件过程性能模型的研究历史,然后简单介绍了建立软件过程性能四种常用技术:回归分析、方差分析、蒙特卡洛模拟、贝叶斯网络,对于实践中常用的建模工具也进行了简介。随后本文详细描述了这四种方法的工程化建模步骤,并结合软件企业的实际度量数据对在每一步中的注意事项都进行了提示说明,给出了建模方法的工程化解决方案,并比较了这四种方法的优缺点,给出了四种方法融合流程。本文论述的方法分别在长虹集团技术中心、昆山中创软件工厂、南京润和软件公司进行了实施,并取得了良好的效果,在实践中检验了这些建立过程性能模型的工程化方法的有效性。

论文目录

  • 摘要
  • ABSTRACT
  • 1 引言
  • 1.1 软件过程性能模型的提出与概念
  • 1.2 软件过程性能模型的特征
  • 1.3 软件过程性能模型的分类
  • 1.4 软件过程性能模型的用途
  • 1.5 软件过程性能模型的研究历史
  • 1.5.1 软件可靠性模型
  • 1.5.2 IBM 模型
  • 1.5.3 Putnam 模型
  • 1.5.4 COCOMO 模型
  • 1.5.5 基于挣值管理的进度与成本预测模型
  • 1.6 本文的研究成果与意义
  • 1.7 本论文的结构
  • 2 建立过程性能模型的常用技术
  • 2.1 回归分析
  • 2.2 方差分析(ANOVA)
  • 2.3 蒙特卡洛(Monte Carlo)模拟
  • 2.4 贝叶斯网络(BBN)
  • 2.5 建模的常用工具
  • 2.5.1 MINITAB
  • 2.5.2 Crystal Ball
  • 2.5.3 Netica
  • 2.6 本章小结
  • 3 识别过程性能模型的工程化方法
  • 3.1 识别应建立过程性能模型的软件过程
  • 3.2 识别过程性能模型的中因变量与自变量
  • 3.2.1 GQM 方法
  • 3.2.2 过程属性分析法
  • 3.3 常见的因变量与自变量
  • 3.4 度量元的分类
  • 3.5 度量元的刻画方法
  • 3.6 本章小结
  • 4 建立过程性能模型的工程化方法
  • 4.1 基本统计建模方法
  • 4.1.1 验证数据
  • 4.1.2 选择变量与模型
  • 4.1.3 散点图分析
  • 4.1.4 识别离群点
  • 4.1.5 正态性检验
  • 4.1.6 相关性分析
  • 4.1.7 回归分析
  • 4.1.8 方差分析
  • 4.1.9 模型检验
  • 4.1.10 提取方程式
  • 4.2 蒙特卡洛模拟方法建模
  • 4.2.1 准备阶段
  • 4.2.2 定义模型
  • 4.2.3 定义假设变量X
  • 4.2.5 设定模拟次数
  • 4.2.6 运行模拟
  • 4.2.7 模拟结果分析
  • 4.3 BBN 建模
  • 4.3.1 BBN 建模的流程
  • 4.3.2 BBN 建模的实例
  • 4.4 建立过程性能模型的步骤
  • 4.5 本章小结
  • 5 使用软件过程性能模型进行过程设计的方法与案例
  • 5.1 使用回归方程进行预测与优化的方法与案例
  • 5.2 使用一般线性方程进行预测与优化的方法与案例
  • 5.3 使用蒙特卡洛模拟优化过程定义的方法与案例
  • 5.3.1 优化的场景
  • 5.3.2 执行蒙特卡洛模拟
  • 5.3.3 最优分析
  • 5.4 本章小结
  • 6 结语
  • 6.1 本文总结
  • 6.2 进一步展望
  • 参考文献
  • 致谢
  • 攻读学位期间发表的学术论文目录
  • 附件
  • 相关论文文献

    • [1].混合式教学在《软件过程与项目管理》课程中实施的初步探索[J]. 当代教育实践与教学研究 2020(03)
    • [2].层次分析法在软件过程度量中的应用[J]. 计算机工程与设计 2017(01)
    • [3].浅谈基于信息化平台的制导航空弹药软件过程管控方法[J]. 中国管理信息化 2017(07)
    • [4].软件过程管理课程的教学模式改革初探[J]. 教育教学论坛 2017(45)
    • [5].基于统计过程控制的软件过程管理研究[J]. 电子技术与软件工程 2016(11)
    • [6].关于建设开发软件过程软件项目管理的重要性探析[J]. 电子测试 2015(13)
    • [7].中小软件企业软件过程管理及其改进方法分析[J]. 电子技术与软件工程 2015(20)
    • [8].数据驱动的双层次软件过程挖掘方法[J]. 软件学报 2018(11)
    • [9].基于证据的软件过程可信度模型及评估方法[J]. 软件学报 2017(07)
    • [10].基于业务流程再造的软件过程管理研究[J]. 档案学通讯 2016(01)
    • [11].软件过程管理预警及异常模式设计与应用[J]. 信息工程大学学报 2013(05)
    • [12].军用软件过程质量度量实施方法研究[J]. 微型机与应用 2014(17)
    • [13].小规模软件企业软件过程管理与改进策略研究[J]. 黑龙江科技信息 2012(02)
    • [14].软件过程管理探析[J]. 商业文化(下半月) 2011(06)
    • [15].一种软件过程复用的价值模型分析方法[J]. 云南大学学报(自然科学版) 2011(S2)
    • [16].一种软件过程质量的度量方法[J]. 计算机工程与应用 2010(09)
    • [17].软件过程发展及研究[J]. 项目管理技术 2010(06)
    • [18].企业小组软件过程在管理学生软件开发中的研究与应用[J]. 计算机教育 2008(16)
    • [19].合理的软件过程管理是软件质量的基础[J]. 情报探索 2008(03)
    • [20].软件过程评估与改进模型的比较[J]. 电脑学习 2008(03)
    • [21].基于规则的小组软件过程仿真模型及其算法[J]. 微电子学与计算机 2008(07)
    • [22].一种辅助软件过程管理的集成化方案[J]. 计算机技术与发展 2008(08)
    • [23].一种改进的软件过程质量度量方法[J]. 办公自动化 2013(20)
    • [24].软件过程风险评估方法研究[J]. 计算机科学与探索 2014(06)
    • [25].基于系统动力学的软件过程偏离控制[J]. 计算机工程与设计 2011(05)
    • [26].一种个体软件过程能力度量方法(英文)[J]. 软件学报 2009(12)
    • [27].面向软件密集型装备的软件过程度量和分析框架[J]. 装备指挥技术学院学报 2008(05)
    • [28].基于灰色多层次的软件过程风险评估[J]. 管理观察 2008(15)
    • [29].软件过程与管理方法综述[J]. 软件学报 2019(01)
    • [30].支持软件过程可信评估的可信证据[J]. 软件学报 2018(11)

    标签:;  ;  ;  ;  ;  

    软件过程性能模型的工程化方法研究
    下载Doc文档

    猜你喜欢