软件项目管理笔记
项目经理-》把控整个开发软件过程的细节 人员控制,成本控制,流程控制....
1. 计算机软件:
计算机程序解释和指导使用程序文档的总和。
包括源程序和目标程序
同一个程序的源文件和目标文件-》目标产品
源程序-》用高级语言或者汇编语言编写的程序
目标程序-》源程序通过编译或者解释加工以后能
被计算机执行的程序。
2. 计算机软件的特点:
-
既是作品又是工具
-
开发工作量大,成本高-》复制容易
-
无形的,可以被多次使用,但是商业寿命短
3. 分类:(两大类)系统软件和应用软件
-
系统软件
-
操作系统
-
程序设计语言
-
数据管理系统
-
常用的服务程序
-
-
应用软件-》特定的软件
-
办公软件
-
图形图像处理软件
-
媒体播放软件
-
压缩软件
-
网络浏览软件
-
电子邮件处理软件
-
下载工具软件
-
杀毒软件
-
4. 软件项目管理:
4.1: 什么是项目?什么软件项目?
4.1.1: 项目:是唯一的,临时的,在一定的时间内完成的。
为了创造一个唯一的产品或提供一个唯一的服务而进行 的临时性的努力。
-
特征: 项目有明确的目标。 项目之间的活动具有相关性。 限定的周期。 有独特性。 资源成本的约束(预算)。 项目的不确定性(需求变更,人员变动)。
4.1.2: 软件项目:
是一个逻辑实体,相互之间的作用更强,变更会随时发生, 以及更深的渐进的联系。 由于软件项目的变更性很强,为了确保软件项目的成功, 提出了要对软件项目进行管理。
项目管理的定义:是一系列的伴随着项目的进行而进行的、目的是为了确保项目能达到期望结果的一系列管理行为。
软件项目管理与传统的项目管理之间:软件项目的管理除了要对软件项目深入了解,掌握项目管理的知识,还要有相应的经验和技巧。
4.2: 了解-》必不可少的软件项目管理知识体系。
项目管理:十大管理 范围管理,时间管理,费用管理,质量管理,人员, 沟通,风险,采购,集成,利益相关者管理
根据传统项目管理,软件项目管理如流水线生产, 不同的过程造就不同的产品, 不同的过程造就的产品的质量也就不同, 管理好过程产品质量也就会相应的提升。
过程管理就是对过程进行管理,目的是让过程能够被共享, 复用,并得到持续的改进。
-
初始:一个项目或一个阶段可以开始,并要求着手实际,定义和授权项目或者项目的某个阶段。
-
计划:为完成项目所要达到商业要求而进行的实际可行的工作计划、维护,确保实现项目的既定商业目标,有了计划基准是后面跟踪和监控的基础。
-
控制:通过监控和检测过程确保项目达到目标,必要时采取一些修正措施。集成变更控制是一个重要的过程。
-
执行:根据前面指定的基准计划,协调人力和其他资源,去执行项目管理计划或相关计划。
-
结束:收尾过程,取得项目或阶段的正式认可并且有序的结束该项目或阶段,向客户提交相关产品,发布相关结束报告,并且更新组织过程资产并释放资源。
项目初始开始:项目确立和生存期,项目确立分成项目立项,项目招标,项目授权。
项目立项:确定项目的目标,时间,资源,资金,关键在于得到项目发起人的认可。一个软件项目的立项开始于软件项目的启动,只有立项了需求才会得到满足。
项目招标:在确认决策为购买时,便要启动项目招标,甲方,乙方,竞争,合同签署。
项目授权:项目章程 表示项目存在,在项目管理中要开始履行职责,包括:开发计划,组织实施,项目控制。
某公司发出甲方招标书,一些科技公司对招标书进行项目分析, 向甲方发送投标书,甲方进行选择,拟定合同并签订,乙方中标后, 项目授权书,正式成立。
项目成立后便要选择相应的完成项目的策略-》项目生存期模型。
4.3: 项目的特征:
项目管理的5个过程组及其关系 各个过程组通过其结果进行链接,一个过程组的结果或输出是另个一过程组的输入。其中计划过程组、执行过程组、控制过程组是核心管理过程组。
项目:明确的目标,具有限定周期,对资源成本具有约束性。
4.4: 软件项目生存周期:
定义:描述了开发的主要阶段,定义每个阶段完成的过程和活动,确认每个阶段完成的输入和输出。
瀑布模型:单向模型,严格要求项目步骤,即需求分析,设计,编码实施,测试,维护,管理,管理方便但是不能满足需求变更。
V模型:
用户需求------接收测试
需求分析----系统测试
总体设计--集成测试
详细设计-单元测试
编码和调试
4.5: 三重约束:时间,费用,功能
模型:
CMM:软件能力成熟度模型》 认证评估
过去几十年对软件产业产生了深远的影响
CMM模型是目前世界上公认的软件产品进入国际市场的通行证
软件过程改善的途径。
目标,推动软件企业在产品的研发,生产,服务和管理上不断成熟进步的手段,是一种持续提升和完善企业自身能力的过程
CMM等级的划分:
五个等级: 分别标志着软件企业能力成熟度的五个层次。
从低到高,软件开发生产计划精度逐级升高,周期缩短,成本降低。
一个软件公司能做到CMM等级要求,通过项目的评估,生产力和成本能够提升40%-50%,软件产品的容错率能下降30%.
对于一个软件企业来说,达到CMM2,基本上就进入了规模开发,具备了承接外包项目的能力。
如果CMM3 评估,整体架构的整合。
能否能够通过CMM认证成为国际上衡量软件企业工程开发能力的一个重要标志。
CMM的五个等级:
CMM 1--初始级
软件过程是无序,甚至是混乱的,对开发过程计划没有定义,成功取决于个人努力,企业的管理是反应式的。
CMM 2 --已管理级(建立了规矩)
建立了基本的项目管理过程来跟踪费用,进度和功能特性,制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。
CMM 3 --已定义级
已将软件管理和工程两个方面的过程文档化,标准化,并且综合成该组织的标准软件过程。所有的项目均使用经批准,剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。(软件生产可视化)
CMM 4 --量化管理级
分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解和控制,管理有一个做出结论的客观依据,管理能够在定量的范围内预测性能。
CMM 5 --优化管理级
过程的量化反馈和先进新思想,新技术促使过程持续不断的改进。
CMMI 能力成熟度集成模型
把所有的以及将被发展出来的各种能力成熟度模型,集成到一个框架中去。
两个功能;
第一:软件采购方法的改革 第二:建立一种从集成产品与过程发展的角度出发,包含健全的系统开发原则的过程改进。
从软件角度看》》 CMMI是CMM的修订,更合理,更科学,更周密。
CMMI更为工业界和政府部门提供了一个集成的产品集,主要目的:消除不同模型之间的不一致和重复,降低基于模型改善的成本。
CMMI将以更佳系统和一致的框架来指导组织改善软件过程,提高产品和服务开发,获取和维护能力
提供了一个有组织的过程,单一的集成化框架,消除了不一致性,减少了模型间的重复性,增加了透明度和理解。
建立了一个自动的,可扩展的框架。
CMMI的关注点:成本效益,明确了重点,过程集中和灵活性。
CMMI的基本思想:
1 解决了软件项目过程改进难度增大问题
2 实现软件工程的并行和多学科组合
3 实现过程改进的最佳效益
CMMI的原则:
1 强调了高层管理者的支持
2 仔细确定改进目标
3 选择最佳实践,取其精华,去其糟粕,得到新的使劲按活动模型
4 过程改进要与组织的商务目标一致,与发展战略紧密结合
CMMI目标;
1 为提高组织过程和管理产品开发,发布和维护能力的提供保障
2 帮助客观评价自身能力成熟度和过程域能力,为过程改进建立有限级以及执行过程改进
CMMI方法:
1 决定那个CMMI模型等级最适合组织改进需要
2 选择模型的表示法是连续式还是阶段式
3 决定组织需要用到的模型中的知识领域
4 类似CMM提出过程改进,集成化过程改进
开始集成化改进,建造集成改善平台,集成传统过程,启动新过程,进行改进评估.
CMMI的评估方式;
自我评估:用于本企业领导层评价公司自身的软件能力
主任评估:使本企业领导层评价公司自身的软件能力,向外宣传自己企业软件能力
CMMI的评估类型:
软件组织的关于具体的软件过程能力的评估
软件组织整体软件能力的评
###组织平台
组织:
从广义上说,组织是指由诸多要素按照一定方式相互联系起来的系统
从狭义来说,指的是人们为实现一定的目标,互相协作结合而成的集体或者团体
人们按照一定的目的,任务和形式编制起来的社会集体
从管理学的角度:一个社会实体,它具有明确的目标导向和精心设计的结构与有意识协调的活动的系统,同时又同外部环境保持密切的联系.
政策:
疫情对生活的影响>>经济有影响->春节黄金周,餐饮,旅游,电影票房,房产
企业==>员工的社保延迟缴纳,个税....
实践活动:对事物如何加深理解
主体与个体之间通过一定的中介发生相互作用的过程
why要有组织结构:
实践是认识的基础,它对认识起决定性的作用.
简答题:
CMMI比CMM多个I 这个I是intergration,集成的意思zhidao。 CMM适用于软件的组织成熟度测评。 CMMI适用于多种组织成熟度测评,其中CMMI_SW适用于软件。 CMMI相对CMM更完整,更适用于大环境。 过去有政策,内过CMM3的企业可以得到政策补贴(现在政策有变化),所以还是有部分公司参与容CMM的评估。
成立项目,执行实施,大中型企业,创业项目,都是项目立项。
通过立项,实施组织决策者得到批准,项目立项是一个重要环节
立项与合同
一套体系,是一个适合整体项目流程的规范
也有一些标准
每个项目不同,不一定采用这样的标准
但是整个项目立项,是一定要做的。
项目立项的过程,存在一些难点,
首先:固有的思维的抵制。要实施项目立项,就必须要有高层的支持,并且高层必须放心让管理者去进行工作的开展。
第二:不愿意引进,引进一些有经验和优秀的员工,不知道该如何运用,必须改变思想,积极引进经验丰富的管理者人员,对旧有的流程改进。不能对企业的发展形成改进的阻力。
第三:项目实施如何达到目标,提高效率,根据公司内部情况进行目标量化分析,达到尽量量化效果,不是强制量化。需要原有历史数据的积累才能更有效。
第四:化解员工的抵制为支持。每一个员工都希望在一个良好的氛围,被别人认为优秀的公司工作。确定目标是一致的,没有有效的管理,没有建立量化指标机制。
项目立项目标:
不要让员工被动的等待分配工作,而是积极的去申请工作。调动员工积极性,有问题要先考虑自身是否有漏洞存在,不断的改进,不断的变更将更加有效的组织和融合项目团队高效的工作。
项目立项管理:
是在项目正式实施前必不可少的程序,经过项目机会研究,项目可行性研究,项目论证,项目评估等阶段。
###### 需求分析:
• 指对要解决的问题进行详细的分析,弄清楚项目发起人以及项目其他干系人的要求,待开发的信息系统,要解决客户和用户的业务问题以及问题的来龙去脉,需求分析就是哟啊确定待开发系统应该做什么
主要确定:开发系统的功能,性能,数据,界面等要求。
实现步骤:获取当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型。
需求分析工作内容:
1.问题识别
2.分析与综合
3.编制需求分析的文档
4.需求分析评审
分析的方法按照分解的不同 分为:
1、结构化分析方法
2、软系统方法
3、OOA
4、PDOA
项目建设书 可行性研究报告
为什么要编制可行性研究报告?
一:什么是可行性研究报告:
可行性研究报告是在指定某项目之前,对该项目实施的可行性,有效性,技术方案以及技术政策进行具体深入,细致的技术论证和经济评价,以求确定一个在技术上合理,经济上合算的最优方案和最佳时机而编制的书名报告。
二:主要内容是什么:
要求以全面系统的分析为主要方法,以经济效益为核心,对要进行的影响项目各种因素,大量的数据资料进行论证,项目是否可行,提出综合的分析评价,指出优缺点和建议。为了结论的需要,添加一些附件,相关数据,论证材料,计算图表,附图等等==》增强可行性研究报告的说服力
三:具有什么样的意义:
决定性意义的工作。为投资决策者提供科学依据。论证项目的必要性,财务的盈利性,经济上的合理性,技术上的先进性,建设的可能性和可行性
项目可行性研究内容:
1 、投资必要性
2、技术的可行性
3、财务可行性
4、组织可行性
5、进行可行性
6、社会可行性
7、风险因素及政策
立项管理:
需要获得产品,服务或者得到成果的一方称为采购方,也叫建设方。
提供产品,服务或者成果的一方称为供应方,也叫承建方。
采购方的项目可行性研究:
初步可行性研究
详细可行性研究
项目论证与评估
可行性研究报告的编写,报告和获得批注
供应发的项目可行性研究:==》项目招标
需要准备的工作:
招标文件的内容和编制方法
招标评分标准的制定
评标的过程
选定项目供应方
可行性研究-初步可行性研究
目的:
1.分析项目的前途,从而决定是否应继续深入调查研究
2.初步估计和确定项目中的关键技术以及核心问题,以确定是否需要解决
3.初步估计必须进行的辅助的研究,以解决项目的核心问题,并判断是否具备必要的技术、实验、人力条件作为支持。
内容:
1.市场的情况和设计开发的能力
2.设备与材料投入分析
3.网络规划、物理布局、技术和设备方案的选择
4.项目设计
5.项目进度安排
6.项目投资与成本估算
四种结果:
1.肯定,对于比较小的项目甚至可以直接去做的
2.肯定,转入详细可行性研究,进行更深入的分析研究
3.展开专题研究,如市场考察、实验室、工厂等等
4.否定,项目不可施行
初步可行性研究形成初步可行性研究报告,该报告可以作为正式的文献供决策者参考。
项目可行性研究是项目立项的第一步
目的:选择投资机会,鉴别投资方向
投资者:从市场和技术两方面寻找投资机会,还得考虑国家的有关政策和产业导向。
供应方进行项目识别:
可行性研究-项目建议书(立项申请)
项目建议书:项目发展周期的初始阶段,是选择项目的依据,也是可行性研究的依据,在项目建议书批准之后,方可开展对外的工作,参照项目建议书。
核心内容:
1.项目必要性
2.项目的市场预测
3.产品方案或服务的市场预测
4.项目建设必须的条件
项目建议书编写、申报和审批
1.编写:大中型和限额以上拟建项目上报建议书时应附初步可行性报告,该报告由有资格的设计单位或工程咨询公司编制。
2.申报:按照关系报道主管部门。
3.审批:按照管理体制,管理,分级进行审批。
三种方式:
1、从政策导向中寻找项目机会
2、从市场需求中寻找项目机会
3、从技术发展中寻找项目机会
项目论证:
1、从供应方的技术可行性分析
2、供应方人力以及其他资源配置能力可行性分析
3、项目财务可行性分析
4、项目风险分析
5、对可能的其他竞争对手公司的相关情况分析
合同:
投标:投标人应该按照招标文件的要求编制投标文件
投标文件应当对招标文件提出实质性要求和条件做出相应。
合同谈判:一般先谈技术条款,后谈商务条款
技术谈判:包括合同技术附件内容,合同实施技术路线,质量评定标准,采购设备和系统报价以及人员
商务谈判:基本条件为基础,
详细可研究
详细可研究:
是在项目决策前对项目有关的技术、经济、法律、社会环境等方面的条件和情况进行详尽、系统的、全面的调查、研究分析,对各种可能的技术方案进行详细的论证、比较,并对项目建设完成后可能取得的经济、社会效益进行预测和评价,最终递交的可行性研究报告将成为进行项目评估和决策的依据。
1.国家经济和社会发展饿长期规划,部门与地区的发展规划,以及国家和地方相关的政策,法律,法规和制度。
2.项目主管部门对项目设计开发建设要求请示的批复。
3.项目建议书或者项目建议书批准后签订的意向性协议
4.国家、地区、企业的信息化规划和标准
5.市场调研分析报告
6.技术、产品或工具的有关资料
7.国家有关经济法规、规定
三个原则:
1.科学性原则
2.客观性原则
3.公正性原则
详细可研究的主要内容
内容:
1:概述
2:需求确定
3:现有资源、设施情况分析
4:初步设计方案
5:项目实施进度计划建议
6:投资估算和自己筹措计划
7:项目组织、人力资源、技术培训计划
8:经济和社会效益分析 效果评价
9:合作方式
详细可研究方法:
1、财务评价,直接效益和直接费用,内部效果
1.1.静态评价法
1.1.1投资收益率
1.1.2.静态投资回收期
1.2.动态评价法
1.2.1.净现值
1.2.2.内部收益率
1.2.3.外部收益率
1.2.4.动态投资回收期
1.2.5.收益比值
2、国民经济评价,间接效益和间接费用,外部效果
2.1.经济评价法
2.2.市场预测法
2.3.投资估算法
2.4.增量净效益法
详细可行性研究 程序框架
立项:--》项目目标设定--》1.市场分析与预测 2.设备分析 3.设计开发技术分析 4.人力资源分析 5.资金分析 6.信息安全分析 7.网络物理布局分析 8.网络基础资料分析等..--》方案比较--》最优方案论证(项目财务评价 项目国民经济评价)--》编写可行性报告--》编写信息化影响报告 编写资金筹措计划 编写采购规划和招标申请报告
成本效益分析
1.有形效益
2.无形效益-->收益 成本-->
(1.固定成本
2.变动成本 可变成本
3.混合成本
)
(1.直接成本
2.间接成本
)
(1.沉没成本
2.机会成本
3.质量成本
)
如何控制项目进度和产品质量平衡?
1.进度和质量 -》矛盾点
进度加快必然损失质量
提高质量必定延缓进度
2.如何控制进度
合理规划进度
监控和跟进项目进度
通过实行进度跟踪
设置最低进度标准
做好风险管理
3.如何控制质量
定期查漏补缺
制定软件开发规范
通过核对实现质量跟踪
设置最低质量标准
4.进度和质量如何相辅相成
明确痛点
依据客户价值排列优先级
适当的时候采取必要的变更通道
契合当前企业生存的目标
对进行偏差沟通,寻找契合点
引导各类型相关方参与项目
引导客户积极参与项目,多接受反馈,以明确最终需求
阶段性复盘,随时调整契合点
过程监控很重要,为阶段性复盘提供真实数据
5.推荐工具
Excel Jira Kanban
6.操作
明确项目范围,质量目标,项目控制的内容等
设置检查点,做好阶段性工作评审,发现偏差和分析影响项目质量制约因素,并清除制约因素,是项目质量控制在一定的范围内。
与项目成员一起商定项目计划,确保计划的可行性,同时也获得项目在成员对进度的承诺。
做好项目进度,成本,质量,风险监控,权衡各种因素之间的关系,及时协调各方资源,确保项目按计划进展。
做好需求调研分析,获得真正的客户需求,做出客户真正想要的成果,提升客户的满意度
正确获得管理层的支持,赢得更多的资源,确保资源部署及时有效。
预防胜于检查,尽量主动出击,确保进度和质量共同提高
持续改进,及时总结经验教训,采取改进措施
现值:
*静态投资回收期
*动态投资回收期
1.投资回报率 = 1/投资回收期 * 100%
2.投资回报率 = 运营期年均净收益/投资总额*100%
3.内含报酬率 = 净现值等于0时的折现率
总投资收益率= 运营期总收益/总投资
项目论证:
1.是确定项目是否实施的依据
2.是筹措资金,贷款的依据
3.计划,设计,采购,设备,资源配置的依据
4.防范风险,提高项目效率的重要保障
1.项目财务评价
2.国民经济评价
3.环境影响评价
4.社会影响评价
1.明确项目范围和业主目标
2.收集并分析相关材料
3.拟定多种可行的,相互替代的实施方案
4.多方案分析,比较
5.选择最优方案进一步详细全面的论证
6.编制项目论证报告,环境影响报告书和采收审批
7.编制自己筹措计划和项目实施进度计划
1.合规
2.政策、技术、经济相结合
3.重视数据资料
4.要加强科学的预测工作
5.微观经济效果与宏观经济效果相结合
6.近期经济效果与远期经济效果相结合
7.定性分析与定量分析相结合
什么是软件估算?
将软件量化管理的一部分,软件应用的领域广,功能复杂,如何能够更快的开发出软件。
软件估算:
软件规模,生产率,工作量,软件成本,开发周期,缺陷,风险,资源估算等。
是一个非常复杂的事情:
项目变更,开发团队人员变化,需求变化,工作能力大小变化等,都会导致估算结果有差异。
==>因为软件估算没有做好==》延期
软件估算是非常重要的,准确的估算结果是软件项目成功的重要保障。
为什么会导致项目失败?
1 不完整的需求
2 变更的需求
3 缺少领导的支持
4 不切实际的期望
5 开发能力不足
6 缺少用户的参与
做好软件估算可以完善上述原因中的不足部分。
软件估算中面临的问题
1 规模越大的软件,复杂性越高,面临的问题就越多,难以估算。
2 需求不确定性,导致估算结果容易出现较大偏差。
3 陌生领域的项目,复杂性和认知性差,不确定性增大。
4 估算人员的水平。经验,对估算项目的理解能力等都会对估算结果产生一定的影响。
软件规模估算:
首要环节。是估算项目的基础,定义了软件的客观大小,不会因为人员,方式,时间的不同而变化
甲方:项目的预算,招标金额,时间...
乙方:估算投标的金额,投入的资源,人力,时间,开发等成本
效率,质量和成本
效率=总工时/软件规模
质量=缺陷加权总数/软件规模
成本=单位成本*软件规模
合理的对软件项目进行规模估算,能够更加精准确定项目开发所需要的资源,费用,周期等
软件规模大小决定了软件的成本及开发资源的投入
由于估算活动的不确定性,软件规模是最难确定的因素
依据合理的方法对软件规模进行估算,提供更加科学合理的估算结果
常见的估算法:
经验法:
根据管理人员以往的项目或者领域的经验,对未来的工作量进行估计
类推法:
将本项目点一部分属性与高度类型的一个或者几个完成的项目进行比对,适当调整后后的待估算项目的工作量,工期或者成本估算值的方法
类比法:
讲项目的部分属性与类似的一组基准数据进行对比,进而获得待评估项目的工作量,工期或者成本估算的方法
方程法:
根据一个相对稳定的公式对未来的工作量进行估计,基于基准数据建模,可以与行业和企业数据相结合
交叉验证法:
估算过程中采用不同的方法分别进行估算,并进行交叉验证。 如果不同的方法的估算结果产生较大差异,采用专家评审的方法确定估算结果。
软件规模度量的发展:
经历了长期的过程。 最初,采用物理度量法:汇总程序的字节数。==》对软件规模度量提供了一定的参考价值。 技术度量:比如采用代码行,函数数量,数据库,模块,类的数量等。==》采用“功能”的阶段。 功能:页面数,窗口数,按钮数等等==》功能点方法 软件测量和度量分析方法: 功能点分析法:是一种相对抽象的方法,将软件功能进行量化。以“功能点”作为量化单位
功能点:
是从用户的角度来衡量的,通过分析软件系统所要实现的功能来计算软件项目的功能点数,达到预估软件项目的目的。
功能点的三个特点:
1 从用户视角 2 定义明确 3 便于计算
不在直接关注软件项目的开发语言,开发工具和平台技术,
关注程序的“功能性”和“实用性”。
估算前的规划:
比如说-》办公室-》杂乱无章-》有用的文件时
软件项目-》收集了很多需求,意见,问题-》很难估算项目的规模,工作量、
因此在估算之前,我们需要对众多信息进行整理,归类分析,-》一个条理清晰的项目计划
精心的规划是任何一个软件开发项目成功与否的关键
软件项目规划的众多是对:人员角色,任务进度,经费,设备资源,工作成功等作出合适的安排。
第一:确定软件范围
对软件的数据,控制,功能,性能,约束,接口,可靠性等 最直接最可靠的来源就是用户对软件的需求的描述。 比如说:C/S架构 系统 客户提供: 数据录入,查询,上传,数据汇总,互联,数据库存储,节点数据的本地存储 等等 由于不同人员对于上报数据的权限不同,对用系统用户使用分级管理,不同级别的永华,具有对数据不同管理权力,从而保证在软件使用过程中不发生混乱。 分析出模型:确定工作所需资源
第二:确定工作所需资源
1 人力资源==>最有创造力的团队 2 可复用软件资源 最容易被忽视的重要资源 软件资源库 3 具有经验构件 可以直接复用的构件,新构件,有部分经验构件 4 环境资源
估算对象:
准确的软件项目估算的定义:在给定范围内,对于哟啊开发的软件规模的预测,以及对开发软件所需的工作量,成本和日历事件的预测。
估算是一种大约的估计,是将误差限定在一定范围内的估计。
估算对象都有哪些?
1 规模估算 规模:是一个工程可量化的结果,使用具体的数字来体现项目的描述。 2 工作量估算 决定了开发团队的规模和构建,以时,天,月,年的单位进行衡量 3 进度估算 进度是项目自始至终之间的一个时间段,以不同阶段的里程碑作为标志 不是对每一个细小任务都加以估算,对任务的适当的分解。 对于软件工程来说,各个方面都有不确定性 4 成本估算
估算的策略:
1 自顶向下的策略
站在客户的角度去看问题的策略,以客户的要求为最高目标,任何估算的结果都必须符合这个目标
工作方法是:由项目经理为主的一个核心小组根据客户的要求,确定一个时间期限,将任务分解,将开发工作进行对号入座,以获得一个估算结果
由于完全是从客户要求出发的策略,缺少了许多客观性,
但是比较容易被客户,项目经理接受
2 自底向上的策略
是一种从技术,人性的角度出发看问题的策略。
将项目充分进行讨论==》合理的任务分解==》每个任务的难易程度==》每个任务依照项目成员的特点进行分配==》要求进行估算==》估算加起来就是项目的估算值。
------------恢复内容结束------------