Atitit 衡量项目的规模

1. 预估衡量项目的规模的方法1

1.1. 方法一、Delphi 法1

1.2. 方法二、 类比法1

1.3. 方法三、功能点估计法1

1.4. 方法四、PERT估计法2

2. 统计法2

2.1. 代码行数2

2.2. 类或函数的数量和大小 2

2.3. 圈复杂度2

2.4. LOC(Line of Code),LOC指 3

3. 参考资料3

1. 预估衡量项目的规模的方法

1.1. 方法一、Delphi 法

Delphi法是最流行的专家评估技术,在没有历史数据的情况下,这种方式适用于评定过去与将来,新技术与特定程序之间的差别,但专家"专"的程度及对项目的理解程度是工作中的难点,尽管Delphi技术可以减轻这种偏差,专家评估技术在评定一个新软件实际成本时通常用得不多

1.2. 方法二、 类比法

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

作者::  ★(attilax)>>>   绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:[email protected]

转载请注明来源: http://www.cnblogs.com/attilax/

1.3. 方法三、功能点估计法

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

1.4. 方法四、PERT估计法

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

2. 统计法

2.1. 代码行数

2.2. 类或函数的数量和大小

2.3. 圈复杂度

是一种代码复杂度的衡量标准。在软件测试的概念里,圈复杂度“用来衡量一个模块判定结构的复杂程度,数量上表现为独立线性路径条数,即合理的预防错误所需测试的最少路径条数,圈复杂度大说明程序代码可能质量低且难于测试和维护,根据经验,程序的可能错误和高的圈复杂度有着很大关系

算公式2:V(G)=区域数=判定节点数+1。其实,圈复杂度的计算还有更直观的方法,因为圈复杂度所反映的是“判定条件”的数量,所以圈复杂度实际上就是等于判定节点的数量再加上1,也即控制流图的区域数。

对于多分支的CASE结构或IF-ELSEIF-ELSE结构,统计判定节点的个数时需要特别注意一点,要求必须统计全部实际的判定节点数,也即每个ELSEIF语句,以及每个CASE语句,都应该算为一个判定节点。

2.4. LOC(Line of Code),LOC指

LOC指所有的可执行的源代码行数,包括可交付的工作控制语言(JCL:Job Control Language)语句、数据定义、数据类型声明、等价声明、输入/输出格式声明

3. 参考资料

圈复杂度_百度百科.html

圈复杂度_Java教程_www.knowsky.com.html

时间: 2024-10-29 03:32:38

Atitit 衡量项目的规模的相关文章

Atitit. 衡量项目规模 ----包含的类的数量 .net java类库包含多少类 多少个api方法??

Atitit. 衡量项目规模 ----包含的类的数量 .net java类库包含多少类 多少个api方法?? 1 framework 4.5 (10万个api)1 2 Jdk8   57M1 3 Gialen项目2 4 播放器项目 3500个类2 5 Jquery 1.11 (api 305个)2 6 Wordpress 4.2   (函数api详单(约500个api)2 7 Html5  860个api2 7.1 Css2 8 Js  430个3 1 framework 4.5 (10万个ap

atitit.微信项目开发效率慢的一些总结

#---理念问题..这个是最大的问题.. 要有专人提升开发效率才好.. #---没有一个好的开发方法体系.... ini deve 法. fell asd+xp+ipd 比较好.. #---团队配合弱的.. 研发体系延续早期的一个独立的开发团队负责一个独立产品... 面对客户小批量个性化的需求,太高的成本.太长的周期,做会亏本,不做会损失市场 #---需求管理不足...没有需求更改流程. 需要需求管理,需求的范围不断扩大... 作者 老哇的爪子 Attilax 艾龙,  EMAIL:[email

软件项目开发流程

软件开发流程(Software development process) 首先 看一下基本软件项目开发流程图 其中 1.需求分析: 通过对客户业务的了解和与客户对流程的讨论对需求进行基本建模,最终形成需求规格说明书. 2.总体设计: 通过分析需求信息,对系统的外部条件及内部业务需求进行抽象建模,最终形成概要设计说明文档. 3.详细设计: 此部分在对需求和概要设计的基础上进行系统的详细设计(也包含部分代码说明). 4.开发编程: 对系统进行代码编写. 5.测试分析与系统整合: 对所有功能模块进行模

项目可行性评估

项目正式开发前,需要对项目做出可行性评估,对项目的可行性评估是项目立项前的重要工作.上节就是从客户需求.产品服务.市场.竞争等方面让创始人对项目做了简单评估. 可行性评估的任务就是用最小的代价在尽可能短的时间内确定项目的可行性,有没有做的必要性.可行性评估一般是从技术可行性.经济可行性和操作可行性三个方面来考虑.可行性评估的成果是可行性研究报告,可行性研究报告模板参见附录1. 项目的可行性评估根据项目的规模和项目来源,可适当对评估项进行裁剪.国家计划或大中型投资类项目,评估项要满足GB/T 85

Java 9终于要包含Jigsaw项目了

当Jigsaw在Java 9中最终发布时,这个项目的历史已经超过八年了. 转载于:http://www.itxuexiwang.com/a/liunxjishu/2016/0228/180.html?1456925937 在最初的几年中,它必须要与另外两个类似的Java规范请求(Java Specification Request )进行竞争,这两个规范名为JSR 277 Java模块系统(Java Module System)以及JSR 294 增强的模块化支持(Improved Modula

项目范围管理论文提纲

项目范围是为了完成具有所规定特征和功能的产品必须完成的工作,项目范围对项目的影响是决定性的. 项目范围管理包括为成功完成项目所需要的一系列活动,以确保项目包含且仅仅包含项目所必须的完成的工作. 项目范围管理的内容包括:范围计划编制.范围定义.创建工作分解结构.范围确认和范围控制. 项目只有完成项目范围中的全部工作才能结束,因此一个范围不明确.或干系人对项目范围理解不一致的项目是不可能获得成功的. 项目范围不明确最可能的后果是,项目的范围蔓延,项目永远都做不完. 对范围理解不一致的结果往往使项目组

结对项目总结博客

结对编程 这次结对项目由我和陈谋共同完成.下面是一张我们在一起讨论时委托他人帮忙拍摄的图片: 结对编程的优点: 1.相互之间能够进行代码复审,在代码复审中的提问与回应能帮助两人之间互相了解,更好的发现自己程序的瑕疵. 2.在开发层次,结对编程能提供更好的设计质量和代码质量,两人合作解决问题的能力更强. 3.对开发人员自身来说,结对工作能带来更多的信心,高质量的产出能带来更高的满足感. 4.结对能更有效地交流,相互学习和传递经验,分享知识. 结对编程的缺点: 1.对于有不同习惯的编程人员,在一起工

首次担任组长领导团队项目(个人成长与学习领悟)

学习完了数据库的基本知识,Java通信进阶基本上就要结束了,一如以往,我们迎来了一个项目练习,练习的目的是让我们更好的巩固Java通信进阶的基础知识,融会贯通,查漏补缺. 这一次的项目名称叫做:HuaXinIM聊 软件的内容基本上与QQ一般无二. 大概功能如下图: 这一次的项目不同以往,项目的规模对于现在我来说非常的大,上一段时间,我们有一个SVN项目练习,大概就是做登录注册界面,完成客户端服务器上传下载功能,两个人一个小队,我一个人做完,但是也做了很久,大概用了两三天的时间. 我知道这不是一个

Jigsaw项目会解决Java的JAR地狱问题么?

本文来源于我在InfoQ中文站翻译的文章,原文地址是:http://www.infoq.com/cn/news/2015/12/jigsaw-jar-hell Nicolai Parlog是一位热情的软件工程师,数字版权与开源软件的狂热拥护者:他对AssertJ.ControlsFX.FindBugs及Property Alliance等项目都做出过重要的贡献.近日,Parlog就Jigsaw项目撰写了一篇文章,谈到了Jigsaw项目的一些不足以及改进之处.Jigsaw项目有着雄心勃勃的宏伟目标