软件项目估算指南CMMI5.docx

上传人:b****6 文档编号:14122201 上传时间:2023-06-20 格式:DOCX 页数:14 大小:160.74KB
下载 相关 举报
软件项目估算指南CMMI5.docx_第1页
第1页 / 共14页
软件项目估算指南CMMI5.docx_第2页
第2页 / 共14页
软件项目估算指南CMMI5.docx_第3页
第3页 / 共14页
软件项目估算指南CMMI5.docx_第4页
第4页 / 共14页
软件项目估算指南CMMI5.docx_第5页
第5页 / 共14页
软件项目估算指南CMMI5.docx_第6页
第6页 / 共14页
软件项目估算指南CMMI5.docx_第7页
第7页 / 共14页
软件项目估算指南CMMI5.docx_第8页
第8页 / 共14页
软件项目估算指南CMMI5.docx_第9页
第9页 / 共14页
软件项目估算指南CMMI5.docx_第10页
第10页 / 共14页
软件项目估算指南CMMI5.docx_第11页
第11页 / 共14页
软件项目估算指南CMMI5.docx_第12页
第12页 / 共14页
软件项目估算指南CMMI5.docx_第13页
第13页 / 共14页
软件项目估算指南CMMI5.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

软件项目估算指南CMMI5.docx

《软件项目估算指南CMMI5.docx》由会员分享,可在线阅读,更多相关《软件项目估算指南CMMI5.docx(14页珍藏版)》请在冰点文库上搜索。

软件项目估算指南CMMI5.docx

软件项目估算指南CMMI5

 

项目估算指南

Version1.1

文档名称:

CMMI5-项目估算指南-V1.1.doc

 

修订历史记录

日期

版本号

修改说明

修改人

核准人

 

项目估算指南

1目的

本文用于估算软件项目的规模、进度、工作量、成本,以指导项目作出合理的估算。

2围

本文件包括软件项目估算的各个方面,包括规模、进度、工作量、成本,并包括其在项目的中的分布估算。

本文件适用于公司所有项目。

3术语、缩写词

UCPUseCasePoint,用例点

4估算过程

4.1简要说明

准确的估算是最大可能加快开发速度的基础,没有准确的进度估算,再有效的进度计划也无从谈起。

不切实际的估算、不正确的期望是带来项目问题的主要原因。

估算是一个不断改进的过程,只有当详细地理解了每个功能,你才有可能准确估算出软件开发的进度和成本。

因此,能够提前做出的决策越多,估算的精确度就越高。

准确的估算可以更好的控制项目的规模、进度、成本。

工作量和进度估算通常在提交建议书与制定项目计划时进行,在项目实施过程中,也可能要对工作量和进度重新估计。

对于软件规模的估算主要有三种方法:

代码行,功能点,用例点。

本公司现在主要使用用例点方法。

对于工作量的估计,主要有两种方法:

⏹自顶向下的方法(Top-downapproach),用一个简单的方程从估计的规模求出估计的总工作量,各阶段的工作量可以根据它们占总工作量的百分比而得到。

在需求不太明确时,规模估计比较困难,这时估算的误差会比较大。

⏹自底向上的方法(Bottom-upapproach),首先获得项目各部分估计的规模,然后得到整个项目估计的规模。

在这种方法主要依据WBS来估算,首先将项目进行分解,列出主要工作,然后估计每件工作的工作量,汇总就可以得到整个项目的工作量。

对以上两种方法比较如下:

方法类别

优点

缺点

适用情况

自顶向下的方法

可以较好的利用过程数据库与历史数据

不需要进行工作分解

需求不明确时,规模不容易估算

项目情况与组织标准能力可能有较大差别

需求比较明确(一般在需求分析完成之后)

自底向上的方法

不需要估算规模

在WBS中可能会忽略某些重要的任务,工作分解比较困难

对某管理性工作不容易直接估算

不容易积累经验

需求不明确时(一般在撰写建议书或需求分析完成之前)

当工作量已经知道或确定以后,就可以根据历史数据,计算项目最适合的总进度,然后根据项目的人力分配情况与历史数据,计算出各主要进程碑的进度计划。

4.2流程图

4.2.1自顶向下的方法

4.2.2自底向上的方法

4.3估算规程

EntryCriteria

1

RFP,客户发出招标书,投标时

2

项目启动时

3

重大需求变更时

4

项目围变化时

Inputs

1

SRS

2

合同与建议书

3

历史信息

Steps

1

需求分解:

在估算时,首先需要当需求细分,需求分解越清楚、明确,估算的准确度越高。

需求随着项目的进展而不断明确。

2

⏹自顶向下的方法

估算产品规模:

本公司现在对产品规模采用UCP(用例点)来计算。

估算规模可以用以下几种方法:

(1)用估算算法进行估算

(2)采用Delphi法,根据历史数据,进行类比分析

⏹自底向上的方法

将项目的工作进行分解,列出项目的工作分解结构WBS,并估算出每件工作的工作量。

3

⏹自顶向下的方法

估算工作量:

根据产品规模与生产率历史数据推算出工作量,工作量用人月(PM,Person-Month)来衡量。

表单:

UCP估算表

⏹自底向上的方法

将WBS中所有工作的工作量汇总后,就可以得到整个项目的工作量。

表单:

WBS估算表

4

估算进度:

根据工作量推算出最合适的进度。

5

估算成本:

根据工作量与项目需要的资源,估算出成本。

具体处理方式见:

建议书和合同评审过程

表单:

报价表

6

工作量、进度分解:

将总的工作量与进度根据历史资料中的分配比例,分解到各阶段和活动中。

具体处理方式见:

项目度量与分析指南。

表单:

软件项目度量表

7

估算核准:

项目估算应写到项目管理计划中,并报开发部经理、业务部经理核准。

具体处理方式见:

项目管理过程。

表单:

项目管理计划

8

估算跟踪:

项目经理应定期跟踪项目估算,将其与实际执行情况进行比较。

若产生偏差,则要采取纠正和预防措施。

必要时,要进行重新估算,重复以下2~8步。

具体跟踪措施,见:

项目度量与分析指南。

Outputs

1

UCP估算表

2

WBS估算表

3

报价表

4

软件项目度量表

5

项目管理计划

ExitCriteria

1

估算通过核准

4.4裁剪指南

当不需要估算成本时,估算步骤中第5步可裁剪。

5估算方法

5.1UCP估算算法

UCP是用例点估算模型,估算流程包括以下步骤:

1.估算UUCP(未经过调整的UCP)

2.估算TCF调整因子

3.估算EF调整因子

4.估算UCP

5.估算工作量

6.估算进度

7.估算成本

估算时使用UCP估算表。

5.1.1估算UUCP

将软件需求用UseCases方式表达后,利用Actor(参与者)和UseCase(用例)的数量乘以相应的权值来计算UUCP(未经过调整的UCP)。

对于增强型项目,只计算新增与修改用例的UUCP。

计算UUCP时,Actor(参与者)和UseCase(用例)权值定义如下:

类别

复杂度

复朵度标准

权值

Actor

Simple

GUI

1

Average

Interactiveorprotocal-driverinterface

2

Complex

API/lowlevelinteractions

3

UseCase

Simple

1-3transactions/scenarios(事务/场景)

5

Average

4-7transactions/scenarios(事务/场景)

10

Complex

>7transactions/scenarios(事务/场景)

15

5.1.2估算TCF调整因子

估算TCF(TechnicalComplexityFactor,技术复杂度因素),要考虑以下因素:

Factor

Description

Value(0-5)

Weight

ExtendedValue

T1

Distributedsystem分布式系统

2

T2

Responseobjectives响应或吞吐量绩效要求

2

T3

End-userefficiency终端用户效率(联机)

1

T4

Complexinternalprocessing复杂的部处理过程

1

T5

Reusablecode可重用性

1

T6

Easytoinstall易安装性

0.5

T7

Easytouse易使用性

0.5

T8

Portable可移植性

2

T9

Easytochange易更改性

1

T10

Concurrent并发处理要求

1

T11

Securityfeatures安全要求

1

T12

Providesdirectaccessforthirdparties为第三方提供访问接口

1

T13

Specialusertrainingrequired特殊的用户培训要求

1

Tfactor(sumofextendedvalues)=

TechnicalComplexityFactor(TCF)=0.60+(0.01*Tfactor)=

其中:

8.ExtendedValue=Value*Weight

9.Weight值已给定

10.Value根据各因素的影响等级来确定:

●0:

表明因素与项目无关

●3:

影响程度中等

●5:

表示必不可少的因素,在整个软件开发过程中都有较强的影响

5.1.3估算EF调整因子

估算EF(EnvironmentalFactor,环境因素),要考虑以下因素:

Factor

Description

Value(0-5)

Weight

ExtendedValue

T1

FamiliarwithUML,熟悉UML

1.5

T2

Applicationexperience,开发经验

0.5

T3

Object-orientedexperience,面向对象的经验

1

T4

Leadanalystcapability,系统分析能力

0.5

T5

Motivation,积极性

1

T6

Stablerequirements,稳定的需求

2

T7

Part-timeworkers,兼职员工

-1

T8

DifficultprogrammingLanguage,复杂的编程语言

-1

EFactor(sumofextendedvalues)=

EnvironmentalFactor(EF)=1.40+(-0.03*EFactor)=

其中:

11.ExtendedValue=Value*Weight

12.Weight值已给定

13.Value根据各因素的影响等级来确定:

●0:

nottrueforanyteammembers,项目组成员都不具备该因素

Ø对于与经验有关的因素,表示没有该主题的经验

Ø对于积极性,表示没有积极性

Ø对于需求的稳定性,表示非常不稳定的需求

Ø对于兼职员工,表示全为兼职员工

Ø对于编程语言,表示容易掌握的编程语言

●3:

average,影响程度中等

●5:

trueforallteammembers,所有项目组成员都具有该因素

Ø对于与经验有关的因素,表示专家水平

Ø对于积极性,表示积极性高

Ø对于需求的稳定性,表示不变的需求

Ø对于兼职员工,表示全为全职员工

Ø对于编程语言,表示非常难的编程语言

5.1.4估算UCP

UCP计算公式如下:

UCP=UUCP*EF*TCF

计算出的结果就是产品的规模。

5.1.5估算工作量

根据产品规模与历史项目的生产率资料,可以计划出项目的工作量,公式如下:

Effort=Size*Productivity,effort单位为PM(Person.month)。

productivity要根据组织项目的实际历史数据来确定。

根据业界经验,建议每个UCP需要20人时,即2.5人日/UCP。

数据来源见附录。

5.1.6估算进度

以下是计算进度的一种方法:

Time(工作日)=C*Effort^P

C为进度调整系数,一般取3.0;

P为组织部开发能力调整系数,一般取0.35,此系数要根据组织实际项目执行的数据进行调整,以适合公司的实际能力.

数据来源见附录。

5.1.7估算成本

成本估算主要根据项目的工作量与项目需要的其它资源来计算,并要考虑风险等因素,具体请参考项目管理过程。

6附录

6.1生产率数据来源

公司建议生产率为每个UCP需要20人时,即2.5人日/UCP。

来源依据为:

《EstimatingSoftwareDevelopmentEffortbasedonUseCases.pdf》

Karner[13]proposedafactorof20staffhoursperusecasepointforaprojectestimate,whileSparksstatesthatfieldexperiencehasshownthateffortcanrangefrom15to30hoursperusecasepoint[21].SchneiderandWintersrecommendthattheenvironmentalfactorsshoulddeterminethenumberofstaffhoursperusecasepoint[18].ThenumberoffactorsinF1throughF6thatarebelow3arecountedandaddedtothenumberoffactorsinF7throughF8thatareabove3.Ifthetotalis2orless,use20staffhoursperUCP;ifthetotalis3or4,use28staffhoursperUCP.Ifthenumberexceeds4,theyrecommendthatchangesshouldbemadetotheprojectsothenumbercanbeadjusted.Anotherpossibilityistoincreasethenumberofstaffhoursto36perusecasepoint.

《ProjectEstimation.ppt》

Thisvariesfrom10hoursto40HoursperUCP.Thevariationisduetofactorsthathavenotbeentakenintoaccountsuchasnatureoftheteam,theproject,andtheprocessesusedbytheorganization

6.2进度估算数据来源

进度估算的公式为:

Time(工作日)=C*Effort^P

其中C=3.0;P=0.35,数据来源于:

《快速软件开发》(RapidDevelopment)P145

以与COCOMOII模型。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2