关键字:需求分析 软件可靠性
不准使用需求说明语言中不曾定义的符号,保证所有语句均满足语法规则。实践表明,错误的预防、检测和更正是语法质量保证的三种基本手段。检测错误是通过模型的构造发现错误;预防错误是拒绝在模型中加入错误的语句;更正错误是用正确的语句替换错误的语句。前两者可以通过需求说明语言的形式预防来完成,后者则较难自动化。
语义质量是需求模型有效性和完备性的保证。有效性要求模型中的所有语句都正确且与用户需求相关;完备性要求模型包含领域中关于问题的所有相关语句。需求模型与领域越相似,其语义质量越高。但对实际问题,不可能达到彻底的有效性和完备性,因而较为实际的目标是在约定的可信度下的有效性和完备性。多数提高模型质量的方法都依赖于人们对模型具体内容的理解,即语用手段。一致性检测往往可自动完成,而不必真正理解给出的模型。
语用质量影响人们对表达同一意义的多种表达方式的选择,其目标是可理解性。它不仅要使需求模型能被理解,而且要确保开发人员理解该模型。与语义质量目标一样,在可理解性中也需要引入可信度。任何有助于理解需求模型的手段都可以纳入达到语用目标的有益途径 。
例如,各种逐项阅读、以求理解的模型检查,以图表代替文字的模型可视化,利用动画表现系统动态特征的模型动画显示,根据统计数据预测模型所刻划软件行为特征的系统模型,基于解释的模型查阅手段,基于过滤(甚至包括语言翻译)的阅读范围控制等。
3.软件需求分析中的可靠性分析、设计与管理
在软件需求分析过程中,可靠性任务包含四方面内容:一是对可靠性需求的获取、分析二是确定拟开发软件的可靠性目标;三是软件需求分析过程中的可靠性设计;四是为实现可靠性目标而采取的可靠性管理。在需求分析活动中,将这四方面的可靠性任务以用户和软件开发人员共同熟悉的软件可靠性度量加以反映。
用户需求中有时已经包含了用户对可靠性的要求,这样,需求分析人员只需将其可靠性要求和其它要求一起进行细化,并以规定的要求和形式形成能综合反映可靠性要求的规格说明即可。不过,大部分用户对可靠性提不出明确的要求、甚至没有要求,这就需要根据用户对拟开发软件的功能、性能等要求,来确定用户对可靠性的要求和可靠性目标,并将其随软件功能的分解而分解。
在软件需求分析过程中,我们可以很方便地列举出影响软件需求分析可靠性的一些常见的错误和缺陷,并可以估计需求分析错误相对这些错误和缺陷的分布。
为了进一步开展软件需求分析中的可靠性设计,可以用需求分析中的错误或缺陷度量来对需求分析的有关可靠性指标进行度量。通过度量,明确主要的软件错误分布及对软件需求分析可靠性的影响,以及软件需求分析阶段的错误或缺陷指标后,我们就可以对相关的错误或缺陷进行控制。
需求分析中的错误或缺陷,主要残存于需求规格说明中。对此,可通过仔细的复核、审查与评审来降低。当然,分析人员素质的提高,以及分析工具、方法和说明语言的选择都相当重要。
软件需求分析阶段中的可靠性问题,同样严重受制于其复杂性。因此,有效地控制其复杂性(包括结构的、功能分解的、总体的、规格说明的复杂性),是确保需求分析阶段可靠性的有效措施。
为了能有效地避免需求分析中的人为因素,需求重用在很多时候是一种非常有效的方法。它包括模型、方法、概念、工具的重用,以及需求规格说明的片段、甚至完全的重用。
因为软件需求分析是一项纯智力活动,所以需要在这一过程中、尤其在需求分析的后期,进行有效的评审和验证。它们是发现需求分析错误和缺陷的最有效的办法。当然,它们也只能发现需求分析中的错误和缺陷,并不能保证需求分析没有错误和缺陷。此时,采用基于严格数学正确性证明和公理证明的非形式化正确性证明方法,会收到意想不到的效果。
文章来源于领测软件测试网 https://www.ltesting.net/