软件技术范文

软件技术是一个瞬息万变的行业,软件人才的培养方向要根据企业和领域的需求来确定。下面是我整理的一篇关于软件技术的范文。感谢您的阅读。

浅谈软件项目评估技术

摘要:由于软件产品的特殊性,软件项目的评估比较困难,评估结果的准确性较差。为了解决这个问题,产生了许多不同的软件项目评估技术。本文简要阐述了各种估算技术的主要思想和优缺点。特别是详细介绍了功能点估算技术,并举例说明了其应用方法。

关键词:规模估算;成本估算;示例应用程序

中国图书馆分类号:TP311.5。

软件项目的评估一直是一件复杂的事情。由于软件本身的复杂性、历史经验的缺乏、估算工具的缺乏以及一些人为错误,软件项目的估算往往与实际情况相差甚远。因此,估算错误被列为软件项目失败的四大原因之一。因此,这也证明了正确评估软件项目是多么重要。

在软件项目管理中,估算是对项目持续时间或成本的预测。因此,估算是对未来的一种预测。从这里我们可以看出,估算的关键点是?工作量估算?还是?成本估算?而且在估算两者的过程中,大多数情况下是缺一不可的?软件规模?这个条件,所以本文把软件估算分为两种,第一种是软件项目规模的估算,第二种是把估算的规模转化为工作量估算或者成本估算。目前,规模估算技术被广泛应用,如代码行估算技术和功能点估算技术;以及广泛使用的成本估算技术,如COCOMO算法模型估算技术。

除上述技术外,还有几种估算技术可用于估算规模,也可直接应用于估算工作量或成本,如德尔菲估算法、类比估算法、PERT估算法等。与上面列出的技术不同,这些估算技术更多地是特定于线路的,并且具有特定的计算过程和公式。这些技术只是一个想法,根据选定的科目进行估算。下面的文章将简要介绍上面提到的几种估算技术,并通过具体的例子重点介绍功能点估算技术。

1估算技术简介

1.1码线估计技术。LOC是指所有可执行的源代码行,包括可交付的作业控制语言(JCL)语句、数据定义、数据类型声明、等价声明、输入/输出格式声明等。[1].代码行估算技术主要是估算软件的规模,也就是通过这种技术来估算待开发的软件项目中有多少行代码。一般为了表示方便,用大单位千代码行(KLOC)来表示要开发的软件项目的规模。这种方式更适合有经验积累、发展模式稳定的公司。如果是新成立的公司,使用这种估算技术会有很大的误差,增加项目失败的风险。

1.2功能点估算技术。功能点法是一种经过验证的方法,但是它的应用成本很高,估算的工作量也很大。功能点估算技术最终的结果是规模化,还是要知道项目的生产力数据才能得到实际的工作量。功能点估算技术将系统功能分为五种类型:输入、输出、查询、外部文件和内部文件。其中,输入是数据跨越系统边界,从外到内的一个基本数据处理过程。数据的来源可以是人机输入接口/界面或另一个应用系统;输出是一个基本的数据处理过程,其中导出的数据跨越系统边界,从内部到外部。这些输出数据可以生成报告或发送到其他外部系统的输出文件;查询是一个基本的数据处理过程,不包括衍生数据和数据维护,包括输入和输出;内部文件存在于系统边界内,是一组逻辑上相关的数据,可以被用户识别;外部文件存在于系统边界之外,是用户可以识别的一组逻辑上相关的数据。使用功能点估算技术进行估算的大致步骤如下:

(1)通过需求分析,按照上述五种类型对系统功能进行分类。

(2)分析每个功能项的复杂程度,大致可以分为一般、简单、复杂三种类型,每种类型对应一个权重值,如表1所示。

(3)根据各功能项的复权值,求各功能项的加权和,即为未调整功能点(UFC)。

(4)分析系统的技术复杂性,功能点估算将与系统相关的技术影响因素分为14组(以Ai表示),每组分为6个级别,权重从0到5不等。根据分析结果和公式计算技术复杂系数(TCF),即TCF=0.65+0.01(SUM(Ai))。

(UFC和TCF相乘是函数点。

1.3 COCOMO算法模型。Cocomo模型是一个层次化的软件成本估算模型系列,包括三个子模型:基本模型、中间模型和详细模型。三个模型使用相同的计算公式,即E=asb?电弧炉[2].其中e为人工月工作量;s是KLOC中的程序规模;EAF是一个工作量调整系数,在基本模型中为1,在中级模型和详细模型中根据成本动因确定。a和B是随发展模式变化的因素,其中发展模式分为有机、半分离和嵌入式三种。

Cocomo算法模型是一种准确易用的估计方法。如果项目没有足够的历史数据,将很难确定调整因子和系数,从而增加估算的难度。但是一旦建立了这个模型,通过Cocomo模型得到的项目工作量和项目周期就有了更高的准确性。

1.4德尔菲估算技术。德尔菲估算技术又称为专家估算技术,由一个被认为是这项任务专家的人进行估算,而估算过程很大一部分是建立在不清楚、不可重复的推理过程上,即直觉。所以这项技术的专家?专业?对项目的了解程度和理解程度是该技术的重点和难点,其质量直接影响估算结果的准确性。

德尔菲估算技术的估算过程不像功能点估算技术或COCOMO算法模型那样有明确的计算方法或公式。它将待估项目的相关信息发送给专家,然后专家由专人负责收集,再发送给专家进行估算。重复几次后得到一个估算结果,说明只是一个想法,所以可以用来估算成本、风险等。除了估算规模,就是估算一个选定的对象。

1.5模拟估算技术。?类比估算?顾名思义,估算结果是通过与以往类似项目(如应用领域、环境、复杂程度等)的对比得出的。).类比估算技术是一种粗略的估算方法,其估算结果的准确性取决于历史项目数据的完整性和准确性。类比估算技术类似于德尔菲估算技术,其应用不仅用于规模估算,还用于成本和工作量估算。1.6 PERT估算技术。PERT估算技术,也称计划评估估算技术,对各主体(如规模、费用、工期等)进行估算。)三种不同情况:乐观估计结果、最可能估计结果和悲观估计结果。然后通过计算这三个结果来获得期望的标度和标准偏差。这种估算技术可以用来估算规模,也可以用来估算建设周期。相比较而言,PERT技术的估算结果比类比估算技术更准确。

2功能点估算技术的应用实例

假设一个员工管理系统,经过需求分析,知道系统包含以下功能:

(1)员工信息维护:添加员工,修改员工信息,查询员工信息;

(2)部门信息维护:增加部门,修改部门信息;

(3)工资统计:统计员工年薪并打印输出。

其中,在系统中添加员工档案会用到员工的基本信息:员工ID(标签控制)、姓名、性别、年龄、婚姻、部门ID;学历:学校名称、专业、教育背景。部门信息将用于部门维护:部门ID(标签控制)和部门名称。员工工资信息由另一个财务系统提供,工资总额信息包括员工的基本信息:员工ID(标签控制)、姓名、部门名称;薪资信息:薪资水平和薪资金额。

按照功能点估算技术的估算步骤,首先计算未调整的功能点,即各类功能项的加权和,分析系统六大功能项的类型和复权值如表2所示:

假设这个项目的14技术复杂因素都是?有一定影响?,即权重值都是2,那么这个项目的功能点是:FP=45?(0.65+0.01?14?2)=41.85。如果你知道项目使用什么语言,你可以把功能点的数量转换成代码行数。

3结论

简要介绍了目前流行的几种软件项目评估技术。本文重点介绍了功能点估算技术,并通过实例演示了功能点估算技术的应用方法。通过本文的描述,可以看出每种项目估算技术都有各自的优缺点。要想得到更准确的估计结果,就不能只依靠一种估计技术,而是要综合运用各种估计技术,才能得到更全面的信息和更准确的结果。目前也有一些基于这些估算技术的自动估算工具。相信通过不断的开发,软件项目成本估算难的问题会得到解决。

参考资料:

朱少民。软件项目管理[M]。北京:清华大学出版社,2009-11。

[2]秦征等.软件项目管理[M].北京:清华大学出版社,2004。

[3]李,,何梅,,舒巴格迪,王庆.软件成本估算方法及应用[J].软件学报,18卷,第4期,2007年4月,775-795。

[4]大卫咨询集团,功能点计数实践手册版本4.2.1,2005年1月,

[5]刘谦。软件项目评估方法在敏捷开发中的实践。中国管理网,2010-06-18。

作者简介:王赢,女,研究生,软件工程专业;姜,,男,硕士研究生,软件工程专业。

点击下一页了解详情> & gt& gt软件技术范文