软件项目规模成本概念
甲方:你多少钱能干?
乙方:我去估算。然后给您报价。
一般是你要多少钱
软件项目规模
软件项目规模即工作量,是从软件项目范围中抽离出的软件功能,然后确定每个软件功能必须执行的一系列软件任务
规模的单位:
LOC(LOC OF CODE)源代码程序长度的测量
FP(Function poiny) 用系统的功能数量来测量
人月 1人月=1个人1个月的工作量 28人月,不可以是28人28月的工作量
人天
人年
软件项目成本
人的劳动的小号所需要的代价是软件产品的主要成本。
货币单位
人民币、美元...
软件项目规模和软件成本的关系
规模是成本的主要因素,是成本估算的基础。
有了规模就确定了成本。
成本估算过程
成本估算输入:
- 项目需求、WBS
- 历史项目度量、
- 资源要求(资源编制计划)
- 资源消耗率:如人员成本:100元/小时
- 进度规划:项目总进度(一般是合同要求)
- 学习曲线:没干啥呢,在学习的过程中,也给我发工资了 的成本。为开发项目打基础。
成本估算的结果
直接成本:与具体项目相关的成本。运维/测试....
间接成本:不能具体到某个项目中的成本。eg:培训/房租/水电/员工福利的支撑。
估算的基本方法
代码行,功能点
类比(自顶向下)估算法
自下而上估算法
参数估算法
专家估算法
代码行(LOC)
从软件程序量的角度定义项目规模
与具体的编程语言有关
要求功能分解足够详细的
有一定的经验数据
代码行技术的主要优点
代码是所有软件开发项目都有的“产品”,而且很容易计算代码行数。
代码行技术的缺点
对代码行没有公认的可接受的标准定义
代码行数量依赖于所用的编程语言和个人的编程风格
在项目早期,需求不稳定,设计不成熟,实现不确定的情况下很难确定估算代码量
代码行强调编码的工作量,只是项目实现阶段的一部分。
越是成熟的软件企业,其实编码占的时间会越少。
功能点
与实现产品所使用的语言和技术没有关系的
与系统的功能数量来测量其规模
两个评估:内部基本功能,外部基本功能
加权和量化
课堂笔记