01软件项目估算过程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1。目的 (2)
2。范围 (2)
3。估算过程 (2)
3.1 规模和工作量估算 (3)
3.1.1单位复杂度定义 (3)
3.1.2项目单位分解 (3)
3.1.3规模和工作量估算 (3)
3.1.4估计的总体项目开发工作量 (4)
3.2 进度估算 (4)
3.3 风险估算 (5)
3.4 关键计算机资源估计 (6)
3.5 有关项目成本和报价的信息,请参阅<项目预算表> (6)
3.5.1 人工成本 (6)
3.5.2 非人工成本 (6)
3.5.3 工程造价 (6)
3.5.4 项目报价 (6)
4。估算方法 (7)
5,项目预算审查 (7)
6。参考 (8)
1.目的
软件估算的目的是通过软件项目管理和开发工作量的估算来确定项目开发的成本,并将开发周期用作项目招标和项目建立的基础。项目估算通常还包括软件大小(尺寸),软件项目风险和关键计算机资源的估计等。
软件的估计难以精确或准确地衡量,相反,它是通过其合理性来评估的。项目估算通常与市场价格,业务目标,项目经验以及开发成员的工作灵活性有关,并且是对以上方面的综合反映。
2.范围
软件项目的估算不是估算过程。该项目通常估计很多次。例如,在业务流程中,报价是通过估算进行的;在项目计划过程中,通过估算确定项目开发计划;在里程碑式的评审和变更过程中,通过估算和汇总来调整项目计划。
3.估算过程
3.1规模和工作量估算
在估算过程中,尽可能根据项目的类型,技术,语言等属性,参考过去项目的数据,根据过去项目的历史数据,指定项目的方案单位项目划分并确认。
如果没有历史数据可供参考,请使用Delphi等方法进行估算。
3.1。1个单位复杂度定义
软件项目经理根据下表并结合项目的历史数据来确定项目的单元复杂性标准。
(下表列出了制定复杂性标准时要参考的因素。对于每个项目,软件项目经理都需要
3.1.2项目单位分解
•软件项目经理组织相关人员根据定义的标准对系统进行分解,以确认系统的程序单元和程序单元的复杂性。
3.1。3规模和工作量估算
确认简单,中等和复杂之后,软件项目经理可以参考历史数据估算工作量或规模,或使用Delphi方法,并将结果注册到程序单位估算表中。(当使用Delphi方法进行估算时,各种估算值的范围应该在单位复杂度标准定义的范围内)下表:
3.1。4估计的总体项目开发工作量
软件项目经理组织相关人员来估计项目开发过程中每个开发阶段的相对工作量和总工作量(您可以参考先前项目的历史数据,否则需要使用Delphi方法进行估计)。
工作量分配比率应根据过去的项目经验和实际项目情况进行调整,在项目开发过程中进行跟进,并在项目结束时进行总结。
前六个阶段的工作量主要是指完成实际开发任务所需的工作量;质量保证工作量包括执行检查,填写各种工作记录和其他活动;配置管理工作量包括配置管理库管理活动和状态报告,填写各种记录等活动;项目管理是指软件项目经理的管理活动,例如任务跟踪,组织沟通等;评审包括各种技术评审,计划评审和里程碑评审;培训包括项目管理和项目技术方面的培训。
3.2进度估算
项目进度估算应基于过去类似项目的时间进度。具体步骤是:
1.创建MS Project 2000文件。
2.设置项目工作日历。
3.转到“甘特图”视图,并根据计划单位估算表列出项目的所有任务/活动。
4.定义任务依赖性。
5.设置所有约束,包括:
a.固定的里程碑日期;
b.关键资源获取日期(人力资源/硬件/软件)。
6.转到资源页面,然后输入可用于所有相关项目相关组的资源。
7.转到甘特图视图并分配任务资源。
8.设置任务期限,该期限是基于以下考虑:
a.根据系统大小和工作量进行估算。
b.根据指定资源的工作效率调整任务周期。
c.在工作周期中,不包括假期。
d.在里程碑周期中,根据活动和时间划分设置合理的周期。
e.对于无法预测的问题,请搁置15%保证金
9.重复步骤3,4,5,6,7,8,在正确分配任务,资源和周期之前。
3.3风险估算
1识别风险项目(您可以使用风险项目检查指南)并分析风险
2确定风险优先级
根据上面的清单“前5名”风险项,根据风险大小确定优先级。
3建立风险等级表并制定相应的防范措施
高
3.4关键计算机资源估计
计算机资源的估计可以与工作量和进度的估计并行进行。估算过程如下:•估计系统的大小,包括数据类型和存储在数据库中的数据记录的数量,同时访问系统的用户数量以及通过网络传输的数据量。
•计算存储在数据库中的数据大小,每分钟的请求数和复杂性。
•定义系统中使用的协议并计算网络带宽。
•计算数据库服务器的性能和其他服务器的性能,并定义操作系统和数据库系统。
•定义应用程序服务器和其他附件
•计算台式计算机的性能并定义开发工具。
•定义硬件服务器,台式计算机和开发计算机。
•根据上述估算步骤,填写计算机资源估算表(请参阅“项目估算表”)。
需要指出的是,关键计算机资源的估计是指项目必须满足的计算机资源需求。
例如,软件大小不能超过500MB,系统响应时间不能少于2秒/页,等等。对于重要的计算机资源,要求应记录在计算机资源估计表中。
3.5项目费用及报价请参阅<项目估算表>
3.5.1人工成本
项目的人工成本是指由于各种人员参与而产生的成本。可以通过将估计的总工作量乘以相应的小时成本来获得:
人工成本=∑(工作量X每小时费用)
3.5.2非人工成本
非人工成本主要包括与项目相关的成本,例如软件,硬件,差旅和办公费用等。
3.5.3工程造价
项目成本是人工成本和非人工成本的总和:
项目成本=人工成本+非人工成本
3.5.4项目报价
项目报价基于项目成本加上合理的利润。应该指出的是,项目报价通常受客户负担能力,市场价格和项目竞争对手报价的限制,应综合考虑。