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的规则
● 通用规则:每个在EO/EQ处理过程中读取的ILF和EIF算一个FTR ● 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。 ? 例如:页码、位置信息、时间、上一页、下一页等信息。 EI复杂度计算矩阵 0~1个FTR 2个FTR 大于2个FRT EO1~4个DET 低 低 中等 5~15个DET 低 中等 高 多于16个DET 中等 高 高 和EQ复杂度计算矩阵 0~1个FTR 2~3个FTR 多于4个FTR 1~5个DET 低 低 中等 6~19个DET 低 中等 高 多于20个DET 中等 高 高 未调整前功能点对应矩阵EI、EO、EQ、ILF和EIF计算出来的技术复杂度对应的功能点如下表所示 EI EO EQ ILF 低 3 4 3 7 一般 4 5 4 10 高 6 7 6 15 EIF 5 7 10 计算调整因子 功能点的调整系数是通过通用系统特性及其影响程度来评定的,对每个常规系统特性的评估由其影响程度(DI)而定,分为0-5级:0 毫无影响1 偶然影响2 适度影响3 一般影响4 重要影响5 强烈影响 然后依次对以下14个系统常规特性进行打分,并带入以下计算公式算出功能点的调整因子。Value Adjustment Factor=( sum of (DI) * 0.01 ) + 0.65 1数据通讯 数据通讯指的是应用程序直接与处理器通讯的程度。通常我们都是通过某种通讯手段来实现在一个应用中所使用的数据或者控制信息的。连接到本地控制器上的终端被认为是使用通讯设施,而协议指的是两个系统或者两个设备之间进行通讯时所使用的一种约定。所有的数据通讯链接都需要某种协议。 0 1 2 3 4 5 2应用程序是单纯的批处理或者PC stand-alone 应用程序是一种批处理过程,但是包含远程数据的录入或远程打印 应用程序是一种批处理过程,但是包含远程数据的录入和远程打印 应用程序包括在线数据收集或者包括批处理或查询系统的远程处理的前端应用 应用程序不单只是前端应用,但是仅支持一种远程处理通讯协议 应用程序不单只是前端应用,还支持多于一种的远程处理通讯协议 分布式数据处理 分布式数据处理是应用在内部组件之间传递信息的程度。这个特性是在应用边界内体现的。 0 1 2 应用程序不支持组件之间的数据传输和处理功能 应用程序为用户可能进行的处理准备数据(例如使用电子表格或者数据库等) 应用程序所准备的数据是为了在系统另外一个组件上传输和处理。并非为终端用户所处理。 3 4 5 分布式处理和数据传输是在线的,并且是单向的 分布式处理和数据传输是在线的,并且是双向的 由系统中最恰当的组件动态地执行处理功能 3性能 性能是吞吐量、处理时间等指标对开发的影响。用户所提出的性能要求将直接影响到系统的设计,实施,安装和支持。 0 1 2 用户没有提出性能方面的要求 用户提出了性能和设计方面的要求,但不需要采取特定措施 响应时间和吞吐量在系统峰值时是关键的,但是不需要采取相应的CPU 使用方面的特殊设计。处理的最后期限是在下一个工作日。 3 在任何时候响应时间和吞吐量都是关键的,但是不需要采取相应的CPU 使用方面的特殊设计。处理的完成期限比较严格 4 5 除了上面一项的要求外,由于对需求的要求比较严格,在设计阶段就要进行性能分析 除了上面一项的要求之外,在设计和实施阶段需要使用性能分析工具来判断性能要求的完成情况 4大业务量配置 大业务量配置指的是计算机的资源对应用开发的影响程度。大业务量的运行配置对设计有特殊要求,是必须考虑的一个系统特性。 0 1 2 3 4 5 没有提出明确的运行方面的限制 有运行方面的限制,但是不需要采取特别的措施以满足运行限制 提出了一些安全和时间方面的限制 应用程序的某些部分对处理器有特定的要求。 提出的运行限制对应用的中央处理器或者专用处理器有特殊的要求 除上面一项之外,还对应用的分布式组件提出了限制 5事务处理率 事务处理率是业务交易处理速度的要求对系统的设计,实施,安装和支持等的影响。 0 1 2 3 4 预计不会出现周期性的高峰事务处理期 预计会有周期性的高峰事务处理期(例如:每月、每季、每年) 预计每周都会出现高峰事务处理期 预计每天都会出现高峰事务处理期 用户在应用程序需求或者服务级别协议中对事务率要求很高,因此必须在设计阶段进行性能分析。