国网江苏省电力公司信息通信分公司 曾 锃
安徽继远软件有限公司 杜 林
国网江苏省电力公司信息通信分公司 张 利
基于BP模型的电力信息系统非功能需求适用性评价
国网江苏省电力公司信息通信分公司 曾 锃
安徽继远软件有限公司 杜 林
国网江苏省电力公司信息通信分公司 张 利
信息系统开发中的非功能需求比功能需求更关键。系统的一个功能需求不能实现,至多降低了系统的可用性。系统的一个非功能需求没有满足,就可能导致整个系统无法使用。本文针对电力系统的特点,结合FURPS+模型,构建了电力系统非功能需求评价指标体系,并采用神经网络模型计算了该评价指标体系的适用性,为电力信息系统非功能需求管理提供参考依据。
电力信息系统;非功能需求;指标体系;BP模型;适用性评价
信息系统需求分为功能性需求和非功能性需求。功能性需求是信息系统要实现的基本操作能力,用户可以向开发人员提出具体的实现要求,是具体而明确要求系统能够完成规定的操作。非功能性需求与功能性需求相对应,有时也称为信息系统的“品质”、“限制”或“质量属性”等。
非功能需求指对系统提供的服务或功能的开发时间、开发过程、开发标准约束等,非功能需求主要体现在可用性、可靠性、安全性及可移植性四个方面。信息系统开发中的非功能需求比功能需求更关键。系统的一个功能需求不能实现,至多降低了系统的可用性。系统的一个非功能需求没有满足,就可能导致整个系统无法使用。软件开发领域近年来虽然产生了很多非功能需求的处理方法,但由于缺乏必要的评价指标和评价手段。往往因为模糊的需求表示,造成需求优化失误。本文针对电力系统的特点,结合FURPS+模型,构建了电力系统非功能需求评价指标体系,并采用神经网络模型计算了该评价指标体系的适用性。为电力信息系统非功能需求管理提供参考依据。
由于非功能性需求难以刻画,目前,国内外并没有明确的评价标准,大都FURPS+ 模型和 ISO9126 质量模型评价信息系统质量。针对电力信息系统的质量标准,本文采用 FURPS+ 简单归纳非功能性需求的主要内容。
FURPS+是IBM 公司提出的软件质量评价模型。其中,F指的是软件产品功能性(Functionality);U 是指系统接口、界面的易用性(Usability);R 指的是软件包含可用性、准确性与系统可恢复性指标的可靠性(Reliability);P指的是包括系统吞吐量、响应时间、启动时间的易用性(Performance);S指的是可测试、适应性、维护性、兼容性等支持性(Supportability)指标。 “+”表示设计约束、实现需求、接口需求和物理需求。根据 FURPS+ 模型,归纳出涵盖隐含层面的电力信息系统的非功能性需求的主要内容有以下几点:
(1)可靠性。可靠性是指在规定的时间和条件下,与软件维持其性能水平的能力有关的一组属性,它是系统非功能性的一项重要质量指标。通过可靠度、失效率、平均无故障间隔来评价。
(2)易用性。指的是信息系统对用户来说易于学习和使用、便于记忆、增加使用的满意程度等,是与用户为使用系统所需付出的代价有关的一组属性,易用性具体包括:易理解性、易学习性、易操作性等。
(3)效率。效率即性能,是指在规定的条件和环境下,与系统的性能水平和所需的资源量有关的一组属性,具体包括时间特性、资源特性等。
(4)可维护性。是指在给定条件下,系统保持在或恢复到能执行要求功能状态的能力,是与指定修改的难易程度相关的一组属性。软件的可维护性分为更改性维护、适应性维护、完善性维护和预防性维护,包括:易分析性、易改变性、稳定性、易测试性等。
根据电力信息系统的特点和开发流程。本文从信息系统的可靠性、易用性性、效率、可维护性及可移植性5个方面,建立了电力信息系统的非功能需求评价指标体系。该评价指标体系涵盖5个一级指标和21个二级指标。如表1所示。
表1
3.1.1 BP模型基本原理
BP网络(Back Propagation)又称神经网络模型,它是一种按误差逆传播算法训练的多层前馈网络。该模型可表达各处理单元交互关系,并可以用非线性转换函数输出,除了提高网络模式准确度,也可以处理多维模式问题。BP网络学习训练速度快,建构模式强,可随不同案例问题的需要对网络适当的修改。BP网络算法的学习过程,是由正向传播和反向传播组成。在正向传播的过程中,输入讯息从输入层经隐藏层单元层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。如果在输出层不能得到期望的输出,则反向传播,将误差讯号沿原来的连接通路返回,修改各神经元权值,使误差讯号最小。这样的过称为“学习”。而这学习过程通常以一次一个训练范例的方式来进行,直到学习完成所有的训练范例,称为一个学习循环,一个网络训练成功通常需要上百个或数千个训练范例,将训练范例反复学习不断修正直到收敛为止。BP网络网络拓扑结构如图1所示:
图1 BP网络拓扑结构示意图
电力信息管理非功能需求分析往往涉及多层因素,这就可以根据前馈式网络,按照问题不同,转换不同的函数来评估指标的适用性。如常用的转换函数有输出值介于 0 和 1 之间的对数双弯曲函数,以及产生-1 到1 以外数值的线性转移函数,如图 2所示,n 为神经元作用函数,a为经转换函数转换输出值。
图2 BP网络转移函数分类
3.1.2 BP模型计算步骤
BP神经网络步骤和流程如下:
(2)由网络计算隐含层各单元的输入、输出结果,比较输出层、中间层各单元的一般化误差,并修正中间层至输出层,输入层至中间层连接权值和输出层各单元阈值。如式(2)、式(3):
然后随机选取下一个学习模式对提供给网络,依次类推,直至完成网络收敛。即:直至网络全局误差函数E小于预先设定的一个极小值,如当训练次数大于预先设定值,无法完成网络收敛,即强制网络停止学习。如式(4)所示:
3.2.1 确定评价指标体系个指标的评价值
首先将构建的电力管理信息系统非功能需求评价指标体系经由专家给出评价指标体系个指标的评价值。每个指标给出6个等级:很好,好,较好,一般,较差,差,并予以量化处理为[0,1]之间的数值,见下表2:
表2 定性指标的量化
其次,根据专家体系网络输出的结果与评语集中的评语进行匹配,从而给出该体系的运行效果。如假设专家个数为n,专家体系将计算各输入变量Ii对评价结果的影响能力Ri,并予以解释,Ri的计算公式如式(5):
应用基于神经网络的管理信息系统综合评价方法进行仿真评价。将专家评价得到的数据作为学习样本进行训练,模拟待评估的对象。见表3所示:网络隐含层神经元选为可用性、可靠性、安全性、可移植性四个,给定精度为0,训练次数N=100次,权值调整参数,偏置值调整参数,学习结果如表4所示,它们与期望的输出非常接近,仿真评价结果与专家对管理信息系统的评价结果完全一致。
表3 各评价指标在系统中相应的专家评价值
表4 仿真评价结果
软件开发中要获取的非功能需求,进行面向目标分析,得到一棵关于非功能需求的目标优化神经网络,网络中的父子结点间是“与”关联。分析神经网络中的非功能需求是获取相关的领域信息的一个途径,它便于将非功能需求和与其相关的所有领域关联建立设计分析图,有利于根据特定的领域信息进行量化获取合理的设计决策。本文针对电力系统的特点,结合FURPS+模型,构建了电力系统非功能需求评价指标体系,并采用神经网络模型计算了该评价指标体系的适用性,为电力信息系统非功能需求管理提供参考依据。采用神经网络模型仿真结果表明该评价指标体系较为精确可行,实际应用意义明显,特别适合于对定性指标的评价。
[1]杨放春,龙湘明.软件非功能属性研究[J].北京邮电大学学报,2004,27(3):1-12.
[2]丁辉,姚庆文.面向方面建模的研究[J].计算机应用与软件,2008,25(4):109-111.
[3]张新红,郑丕谔.基于神经网络的管理信息系统综合评价方法[J].系统工程学报,2002(10).
[4]Non functional requirements[EB/OL].http://www.smart-ba.com/articles/Non%20func tional%20requirements.pdf 2013-01-31.
[5]田精白.网络式软件非功能需求分析方法及其应用[D].武汉:武汉大学,2009.