试题详情
- 简答题试比较编写需求规格说明文档所使用的三种语言。
-
需求工程师在描述需求规格说明文档时使用的语言分为三类:
①非形式化语言,即自然语言。
②半形式化语言,比自然语言具有更丰富的语义和更严格的语法同时又没有严格到完全基于数学方法的语言,例如ERD、DFD、UML等图形语言。
③形式化语言,基于数学的语言,例如VDM、Z语言等。
自然语言具有复杂的规则和多样化的表达方式,所以它的表达能力最为强大。而且自然语言属于普通人的语言,每个人都熟知其规则、表达方式和特点,所以非常利于用户的理解。但同时自然语言也具有松散、模糊、歧义、凌乱等不好的特性。这使得它无法被机器所理解,它所描述的信息内容也无法准确地映射为机器行为。
形式化语言是基于数学方法的语言,具有数学的表示法特性。使用形式化语言描述的信息内容是可以进行逻辑一致性推导和证明的,所以它能够保证信息的正确性。而且形式化的信息描述能够被机器所理解,它所描述的信息内容可以准确地映射为机器行为。但是形式化描述的信息要求读者具备谓词演算方面的知识,这对普通的用户而言显然要求过高,以至于大多数用户无法读懂以形式化方法描述的信息。形式化方法所能描述的内容也是有限的,具体的有限性因形式化方法的不同而各异。
半形式化语言是介于自然语言和形式化语言之间的描述语言。一方面,半形式化语言具有严格的语法,定义方式比自然语言更加严格,这使得它可以避免自然语言模糊、松散、歧义、凌乱等不好的特性。另一方面,半形式化语言具有丰富的语义,使用规则比形式化语言更复杂和多样,这使得它具有比形式化方法更强的表达能力。但是,丰富的语义使得半形式化语言的语法无法严格到可以等价于数学方法的程度,所以它描述的信息还需要进行额外的处理才能够被机器所理解或者准确地映射为机器行为。同时,严格的语法限制也使得半形式语言的表达能力无法达到自然语言的程度。而且因为具有独特的语法和语义,所以半形式语言对普通用户而言无异于一门全新的语言,它所描述的信息很难被用户所理解。
自然语言采用了以文本为主的描述方式;形式化语言也是使用以文本为主的描述方式;半形式化语言采用了以图形为主的描述方式,因为:
①半形式化语言的语法限制使得它用于信息描述的基本元素是有限的,这个有限性使得它以限定文本或者限定图形符号为描述方式成为可能。
②半形式化语言追求表达语义的丰富性,而在这一点上图形符号是胜过限定文本的,所以人们倾向于选择使用图形符号的描述方式。
在进行需求规格说明文档的编写时,用户倾向于使用自然语言,因为其他两种类别的语言难以理解。开发人员倾向于使用半形式语言和形式化语言,因为自然语言的表达不够严格和准确。形式化语言在实践中的应用很少,因为需求规格说明对语言的语义和表达能力有着较高的要求,而这恰恰是形式化语言有所欠缺的。
为了让需求规格说明文档的内容能够同时满足用户和开发人员的需要,需求工程师在实践中更多时候会综合使用自然语言、半形式化语言和形式化语言。 关注下方微信公众号,在线模考后查看
热门试题
- 从哪些方面验证软件需求的正确性?
- 静态建模法中的典型范例是用例图,用例图的
- 数据模型不包含以下哪个信息?()
- 功能目标可以分为()。
- 常用的动态分析方法不包括以下哪种()。
- 按照功能特征进行分类,原型可分为:()、
- 软件需求分析阶段的目的是澄清用户的要求,
- 简述涉众识别的基本过程。
- AND链接将一个父目标连接到一系列细化的
- ()用于描述数据的处理过程。
- 下列不属于需求开发的活动的是()。
- 需求基线
- 什么是UML,它可以用于什么类型的建模?
- 交互图是对单个用例的典型场景的实现,适合
- 以下()不是情景性的重要性质?
- 请说明如何快速有效地判定一个DFD图是否
- 第三范式
- 文档审查是一种传统的需求获取方法,是专门
- 以下哪步不是Pressman需求工程过程
- 场景的分类框架将场景方法从场景的()4个