首页 实用的软件系统开发成本估算法-软件成本管理(含例子)

实用的软件系统开发成本估算法-软件成本管理(含例子)

举报
开通vip

实用的软件系统开发成本估算法-软件成本管理(含例子)软件系统开发成本估算法功能点估算含例子..教育资料教育资料目录一、功能点估算法概念 1二、功能点估算法的特点 1三、功能点分析的步骤(含例子) 23.1识别项目的类型 23.2识别项目的范围和边界 33.3按不同功能点计算 33.3.1 功能点估算分类 33.3.2 识别功能点的重要原则 43.3.3 内部逻辑文件与外部接口文件 43.3.4 事务类型功能点的计算规则 93.3.5 计算调整因子 143.3.6 计算调整后的功能点个数 253.4总结 33.教育资料功能点估算法概念功能点估算法是软件项目管理众多方法...

实用的软件系统开发成本估算法-软件成本管理(含例子)
软件系统开发成本估算法功能点估算含例子..教育资料教育资料目录一、功能点估算法概念 1二、功能点估算法的特点 1三、功能点分析的步骤(含例子) 23.1识别项目的类型 23.2识别项目的范围和边界 33.3按不同功能点计算 33.3.1 功能点估算分类 33.3.2 识别功能点的重要原则 43.3.3 内部逻辑文件与外部接口文件 43.3.4 事务类型功能点的计算规则 93.3.5 计算调整因子 143.3.6 计算调整后的功能点个数 253.4总结 33.教育资料功能点估算法概念功能点估算法是软件项目管理众多方法中比较有技术含量的一个,也是最实用的一个。在软件项目管理中项目 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 制定的优劣、合理直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要。如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。功能点估算法的特点项目范围的估算在CMMI的“MA”度量分析管理和“PP”项目计划中均有涉及。对软件项目范围的估算有很多种方法,常见的是LOC代码行和FP功能点法。它们之间的区别和关系如下:·功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高。假如这个时候使用LOC代码行估算法,则误差会比较大。·使用功能点估算法无需懂得软件使用何种开发技术。LOC代码行估算法则与软件开发技术密切相关。·功能点估算法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算。·通过一些行业 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 或企业自身度量的分析,功能点估算法是可以转换为LOC代码行的。 在项目刚开始的时候进行功能点估算可以对项目的范围进行预测。在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同。因此,在项目结束时还需要对项目的范围情况重新进行估算,这个时候估算的结果才能最准确反映项目的规模。功能点分析的步骤(含例子)本文将以国际标准IFPUG(InternationalFunctionPointUsersGroup)组织提供的功能点估算法V4.1.1为基础进行讲解。如下图所示,首先大家应该了解功能点估算法的使用步骤。图1功能点估算法的步骤   具体步骤包括:   1.识别功能点的类型。   2.识别待估算应用程序的边界和范围。   3.计算数据类型功能点所提供的未调整的功能点数量。   4.计算人机交互功能所提供的未调整的功能点数量。   5.确定调整因子。   6.计算调整后的功能点数量。识别项目的类型 国际IFPUG组织将软件项目分为三类,功能点估算法适用于任何一类项目:·新开发项目·二次开发的项目·功能增强的项目识别项目的范围和边界 使用UML的“UseCase”用例图是以用户角度进行识别项目范围和边界的最好方法,在画用例图时就必须明确系统的边界。通过系统的边界,我们可以知道哪些功能要计算功能点,哪些功能点是外部系统负责计算的。以图2为例:一个外贸订单系统只包含录入、修改、删除、查询和统计订单的功能,而汇率查询转换服务是不属于该系统的。  应用程序边界的识别规则大家一定要牢记,不能从技术角度去思考,必须从用户角度来定义;如果项目牵扯到多个系统,那么必须将这多个系统的边界全部描述清楚。图2外贸订单系统用例图按不同功能点计算功能点估算分类 功能点估算法将功能点分为以下5类:   1.ILF:InternalLogicalFile内部逻辑文件   2.EIF:ExternalInterfaceFile外部接口文件   3.EI:ExternalInput外部输入   4.EO:ExternalOutput外部输出   5.EQ:ExternalInquiry外部查询 其中,ILF和EIF属于数据类型的功能点,EI、EO、EQ属于人机交互事务类型的功能点。   以外贸订单系统项目为例:·录入订单、修改订单、删除订单是EI;·查询订单是EO·统计订单是EQ·汇率查询转换系统为EIF·订单和客户是ILF识别功能点的重要原则ILF、EIF要与EI、EO、EQ分开计算。对ILF和EIF复杂度的计算可以简单理解为对数据库复杂度的计算。对EI、EO、EQ复杂度的计算可以理解为对程序开发复杂度的计算。一般软件项目都是由数据和程序构成的,因此计算ILF、EIF和计算EI、EO、EQ之间没有任何关系。内部逻辑文件与外部接口文件ILF内部逻辑文件  内部逻辑文件是指一组以用户角度识别的、在应用程序边界内且被维护的逻辑相关数据或控制信息。ILF的主要目的是通过应用程序的一个或多个基本处理过程来维护数据。 EIF外部接口文件  外部接口文件是指一组在应用程序边界内被查询,但在其他应用程序中被维护的、以用户角度来识别的、逻辑上相关的数据。因此,一个应用程序中的EIF必然是其他应用程序中的ILF。EIF的主要目的是为边界内的应用程序提供一个或多个通过基础操作过程来引用的一组数据或信息。   EIF所遵循的规则:·从用户角度出发识别的一组逻辑数据。·这组数据是在应用程序外部,并被应用程序引用的。·计算功能点的这个应用程序并不维护该EIF。·这组数据是作为另一个应用程序中的ILF被维护的。ILF和EIF的复杂性计算   ILF和EIF的复杂性是取决于RET(Recordelementtype)和DET(Dataelementtype)的数量。DET是一个以用户角度识别的、非重复的、有业务逻辑意义的字段。   DET计算的规则如下:·通过一个基本处理过程的执行,对ILF进行维护,或从ILF/EIF中返回一个特定的、用户可识别的、非重复的字段,那么每个这样的字段算一个DET。   例如:添加一个外贸订单时需要保存“订单号码、订单日期、地址、邮编”,那么对于ILF订单来说它的DET就是4个。   再如:保存订单时还会保存订单的明细。订单的明细往往作为一个子表进行保存,那么“订单号码”在主表和子表中都同时存在(主外键)。但以用户角度来识别时,存盘操作是一个最小的单位,那么订单号码只能算做一个DET。·当两个应用程序维护和/或引用相同的ILF/EIF,但是每个应用程序分别维护/引用它们相应的DET时,这些DET在这两个应用程序的维护/引用中将单独计算。   例如,一个应用程序的两个“ElementaryProcess”基本处理过程都需要使用到“地址”的信息,地址信息又可以细分为“国家、城市、街道、邮编”。那么对于其中一个基本处理过程来说,它将整个地址信息作为一个整体进行处理,只算一个DET;另外一个基本处理过程使用每个地址的详细信息,那么DET就是4个。   RET计算的规则如下:   RET是指一个EIF/ILF中用户可以识别的DET的集合。如果把DET简单理解为字段的话,那RET就可以简单理解为数据库中的表。RET在ILF/EIF中分为两种类型:可选的(Optional)和必选的(Mandatory)。计算RET的规则为以下两点:·在一个ILF/EIF中每一个可选或必选的集合都被计算为一个RET。·如果一个ILF/EIF没有子集合,则ILF/EIF被计算为一个RET。   例如:在外贸订单系统中添加一个订单时会保存“订单信息、客户的ID、部门的ID”。那么订单系统ILF中的RET为:   1.订单信息(必选的)   2.客户信息(必选的)   3.部门信息(可选的)   因此ILF中RET的个数为3个。   ILF/EIF复杂度的矩阵如下:   1~19个DET 20~50个DET 超过51个DET 1个RET 低 低 中等 2~5个RET 低 中等 高 6个以上RET 中等 高 高软件项目管理中的功能点估算法将功能点分为5类:ILF(InternalLogicalFile,内部逻辑文件)、EIF(ExternalInterfaceFile,外部接口文件)、EI(ExternalInput,外部输入)、EO(ExternalOutput,外部输出)和EQ(ExternalInquiry,外部查询)。其中,ILF和EIF属于数据类型的功能点,EI、EO、EQ属于事务类型的功能点。EI、EO、EQ的比较   EI是处理来自应用程序边界外部的一组数据输入,它的主要目的是维护一个或多个ILF,以及/或者更改系统的行为。   EO是输送数据到应用程序边界外部的过程。它的主要目的是通过逻辑处理过程向用户呈现信息。该处理过程必须包含至少一个数学公式或计算方法,或生成派生数据。一个EO也可以维护一个或多个ILF,并/或改变系统行为。   EQ是向应用程序边界外发送数据基本处理的过程。其主要目的是从ILF或EIF中通过恢复数据信息来向用户呈现。该处理逻辑不包括任何数学公式或计算方法,也不会生成任何派生数据。EQ不会维护任何一个ILF,也不会改变应用程序的系统行为。   EO和EQ的共同点是,其主要目的都是通过基本操作过程展现数据给用户。EI、EO、EQ的比较见下表。表1EI、EO、EQ的主要目的 目的 EI EO EQ 改变应用程序的属性或行为 主要目的 次要目的 不允许 维护一个或多个ILF 主要目的 次要目的 不允许 显示信息给用户 次要目的 主要目的 主要目的表2EI、EO、EQ的主要行为 行为 EI EO EQ 数学公式或计算被执行 可以 至少选择一次 不可以 至少一个ILF被修改 至少选择一次 至少选择一次 不可以 至少一个ILF或EIF被引用 可选 可选 必选 数据被重新恢复 可选 可选 必选 派生数据被创建 可选 至少选择一次 可选 应用程序的行为或属性被修改 至少选择一次 至少选择一次 可选 准备或呈现信息到系统边界外 可选 必选 必选 接受进入系统边界内的数据的能力 必须 可选 可选事务类型功能点的计算规则在IFPUG的定义中有一个重要的单词“ElementaryProcess”——基本处理过程。该过程对用户来说是一个有意义的、最小的活动单位,并且是一个自包含的活动。功能点的分类,EI、EO、EQ的识别都是基于“ElementaryProcess”基本处理过程的。 EI的计算规则   1.从应用边界之外收到数据。   2.如果进入系统边界内的数据不是一个改变系统行为的控制信息,那么至少一个ILF应该被改变。   3.对于已识别的处理过程,至少满足下面三个条件之一。·该基本处理过程的逻辑与本应用系统中其它基本处理过程的逻辑不同。该基本处理过程应该具有唯一性。例如:不能存在两个完全一模一样的存盘操作。·在应用程序边界内,该基本处理过程所使用的这组数据应该与其他基本处理过程所使用的数据不同。·在应用程序边界内,基本处理过程所引用的ILF或EIF是不同于其它基本处理过程所引用的ILF或EIF。   EO和EQ通用计算规则   必须全部满足以下内容才能被视为一个EO或EQ:   1.从外部发送数据或控制信息到应用程序边界内。   2.为了识别这个过程,以下三点必须满足一个:·该基本处理过程逻辑上必须是唯一的,该唯一性是指其在应用程序中与其他EO或EQ在逻辑性上保持唯一。·该基本处理过程所使用的数据应该是唯一的,该唯一性是指其在应用程序中与其他EO或EQ所使用的数据不同。·该基本处理过程所引用的ILF或EIF文件应该是唯一的,该唯一性是指其在应用程序中与其他EO或EQ所引用的ILF或EIF文件不同。   EO补充的计算规则   除了要满足上面的通用规则外,还要满足下面其中一条:·在基本操作过程中至少包含一个数学公式或计算方法·在基本操作过程中要产生派生数据·在基本操作过程中至少要维护一个ILF·在基本操作过程中要改变系统的行为。   EQ补充的计算规则   除了要满足上面的通用规则外,还要满足下面其中一条:·基本操作过程从ILF或EIF中获取数据。·基本操作过程不能包含数学公式或计算方法。·基本操作过程不能生成派生数据·基本操作过程不能维护任何一个ILF·基本操作过程不能改变系统的行为EI、EQ和EO的技术复杂性计算  复杂性取决于FIRs和DETs的数量。FTR是被一个事物读取或维护的ILF,或者是被一个事物读取的EIF。   EI中识别FTR规则·每一个ILF应该算做一个FTR。·通过EI读取的每个ILF或EIF都应该计算为一个FTR。·既被EI维护又被读取的ILF仅计算为一个FTR。   EI中识别DET规则·在EI的过程中,以用户角度识别的、通过应用系统边界输入系统内部的非重复字段,应算作一个DET。·在EI的过程中,只要没有通过系统边界输入,即使它存在于系统内的一个ILF中,也不能算为一个DET。   例如,外贸订单系统中,订单的金额是被单价和数量自动计算的,那么金额是没有通过系统边界输入的,因此在EI操作中就不应该算做一个DET。·在应用程序的EI操作时,系统提示的错误信息或完成操作的信息,应该被分别计算为一个DET。   例如,在网站注册用户信息时,由于输入错误系统会显示提示信息,那么这些提示信息应该被逐个计算为一个DET。   再如,当EI操作完成时系统提示并显示出来的信息,应该被计算为一个DET。·在EI操作中,如果遇到主外键的字段,应该算作一个DET。   EO和EQ计算FTR的规则   1.通用规则:·每个在EO/EQ处理过程中读取的ILF和EIF算一个FTR   2.EO额外的FTR计算规则·在EO处理过程中每个被维护的ILF算一个FTR·在EO处理过程中既被读取又被维护的ILF算一个FTR   EO和EQ计算DET的通用规则·用户可识别的非重复字段,进入应用边界并指明处理什么、何时处理或处理方式,并且由EO/EQ返回或产生,那么这样的每个字段算一个DET。   例如,报表中的每个字段都是一个DET。·在应用边界内以用户角度识别的非重复字段算一个DET。   例如,在报表中起到解释或备注作用的文字信息,不管是一个字、一个词或一段话,都当作一个DET。   再如,某种编号或日期,即使它被物理存储在不同字段中,但从用户角度看是一个整体的信息,因此被算作一个DET。   还有,在饼图中百分比和分类算作不同的DET。·在EO或EQ操作中,如果对系统进行输入或读取操作时,相同的字段只计算一个DET。   例如,在报表查询时,输入的字段在报表上也有显示,那么将算作同一个DET。·在应用程序的EO或EQ操作时,系统提示的错误信息或完成操作的信息,应该被计算为DET。   例如,用户查询一个列表时被拒绝,那么拒绝的提示信息就算为一个DET。·在EO或EQ操作中如果遇到主外键的字段,应该算作一个DET。·在EO或EQ过程中,只要没有通过系统边界输入,就算它存在于系统内的一个ILF中,也不能算为一个DET。   例如,在公司发工资的时候,员工对应的状态信息被更新,但这个状态信息的更新是没有通过系统边界输入的,因此也不能算做一个DET。·页面的标题等类似信息不计算DET。·系统字段生成的记号不能被算作一个DET。   例如,页码、位置信息、时间、上一页和下一页等信息,都不能算作一个DET。EI复杂度计算矩阵   1~4个DET 5~15个DET 多于16个DET 0~1个FTR 低 低 中等 2个FTR 低 中等 高 大于2个FRT 中等 高 高EO和EQ复杂度计算矩阵   1~5个DET 6~19个DET 多于20个DET 0~1个FTR 低 低 中等 2~3个FTR 低 中等 高 多于4个FTR 中等 高 高未调整前功能点对应矩阵EI、EO、EQ、ILF和EIF技术复杂度对应的功能点如下表所示:   低 一般 高 EI 3 4 6 EO 4 5 7 EQ 3 4 6 ILF 7 10 15 EIF 5 7 10用功能点估算法计算软件项目功能点时会用到调整因子(或称调整系数)。功能点的调整系数是通过通用系统特性及其影响程度来评定的,对每个常规系统特性的评估由其影响程度(DI)而定,分为0-5级:   0毫无影响   1偶然影响   2适度影响   3一般影响   4重要影响   5强烈影响   然后依次对以下14个系统常规特性进行打分,并带入以下计算公式算出功能点的调整因子。   ValueAdjustmentFactor=(sumof(DI)*0.01)+0.65计算调整因子1.数据通讯   数据通讯指的是应用程序直接与处理器通讯的程度。通常我们都是通过某种通讯手段来实现在一个应用中所使用的数据或者控制信息。连接到本地控制器上的终端被认为是通讯设施, 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 则指两个系统或设备之间进行通讯时使用的一种约定。所有的数据通讯链接都需要某种协议。 0          应用程序是单纯的批处理或者PCstand-alone 1 应用程序是一种批处理过程,但是包含远程数据的录入或远程打印 2 应用程序是一种批处理过程,但是包含远程数据的录入和远程打印 3 应用程序包括在线数据收集或者包括批处理或查询系统的远程处理的前端应用 4 应用程序不单只是前端应用,但是仅支持一种远程处理通讯协议 5 应用程序不单只是前端应用,还支持多于一种的远程处理通讯协议2.分布式数据处理   分布式数据处理是应用在内部组件之间传递信息的程度。这个特性是在应用边界内体现的。 0          应用程序不支持组件之间的数据传输和处理功能 1 应用程序为用户可能进行的处理准备数据(例如使用电子表格或者数据库等) 2 应用程序所准备的数据是为了在系统另外一个组件上传输和处理,并非为终端用户所处理。 3 分布式处理和数据传输是在线的,并且是单向的 4 分布式处理和数据传输是在线的,并且是双向的 5 由系统中最恰当的组件动态地执行处理功能3.性能   性能是吞吐量、处理时间等指标对开发的影响。用户所提出的性能要求将直接影响到系统的 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 、实施、安装和支持。 0          用户没有提出性能方面的要求 1 用户提出了性能和设计方面的要求,但不需要采取特定措施 2 响应时间和吞吐量在系统峰值时是关键的,但是不需要采取相应的CPU使用方面的特殊设计。处理的最后期限是在下一个工作日。 3 在任何时候响应时间和吞吐量都是关键的,但是不需要采取相应的CPU使用方面的特殊设计。处理的完成期限比较严格。 4 除了上面一项的要求外,由于对需求的要求比较严格,在设计阶段就要进行性能分析。 5 除了上面一项的要求之外,在设计和实施阶段需要使用性能分析工具来判断性能要求的完成情况。4.大业务量配置   大业务量配置是指计算机资源对应用开发的影响程度。大业务量的运行配置对设计有特殊要求,是必须考虑的一个系统特性。 0          没有提出明确的运行方面的限制 1 有运行方面的限制,但是不需要采取特别的措施以满足运行限制 2 提出了一些安全和时间方面的限制 3 应用程序的某些部分对处理器有特定的要求 4 提出的运行限制对应用的中央处理器或者专用处理器有特殊的要求 5 除上面一项之外,还对应用的分布式组件提出了限制5.事务处理率   事务处理率是业务交易处理速度对系统的设计、实施、安装和支持等的影响。 0          预计不会出现周期性的高峰事务处理期 1 预计会有周期性的高峰事务处理期(例如:每月、每季、每年) 2 预计每周都会出现高峰事务处理期 3 预计每天都会出现高峰事务处理期 4 用户在应用程序需求或者服务级别协议中对事务率要求很高,因此必须在设计阶段进行性能分析。 5 用户在应用程序需求或者服务级别协议中对事务率要求很高,因此必须进行性能分析并在设计、开发和安装阶段中使用到性能分析工具。6.在线数据输入   在线数据输入是指数据通过交互的方式输入系统的程度。系统中包括在线数据输入和控制信息功能。 0          所有事务都是批处理的 1 1%~7%的事务是以交互式的方式进行数据录入 2 8%~15%的事务是以交互式的方式进行数据录入 3 16%~23%的事务是以交互式的方式进行数据录入 4 24%~30%的事务是以交互式的方式进行数据录入 5 30%以上的事务是以交互式的方式进行数据录入7.最终用户效率   最终用户效率是指对应用的人文因素及使用的便捷程度等的考虑程度。   如下功能设计是针对最终用户效率的:·页面导航·菜单·在线帮助或文档·光标自动跳转·可以滚动·在线远程打印·预定义的功能键·在线做批量提交任务·光标可以选取界面上的数据·用户使用大量反白显示、重点显示、下划线或其他的标识·在线copy用户文档·鼠标拖动功能·弹出窗体·使用最少的界面完成某种商业功能·双语言支持(如果选择了这个就算4项)·语言支持(如果选择了这个就算6项) 0          以上的一个都不包括 1 包括以上的1~3个 2 包括以上的4~5个 3 包括以上的6个或以上,但是没有用户对于效率的要求 4 包括以上的6个或以上,对用户使用效率有较高要求,因而必须考虑用户方面的设计(例如,最少击键次数、尽可能提供默认值、模版的使用) 5 包括以上的6个或以上,用户对效率的要求使得开发人员必须使用特定的工具和流程以判定用户对效率的要求已经被达成8.在线更新   在线更新是指内部逻辑文件ILF被在线更新的程度。应用系统提供在线更新内部逻辑文件的功能。 0          没有在线更新 1 包含1~3个控制文件的在线更新。更新的流量低,恢复容易。 2 包含对4个以上控制文件的在线更新。更新的流量低,恢复容易。 3 包含对主要ILF的更新。 4 除了3之外,在设计和实施中要考虑对数据丢失的防范。 5 除了4之外,大量的数据恢复工作要考虑成本因素,同时包含了高度自动化的恢复流程。9.复杂处理   复杂处理描述了逻辑处理对应用开发的影响程度。它包含以下要素:·敏感控制(例如特殊的审核过程)和/或程序特定的安全处理·大量的逻辑处理·大量的数学处理·因为例外处理造成的需要重新处理的情况(例如,由TP中断、数据值缺少和验证失败导致的ATM事务)·多种可能的输入/输出造成的复杂处理 0          上面一个都不满足 1 只满足一个 2 只满足两个 3 满足三个 4 满足四个 5 都满足10.可复用性   应用系统中的应用和代码经过特殊设计、开发和支持,可以在其他应用系统中复用。 0          没有可复用的代码 1 代码在应用之内复用 2 应用中被其他用户复用的部分不足10% 3 应用中被不止一个用户使用的部分超过10% 4 应用遵从一种易于复用的方式被打包和文档化。用户在源代码级客户化该应用。 5 应用按照一种易于复用的方式被打包和文档化。用户使用用户参数来对该应用进行客户化。11.易安装性   易安装性指应用系统的转换和安装容易度对开发的影响程度。系统测试阶段提供了转换和安装计划/转换工具。 0          用户对安装没有特定的要求 1 用户对安装没有特定的要求,但有特定的安装环境要求 2 用户提出了安装和转化的要求,转化/安装指南被经过测试提供给用户。但是转化的影响对该应用不重要。 3 用户提出了安装和转化的要求,转化/安装指南被经过测试提供给用户。转化的影响对该应用来说是重要的。 4 除了2的要求之外,需要提供经过测试的自动化的安装和转化工具。 5 除了3的要求之外,需要提供经过测试的自动化的安装和转化工具。12.易操作性   易操作性指的是应用对运行的影响程度,如有效启动、备份和恢复规程的影响。易操作性是应用提供的一种特性,它最小化了手工操作的要求。 0          用户没有指定除正常备份程序外的其它特定操作 1 提供高效的启动、备份和恢复进程,但需要人手操作 2 提供高效的启动、备份和恢复进程,不需要人手操作(当作两项计算) 3 应用程序对磁带的需求最小化 4 应用程序对硬拷贝处理的需求最小化 5 程序设计成无人操作模式。无人操作模式的意思是除了启动和关闭之外,不需要对系统进行操作。程序的其中一个功能就是错误自动恢复。13.多场地   多场地指应用系统经特殊设计、开发可以在多个组织、多个地点应用的程度。 0          用户需求不含多场地和组织的要求 1 考虑了多场地的要求,但是设计要求应用在不同的场地使用相同的软硬件环境 2 考虑了多场地的要求,但是设计要求应用在不同的场地使用类似的软硬件环境 3 考虑了多场地的要求,同时设计支持应用在不同的场地使用不同的软硬件环境 4 在1或者2的要求之上,提供了经过测试的多场地的文档和支持计划 5 在3的要求之上,提供了经过测试的多场地的文档和支持计划14.支持变更   支持变更是指应用在设计上考虑支持处理逻辑和数据结构变化的程度。   可以具有如下的特性:·提供可以处理简单要求的弹性查询和 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 功能,如对一个ILF进行与(或)逻辑·提供可以处理一般复杂度要求的弹性查询和报告功能,如对多于一个的ILF进行与(或)逻辑(当作两项计算)·提供可以处理复杂要求的弹性查询和报告功能,如对一个或多个ILF进行与(或)逻辑的组合(当作三项计算)·业务控制数据被保存到用户通过在线交互进程维护的表中,但变更只会在第二个工作日生效·业务控制数据被保存到用户通过在线交互进程维护的表中,且变更即时生效 0         一个都不满足 1 合计满足一个 2 合计满足二个 3 合计满足三个 4 合计满足四个 5 合计满足五个计算调整后的功能点个数   国际IFPUG组织将软件项目分为三类,功能点估算法适用于任何一类项目,其计算公式中的术语请详见表1。·功能点的原始计算公式:   FPCount=UFP*VAF·新开发项目   有时新开发的软件项目也需要与其他现存的软件系统进行整合。例如:一个企业新开发的MIS内部管理系统经常会与财务系统进行整合。这时除了考虑本身项目的功能点个数外,还要考虑系统整合或数据迁移部分的工作量。因此,其功能点计算公式如下:   FPCount=(UFP+CFP)*VAF·二次开发的项目   有时新开发的软件项目是在原有基础上进行二次开发的,只是为了增加一些新功能。因此,其功能点计算公式如下:   FPCount=ADD*VAF·功能增强的项目   功能增强项目的功能点估算比较复杂。在计算功能点前大家需要计算有哪些是新增加的功能,哪些是被修改的功能,哪些是属于数据迁移或系统整合的功能。然后计算新系统技术复杂度的调整因子“VAFA”,并在此基础上计算系统功能点的数量。当然,此类项目也会去掉一些原有功能,那么在原有系统的技术复杂度基础上重新计算功能点的调整因子“VAFB”,再计算所去掉功能贡献的功能点数量。因此,其功能点计算公式如下:   FPCount=[(ADD+CHGA+CFP)*VAFA]+(DEL*VAFB) 表1功能点技术公式术语 术语 英文 中文含义 ADD Addedfunctionality 被添加的功能点个数 CFP Conversionfunctionality 被转换的功能点个数 CHGA UFPofchangedfunctionalityafterenhancement 功能增强后所改动的功能所贡献的未调整的功能点个数 DEL Deletedfunctionality 被删除的功能点个数 UFP Unadjustedfunctionalpointcount 未调整的功能点个数 VAF ValueadjustmentfactorVAF=(sumof(DI)*0.01)+0.65 功能点的调整因子的计算公式VAF=(sumof(DI)*0.01)+0.65 VAFA Valueadjustmentfactorafterenhancement 功能增强后的功能点调整因子 VAFB Valueadjustmentfactorbeforeenhancement 功能增强前的功能点调整因子以员工管理系统为例,详细说明如何利用功能点估算法计算业务复杂度。   在员工管理系统中添加一个员工资料,会使用到员工的一般信息、教育情况、工作经历和家属信息。员工隶属于某个部门,在本系统中会有一个对部门进行维护的功能。员工的工资则由另外一个财务系统提供。因此,其用例图如下所示:图1员工管理系统用例图    假设员工基本信息如下所示:·员工ID(标签控件)·员工名称·性别·生日·婚否·所属部门ID(标签控件)·所属部门名称· ——受教育的时间· ——学校名称· ——所学专业· ——工作时间· ——工作单位· ——工作部门· ——工作职务· ——亲属的姓名· ——之间关系· ——亲属年龄· ——工作单位   假设部门信息如下所示:·部门ID(标签控件)·部门名称   假设工资表信息如下所示:·员工ID(标签控件)·员工姓名·金额·单位ILF和EIF的功能点数   本范例识别出来ILF和EIF功能点个数如下表所示。 ILF内部逻辑文件 RET DET个数 复杂度 未调整的FP个数 员工信息 员工基本信息、受教育情况、工作经历、亲属信息,共4个。 18 低 7 部门信息 部门基本信息,共1个。 2 低 7 EIF外部接口文件 RET DET个数 复杂度 未调整的FP个数 工资表 员工基本信息、工资信息,共2个。                    4个 低 5 合计:19个EI、EQ和EO的功能点数   本范例识别出来EI、EQ和EO功能点个数如下表所示。 EI FTR DET个数 复杂度 未调整的FP个数 添加员工信息 员工、部门、工资表 员工信息的两个标签控件内容不是用户输入的,因此不算。共16个。部门信息与员工信息中的部门字段重复,因此一个都不算。工资表中的员工ID和名称不能重复,因此只能算金额和单位,所以共2个。18个 高 6 修改员工信息 员工、部门、工资表 18个同上 高 6 删除员工信息 员工、部门、工资表 1个员工ID 中等 4 添加部门信息 部门 1个一个标签控件的内容不是用户输入的,因此不算 低 3 修改部门信息 部门 1个一个标签控件的内容不是用户输入的,因此不算 低 3 删除部门信息 部门 1个部门ID 低 3 合计:25个   EQ FTR DET个数 复杂度 未调整的FP个数 查询员工信息 员工、部门、工资表 20 高 6 查询部门信息 部门 2 低 3 合计:9个 EO FTR DET个数 复杂度 未调整的FP个数 统计员工年薪 员工、工资表 员工ID、员工名称、年份、年薪、单位共5个 低 4   本系统的通用系统特性及其影响程度如下表所示。 系统特性 分数 数据通讯 3 分布式数据处理 2 性能 0 高强度配置 0 交易速度 0 在线数据输入 5 最终用户效率 2 在线更新 3 负责的处理 0 可复用性 3 易安装性 0 易操作性 0 多场地 0 支持变更 1 合计:19 调整因子 = 19*0.01 +0.65 = 0.84   最终调整后的功能点数量为:   (19+25+9+5)*0.84=48.72个总结   功能点估算法是一个非常有用的对软件规模进行估算的国际通用技术,是项目管理人员必须掌握的工具。为了便于大家对功能点的技术进行理解和记忆,这里对其进行总结:   由于计算机软件就是为了实现无纸办公,那么在估算功能点时应该多以用户的纸质表单为依据,每个表单就是一个ILF或EIF,表单上显示的字段都是DET,一个表单上的“核心”内容不管是由几个数据表来分别存放数据的,每个表都是一个RET。   简单来讲,ILF和EIF可以被看作数据库中的数据表,但是主、从表将被视为一个ILF或EIF。那么,ILF和EIF的复杂度就是由数据表中的字段DET和一个ILF或EIF自身所包含的主、从表个数RET来决定。在计算DET时主、外键只能算作一个。   EI就是对应用户增加、修改、删除的操作,EO和EQ都是用于用户查询的操作。EO和EQ的区别是,EO查询时使用了数学公式或计算方法。EI、EQ和EO的复杂度是由FTR和DET决定的。FTR的个数由ILF和EIF的个数决定,可以由主表中主、外键的个数来计算。在计算EI的DET时,只有用户在界面上直接输入的信息才算作DET,通过页面自动计算或转换的数据不能算作EI的DET。在EO和EQ计算DET时,报表的标题、页码等信息不能被计算为一个DET。   1欢迎您的光临,word文档下载后可以修改编辑。双击可以删除页眉页脚。谢谢!单纯的课本内容,并不能满足学生的需要,通过补充,达到内容的完善教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。
本文档为【实用的软件系统开发成本估算法-软件成本管理(含例子)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥15.6 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
sxymh
从事多年建筑工程施工安全、工程技术、设计方案积累了丰富经验
格式:doc
大小:393KB
软件:Word
页数:0
分类:公务员考试
上传时间:2020-03-18
浏览量:2