Web应用程序开发的项目管理.ppt
n目的n按预定的时间和费用,完成软件的计划、开发 和维护n内容n费用管理n估算软件的开发费用n管理开发费用的有效使用n质量管理(包括配置管理)n项目的其它管理n项目进度安排n人员的分配与组织第7章 软件项目管理软件项目管理的谱系软件项目管理的谱系人员管理人员管理产品管理产品管理项目管理项目管理过程管理过程管理软件项目管理软件项目管理项项目目参参与与者者项项目目负负责责人人软软件件项项目目组组协协调调通通信信问问题题软软件件范范围围问问题题分分解解确确定定软软件件过过程程模模型型过过程程分分解解确确定定危危险险信信息息确确定定解解决决方方案案本章内容本章内容7.1 软件的度量软件的度量7.2 软件估算模型软件估算模型 7.3 软件成本估计软件成本估计 7.4 人员的分配与组织人员的分配与组织 7.5 项目进度安排项目进度安排 7.1 软件的度量软件的度量 软件度量是对软件开发项目、过程软件度量是对软件开发项目、过程及其产品进行数据定义、收集以及分析及其产品进行数据定义、收集以及分析的持续性定量化过程,目的在于对此加的持续性定量化过程,目的在于对此加以理解、预测、评估、控制和改善。以理解、预测、评估、控制和改善。没有软件度量,就不能从软件开发没有软件度量,就不能从软件开发的暗箱中跳将出来。通过软件度量可以的暗箱中跳将出来。通过软件度量可以改进软件开发过程,促进项目成功,开改进软件开发过程,促进项目成功,开发高质量的软件产品。发高质量的软件产品。软件度量可划分为软件度量可划分为1.1.软件项目度量:软件项目度量:目的在于改目的在于改进软进软件件产产品的品的质质量;量;2.2.软件过程度量:软件过程度量:目的在于改目的在于改进进企企业业的的软软件开件开发过发过程,程,提高整个提高整个过过程的程的质质量。量。一、一、项目度量的内容项目度量的内容 1.5种基本度量种基本度量 度量度量常用单位常用单位Size 规模LOC,KLOCEffort 工作量人-月Duration 时间(或Schedule 进度)月Quality 质量错误数/KLOCCost 成本(或Rework 返工)元2.特点特点(1)以代码行(以代码行(LOCLOC)表示的软件规模是最基本的度)表示的软件规模是最基本的度量。它直接关系到软件的成本、开发工作量和完成量。它直接关系到软件的成本、开发工作量和完成时间。时间。(2)在项目度量中,所有的基本度量都是以代码行在项目度量中,所有的基本度量都是以代码行LOCLOC为基础的。例如,为基础的。例如,软件成本软件成本(元元)=LOC)=LOC每行代码的成本每行代码的成本(元元/行行)开发工作量开发工作量(人人-月月)=LOC/)=LOC/每人每人-月开发的代码行月开发的代码行(行(行/人人-月)月)(3)软件的规模、成本和工作量通常都分阶段进行软件的规模、成本和工作量通常都分阶段进行度量。度量。3.面向功能的项目度量面向功能的项目度量 中心思想中心思想 任任何何软软件件都都包包含含若若干干种种功功能能,每每种种功功能能又又包包含含具具有有不不同同复复杂杂度度的的若若干干个个功功能能点点。因因此此,软软件件的的规规模模也也可可用用功功能能点点数数量量的的多多少少来来表表示示,以以代代替替原原来来常常用用的的LOCLOC表示法。表示法。二、二、过过程度量程度量 1.含义含义 过程度量可以认为是对整个企业中全体项目组开过程度量可以认为是对整个企业中全体项目组开发能力的衡量。发能力的衡量。2.特点特点 把对于项目组中个人的度量组合起来,可形成对把对于项目组中个人的度量组合起来,可形成对项目的度量;把所有项目组的项目度量组合起来,就项目的度量;把所有项目组的项目度量组合起来,就形成了对整个企业的过程度量。形成了对整个企业的过程度量。7.2 软件估算模型软件估算模型 估算在估算在软软件度量中占有重要的地位。一般地件度量中占有重要的地位。一般地说说,估算估算是是在在软件软件开开发发之前之前进进行行的的。资资源模型源模型可用来估算可用来估算软软件在开件在开发发中花中花费费的的资资源源。典型的资源模型:典型的资源模型:静态单变量资源模型静态单变量资源模型 PutnamPutnam资源模型资源模型 COCOMOCOCOMO模型模型 一、一、静态单变量资源模型静态单变量资源模型 1.特点特点 这这种种模模型型在在计计算算软软件件开开发发的的资资源源花花费费时时,只只需需要要设设定定被被开开发发软软件件的的一一种种参参数数,故称为单变量型。故称为单变量型。2.形式形式 资源资源=C1(估计的软件特征估计的软件特征)C2 静态单变量资源模型n资源n开发工作量(E)、开发时间(T)或开发人数(P)n估计的软件特征n源程序长度(L)或软件工作量(E)nc1 ,c2n依赖于开发环境和软件应用领域的常数二、Putnam资源模型nL=cK1/3T4/3 或 K=L3/(c3T4)nL(行):源程序长度nT(年):开发时间nK(人-年):全生存期工作量nc:与开发环境有关的常数Putnam资源模型资源模型 特点特点(1)Putnam模型是一种多模型是一种多变变量量资资源模型源模型。(2)Putnam模模型型是是在在同同一一个个模模型型中中给给出出了了K(或或E)、L和和T三者之三者之间间的关系。的关系。(3)Putnam模模型型方方程程揭揭示示了了E与与T之之间间的的关关系系。根根据据这这一一方方程程,开开发发工工作作量量E与与开开发发时时间间T的的四四次次方方成成反反比比。这这表表明明,开开发发时时间间的的小小量量变变化化,会会引引起起开开发发工工作作量量相相当大的变化。当大的变化。三、三、COCOMOCOCOMO模型模型 特点特点 以以静静态态单单变变量量模模型型为为基基础础,但但在在下下列列两两个个方方面面作了作了较较大的改大的改进进:(1)按按照照软软件件的的应应用用领领域域和和复复杂杂程程度度,将将它它们们分分为为组组织织、半半独独立立和和嵌嵌入入三三种种类类型型,每每类类分分别别使使用用一组不同的模型方程,一组不同的模型方程,(2)在在模模型型中中增增加加一一个个工工作作量量调调节节因因子子EAFEAF,反反映映各各种种有有关关因因素素对对软软件件开开发发的的影影响响。这这些些因因素素归归结结为为4 4类、类、1515种因子。种因子。7.3 软件成本估计n自顶向下成本估计n由底向上成本估计n算法模型估计自顶向下成本估计n首先估算总成本n然后在项目内部进行成本分配n特尔斐Delphi法n多个专家各自填表n综合专家意见,摘要通知大家n开始新一轮估计n多次反复,直到专家意见接近由底向上成本估算n先将开发任务分解为许多子任务n子任务分成子子任务n估计各个任务单元的成本n汇合成项目总成本算法模型估计n算法模型就是资源模型n由历史数据导出n选择适用的模型n模型估计法与自顶向下估计或由底向上估计结合使用7.4 人员的分配与组织nRayleigh-Norden曲线n两条重要定律n人员组织1.软件项目的人员资源需求变化曲线软件项目的人员资源需求变化曲线 2.时间常数时间常数td大致相当于软件开发完成的时大致相当于软件开发完成的时间。间。3.td左边曲线大致为开发时期人员需求,左边曲线大致为开发时期人员需求,右边大致为维护时期人员需求。曲线下方右边大致为维护时期人员需求。曲线下方的面积就是整个软件生命周期所需要的工的面积就是整个软件生命周期所需要的工作量。作量。对于大型软件项目,对于大型软件项目,td左右两边的面积之比为左右两边的面积之比为4:6或者或者3:7。图中用虚线画出。图中用虚线画出的矩形显示了平均使用人力的矩形显示了平均使用人力所造成的问题:开始人力过所造成的问题:开始人力过剩,造成浪费(图中剩,造成浪费(图中),),到开发后期需要人力时,又到开发后期需要人力时,又显得人手不足(图中显得人手不足(图中),),以后再来补偿,已为时过晚以后再来补偿,已为时过晚(图中(图中)。)。Rayleigh-Norden曲线两条重要的定律n人员-时间权衡定律nBrooks定律n向一个已经延晚的项目追加开发人员,可能使它完成得更晚E=常数/(T或td)4 人员组织n层次型组织结构n软件经理 项目经理 开发小组n民主开发小组n无我程序设计n主程序员小组n一元化领导n主程序员分配工作n主程序员决定重大问题7.5 项目进度安排n计划评审技术nGannt图(甘特图)甘特图)计划评审技术的由来和含义n所谓计划评审技术(program evaluation and review technique,PERT),是把工程项目当做一个系统,用网络图或表格或矩阵来表示各项具体工作的先后顺序和相互关系,以时间为中心,找出从开工到完工所需时间最长的关键线路,并围绕关键线路对系统进行统筹规划、合理安排,以及对各项工作的完成进度进行严密控制,以达到用最少的时间和资源消耗来完成系统预定目标的一种计划与控制方法。n计划评审技术n建立PERT图n找出关键路径n标出最迟开始时间nPERT图的使用PERT图例子测试数 据编码产品测 试测试软 件测试计 划起点起点分析终点终点文档设计关键路径编码产品测 试测试软 件测 试数 据测试计 划起点终点文档设计分析(0,0)(0,3)(0,2)(3,5)(2,8)(3,7)(7,9)(7,11)(15,15)(11,15)表明表明:强调强调:20世纪提出的图表系统法,后以他的名字来命名的管理图表,它被认为是管理工作上的一次革命,社会历史学家视为 20世纪最重要的社会发明世纪最重要的社会发明工作计划中各“事件”之间在时间上的相互关系时间和成本在计划和控制中的重要性甘特图甘特图简介甘特图甘特图(Gantt chart)(Gantt chart)是本世纪初由亨利甘特开发的,内在思想简单,基本是一条线条图,横轴表示时间,纵轴表示活动(项目),线条表示在整个期间上计划和实际的活动完成情况.它直观地表明任务计划在什么时候进行,及实际进展与计划要求的对比.管理者由此极为便利地弄清一项任务(项目)还剩下哪些工作要做,并可评估工作是提前还是滞后,亦或正常进行.是一种理想的控制工具.甘特的思想甘特的思想甘特的贡献甘特的贡献 把总的计划目标看成把总的计划目标看成 人们能够了解和执行的,具有相互关系的一系列计划或各项事件。体现一个既简单又基本的控制原理体现一个既简单又基本的控制原理从计划中选取关键内容并予以密切注视。ABCDE甘特图甘特图任务一月 二月 三月 四月 五月 六月 七月ABCDE.带有分项目的甘特图带有分项目的甘特图任务一月 二月 三月 四月 五月 六月 七月213457986ABCDE.带有分项目和分项目网络的甘特图带有分项目和分项目网络的甘特图任务261345798一月 二月 三月 四月 五月 六月 七月谢谢观看