项目管理者联盟 | 中国工程管理网 | 中国研发管理网   会员中心 资料库 论坛 博客

PMI-ACP®认证

适合敏捷开发项目
敏捷项目管理最佳实践

网络课程

PMI-PBA®认证

重视项目商业分析
商业价值与需求分析能力

网络课程

NPDP®认证

产品管理国际认证
全球产品管理最佳实践

网络课

PMP®认证

单项目管理经典指南
年轻项目经理首选

北京 | 直播 | 录播

PgMP®认证

大型复杂项目全球标准
定位高级项目管理层

网络班

PfMP®认证

链接战略与项目
实现组织资源投资回报

全球直播

软考项目管理

信息系统项目管理师
系统集成项目管理工程师

计划 | 报名 | 经验

圈子
志同道合,朋友再聚首
项目管理者联盟PMP培训
会员· 圈友
登录ID
密   码
 
圈子信息
圈名:项目管理知识宝库
加入方式: 允许任何人加入

项目管理知识宝库

项目管理涉及很多学科知识,通过本圈子大家可以互相交流,把项目管理方面的知识进一步提高。

圈主:wenyu2010    管理员:暂无管理员   
成员数:5133
主题数:294094
排名1
通讯录
圈友列表
加入本圈
管理本圈
 
话题区 投票区 资料区 精华区
标题:软件项目的规模估计历来是比较复杂的事
楼主

fayjie
PMB:40960
省份:四川省
行业:工程设计安装
注册:2009/12/18
  
  
软件项目的规模估计历来是比较复杂的事,因为软件本身的复杂性、历史经验的缺乏、估算工具缺乏以及一些人为错误,导致软件项目的规模估计往往和实际情况相差甚远。 因此,估计错误已被列入软件项目失败的四大原因之一。

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

  概念介绍

  先介绍一个衡量软件项目规模最常用的概念--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]× 已有代码行

  方法三、功能点估计法

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

  1、计算输入,输出,查询,主控文件,和接口需求的数目。

  2、将这些数据进行加权乘。下表为一个典型的权值表。

  功能类型  权值

  输入  4

  输出  5

  查询  4

  主控文件  10

  接口  10

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

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

回复 | 引用 发表时间:2014/4/4 22:16:26
!  您尚未登录,不能回复主题。    现在 登录  注册
关于联盟 | VIP会员 | 培训服务 | PMP认证 | PgMP认证 | 刊物出版 | 沙龙会议 | 人才服务 | 广告投放 | 联系我们 | 友情链接
建设运营:共创时网络
版权所有 京ICP证070584号 BBS业务许可2007第353号