APP下载

基于模糊评价方法的需求文档质量评价研究*

2010-04-26郭天杰

舰船电子工程 2010年1期
关键词:说明书文档软件

姚 刚 郭天杰

(海军航空工程学院 烟台 264001)

1 引言

在软件开发过程中,需求分析是最开始的工作,是整个软件开发的基础,对软件的质量起决定作用。需求分析如果做得不够详细或者是偏离用户需求的话,往往会给项目带来灭绝性的灾难。众所周知,越到开发的后期,为纠正或弥补错误所付出的代价就越大,而且这个递增不是线性的,是呈几何级数增长的。因此必须在开发初期就对需求分析的中间产品进行评价。通过评价将问题发现并杜绝在软件开发的早期,将大大减少由于错误或不合理因素而导致的花费,节省软件开发和维护耗费,避免或减少可能的问题或风险。在需求分析阶段,开发组织产生的中间产品是需求文档,需求文档的好坏直接决定了需求的质量,有必要建立一个需求文档评价方法,定量的评价需求,从而更好地指导对需求文档的改进。

2 需求文档质量属性

需求分析的主要目的是对软件需求定义进行分析,解决其中存在的二义性和不一致性,并以一种系统化的形式准确地表达用户的需求,形成所谓的需求分析中间产品,即软件需求规格说明书。需求规格说明书是用户和开发人员之间交流的桥梁,是设计和编码的基础,同时也是测试和验收的依据。需求规格说明书精确地阐述一个软件系统必须提供的功能和性能以及它所要考虑的限制条件,应该尽可能完整地描述系统预期的外部行为和用户可视化行为,除了设计和实现上的限制,还应该包括设计、构造、测试或工程管理的细节。本文所述软件需求文档的质量属性来源于两个方面:

◦GB 9385-88[1]计算机软件需求说明编制指南规定的需求规格说明书应具有的特性(标准属性)。

◦依据开发者经验积累的对需求文档质量有重要影响的因素(经验属性)。

2.1 标准属性

计算机软件需求说明编制指南为软件需求的实践提供了一个规范化的方法,主要描述了软件需求说明必需的内容和质量。根据标准,需求文档的重要质量属性包括:无歧义性、完整性、可验证性、一致性、可修改性、可追踪性、运行和维护阶段的可使用性。

2.1.1 无歧义性

目前大多数的需求分析采用的仍然是自然语言,自然语言对需求分析最大的弊病就是它的二义性。无歧义性是指,当且仅当软件需求说明书对每一个需求只有一种解释。包括以下两点:

1)要求最终产品的每一个特性用某一术语描述;

2)若某一术语在某一特殊的行文中使用时具有多种歧义,那么对该术语的每种含义做出解释并指出其适用场合。

2.1.2 完整性

每一项需求都必须将所要实现的功能描述清楚,以使开发人员获得设计和实现这些功能所需的所有必要信息,它主要包括以下几点:

1)软件需求说明包括全部有意义的要求,无论是关系到功能、性能、设计约束,还是关系到属性或外部接口方面的需求;

2)对所有可能出现的输入数据的响应予以定义,要对合法和非合法输入值的响应做出规定;

3)需求分析中没有任何内容被标为“待定”。

2.1.3 可验证性

当且仅当SRS中描述的每一个需求都是可以验证的,该SRS才是可以验证的;当且仅当在某一性能价格比可取的有限处理过程,人或机器能通过该过程检查软件产品能否满足需求时,才称这个需求是可以验证的。

2.1.4 一致性

需求分析中陈述的需求没有与其它软件需求或高层(系统业务)需求发生冲突,而且需求分析中陈述的各个需求之间不发生冲突。

2.1.5 可修改性

如果一个软件需求说明的结构和风格在需求有必要改变时是易于实现的、完整的、一致的,那么这个软件需求说明就是可以修改的。可修改性要求其具备以下条件:

1)具有一个有条不紊的易于使用的内容组织,具有目录表、索引和明确的交叉引用表;

2)避免冗余,即同一需求不能在软件需求说明书中出现多次。如果同一需求出现多次,在修改时只修改了一处,则软件需求说明书会变的不一致。

2.1.6 可追踪性

如果每一个需求的源流是清晰的,在产生和改变文档时,可以方便地引证每一个需求,则该软件需求说明是可追踪的。

2.1.7 运行和维护阶段的可使用性

需求文档对运行和维护的过程起重要作用。维护常常是由与原来无联系的人来进行,需求文档是理解原先开发者意图的最好的材料,只有需求文档对于运行和维护阶段可使用,才能使维护工作容易进行。

2.2 经验属性

随着软件工程的发展,软件开发人员总结了关于文档质量的重要因素:文档的依从性和及时性。需求文档要遵循国家相关标准的规定,并且及时的分发给相关的人员,才能更好地发挥需求文档的重要作用。

2.2.1 需求规格说明书的依从性

需求规格说明书的编写要遵循国家软件工程标准和相关行业的规范,开发方可以根据项目特点进行适当地更改。需求规格说明书的规范性为记录功能需求和各种其它与需求相关的重要信息提供了统一的结构,便于各类读者的使用和查阅。

2.2.2 及时性

在软件开发过程中形成的各种文档都有其作用时效,因此文档如果不及时的编制完成,其将失去其存在的意义。有些文档应在系统某个阶段进行之前完成,有些文档必须在系统某个阶段开始后进行。开发文档必须与系统生产、使用、维护同步进行。需求分析阶段的需求规格说明要在概要设计之前完成,是概要设计的依据文档,如果分析规格说明产生是在概要设计阶段及以后,则需求规格说明书就失去其存在的意义。

3 模糊评价方法的应用

3.1 模糊综合评价概念和基本思想

模糊综合评价[3]是基于模糊集合理论的一种具体应用方法,是对具有多种属性的事物,或总体优劣受多种因素影响的事物做出一个综合这些属性或因素的合理的总体评价。

模糊综合评价的基本思想是利用模糊线性变换原理和最大隶属度原则。模糊评价中每一个评价因素由低一层次的若干因素决定,每一因素的评价是低一层次的多因素综合评判。这样由低到高逐层确定权重并根据该级别的综合评判,将所得结果构造出上一层次的模糊矩阵,进行上一层次的综合评判,考虑与被评价事物相关的各个因素,最终得出对评价对象的综合评价结果。在模糊综合评判方法中,模糊综合评价的一般步骤如下:1)建立因素集;2)建立评价集;3)确定权重集;4)确定隶属度函数;5)模糊综合评价;6)评价结果分析。

3.2 模糊评价方法应用分析

由于需求文档的复杂,评价者对需求文档质量的认识不完全,而评价结果依赖于评价者的个人知识、经验和感觉,因此具有一定的非客观性,故运用模糊理论对软件质量进行评价分析是合适的。为了综合考虑各种质量属性对需求文档评价的影响,利用上述所列的质量属性对需求文档质量的评价进行评价,将模糊评价方法应用于需求文档的评价中,使需求文档质量评价的结论更加客观和可信。模糊评价模型建立的具体步骤如下:

1)建立因素集

将上面所述的质量属性,作为模糊评价方法的因素集。评价因素集可以确定为U={U1,U2},评价因素集各评价指标的关系如图1所示。

图1 评价因素关系

2)建立评价集

在需求文档评价中,将评价效果的好坏分为四个等级,即优 、良 、合格和不合格 ,分别用 v1、v2、v3、v4表示,这样评价集为:V={v1,v2,v3,v4};

3)权重集的确定

在模糊综合评价中,因素重要程度模糊集 A的确定是否恰当直接影响评价的结果,因此选择合适的权重集是非常重要的。权重集的确定方法主要有关键特征调查法、Delphi法、层次分析法、统计加权法等。其中Delphi法是利用专家集体智慧来确定各因素在评价问题或决策问题中的重要程度系统的有效方法之一,也是确定权重常用方法之一。本文采用Delphi法依次确定一级指标和二级指标的权重,得 A={0.65,0.35},A1={0.17,0.17,0.13,0.13,0.14,0.15,0.11},A2={0.45,0.55}。

4)确定隶属度函数

本文采用指派法确定隶属度函数,结合实践经验最终确认其模糊分布为梯形分布。函数的具体表示如下:

5)需求文档的模糊评价

在需求文档各指标评价完成后,根据以上各指标的隶属度函数可以求出评价指标U对评价集V中各元素的隶属度,将各因素评价集的隶属度先进行一级评价,各评价矩阵分别为:

依据模糊线性变换的公式得一级模糊评价结果:

得R=A◦R=(b1,b2,b3,b4),B即为模糊评价结果。

6)评价结果分析

从上所述的模糊评判法可知,模糊综合评判的最终结果是一个数值向量,还需要对这个数值向量进行评价判断和分析,才能得到定性的结论。在分析,本文采用的方法是在评价时经常使用的最大隶属度法。

4 实例分析

应用上述所述的模糊评价模型,对某教务信息管理系统的需求文档进行评价,经专家评审讨论,需求文档各项指标的分值如下:

U11 U12 U13 U14 U15 U16 U17 U21 U22 90 80 75 83 90 70 80 92 86

将各评价指标值代入相应的隶属度函数求出各评价指标相对于评价集的隶属度,得到模糊关系矩阵如下:

根据上述所求的权重和模糊关系矩阵进行一级模糊评价得:

利用最大隶属度原则,该需求文档的评价结果为:良。从指标得分表中可知除一致性和可追踪性指标的得分稍低外,其他各项指标的得分普遍较高,模糊评价结论很好地反映了需求文档的质量状况。

5 结语

本文建立了一个评价需求文档质量的评价指标体系,然后将模糊评价方法运用到文档的评价中。通过实例分析,可以得到模糊评价方法,可以很好地反映需求文档的质量,对于今后需求文档质量的评价工作起到一定的指导规范作用。

[1]中国标准出版社.计算机软件工程国家标准汇编[S].北京:中国标准出版社,2007

[2]张海藩.软件工程导论[M].北京:清华大学出版社

[3]肖刚,古辉,等.实用软件文档写作[M].北京:清华大学出版社

[4]徐永雄.信息系统工程监理效果的模糊综合评价研究与应用[D].合肥:合肥工业大学硕士论文

[5]周津慧,王宗,等.基于模糊评价方法的软件质量评价研究[J].系统工程与电子工程,2004(7):988~991

[6]文斌,刘长青,等.软件工程与软件文档写作[M].北京:清华大学出版社

[7]曲晓英,陈雪松,等.ERP软件质量模糊综合评价方法[J].计算机工程,2006(9):81~82

[8]杨俊,景疆.软件质量度量技术浅谈[J].信息技术,2005(11):150~152

[9]熊伟,新藤久和,渡边喜道.软件需求定量分析及其映射的模糊层次分析法[J].软件学报,2005(3):427~433

[10]刘军.需求工程的质量评价准则[J].计算机应用研究,2003(4):6~8

猜你喜欢

说明书文档软件
爸妈,这是我的“使用说明书”
浅谈Matlab与Word文档的应用接口
禅宗软件
再婚“性福”说明书
有人一声不吭向你扔了个文档
说明书、无线电和越剧戏考
给“产品”写“说明书”
软件对对碰
Word文档 高效分合有高招
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat