随着计算机技术的发展,现在的计算机环境与传统的环境已经有了天壤之别
因此,软件工程人员一直在寻找一种可以广泛应用的度量单位
这个度量单位需要独立于开发所采用的技术,支持需求收集、估计、项目管理和质量度量的需要
功能点分析就是能够满足上述需求的选择
经验证明,应用功能点分析来度量软件的规模是非常可靠的,尤其是在项目估计、变更管理、生产率度量和功能需求的沟通等方面
很多人问,功能点分析是否适用于评价现在应用越来越多的计算机环境,例如,实时的嵌入式编码和面向对象的编程方法
既然功能点是从用户的角度按功能来表达开发的工作产品,那么它是独立于所采用的技术或工具的
以下是对功能点分析方法和潜在收益的介绍
功能点分析介绍功能点分析的初衷之一是让项目组和客户可以使用同一方法定义功能需求
结果证明,理解客户需求最好的办法是站在客户的角度分析软件系统产生的结果,从而来确定客户关心的问题
因此,功能点分析的一个主要的目标就是从用户的角度定义系统的能力
为了达到这个目标,专家们分析了人们对计算机系统的不同使用方式
从用户的观点来看,系统是从五个基本方面帮助他们进行工作的:其中两项是最终用户的数据需求,因此称作“数据功能”;另外三项强调客户对数据的可调用性,称作“交易功能”
功能点的五个要素·数据功能o内部逻辑文件o外部界面文件·交易功能o外部输入o外部输出o外部查询内部逻辑文件:这是第一项数据功能,使客户可以使用他们负责维护的数据
例如驾驶员在起飞行前通过显示器输入一系列航行数据,这些数据保存在一个文件里备用,并可以在执行过程中进行修改
因此,驾驶员负责维护包含航行信息的文件
数据在系统中的逻辑分组是由最终用户维护的,我们把它叫做“内部逻辑文件”(ILF)
外部界面文件:这是第二项数据功能,也和数据的逻辑分组有关
在这种情况下,用户不负责维护数据,数据在另一系统中驻留由其他用户进行维护