规模估计
在获得一个软件项目后,首先需要对软件项目的规模做初步的估计,为制定软件开发计划奠定基础。软件规模估计方法主要有算法模型法、专家判定法、类比法、自顶向下法、自底向上法和差别估计法,这几种方法各有优缺点,其比较如表5-1所示.
表5-1软件规模估计方法对比优点
名称 | 简介 | 优点 | 缺点 |
算法模型法 | 算法模法包括线性模型、乘积模型、解析型法模型、表格模型、复合模型等 | (1)比较客观、高效,可重复性好,可以在一段时间之后向算法模型提出相同的问题而得到相同的答案; (2)适用范围比较广泛,利于开发成自动化工具 | 算法模型是根据以前项目的经 验进行估计的,其准确程度依 赖于可用的评估信息,难以用 在没有前例的场合,不能处理 异常情况 |
专家判定法 | 专家判定就是与一位或多位专家商讨,专家根据自己的经验专家判和刘项目的理解对项日成本作定法出估计。包括:求中值或平均值、开小组会议、Delphi方法、Wideban己DelpN方法
| (1)能够处理新旧项目所包含的技术、系统结构或应用等方面的差异; (2)能处理软件开发过程中难以用数学形式描述的异常情况,并在估计的 (3)不需要历史项目数据,快速而高效 | 过于依赖专家带有很大的局限 性,主观成分比较大,常用于准备开发阶段的粗略估计 |
类比估计法 | 就是把当前项目和以前做过的类似项目比较,通过比较获得其成本的估计值。该方法需要软件开发项目组保留有以前完成项目的历史记录类比估计既可以在整个项目级上进行,也可以在子系统级上进行 | 成本估计是基于实际系统开发经验的,并可以通过分析历史成本数据来确定新旧系统之间的差异,以及这些差异对工作量产生的影响。 | (1)无法弄清以前项目究竟在 多大程度上代表了新项日的特隆,使用这种估计方法要求有一个内容丰富、准确、可靠的软件过程数据库; (2)难以适应新项目人员、技术 等发生变化的情况 |
自顶向下法 | 自顶向下的估计法是从软件项整体出发,即根据将要开发的软件项目的总体特性,结合以前完成项目积累的经验,推算出项目的总体成本或工作量,然后按比例分配到各个组部分中去 | 优点在于对系统级的重视。因为估计是在整个已完成项目的经验的基础上得出的所以不会遗漏诸如系统集成、用户手册、配置管理之类的系统级事物的成本成 |
1)难以识别较低级别上的技 术性困难,这些困难往往会使成本上升; (2)由于考虑不细致,它有时会 遗漏所开发软件的某些部分
|
自底向上法 | 自底向上估计是把待开发的软件逐步细化,直到能明确工作自底向量,由负责该部分的人给出工上法作量的估计值,然后把所有部
| 由于每部分的估计值是由负责该部分的人在对任务较为详细的理解基础上给出的,因而每部分的估计较为精确 | 易于忽略许多与软件开发有关 的系统级成本,如系统集成、配置管理、质量保证等,所以给出的总估计值往往偏低 |
差别估计法 | 将开发项日与一个或多个已完成的类似项目进行比较,找到与类似项目不同之处,并估计每个不同之处对成本的影响,导出开发项目的总成本 | 可以提高估计的准确度 | 不容易明确“差别”的界限 |
(1)为每位估计人员发放估计所需相关材料和估计表格。
(2)估计人员开会讨论待估量估计假定和理由等,并能够达成一致意见。
(3)估计人员以不记名的方式填写估计表格,确保填写过程“背靠背”。
(4)项目负责人汇总结果,按照表5-2中WidebandDelphi综合估计表模板中的计算方
法iI · 算,并将结果返回给各个估计人员。