软件项目管理复习题整理1.项目管理的五要素:技术、方法、团队建设、信息及沟通。
2.有效的项目管理集中在三个P上:人员、问题和过程。
3.项目管理知识体系的九个知识领域:项目集成管理、项目范围管理、项目时间管理、项目成本管理、项目人力资源管理、项目沟通管理、项目风险管理、项目质量管理、项目采购管理。
4.项目范围管理:其作用是保证项目计划仅包括成功地完成项目所需要进行的所有工作。
其范围分为产品范围和项目范围。
产品范围——>某项产品、服务或成果所具有的特性和功能。
项目范围——>为交付具有规定特性与功能的产品、服务或成果而必须完成的工作。
项目范围管理的过程包括以下几个方面:(1)项目启动(2)范围规划(3)范围定义(4)范围审核(5)范围变更控制5.项目人力资源管理:(1)组织计划(2)人员获取(3)团队建设6.软件项目生存期模型(重点看特点)软件生存期模型有哪些?(1~6标题)(1)瀑布模型特点:简单、直观、易用)1.2)通过设置里程碑,明确每阶段的任务与目标3)可为每阶段制定开发计划,进行成本预算,组织开发力量。
(文档驱动)缺点:1)维护成本较大2)依赖性强3)新的项目不适用4)模型没有中间反馈5)用户到项目结束才能看到产品6)限制变更(2) V模型特点:1)简单易用2)强调测试过程与开发过程的对应性和并行性3)按顺序进行,一个阶段的输入时下一阶段的输入。
(3)原型模型特点:1)需求完全定义之前,要快速构建一个原型系统2)用户试用,根据优缺点,给开发人员提出反馈意见3)根据反馈意见修改软件需求规格说明文档,以便系统可以更加准确地反映用户的需求。
4)可以减少项目的各种假设以及风险或者:有效的适应用户需求的变化。
.(4)增量模型特点:1)避免一次性投资太多带来的风险,将主要的功能或者风险大的功能首先实现,然后逐步完善,保证投入的有效性。
2)更快的开发出可以操作的系统3)可以减少开发过程中用户需求的变更4)一些增量可能需要重新开发或者:1)并行开发2)管理复杂(5)螺旋式模型特点:1)表现为原型的多次迭代2)用户可以更早的看到并使用产品3)用户可以与开发人员进行紧密合作4)项目的投资非一次性投入或者:以风险为导向(6)渐进式阶段模型(迭代模型)特点:1)阶段式提交一个可运行的产品,且每个阶段提交的产品都是独立的系统2)拖过阶段式产品的提交,可早期预警问题,避免后期发现问题的成本高.3)降低估计失误,因为可以通过阶段评审,重新估算下一阶段的计划或者:通过逐步迭代,建立软件系统7.项目计划活动的主要内容包括:(1)分解项目需求,标识项目全部工作产品和活动,编制WBS(2)估算工作产品和活动的规模、工作量、成本和所需资源(3)识别并制定项目资料管理计划及工作进度表(4)识别和分析项目风险,编制风险管理计划(5)协商相关约定8.任务分解结果的检验(理解任务分解)(1)明确并识别项目的各主要组成部分及项目的主要交付成果(2)确定每个可交付成果的详细程度是否达到了足以编制恰当的成本和历时估算(3)确定可交付成果的组成元素(4)核实分解的正确性还要明确如下问题:1)最底层项对项目分解来说是否是必须而且充分的。
2)每项的定义是否清晰完整。
3)每项是否能够恰当地编制进度和预算(5)最后与相关人员对WBS结果进行评审9.PDM网络图和ADM网络图的转换ADM图的画图示例绘制网络图的顺序:任务分解1).2)确定工序间的逻辑关系3)确定工序持续时间4)绘制网络图(时间坐标)主要记住两点:1)PDM网络图用方框表示活动,箭线表示活动间关系。
2)AMD网络图用箭线表示活动,圆圈表示活动间关系3)AMD示例见上图里程碑图看一下。
10.关键路径法最早开始时间(ES)某项活动能够开始的最早时间最早结束时间(EF)某项活动能够结束的最早时间最迟开始时间(LS)为了使项目按时完工,某项活动必须开始的最迟时间最迟结束时间(LF)为了项目按时完成,某项活动必须完成的最迟时间EF=ES+工期估计,正向推算,从项目开始沿网络图到项目完成为止。
LS=LF-工期估计,逆向推算,从项目完成沿网络图到项目的开始进行推算。
规则1:若某项活动存在多个紧前工序,则此项活动的最早开始时间必须同于或晚于所有紧前活动的最早结束时间的最大值。
规则2:某项活动的最迟结束时间必须等于或早于该活动直接指向的所有其他活动的最迟开始时间的最小值。
我的理解:1)正向:遇到多个指向一个,选择EF最大的那个作为下一个ES2)逆向:多个指向一个,选择LS最小的那个作为下一个LF(简单的说就是同一侧的下边减去 EF – ES = LF –= LS )TF浮动时间(.上边)关键路径:决定项目完成的最短时间。
寻找关键路径的方法:1)找时间最长的那条路径2)浮动时间为零的路径关键路径一般情况下只有一条,经过赶工压缩后可能有两条。
11.进度压缩应急法:(赶工法)(1)每个任务存在一个“正常”进度和“可压缩”进度。
一个“正常”成本和“可压缩”成本。
(2)增加资源,从“正常”进度压缩到“可压缩”进度。
(3)每个任务无法在低于“可压缩”进度内完成。
(4)有足够资源利用。
(5)进度压缩与成本增长成正比。
单位时间赶工成本=(可压缩成本–正常成本) / (正常进度–可压缩进度)。
1)一般首先选择持续时间相对长的活动。
压缩比比较小。
2)选择压缩成本低的活动。
活动持续时间的变化会引起成本的变化,某活动压缩单位时间所需增加的成本称为该活动的压缩成本。
例题见作业题。
P86书上例题12.常用的估算方法,采用“分而治之”的策略,对软件项目进行分解,再采用逐步分解方法1).求精的方式进行估算,最后通过累加获得整体的估算结果。
2)算术模型,通过估算模型来产生估算。
如cocomo模型,功能点分析模型(FPA)、标准构件法、IBM定量影响因子(QIF)等3)专家判断或经验法,如德尔菲法(Delphi technique)。
适合于初步估算,不适合于详细估算4)比例法是比较科学的一种传统估算方法,是基于类比的估算技术,根据过去类似的项目,直接进行类比获得当前项目的估算结果。
自顶向下估算模式,首先估算出项目一级的工作量,然后层层往下分摊,把上一层工作量分摊到下一层的阶段、活动或任务。
通常使用 FPA方法或COCOMO II 来估算项目一级的工作量。
自底向上估算模式,要求先估算出底层任务/活动一级的工作量,然后层层向上汇总到阶段和项目级。
通常使用 QIF 估算方法或专家判断来估算项目低层 WBS 元素的工作量(1)德尔菲法一种专家评估技术,适用于在没有或者没有足够历史数据的情况下,来评定软件采用不同的技术或者新技术所带来的差异。
基本步骤:1)组织者发给每位专家一份软件系统的规格说明和一张记录估算值的表格,请他们估算;2)专家详细研究软件规格说明后,对该软件提出三个规模的估算值:最小(ai)、最可能(mi)、最大(bi);3)组织者对专家的表格中的答复进行整理,计算每位专家的Ei = (ai + 4min表示En / n(n:……E = E1 + E2 + E3 +然后计算出期望值 / 6,)+ bi );个专家综合结果后,再组织专家不记名填表格,比较估算差,并查找原因。
4)则需重复上述过程,),如果各个专家的估算差异超出规定的范围(如15%5)最终可以获得一个多数专家共识的软件规模。
优点:不需要历史数据;非常适合新的较为特别的项目估算;缺点:主观、专家的判断有时并不准确和专家自身技术水平不够是会带来误判。
2)代码行估算(万行,月投入人案例:对一个软件组织来说,月开发源代码行数为LOC=10 。
160人,每人平均发生的费用为10000员则:人月;行//160)人均月代码量 = 100000行人月 = 625(1./行1个代码行的价值= 160*10000/100000=16元2() 3)功能点分析法(是在需求分析阶段基于系统功能的一种规模估算方法,功能点分析法(FPA)(或再从每个功能点类型和复杂度两个纬度,测算软件规模估计系统功能点数,工作量)。
是主流的软件规模估算方法。
例题:某个软件项目中,一个软件需求的五类功能计数项如下表所示。
)试计算这个软件的功能点FP(调整因子见下表)1 ,试计算本项目的总成本。
元/FP2)假设每功能点的单位成本是5000 简单一般复杂复杂度软件需求的功能计数项各类计数项外部输入5347外部输出18.权复杂度权重因五类功能计数项的复杂度权一复简外部输因影响影响因外部输0数据通联机更0外部查分布式处20复杂处1外部文1内部文10可重用性34配置负易安45事物0易操02多个场联机数据登5设施变1最终用户效率解:TCF=0.65+0.01(sum(Fi))假设所有技术复杂影响程度都是平均程度,即技术复杂度因子 = 3则TCF = 0.65 + 0.01(14 * 3) = 1.07FP = UFC*TCF = 313*1.07=335总成本 = 335 * 5000 = 1,675,000(4)COCOMO模型其中,b基本公式为:EAFE = aS×E是以人月为单位的工作量,S程序规模的单位是功能,KLO复简一 Effort EAF(Adjustment4*5*3*部是一个工作)Facto入在基本模型调整因子,1*8*7*输则随着a,b1。
中取值为出开发模式的变化而变化查外部1*3 1*53*7 例题:询为规计模估一个要开发部文4*51*72*10外的银行系统应用程30KLOC 件其功能以数据处序项目,文内部8*71*103*15属于有机型软件为理主,件 74 122 总计117313UFC模式。
随着项目进展,可以确定其15个成本因子的情况,除了软件可靠性\虚拟机易变性\开发进度限制因子的取值见表外,其余因子取值均为1.00,系数a=3.2,b=1.05.成本驱动因级取1.15 高软件可靠性0.87 虚拟机易变性低开发进度限制低1.08则该项目的工作量估算为:13.成本估算挣值法:三个成本,两个偏差,两个绩效已完成工程的计划成本(BCWP) = 已完成工作量 * 预算单价拟完成工程的计划成本(BCWS) = 计划工作量 * 预算单价已完成工程的实际成本(ACWP) = 已完成工作量 * 实际单价成本偏差(CV) = BCWP – ACWP < 0 超支 > 0 节约进度偏差(SV) = BCWP – BCWS < 0 拖延 > 0 提前成本绩效指数(CPI)= BCWP / ACWP < 1 超支 > 1 节约进度绩效指数(SPI)= BCWP / BCWS < 1 拖延 > 1 提前方法一:连续计算开发出来的产品的价值方法二:计算公式法。