基于软件功能点的通信行业软件需求自动化分析模型及系统
基于软件功能点的通信行业软件需求自动化分析模型及系统
文/杨萌
目前随着通信行业软件的强势发展,系统建设规模加大,对
多系统间的集成的质量要求也越来越高。所以对前期用户需求分
析的准确、高效变得极为重要。该论文引用了国际软件功能点的
理论技术,结合通信行业软件的特点,论述了基于该技术的行业需求自动化分析模型及系统架构。
【关键词】软件功能点 通信行业 需求 自动化模型
1 软件功能点技术
(1)总体说明。由 IFPUG 即国际功能点
用户组基于软件功能点分析研究,通过一致的标准来规范软件功能点数,使得基于功能点的
软件需求功能量的标准统一。功能点分析技术是从用户角度度量软件开发的一种标准方法。
功能点分析基于用户的逻辑功能需求,而不用考虑应用的物理实现。(2)功能点技术 - 业
务功能需求计数。把用户的业务功能需求分为数据功能需求和处理数据的事务功能需求;数
据功能指提供给用户的以满足内部和外部数据
需求的功能性,分为内部逻辑文件(ILLF)和外部接口文件(EIF)。复杂性有数据元素
类型(DET)和记录元素类型(RET)。(3)功能点技术 - 事务功能计数。数据分为应用内
部逻辑数据和应用外部的接口数据,事务分为对数据的外部输入、输出和查询。事务功能指
提供给用户的以满足应用数据处理需求的功能性,分为外部输入(EI)、外部输出(EO)、
外部查询(EQ)。复杂性由数据元素类型(DET)和文件引用类型(FTR)决定。
2 基于软件功能点的通信行业软件需求自动化分析模型
该论文的根本目的是在系统需求分解的过程中,可按照描述的方法和流程进行自动分
解,保证每个用户需求分解粒度的准确性和一致性,以便达到量化项目管理。该方案可以明
确需求分解的数据实体及元素属性,同时也可以将需求数据处理分解成相应的基本处理过
程。从而围绕两者进行由顶至下需求横纵分解的过程。该方法适用一切企业管理系统,包含单一系统、升级系统、融合系统。
2.1 获取用户原始需求信息
通过现在已有的需求信息搜集工具(TFS等)进行初步搜集用户信息,该信息拆分出需
求标识、需求名称、需求内容描述、应用人员。将 TFS 系统功能搜集的用户数据保存在数据Ur 集中。进行分层描述到具体的需求信息。
2.2 构建系统边界集
根据需求实际存在情况划分系统边界域,就目前实用情况,划分成若干类型:人与机器、
系统与系统、接口连接、模块间。该系统边界域的建立规则为树形结构。
识别出的信息,保存在边界域中,D {dij,i=0…n,j=0…m}。例如识别出系统1,系统2.接
口 1 等,再识别出系统 1 下的模块 1、模块 2、模块 3 等,如此建立整个融合系统的边界域。
按照该方法,识别出的边界域可明确具体需求工作明确数据的访问和维护边界,为数
据识别和划分提供标准。边界类型可根据需求分析要求,增加界面类别。
2.3 构建系统使用对象数据信息
建立系统使用人员信息集,根据用户需求信息采集系统的信息,建立系统使用对象类
别。按实际系统主要业务的使用人员构建基础信息 PepoleList 列表中。
2.4 构建系统操作属性信息根据系统数据处理过程,需求分析的操
作分析粒度要达到五个操作,即单数据查询、新增、修改、删除、报表查询。
2.5 对Ur集数据逐条分析分解,维护系统分析分解L域中
(1)获取用户初步需求的基础信息。拆
分获取的信息得到需求标识、需求名称、需求内容描述、应用人员信息保存在临时内存中。
当触发进行需求分析分解时,逐条提取内存中的用户需求信息进行分解。(2)对应系统域D,
根据树形结构遍历树的末端子节点。该步骤的约束条件按照树形结构遍历到最末端子节点,
将该条需求分配到相应的系统域内。如此,需求可能涉及多个系统的维护,将所有匹配信息
归入到最终需求分解域L域中。待需求分解后,可按照系统域遍历关系划分出所有数据访问维
护边界信息。(3)分解 L 域的每一条操作项的数据属性元素。针对每一个功能首先识别出
系统范围内所有逻辑相关且用户可识别的数据信息,即数据实体信息。判断操作项的实体属
性在系统域内本系统度量维护的实体属性和本系统引用其他系统维护的实体属性。对每条操
作箱的属性元素循环识别,L 域中元素实体集单独分配内存进行记录。最终并入L集中。(4)
合并功能相同需求分解项。每一条数据的唯一标识包含需求编码、系统、用户、操作项、数
据实体、数据元素属性。L 域中每新增数据都要与已有数据比对,如果与其他数据相同,则剔除。保留 L 域的唯一性。
2.6 量化需求分解L域
需求分解结构完成后,可以达到量化数据的目标。可按照每条数据进行量化,操作功
能计数 = 系统内部访问维护的实体元素属性个数(系统边界)+ 访问系统边界外的实体元素个数
获得的数据可累积、叠加,根据具体的需求功能建设情况自动计算。3 基于软件功能点的通信行业软件需求自动化分析系统功能模块
(1)分为数据新增功能和数据处理新增功能。(2)数据新增功能分析过程:对已有
的数据元素属性进行对比,对于新增字段的要按照新增后的数据实体元素个数进行计算。
(3)数据处理功能新增分析过程:对已有的功能模
块,新增功能,新的流程或者新的功能,则先把该功能和操作类、查询类、统计类映射关系。
分别计算该基本过程的穿越定义界面的元素个数,进行计数,维护了基本元素数据表的个数
和访问接口的个数。(4)作为升级项目,如果没有新增数据元素,则无数据新增,反之,
按照新建项目规则进行需求数据功能分析。事务新增按修改后维护的数据元素与原有功能进行对比。
4 总结
将软件功能点的进入通信行业软件的需求管理,提供给用户评估需求规模的统一计算
标准,使得在项目初期、需求分析、项目验收等各阶段的工作量评估有依据。该模型的应用
也提升需求分析的效果,保证了需求分析分解的充分性、有效性、全面性。经过实验,验证
了该需求自动化分析系统及模型的有效性。
参考文献
[1] 曹济等编著 . 软件项目功能点度量方法与应用 [M]. 清华大学出版社 ,2008.
[2]GB/T18491.6-2010 信息技术软件测量功能规模测量第 6 部分 :GB/T18491 系列标准和相关标准的使用指南 [A].2005.
[3](美)David Garmus & David Herron著.功能点分析 : 成功软件项目的测量实践 [M].
清华大学出版社 ,2009.作者单位联通系统集成有限公司 北京市 100061