参与实施CMMI5的经验总结_第1页
参与实施CMMI5的经验总结_第2页
参与实施CMMI5的经验总结_第3页
参与实施CMMI5的经验总结_第4页
参与实施CMMI5的经验总结_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.参与实施CMMI5的经验总结文/质安部一、心得感受一年前,我开始了我的CMMI5旅程。顺境、逆境,坎坷的、平坦的,处处碰壁的死胡同、豁然开朗的桃花源,我们一路走来,风雨过后终见彩虹。刚刚接触CMMI时,对基本术语的理解还很含混,感觉就像进入另一个工作领域。什么是PA,什么是CAR,什么是PPB和PPM,什么是Minitab、水晶球和蒙特卡洛,CMM与CMMI有什么区别,要通过CMMI5要哪些方面的工作,我们还有哪些方面需要改进,收集了一堆看似杂乱、不规则的数据,如何应用到项目中,并给项目带来实质性的效用,所有这些问题都要得以解决,在整个CMMI5实施过程中,我们从众多数据入手,分析并挖掘它们

2、之间的关系,结合相关培训,在咨询顾问的指导下,我从略知一二到理解掌握了CMMI5的基础知识,并开始慢慢地理清思路。其实学习CMMI5是个融会贯通的过程,而在工作中,CMMI5的思想又是触类旁通的,过程改进的思想在工作中、生活中各个方面皆可运用。我们将有用的数据抽离,并建立了基线和模型,在反复的实验中得到验证,用数据说话,指导项目实施。为了实现CMMI5,我们深入地参与到CMMI5试点项目中,实际运用基线和模型、数据和模板,在实践中不断完善表格模板和体系文件,规范项目实施工作和管理机制,并做好公司过程改进,组织相关培训,在公司自上而下落到实处。用实例证明我们的实力,成功地说服了主任评估师,最终华

3、丽地完成CMMI5认证目标!宝剑锋从磨砺出,梅花香自苦寒来。历尽千辛,最终尝到甜头,这次的胜利可以说是我职业旅途中的一座里程碑。前方还有很长的路要走,持续的过程改进还在继续,我也会保持CMMI5工作的劲头,坚定地走下去!二、基线建立基线建立的前提是公司的项目管理过程趋于稳定,项目过程数据趋于可控。基线反映了公司的过程性能能力。我们是用Minitab工具以控制图的方式做出基线的,需要注意的是:l 控制图中的异常点不能随意删除,需进行根原因分析;l 表现差异较大的项目不能放在一起,应分类做出基线;l 项目经理在制定项目目标时,应参考组织级基线,结合项目特性确定本项目的目标;l MiniTab的I-

4、MR图对数据的检验规则如下:1) 1个点距离中心线大于3个标准差2) 连续9个点在中心线同一侧3) 连续6个点,全部递增或递减4) 连续14个点,上下交错5) 2个点中有1个点,距离中心线(同侧)大于2个标准差6) 4个点中有3个点,距离中心线(同侧)大于2个标准差7) 连续15个点,距离中心线(任一侧)1个标准差以内8) 连续8个点,距离中心线(任一侧)大于1个标准差三、模型建立3.1模型建立的八步骤:(一) 获取组织目标1) 获取商业目标:结合往年的市场投入、同行竞争力分析得出当年的商业目标。2) 量化组织绩效目标:从商业目标出发,采集目标分析法,逐步分析出关键的组织绩效目标。(确定目标)

5、(二) 比较当前基线与组织绩效目标的差距1) 采集上一年的历史绩效数据:以组织绩效目标为基础,采集上一年的绩效数据,并分析出基线。2) 假设检验分析差距:用假设检验的方法分析当前过程能力与组织绩效目标的差距。例:模型工作量控制在均值52人天为目标,用假设检查分析为:即假设未引进革新点时,模块工作量大于52人天(即52)备择(Ha):52原假设(H0):52用minitab的单样本(t)检验进行分析,若P值小于0.05,即拒绝原假设(H0).(三) 分析影响目标的因素(大鱼-中鱼)1) CAR分析影响目标的因素:采集与组织绩效目标有关的项目数据,对每一个数据的表现进行原因分析,并逐层找出根原因(

6、确定因子1)。2) 头脑风暴分析影响目标的因素:组织公司内核心人员进行讨论会议,以头脑风暴的形式讨论出影响因素。3) 投票选择:对上一步头脑风暴产生的多个影响因素按照一定的规则,投票选择产生强相关的影响因素(确定因子2)(四) 分析上一年的性能基线(采集中鱼)1) 采集上一年历史性能数据:根据上一步确定的因子,采集该因子的上一年项目数据。2) 形成上一年历史性能数据基线:用I-MR图的方法形成因子的性能基线,对异常点需进行根原因分析。(五) 相关性分析关键因素(中鱼-小鱼)1) 相关性分析:用Pearson(柏松)系数方法,分析因子1、因子2与目标的相关性,相关性强的因子可用于回归模型的建立。

7、根据柏松系数,0.8-1.0属于极强相关,0.6-0.8属于强相关,0.4-0.6属于中等程度相关,0.2-0.4属于弱相关。2) 关键子过程的改进计划(矩阵):对小鱼、中鱼、大鱼所有的因子,找出对应的关键子过程,并依次按照高、中、低的优先级顺利,计划改进周期。(六) 建立性能模型用统计分析工具Minitab统计回归回归,“响应”设定为目标值,“预测变量”设定为因子后,可得出回归方程。(七) 达成目标模拟1) 水晶球分析:用水晶球工具Crystal Ball(蒙特卡洛原理)分析模拟出,当前过程能力对目标达成的Certainty值,以及改进因子后对目标达成的Certainty值。2) 引入革新点

8、和改进措施:从数据层面,分析因子的历史数据中,可改进的空间,并引出改进措施。(需启动DAR确定革新点)注:(1).引出革新点时,一定要针对X使用CAR的方法分析其提升空间;(2).改进前后,分别用Crystal Ball模拟对目标的达成度,当Certainty值大于90%时,即认为达成目标的风险较小。(八) 引入革新点的成本效益分析1) 成本分析:预测出实施革新点的各项成本(如资源、人力、开发、维护、推广等),并将成本数据进行量化。2) 预计收益分析(可节约成本):预计实施革新点后,可收获的价值。(如成本降低、绩效提升等)3) 成本-收益率:计算收益与成本的比值。即判定是否值得实施革新点。3.

9、2回归方程解读以模块工作量模型(Y-工作量,X1-调整后功能点数,X2-重用库)为例,解读回归方程中各参数的意义:建立模型应注意:u 模型的使用者需评审模型。u 刚开始建立的模型肯定不正确,需不断采集数据,要逐步优化模型。模型可以不断优化,但是模型的使用场景不能常变。u 应重视异常点的分析,可识别改进的机会。异常点分析需使用CAR。u 基线与模型的异同点:都有预测能力,基线只可预测一个过程;模型可以预测多个过程。基线没有因子,模型定义了因子,基线和模型需结合使用。3.3模型使用模型使用场景总体分为:估算和回归模拟,使用场景的关系如下图所示:各场景中对模型的使用步骤如下图所示:3.3.1模型使用

10、场景假设上年度模型回归方程为 y =f(x1,x2),本年度在项目过程中使用模型时,分为以下7种情况: (1) 当Y不确定时1、当x1,x2不确定时, 估计x1、x2。 通过f(x1,x2)预测y值,分析异常值。2、当x1部分确定时, 估计剩余的x1,估计x2;分析x1确定部分的异常值。 通过f(x1,x2)预测y值,分析异常值。3、当x2部分确定时, 估计剩余的x2,估计x1;分析x2确定部分的异常值。 通过f(x1,x2)预测y值,分析异常值。4、当x1全部确定时, 估计x2;分析x1的异常值。 通过f(x1,x2)预测y值,分析异常值。5、当x2全部确定时, 估计x1;分析x2的异常值。

11、 通过f(x1,x2)预测y值,分析异常值。(2) 当Y确定时6、当x1、x2全部确定,y部分确定时, 使用确定的x1,x2,部分y进行归回得到新方程 y= f1(x1,x2),使用水晶球模拟新回归方程的可信度。 使用新回归方程预y= f1(x1,x2)测剩下的y值。 异常值分析,包括:x1,x2,y(已确定及预测部分)。7、当y全部确定时, 使用全部确定的x1、x2、y进行归回得到新方程 y= f1(x1,x2),使用水晶球模拟新回归方程的可信度。 异常值分析,包括:x1,x2,y。3.3.2异常值分析假设回归模型为 y=f(x1,x2),下面分别列出对x与y指标进行异常值分析时的注意事项:

12、(1) 针对y的异常值分析时注意以下几点: 根据y的位置及分布进行分析: 当y分布在以下3种位置时,需要分析异常点存在原因。 当y的分布不满足控制图检验时(参考控制图检验原则),需要分析异常点存在原因。 需对y的实际值进行异常值分析。 需对y的预测值进行异常值分析。 异常值分析时,需分析造成该异常值的具体问题。(2) 针对x的异常值分析时注意以下几点: 根据x的位置及分布进行分析: 当x分布在以下2种位置时,需要分析异常点存在原因。 当x的分布不满足控制图检验时(参考控制图检验原则),需要分析异常点存在原因。 需对x的实际值进行异常值分析。 异常值分析时,需分析造成该异常值的具体问题。3.3.

13、3问题分析及改进方案(1) 初步分析假设对x与y指标进行异常值分析时,梳理出以下异常点及问题:(2) 根原因分析使用帕累托图(Perato Diagram)分析各种原因类型的频率及累计比率,根据帕累托法则(二八原理),即百分之八十的问题是百分之二十的原因所造成的,找出产生大多数问题的关键原因,用来解决大多数问题。(3) 改进方案(1) 根据根原因,提出改进方案: 方案一:引进新工具 方案二:引进新工具 方案三:流程改进(2) 分析执行改进方案后y的改进效果,分为以下两种情况:A. 预测执行改进方案后x值提升幅度,并使用回归方程预测y值提升效果。B. 当y出现实际值时,再次回归后用新的模型预测y

14、,并用水晶球模拟。四、重用率估算n 实际功能点,是指需求规格说明书中归纳分析的功能点。n 重用功能点,是指需求规格说明书中归纳分析的且被重用的功能点。若功能点沿用其他项目或本项目中其他功能点的代码视为重用。n 重用功能点(折算) 的两种算法:(1) 重用代码行/有效代码行*实际功能点数*100%。(2) (前台重用方法个数+前台组件重用个数+后台重用方法个数)/(前台方法总个数+前台组件总个数+后台方法总个数)*实际功能点数*100%n 重用率 = 重用功能点个数 / 实际功能点个数*100%五、功能点估算方法5.1估算流程功能点估算方法,是从软件项目的功能需求角度来评估项目规模,功能点估算流

15、程如下图所示。功能点估算方法的应用场景分为项目前期、需求明确及需求变更:n 项目前期,指从项目规划开始至需求规格明确期间。n 需求明确时,指已完成需求调研,并形成了正式的需求规格说明书。n 需求变更时,指在项目建设过程中,客户提出了变更需求,且已将变更需求更新到新版本的需求规格说明书中。5.2调整前功能点计算5.2.1复杂度矩阵(项目前期)通过复杂度和功能点分类两个维度构建功能点分类-复杂度矩阵,并识别出每一个功能点所对应复杂系数Ki,调整前功能点数量的计算公式为:UFC=(Ki)。功能点分类-复杂度矩阵如下所示:功能点分类复杂度描述复杂度复杂系数(K)接口调用外部系统已实现的接口低5实现外部

16、接口,提供外部系统调用高10数据处理无算法低3有算法,实现方法暂不清晰,但也不难中4多个算法,且较难实现高6统计定时统计低4实时统计高7查询单表查询低3多表联合查询高65.2.2复杂度矩阵(需求明确、需求变更)以数据项数量和数据文件数量为维度,构建功能点的复杂度矩阵,功能点复杂度矩阵如下所示:接口数据处理统计和查询数据文件数量数据项数量数据文件数量数据项数量数据文件数量数据项数量1-1920-5051+1-45-1516+1-56-1920+1低低中0或1低低中0或1低低中2-5低中高2低中高2-3低中高6中高高2中高高4中高高根据功能点的复杂度矩阵,将功能点的复杂度(高、中、低)映射为复杂度

17、系数(K),每类功能点的复杂系数如下表所示。复杂度系数功能类型低中高接口5710数据处理346统计457查询346通过复杂度矩阵及负责度系数,计算每个功能点的复杂系数(Ki)。调整前功能点数量的计算公式为:UFC=(Ki)。5.2.3调整系数下面将分别说明7个系统特性的定义及影响程度的划分标准。序号系统特性名称等级影响程度说明分值1算法0无算法01有算法,且实现方法清晰22有算法,实现方法暂不清晰,但也不难43算法较难或多个算法64多个算法,且较难实现85内部力量不能攻克的算法,或需要专门研究102重用0直接重用,几乎不需要修改01基本可直接重用,单需要做些简单的调整22重用50%70%;或大

18、部分内容需要较大调整即可重用43重用20%50%;或大部分内容需要较大调整即可重用64重用20%以内,或整体调整后方可重用85无重用103新技术0无新技术;01有新技术,但预期简单(几乎可视为旧技术); 22新技术存在1-2个局部不清晰;43存在多个新技术,或3个以上局部不清晰;64新技术大部分不清晰; 85目前力量不能攻克的新技术,或需要专门研究;104业务成熟度0客户已发布管理制度和作业规范,且已执行一年以上。01客户已发布管理制度且已执行一年以上,相关作业规范正在拟定但尚未发布。22客户已发布管理制度且已执行一年以上,但尚未拟定相关作业规范。43客户已发布管理制度和作业规范正在拟定,但尚

19、未发布。64客户未发布管理制度和作业规范,依靠约定的业务流程经验进行管理。85新兴业务,业务流程和管理规范尚处于研究阶段。105性能要求精细度0用户没有提出性能方面的要求01用户提出了性能和设计方面的要求,但不需要采取特定措施22响应时间和吞吐量在系统峰值时是关键的,但是不需要采取相应的CPU 使用方面的特殊设计。处理的最后期限是在下一个工作日。43在任何时候响应时间和吞吐量都是关键的,但是不需要采取相应的CPU 使用方面的特殊设计。处理的完成期限比较严格64除了上面一项的要求外,由于对需求的要求比较严格,在设计阶段就要进行性能分析85除了上面一项的要求之外,在设计和实施阶段需要使用性能分析工

20、具来判断性能要求的完成情况106系统界面设计的明确程度0沿用原有系统的界面风格。01有类似界面风格的系统可以参考2.52客户对界面的要求较明确,且所有客户对界面要求一致。53客户对界面的要求不明确,但所有客户对界面要求一致。7.54客户对界面要求不明确,且客户间对界面的要求不一致。107兼容性说明兼容性要求包含以下内容:操作系统、数据库、中间件、浏览器0客户需求不含兼容性的要求01考虑了兼容性的要求,包括以上的1个2.52考虑了兼容性的要求,包括以上的2个53考虑了兼容性的要求,包括以上的3个7.54考虑了兼容性的要求,包括以上的4个105.2.4调整后功能点计算(FP)根据以上7项系统特性的

21、影响程度(DI)计算功能点的调整系数(AF),计算公式为:AF = (DI)*0.01+ 0.65根据调整系数(AF),最终可得到调整后的功能点数(FP),计算公式为:FP(调整后功能点) = UFC(未调整功能点数目) * AF (调整系数)六、单元测试的归零方法应用6.1归零分析法原理技术归零五要素:定位准确、机理清楚、问题复现、措施有效、举一反三。 定位准确:层层分析、分解到质量问题发生的深层事件,即确定问题发生的准确部位。 机理清楚:通过理论分析或试验手段,确定质量问题发生的根本原因。 问题复现:通过试验或其他验证方法,再现或确认质量问题发生的现象,验证定位的准确性和机理分析的正确性。

22、 措施有效:针对发生的质量问题,采取纠正措施,经过验证,确保质量问题得到解决。 举一反三:把质量问题信息反馈给其他部位,检查有无可能发生类似问题,并采集预防措施。6.2单元测试应用归零分析法n 程序员分析1) 程序员单元测试后将问题记录缺陷跟踪表;2) 分析引入该问题的阶段或原因;3) 进一步分析引入该问题的根原因,并定义原因类型;4) 从技术层面确定解决方案,并确保问题得到解决;5) 举一反三,分析其它关联模块或功能是否会出现类似问题,并预防。n 项目经理分析1) 以缺陷跟踪表为基础,以“引入阶段”为维度,分析每个阶段的缺陷比率;2) 以缺陷跟踪表为基础,以“原因类型”为维度,分析缺陷集中出

23、现的原因类型;3) 采用帕累托图分析出导致大部分缺陷的根原因;4) 从管理的角度确定解决方案,并确保问题得到解决;5) 举一反三,分析其他方面是否会出现类似问题,并预防。七、统计分析知识7.1控制图控制图:一种以实际度量指标值与过程经验所得出的数据控制界限比较,并以时间顺序表示出来的图形。有三条直线组成:控制上限(UCL)、中心线(CL)、控制下限(LCL)。纵轴:一般为度量指标值,以过程变化的数据为刻度。横轴:为检验数据的变化趋势,以数据时间或采集先后,依次绘在图上。7.2挣值分析(一) 挣值分析的三个基本参数包括:计划值(PV)、实际成本(AC)和挣值(EV):1、计划值(PV,Plan

24、Value),又叫计划工作量的预算费用。是指项目实施过程中某阶段计划要求完成的工作量。PV主要反映进度计划应当完成的工作量,而不是反映应消耗的工时或费用。2、实际成本(AC,Actual Cost),又叫已完成工作量的实际费用。指项目实施过程中某阶段实际完成的工作量所消耗的工时(或费用)。主要反映项目执行的实际消耗指标。3、挣值(EV,Earned Value),又叫已完成工作量的预算成本(。指项目实施过程中某阶段实际完成工作量及按预算定额计算出来的工时(或费用)。(二) 挣值分析法的两个评价指标: 费用执行指标(CPI)和进度执行指标(SPI):1) 费用执行指标(CPI):是指挣得值与实际费用值之比,即CPI=EV/AC。当CPI1时,表示效率较高,花费较小的工时获取更大的价值;当CPI=1时,表示效率一般,花费的工时与获取的价值等效;当CPI1时,表示进度提前,花费较小的工时完成了额定的工作;当SPI=1时,表示进度按时完成,花费的工时与计划的工时一致;当SPI1时,表示进度延后,花费较大的工时才完成额定的工作;7.3帕累托图帕累托图(Pareto):是一种条形图,条的长度代表事件发生的频率或成本(财力、时间),因此可从图中直观地看到哪些情况是比较重要的。Pareto原

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论