技术开发 频道

PSP基本技术

    项目测量

    项目测量的目的是双重的。首先,这些度量能够指导进行一些必要的调整以避免延迟,并减少潜在问题及风险,从而使得开发时间减到最少。其次,项目度量可在项目进行的基础上评估产品质量,并且可在必要时修改技术方法以改进质量。

    随着质量的提高,错误会减到最小,而随着错误数的减少,项目中所需的修改工作量也会降低,就导致整个项目成本的降低。

    软件测量可分为直接测量和间接测量。软件工程过程的直接测量,包括花费的成本和工作量。产品的直接测量,包括产生的代码行、执行速度、内存大小及某段时间内报告的缺陷。产品的间接测量,包括功能、质量、复杂性、有效性、可靠性、可维护性及其他能力。

    测量技术有LOC测量和FP测量法,LOC测量是直接测量,FP测量是间接测量。

    1 LOC(Lines of Code,代码行)测量代码尺寸

    把项目划分为若干个功能,分别计算每个功能的代码长度,所有功能代码行之和即项目的代码长度。

    LOC测量表包括:

    实际工作量由菜单项“项目实际进展”中的信息得到。

    实际总成本=日薪*实际工作量

    实际行成本=实际总成本/实际代码长度

    实际生产率=实际代码长度/实际工作量

    2 FP(功能点)测量代码尺寸

    项目的功能点数是几个测量参数(用户输入数、用户输出数、用户查询数、文件数、外部接口数)的功能点之和。

    用户输入数:计算每个用户输入,它们向软件提供面向应用的数据。输入应该与查询区分开来,分别计算。

    用户输出数:计算每个用户输出,它们向软件提供面向应用的信息。这里,输出是指报表、屏幕、出错信息,等等。一个报表中的单个数据项不单独计算。

    用户查询数:一个查询被定义为一次联机输入,它导致软件以联机输出的方式产生实时的响应。每一个不同的查询都要计算。

    文件数:计算每个逻辑的主文件(如数据的一个逻辑组合,它可能是某个大型数据库的一部分或是一个独立的文件)。

    外部接口数:计算所有机器可读的接口(如磁带或磁盘上的数据文件),利用这些接口可以将信息从一个系统传送到另一个系统。

    FP测量表包括:

    每个测量参数的实际FP计数=实际值*加权因子

    项目实际FP=各参数FP计数之和*复杂度调整因子

    实际工作量由菜单项“项目实际进展”中的信息得到。

    实际总成本=日薪*实际工作量

    单个FP成本=总成本/FP计数

    实际生产率=实际FP计数/实际工作量

    项目进度

    无论有经验的软件工程师还是新手软件开发人员,在开始开发项目之前,都会有一个或粗或细的开发计划,如何使计划更接近实际?

    为了更精确地制订计划,可以把项目划分为若干个小任务,分别制定每个任务的完成计划。

    工作量的安排可参考LOC估算工作量或FP估算工作量,通过LOC估算表或FP估算表,可以查看估算工作量的值。

    错误记录

    记录项目各个阶段的错误及解决办法,不仅可以查看每个项目出现的错误列表,而且可对所有项目中的错误按类型分类查看。

    软件工程师们都知道,缺陷排除效率(DRE)是软件质量度量的指标之一。当把一个项目作为一个整体来考虑时,DRE按如下方式定义:

    DRE=E/(E+D)

    其中E=软件交付给最终用户之前所发现的错误数
    D=软件交付之后所发现的缺陷数

    最理想的DRE值是1,即软件中没有发现缺陷。但现实中,D会大于0,如何把错误发现的阶段尽量控制在软件交付使用前?PSP能改善这一点。

    使用PSP详细记录了错误的类型、出错次数、出错原因、错误说明及解决办法,使开发人员可以随时查看以前所犯的错误。把错误直观集中地显示出来,能够起到经常提醒开发人员的作用,以减少犯同样错误的机会,把错误尽量限制在交付使用前。

    项目报告

    对比分析与项目有关的数据,使软件人员对估算、实际数据认识更深,提高以后的预测率。

    从报告中,可以对每一个项目清楚地比较其估算工作量、计划工作量与实际工作量的值,它们的比值越接近1,说明估算、计划越准确。

    还可以对LOC、FP的估算实际生产率做比较。同时报告还应提供项目中出现的错误数、出错最多的错误名称及错误类型等。

0
相关文章