《软件过程质量度量与控制(1)36154.pptx》由会员分享,可在线阅读,更多相关《软件过程质量度量与控制(1)36154.pptx(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第六届中关村电脑节第六届中关村电脑节软件过程质量度量与控制软件过程质量度量与控制软件过程质量度量与控制软件过程质量度量与控制独立咨询师独立咨询师 李李 健健北京北京2023年年3月月29日日2023/3/29第 1页李健李健 软件度量软件度量 度量的过程度量的过程 度量的对象度量的对象 度量的技术度量的技术 度量的几点考虑度量的几点考虑提纲提纲2023/3/292李健李健 基本概念基本概念Measure,度量(名词),是根据一定的规则赋予软件过程或产品属性的数值或类别ISO/IEC 14598-1。数值是对软件产品、软件过程的特征的量化记数的结果,类别是特征的定性表示,例如编写程序的语言,可以
2、是C或C+。Measure,度量(动词),按照度量过程中的过程定义,对软件过程或软件产品实施度量,表示实际的动作。ISO/IEC 14598-1 Measurement,测量,是按照一定的尺度用度量(名词)给软件实体属性赋值的过程ISO/IEC 14598-1。它强调对软件实体属性进行量化的过程性,是提取软件过程或软件产品属性的度量(名词)的过程。它所蕴涵的内容是度量的过程,度量过程可分为评估度量的过程和直接度量的过程,评估度量的过程是对计划实施度量的过程,直接度量的过程是在实例项目过程中收集数据和分析数据的过程。Metric,度量,是已定义的测量方法和测量尺度ISO/IEC 14598-1。
3、在很多场合与Indicator交叉出现,但其内涵大于Indicator,Metric概指软件环境中任何一个软件对象的属性的量化表现。Indicator,指示器,是用于评价或预测其他度量(名词)的度量(名词)ISO/IEC 14598-1。指示器是一个或多个度量的综合,是对软件产品或软件过程的某一方面特征的反映。不同的度量目的有不同的度量指示器选择。在具体的实施过程中,可操作的度量成千上万,选择最能反映当时度量环境的指标作为度量指示器。Process Capability,软件过程能力度描述通过遵循软件过程能够实现预期结果的程度。CMM Version 1.1 Process Maturity,
4、软件过程成熟度是一个特定过程被明确定义、管理、度量、控制、并且是有效的程度。CMM Version 1.1 Process Performance,软件过程性能是过程实际执行的结果。CMM Version 1.1 2023/3/293李健李健 软件管理的基本过程模型软件管理的基本过程模型2023/3/294李健李健 软件过程管理与项目管理软件过程管理与项目管理软件过程改善软件过程定义软件过程度量软件过程控制定义项目计划调整项目计划度量计划/结果软件过程执行项目计划执行软件开发产品需求 2023/3/295李健李健 度量与软件过程管理度量与软件过程管理改善软件过程规划软件过程应用度量应用度量控制
5、软件过程执行软件过程计划度量计划度量人、资源输入信息软件产品软件过程度量信息软件产品度量信息2023/3/296李健李健 用户对象用户对象软件过程度量项目主管:计划与控制高层主管:过程的可见性软件过程组:过程改善客户/用户:跟踪技术中心:研究信息流相互通信项目外部项目外部项目内部项目内部2023/3/297李健李健 度量的目的度量的目的度量的目的度量的目的理解过程理解过程管理过程管理过程理解过程理解过程评价过程评价过程预测过程预测过程控制过程控制过程改善过程改善过程2023/3/298李健李健 度量的分类度量的分类客观度量和主观度量客观度量和主观度量 主观度量是人的主观判断结果,主观度量也可以
6、是在客观数据基础上的分析结果。客观度量是过程或产品的实际结果,客观度量在一定程度上就减少了人为的主观影响。绝对度量和相对度量绝对度量和相对度量 绝对度量其度量值的取得是没有参照物或没有其他的依赖关系,比如一个程序模块的大小具有绝对的代码行数,其他代码模块的变化不影响该模块的大小。相对度量是其度量值的取得具有参照物或与其他属性的有依赖关系,比如过程生产率依赖于过程时间和过程产出的规模。显式度量和隐式度量显式度量和隐式度量 显示度量是可直接得到数据的度量,例如编程时间是显式度量。隐式度量是对原始度量数据进行运算或结合多个度量分析得到的结果,例如个人编程效率。动态度量和静态度量动态度量和静态度量动态
7、度量是两维以上的度量。静态度量是一维度量。预测度量和解释度量预测度量和解释度量内部度量和外部度量内部度量和外部度量软件组织内部和软件组织外部,项目组内部与项目组外部,项目内小组之间。2023/3/299李健李健 过程的度量和产品的度量过程的度量和产品的度量v差异差异度量目标,产品度量是用于对软件产品进行评价,在此基础之上进行产品设计优化。软件过程度量是为了对软件过程的行为进行目标管理,并在度量的基础上对软件过程进行控制、评价和改善。度量内容,对软件产品的度量侧重于软件结构的度量,度量的内容与软件开发技术密切相关。对软件过程的度量有三大类基本内容,分别是质量、时间和资源。度量方法,对产品的度量方
8、法是阶段性方法,度量对象是软件生产后期得到的成形的软件产品。对软件过程的度量方法是过程性方法,度量过程中的各个阶段所用到的技术、方法是动态更新的。度量结果,产品度量结果通常是软件产品的复杂度模型和可靠性模型等。对过程度量的结果是过程基线。v联系联系产品度量内容可以是过程度量内容的一部分;对产品的度量结果是对产品的评价,而产品又是过程的结果,产品的好坏从一个方面体现了过程的好坏。2023/3/2910李健李健 软件度量软件度量 度量的过程度量的过程 度量的对象度量的对象 度量的技术度量的技术度量的几点考虑度量的几点考虑提纲提纲2023/3/2911李健李健 度量的过程度量的过程GQM(Goal-
9、Question-Measurement)PSM(Practical Software Measurement)过程和产品商业目标过程目标度量目标度量问题度量度量用户对象逆向过程正向过程“G”“Q”“M”2023/3/2912李健李健 软件过程的度量过程软件过程的度量过程目标驱动的度量过程目标驱动的度量过程ISPMM2023/3/2913李健李健 ISPMM中人员角色组织形式中人员角色组织形式2023/3/2914李健李健 ISPMM的目标的目标(1)整合度量过程和分析过程)整合度量过程和分析过程s建立和维护度量目标s定义度量s定义数据收集和存储过程s定义数据分析过程(2)提供度量和分析结果)
10、提供度量和分析结果s收集度量数据s分析度量数据s存储数据和结果s数据和结果交流2023/3/2915李健李健 ISPMM:准备度量子过程:准备度量子过程2023/3/2916李健李健 ISPMM:选择度量子过程:选择度量子过程2023/3/2917李健李健 ISPMM:应用度量子过程:应用度量子过程2023/3/2918李健李健 ISPMM:数据分析子过程:数据分析子过程2023/3/2919李健李健 度量过程的能力度度量过程的能力度未完成层未完成层已执行层已执行层已管理层已管理层已定义层已定义层量化管理层量化管理层优化层优化层ISPMM具有已管理层和已定义层的过程特征并且支持软件组织建立能力
11、度为已定义层以下的过程实现2023/3/2920李健李健 软件度量软件度量 度量的过程度量的过程 度量的对象内容度量的对象内容 度量的技术度量的技术度量的几点考虑度量的几点考虑提纲提纲2023/3/2921李健李健 软件度量选择的方针软件度量选择的方针“着眼现在,展望未来着眼现在,展望未来”在度量的基础上,理解并控制管理现有过程,找出现有过程存在的问题进行改善,并通过评价来衡量改善的结果以增强过程的预测能力。多层次度量需求多层次度量需求软件项目度量需求,侧重理解和控制当前项目的情况和状态软件产品度量需求,侧重理解和控制当前产品的质量状况软件过程度量需求,理解和控制当前情况和状态,还包含了对过程
12、的改善和未来过程的能力预测。2023/3/2922李健李健 选择度量的衡量指标(参考)选择度量的衡量指标(参考)It is considered meaningful by the customer,manager,and performer.It demonstrated quantifiable correlation between process perturbations and business performance.It is objective and unambiguously defined.It displays trends.It is a natural by-pr
13、oduct of the process.It is supported by automation.Metrics must be simple,objective,easy to collect,easy to interpret,and hard to misinterpret.Metrics collection must be automated and nonintrusive,that is,not interfere with the activities of developers.Metrics must provide consistent assessments thr
14、oughout the life cycle,especially in early phases,when efforts to improve quality have a high payoff.Metrics,both values and trends,must be used actively by management and engineering personnel for communicating progress and quality in a consistent format.Metrics fidelity improves across the life cy
15、cle.2023/3/2923李健李健 选择度量的衡量指标(参考)选择度量的衡量指标(参考)The measures should relate closely to the issue under study.These are usually issues of quality,resource consumption,or elapsed time.They should have high information content.They should pass a reality test.They should permit easy and economical collecti
16、on of data.They should permit consistently collected,well-defined data.They should show measurable variation.They should have diagnostic value and be able to help you identify not only that something unusual has happened but also what might be causing it.2023/3/2924李健李健 选择度量的标准选择度量的标准可交流性可交流性采用规范的方法
17、对度量属性进行定义和描述,使其他人可以一致地了解度量的内容,度量的数据值里包括了哪些信息或不包括哪些信息,以及度量数据的收集过程。可重复性可重复性表示其他人按照定义的度量过程进行数据采集和分析是否能够得到同样结果的可能性。可追溯性可追溯性表示根据度量信息是否能够定位出产生度量数据时软件过程的当时状态和当时环境的可行性。度量信息的可追踪性对软件过程改善是非常重要的,进行过程改善时需要明确在什么环境下产生这样的过程状态,什么原因导致了过程偏差。可操作性可操作性度量的选择同时也应该考虑收集度量数据的可能性及难易程度,并同时考虑数据收集的花费和资源占用。可代表性可代表性 表示度量信息具有反映软件过程的
18、某个方面特性的能力。一个前提条件是:度量数据应是变化的,因为只有变化的数据才能反映过程的偏差。2023/3/2925李健李健 度量目标选择及描述度量目标选择及描述度量对象:目的:用户对象:度量环境:度量对象:X项目中的同级评审过程目的:在评价的基础上改善过程效率用户对象:软件组织过程改善组度量环境:新开发电力系统办公自动化项目。项目组规模50人,其中开发人员40人。商业目标 1商业目标 2商业目标 n关键过程目标 1关键过程目标 2关键过程目标 m度量目标 1度量目标 2度量目标 k2023/3/2926李健李健 过程实体描述模型过程实体描述模型过程组成过程消耗过程保留过程输入过程输出2023
19、/3/2927李健李健 度量的对象内容(参考)度量的对象内容(参考)1.管理度量管理度量1.Work and progress2.Budgeted cost and expenditures3.Staffing and team dynamics2.质量度量质量度量Change traffic and stability,which is relationship between opened and closed software change orders.Breakage and modularity,which is average breakage trend over timeRe
20、work and adaptability,which is rework trend over timeMTBF and maturity,which is MTBF trend over time2023/3/2928李健李健 软件过程的度量模型软件过程的度量模型软件过程性能软件过程性能软件过程性能范畴软件过程性能范畴软件过程性能类型软件过程性能类型特性特性子特性子特性度量度量数据项数据项2023/3/2929李健李健 软件过程的度量模型软件过程的度量模型软件过程质量软件过程效率软件过程成本产品和服务的质量过程依从性时间和进度稳定性资源和费用软件过程性能软件过程的能力度/成熟度技术能力软件
21、过程性能的稳定性生产率2023/3/2930李健李健 度量模型中七种度量类型之间的关系模型度量模型中七种度量类型之间的关系模型2023/3/2931李健李健 度量模型对度量模型对SW-CMM一般过程特征的覆盖一般过程特征的覆盖2023/3/2932李健李健 度量模型对度量模型对SW-CMM过程提问单的覆盖过程提问单的覆盖 对对SW-CMMSW-CMM第二层中的第二层中的6 6个关键过程域进行软件过程问题单和个关键过程域进行软件过程问题单和过程性能度量的对比分析,第二层总共有过程性能度量的对比分析,第二层总共有3636个过程问题。个过程问题。2023/3/2933李健李健 过程性能度量准则和指标
22、过程性能度量准则和指标 准则准则 相同质量指标下,占用资源越少的过程性能越好 相同质量指标下,效率越高的过程性能越好 指标指标 设计时间大于编码时间TSP 设计评审时间大于50%的设计时间TSP 编码评审时间大于50%的编码时间TSP 偏离度 返工率 失控数“80/20”原则2023/3/2934李健李健 软件度量软件度量 度量的过程度量的过程 度量的对象内容度量的对象内容 度量的技术度量的技术度量的几点考虑度量的几点考虑提纲提纲2023/3/2935李健李健 软件过程的特性分析软件过程的特性分析过程的特点过程的特点软件过程的过程性软件过程的持续性软件过程的特殊性软件过程的层次性软件过程的动态
23、性过程的特性过程的特性软件过程性能软件过程稳定性软件过程能力度软件过程改善2023/3/2936李健李健 过程质量和过程性能(a)(b)尺度、协作关系、领域经验等尺度、协作关系、领域经验等2023/3/2937李健李健 度量分析技术度量分析技术6SigmaScatter DiagramsRun ChartHistogramsCause-and-effect diagrams(Fish-bone)Bar ChartPareto ChartsRegression AnalysisControl Chart(SPC)2023/3/2938李健李健 控制图技术基础控制图技术基础CLCL-3sCL+3s
24、CL-2sCL-sCL+2sCL+s中心线上限(UCL)下限(LCL)2023/3/2939李健李健 X-R图分析图分析针对问题针对问题过程行为的中心趋势?随着过程的进行,各分组数据之间的偏差?分组内的过程行为偏差?前提前提分组内采样数据数目大小n应大于等于2,在进行软件过程度量时找出相似性数据分组。R图反映的是分组内数据范围的分布,如果分组的n值过大就可能会导致不同分组计算出的Rj值相差过大,就无法分析出外在因素导致的过程偏差,R图的应用范围一般是在n 10的情况下。稳定性判定准则稳定性判定准则如果X图中出现分布在上下界限以外的数据,那么过程是不稳定的。如果X图中三个连续分布点中有两个点分布
25、在中心线同一侧并且偏离中心线2s的距离,那么过程是不稳定的。如果X图中五个连续分布点中有四个点分布在中心线同一侧并且偏离中心线s的距离,那么过程是不稳定的。如果X图中自少有八个连续分布点中在中心线同一侧,那么过程是不稳定的。2023/3/2940李健李健 X-R图计算图计算Xj是每一个采样数据,k表示采样的数据组数目,n表示每一个采样组中有n个数据。表示X图的中心线的值。表示在同一分组内样本数据的最大差距。表示R图中心线的值。分别表示X图的上下界限值,在X图中上下界限是与中心线等距的,由此可得出s的值。其中A2是统计值常量。分别表示R图的中上下界限值,在R图中上下界限是与中心线等距的。其中D3
26、 和D4是统计值常量。2023/3/2941李健李健 XmR图分析图分析基本假设基本假设软件过程的连续性使相邻两个采样点最可能近似应用前提应用前提数据分组在有些情况不易实现,同时分组产生的数据聚集可能减弱异常数据在控制图上的表现;对每一个采样数据进行分布处理,可分析出采样个体是否存在一些异常模式,如循环分布、持续单向分布等。稳定性判定准则稳定性判定准则如果X图中出现分布在上下界限以外的数据,那么过程是不稳定的。如果X图中三个连续分布点中有两个点分布在中心线同一侧并且偏离中心线2s的距离,那么过程是不稳定的。如果X图中五个连续分布点中有四个点分布在中心线同一侧并且偏离中心线s的距离,那么过程是不
27、稳定的。如果X图中自少有八个连续分布点中在中心线同一侧,那么过程是不稳定的。“个体控制图”出现数据异常分布模式。2023/3/2942李健李健 软件过程的性能分析软件过程的性能分析解决解决SPC在软件领域应用的问题:在软件领域应用的问题:+选择适当控制图选择适当控制图X-R图、图、X-S图、图、XmR图、图、MAMR图、图、c图、图、u图图+数据采样与数据分组数据采样与数据分组+过程性能偏差分析过程性能偏差分析+过程能力度分析过程能力度分析2023/3/2943李健李健 数据采样与数据分组数据采样与数据分组 采样数据特性采样数据特性可交流性、可重复性、可追溯性、可操作性、可代表性 数据的采样时
28、间和空间信息数据的采样时间和空间信息如果采样的时间和空间跨度太大,不论怎样分组数据控制图中的上下限范围就会较大,控制图中的过程表象就会出现多数是处于稳定状态 数据分组基本原则数据分组基本原则保持组内采样数据的相似性,表现在两个方面:在同一组内引起过程偏差的原因应该近似,同组内的数据偏差近可能小。同组数据所跨度的时间和空间应尽可能小。结合目标和需求确定分组的原则结合目标和需求确定分组的原则均值控制图反映的是分组间的过程偏差,范围控制图反映的是组内的过程偏差。结合数据分析的需求把可能是主要或特别关注的引起过程偏差的原因产生的数据分布在组间,引起过程偏差的次要原因或是不关心的原因产生的数据放在组内2
29、023/3/2944李健李健 过程性能偏差分析过程性能偏差分析(1)过程性能数据本身是否正确)过程性能数据本身是否正确(2)数据组织和分析问题)数据组织和分析问题(3)过程依从性问题)过程依从性问题与计划过程的一致性问题人员、工具、技术和规程的合理应用问题支持系统的合理应用问题组织相关问题(4)过程模型问题)过程模型问题过程缺陷和过程不完备2023/3/2945李健李健 过程性能能力度分析过程性能能力度分析CLUCLLCL目标LSLUSL 6 6s ss s6 6s s(1)ss s 0,表示实际过程的上限不满足需求。l =0,表示该过程实际的性能表现是满足需求的,过程是有能力的。l s l
30、3(ss-s),表示过程性能的上限不满足需求。l-3(ss-s)=3(ss-s),表示过程性能满足需求,是有能力的。l -3(ss-s),表示过程性能的下限不满足需求。2023/3/2946李健李健 软件度量软件度量 度量的过程度量的过程 度量的对象内容度量的对象内容 度量的技术度量的技术度量的几点考虑度量的几点考虑提纲提纲2023/3/2947李健李健 度量实施问题度量实施问题应用度量的一些限制?应用度量的一些限制?怎样确定合适的度量目标?怎样确定合适的度量目标?未达到未达到CMM/CMMI四级能用度量和量化管理吗四级能用度量和量化管理吗?四级以下的度量怎样进行?哪些指标更有效?四级以下的度量怎样进行?哪些指标更有效?哪些过程域适合应用度量?哪些过程域适合应用度量?2023/3/2948李健李健 谢谢观看/欢迎下载BY FAITH I MEAN A VISION OF GOOD ONE CHERISHES AND THE ENTHUSIASM THAT PUSHES ONE TO SEEK ITS FULFILLMENT REGARDLESS OF OBSTACLES.BY FAITH I BY FAITH