问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

面向规模的估算的优点

发布网友 发布时间:2022-04-23 06:20

我来回答

1个回答

热心网友 时间:2023-07-12 08:08

软件项目规模估计方法介绍

天极论坛2003-02-21

  软件项目的规模估算历来是比较复杂的事,因为软件本身的复杂性、历史经验的缺乏、估算工具缺乏以及一些人为错误,导致软件项目的规模估算往往和实际情况相差甚远。 因此,估算错误已被列入软件项目失败的四大原因之一。

  软件工程师经常会被问到,编一个什么什么样的软件需要多长时间、多少钱。面对这个问题,有不少人很犯难,因为,第一用户的需求太不具体,第二,自己缺乏一个科学的估计方法。这里向大家介绍几种软件项目规模的估计方法。

  概念介绍

  先介绍一个衡量软件项目规模最常用的概念--LOC(Line of Code),LOC指所有的可执行的源代码行数,包括可交付的工作控制语言(JCL:Job Control Language)语句、数据定义、数据类型声明、等价声明、输入/输出格式声明等。一代码行(1LOC)的价值和人月均代码行数可以体现一个软件生产组织的生产能力。组织可以根据对历史项目的审计来核算组织的单行代码价值。

  例如,某软件公司统计发现该公司每一万行C语言源代码形成的源文件(.c和.h文件)约为250K。某项目的源文件大小为3.75M,则可估计该项目源代码大约为15万行,该项目累计投入工作量为240人月,每人月费用为10000元(包括人均工资、福利、办公费用公滩等),则该项目中1LOC的价值为:

  (240×10000)/150000=16元/LOC

  改项目的人月均代码行数为:

  150000/240=625LOC/人月

  方法一、Delphi 法

  Delphi法是最流行的专家评估技术,在没有历史数据的情况下,这种方式适用于评定过去与将来,新技术与特定程序之间的差别,但专家"专"的程度及对项目的理解程度是工作中的难点,尽管Delphi技术可以减轻这种偏差,专家评估技术在评定一个新软件实际成本时通常用得不多,但是,这种方式对决定其它模型的输入时特别有用。Delphi法鼓励参加者就问题相互讨论。这个技术,要求有多种软件相关经验人的参与,互相说服对方。

  Delphi法的步骤是:

  1、协调人向各专家提供项目规格和估计表格; 
  2、协调人召集小组会各专家讨论与规模相关的因素;
  3、各专家匿名填写迭代表格;
  4、协调人整理出一个估计总结,以迭代表的形式返回专家;
  5、协调人召集小组会,讨论较大的估计差异;
  6、专家复查估计总结并在迭代表上提交另一个匿名估计;
  7、重复4-6, 直到达到一个最低和最高估计的一致。

  方法二、 类比法

  类比法适合评估一些与历史项目在应用领域、环境和复杂度的相似的项目,通过新项目与历史项目的比较得到规模估计。类比法估计结果的精确度取决于历史项目数据的完整性和准确度,因此,用好类比法的前提条件之一是组织建立起较好的项目后评价与分析机制,对历史项目的数据分析是可信赖的。

  其基本步骤是:

  1、整理出项目功能列表和实现每个功能的代码行;
  2、标识出每个功能列表与历史项目的相同点和不同点,特别要注意历史项目做得不够的地方;
  3、通过步骤1和2得出各个功能的估计值;
  4、产生规模估计。

  软件项目中用类比法,往往还要解决可重用代码的估算问题。估计可重用代码量的最好办法就是由程序员或系统分析员详细地考查已存在的代码,估算出新项目可重用的代码中需重新设计的代码百分比、需重新编码或修改的代码百分比以及需重新测试的代码百分比。根据这三个百分比,可用下面的计算公式计算等价新代码行:

  等价代码行 = [(重新设计% +重新编码% +重新测试%)/3]× 已有代码行

  比如:有10,000行代码,假定30%需要重新设计,50%需要重新编码,70%需要重新测试,那么其等价的代码行可以计算为:

  [ (30% + 50% + 70%)/3 ]× 10,000 = 5,000 等价代码行。

  意即:重用这10000代码相当于编写5000代码行的工作量。

  方法三、功能点估计法

  功能点测量是在需求分析阶段基于系统功能的一种规模估计方法。通过研究初始应用需求来确定各种输入、输出、计算和数据库需求的数量和特性。通常的步骤是:

  1、计算输入,输出,查询,主控文件,和接口需求的数目。
  2、将这些数据进行加权乘。下表为一个典型的权值表。

    功能类型  权值
    输入    4
    输出    5
    查询    4
    主控文件  10
    接口    10

  3、估计者根据对复杂度的判断,总数可以用+25%、0、或-25%调整。

  据发现,对一个软件产品的开发,功能点对项目早期的规模估计很有帮助。然而,在了解产品越多后,功能点可以转换为软件规模测量更常用的LOC。

  方法四、PERT估计法

  PERT对各个项目活动的完成时间按三种不同情况估计:一个产品的期望规模,一个最低可能估计,一个最高可能估计。用这三个估计用来得到一个产品期望规模和标准偏差的Pert 统计估计。Pert 估计可得到代码行的期望值E, 和标准偏差SD。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
钢琴块2umod1.7superman下载地址 ...它的肚子大小和喂食有什么关系,另外,它蜕皮的先兆是什么啊 男神今天过生日 零点发了一个生日礼物的图片 配字是咳咳。大家觉得这个... 科研绘图工具Graphpad Prism 8升级到Graphpad Prism 9了,更快做出SCI... GraphPad Prism 软件介绍 SCI写作-用TCGA数据库和Graphpad Prism绘制KM生存曲线Kaplan-Meier c... GraphPad Prism 简单易学,和Excel一样傻瓜,但比Excel规范得多(免费学... 外国语言文学包括哪些专业 四川大学外国语学院跟四川大学或四川外国语学院有什么关系呀_百度知 ... 2024四川大学考研专业有哪些 中国移动最便宜的纯流量卡? 手机卡cmcc1无法上网 都好几天没网了,为啥呀?这是什么卡? 通过利用各种属性的公式,项目经理使用的是哪一项估算技术? 移动送的5gcmcc流量怎么用? 怎么开通中国移动的cmcc移动业务? 中国移动推出360G19元月租卡是真的吗有什么后患? 怎样估算? 移动怎么开通cmcc发什么短信呢?有高手解决一下?? CMCC有几种套餐,怎么办理。 现在的谷歌地图(安卓),豌豆荚最新版,怎么没有了位置共享功能?那么谷歌纵横还有什么用? 手机卡变成Cmcc用不了流量 黑莓手机上装的谷歌地图怎么显示联系人的位置? 黑莓手机上装的谷歌地图怎么显示联系人的位置? 移动cmcc是免费的吗?不限流量吗?我没有流量套餐用cmcc会不会乱收费 手机谷歌地图是怎么定位到我自己的位置的 CMCC的收费标准? 中国移动CMCC流量怎么用? 谷歌地图找不到我的位置 种过香菜的土地能种辣椒吗?栽植的初期每亩施肥多少? 移动CMCC无限流量卡使用TF-LTE 还是用FDD-LTE? 关于移动cmcc 的问题。 移动卡怎样查询CMCC流量使用情况 红枣枸杞玫瑰花茶怎么泡 软件规模估算有哪些方法? 玫瑰花红枣枸杞茶怎么泡? 花茶的做法,红枣枸杞玫瑰花茶怎么做好吃 制作软件的成本是多少?多少行的代码量?采用哪些技术 玫瑰花枸杞红枣泡水的功效是什么? 如何用4种不同的估计方法,对软件产品规模进行量化估计 玫瑰花茶的做法,红枣枸杞玫瑰花茶怎么做好 功能点估算法 ilf为什么是7,10,15 玫瑰花红枣枸杞子一起泡可以吗,有什么作用 哪些软件适合使用功能点方法进行度量? 枸杞红枣加玫瑰花泡茶有什么功效?求解 如何确定软件的开发成本价格? 华硕笔记本主板烧了能修好吗 红枣枸杞玫瑰花茶怎么做 电脑主板烧了,能修吗 估算一个软件项目工作量多少时如何选择合适的估算方法? 玫瑰花加红枣和枸杞一起泡茶好吗