软件需求描述不一致性缺陷检测文献综述

 2023-08-04 17:50:35
  1. 选题背景和意义

软件需求是指软件用户对软件在功能、性能和界面等方面提出的要求。有效的需求分析过程不仅可以提高软件开发的效率,还可以降低软件的开发成本并提高软件质量。

许多不受控制的需求变化会导致在软件的开发过程中出现致命的问题。特别是一般需求规格说明书建立,需求的改变将会引发问题的复杂性和不可预料性大幅度提升。不受控制的需求变化将会消耗软件开发过程中的大量资源,这些消耗会让研发的时间无限变长、会让研发的人员倍感疲累。

不受控制的需求变化对整个软件系统所产生的影响即是:对系统产生不一致。需求的不一致性的消除是需求变更管理过程中亟待解决的关键问题。需求的不一致性是指需求中存在着隐含的矛盾和冲突。在迭代过程中,当评估一个新的需求是否能够加入到已经完成的需求中时,需要评估该需求是否会导致系统直接的或隐含不一致问题。一旦矛盾的需求进入系统,在后续的开发和维护中查找问题的所在会花费大量的时间和精力,并且即使找到了矛盾点也可能会因为开发时间、成本等限制而降低软件的质量。所以管理软件需求变更、对新的需求变更进行严格的一致性检查显得尤为重要。

除此之外,不受控制的需求变化更会导致系统出现不一致性以及许多其他不可探查的缺点,这些问题都会降低软件的质量,换言之,若想发展高质量和高价值的软件,即使在软件开发过程中软件需求规格说明书已经建立,也不要阻止申请软件需求变化的各类请求。而应该尽力控制新的需求申请与已经建立的系统需求间的正确性以及一致性,通过各类算法及手段划分一直需求的优先级,使用动态的操作选取高优先级需求,在保证对系统需求达到最优的情况下,让新的需求规格说明书中存在不一致。

  1. 文献综述(或调研报告):

自动(或半自动)的需求不一致性分析和处理方法,与需求建模的原则和需求模型的表示形式密切相关。目前有代表性的研究工作可分为3类。第1类,采用经典逻辑或准经典逻辑作为需求表示形式,并利用定理证明技术进行需求不一致性的处理;第2类,采用状态变迁作为需求建模原则,并利用模型检验技术进行需求不一致性的处理;第3 类,以系统目标这个元概念作为需求建模原则,并利用目标的语义模式和关于目标的启发式规则进行需求不一致性的处理。

1、基于定理证明的方法

此类方法的主要特征是:假设任何需求描述都可以表示为逻辑断言,采用经典逻辑、时态逻辑或其他非经典逻辑等作为需求描述的形式化表示形式,利用定理证明的手段,采用标准逻辑推理规则,如归结、联结、否定消除、全称量词的实例化,以及其他一些类似于封闭世界假设这样的规则,找出需求描述中蕴涵的矛盾。若检测出矛盾,即表明存在不一致的需求描述。这种方法的优点是能够支持自动的需求不一致性检测,并具有良定的检测过程和语义。但是定理证明在计算上的低效率妨碍了技术本身的可行性,此外,一阶逻辑的半可判定性也限制了这种技术的实用性。

2、基于模型检验的方法

模型检验是一种验证有限状态并发系统的形式化方法,这种系统由一组系统状态变量来刻画,这组系统状态变量的不同取值表示系统的一个可能的状态。系统的需求则表示为随着系统的执行,系统的可能状态之间的变迁关系。形式化地说,一个状态变迁系统〈Q,R,I〉由一组状态Q、状态变迁关系Rsube;Qtimes;Q 以及初始状态集Isube;Q 组成。路径是状态的无限序列,使得每个相邻状态对都属于R。状态集合Q一般由一组状态变量编码,使得Q到变量值的映射是一对一的。目前最为常见的模型检测工具是SMV和SPIN。

3、基于图的需求描述

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

以上是毕业论文文献综述,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。