《软件需求工程》习题集
一、单项选择题
1、 软件生产中产生需求问题的最大原因在于对应用软件的( )理解不透彻或应用不坚决。
(A) 复杂性 (B)目的性 (C)模拟性 (D)正确性
2、 需求分析的目的是保证需求的( )。
(A) 目的性和一致性 (B)完整性和一致性
(C)正确性和目的性 (D)完整性和目的性
3、 系统需求开发的结果最终会写入( )。
(A) 可行性研究报告 (B)前景和范围文档
(C)用户需求说明 (D)系统需求规格说明
4、 现实世界中的( )构成了问题解决的基本范围,称为该问题的问题域。
(A) 属性和状态 (B)实体和状态 (C)实体和操作 (D)状态和操作
5、 功能需求通常分为三个层次,即业务需求、用户需求和( )。
(A) 硬件需求 (B)软件需求 (C)质量属性 (D)系统需求
6、 如果在最终的物件(Final Artifact)产生之前,一个中间物件(Mediate Artifact)被用来在一定广度和深度范围内表现这个终物件,那么这个中间物件就被认为是最终物件在该广度和深度上的( )。
(A) 模拟 (B)构造 (C)原型 (D)模型
7、 按照开发方法进行分类,原型可分为:演化式原型和( )原型。
(A) 演示原型 (B)纸面原型
(C)抛弃式原型 (D)样板原型
8、 按照涉及的功能进行分类,原型可分为:水平型原型和( )原型。
(A) 屏幕流原型 (B)情景串联原型
(C)垂直型原型 (D)深度模拟原型
9、 原型的需求内容可以从三个纬度上分析:即( )。
(A) 外观、角色和实现 (B)开发、实现和作用
(C)成本、技术和实现 (D)需求、作用和角色
10、当用户无法完成主动的信息告知,或与需求工程师之间的语言交流无法产生有效的结果时,有必要采用( )。
(A) 民族志 (B)观察法 (C)话语分析 (D)任务分析
11、下列( )不是需求获取常见的模型驱动方法?
(A) 面向目标的方法 (B)基于场景的方法。
(C)基于用例的方法 (D)基于采样的方法
12、功能目标可以分为 ( )。
(A) 安全目标和可用性目标 (B)满足型目标和信息型目标
(C)软目标和硬目标 (D)维护目标和实现目标
13、面向目标方法的目标分析阶段的主要任务是( )。
(A) 获取目标 (B)确定解决方案
(C)建立目标模型 (D)发现问题和缺陷 14、描述场景所使用的表示法要符合正规性要求,一般可使用非形式化语言、半形式化语言和形式化语言。在实践中,( )是主要的描述方式。
(A)形式化的程序语言 (B)非形式化的自然语言
(C)形式化的图形工具 (D)非形式化的设计语言
15、下列( )不是场景方法在需求工程中的应用。
(A) 帮助进行详细的需求分析
(B) 编写系统需求规格说明
(C) 结合面向目标的方法,指导需求获取活动的开展
(D) 组织需求获取得到的信息
16、与其他的场景方法相比,用例最大的特点是采用了( )的描述方式。
(A) 静态非结构化文本 (B)动态非结构化文本
(C)静态结构化文本 (D)动态结构化文本
17、用例之间的关系主要有( )三种。
(A) 包含、扩展和简化 (B)合取、析取和扩展
(C)包含、多态和继承 (D)包含、扩展和泛化
18、分析的活动主要包括识别、定义和结构化,它的目的是获取某个可以转换为知识的事物的信息,这种分析活动被称为( )。
(A) 需求信息获取 (B)建立软件系统解决方案
(C)需求信息转化 (D)建立需求分析模型
19、( )是建模 为常用的两种手段。
(A) 具体和抽象 (B)抽象和分解 (C)分解和细化 (D)抽象和细化
20、抽象通过强调本质的特征,( )了问题的复杂性。
(A) 调整 (B)避免 (C)增加 (D)减少
21、需求分析仅仅需要描述解决方案,不需要探索实现细节的情况下,分析模型又是( )
的,尤为适用。
(A) 形式化 (B)半形式化 (C)结构化 (D)非结构化
22、22、上下文图描述系统与环境中外部实体之间的界限和联系。它从现实世界的角度说明了系统的( ),并确定了所有的输入和输出。
(A)环境与外观 (B)边界和联系 (C)边界和环境 (D)输入和输出
23、( )是结构化分析方法的核心技术,它表明系统的输入、处理、存储和输出,以及它
们如何在一起协调工作。
(A) 数据流图 DFD (B)实体联系图 ERD (C)状态转换图 (D)上下文图
24、需求分析活动的一个重要任务是进行( ),明确用户需求的隐含信息,展开为明确的
对软件系统的行为期望,即系统需求。
(A) 需求整理 (B)需求细化 (C)需求获取 (D)需求分析
25、下列( )不是用例模型中的关系?
(A) 属性 (B)关联 (C)泛化 (D)包含
26、系统边界是指一个系统所包含的系统成分与系统外事物的分界线。用例模型使用一个
( )来表示系统边界,以显示系统的上下文环境。
(A) 圆形框 (B)菱形框 (C)虚线框 (D)矩形框
27、UML 使用的行为模型有三种,即:( )。
(A) 交互图、状态图和顺序图 (B)顺序图、通信图和时间图
(C)交互图、状态图和活动图 (D)交互概述图、通信图和时间图
28、项目的前景和范围文档、用户需求文档都被视为属于( ),重点都是用户的现实世界。
(A) 开发文档 (B)需求文档 (C)前景文档 (D)用户文档
29、系统需求规格说明文档、软件需求规格说明文档、硬件需求规格说明文档、接口需求规
格说明文档和人机交互文档一起被用于系统开发的目的,都被认为是( )。
(A) 开发文档 (B)需求文档 (C)过程文档 (D)用户文档
30、下列( )不是需求规格说明文档的读者?
(A) 项目管理者 (B)编程人员 (C)销售商 (D)律师
二、填空题
1、 传统的需求分析方法都是从 转入分析领域的。
2、 应用型软件分析阶段的主要目的是发现人们利用软件的原因(目的),找出需要软件解决的问题,理解应用环境中的领域知识,保证功能的 。
3、 需求工程是所有需求处理活动的总和,它包括 和需求管理两个部分。
4、 软件需求开发用来确定系统需求中应该由软件满足的部分,将其映射为软件行为,产生 。
5、 优秀的需求应该具备 7 个特性,即完整性、正确性、精确性、可行性、必要性、无歧义和 。
6、 所有对软件系统的开发和应用具有发言权和决定权的人统称为 。
7、 按照媒介载体进行分类,原型可分为: 和纸上向导原型。
8、 演示原型主要被用在 阶段。
9、 演示原型都是被用来展示用户想象中的 ,所以它要能够表现用户界面的重要特征。
10、如果一个问题的技术解决方案是不清晰的, 也可以被用来展现相应的细节功能以使用户确信该问题解决的可能性。
11、通常来说,如果用户需求出现了模糊、不清晰、不完整等具有一定不确定性的特征,就可以考虑使用 方法。
12、 是指原型物件在用户工作中的价值,也就是说它为什么对用户是有用的。
13、 是指用户对原型物件的具体感觉体验,即用户在使用原型物件时会看到什么、听到什么和感觉到什么。
14、实现是指原型物件完成功能的 和方法。
15、使用演化式原型方法,在开发时就需要注意原型的 和代码的质量。
16、使用实验式开发方法,需要实现多种技术方案,考察重要的系统的 。
17、选择使用探索式开发方法,需要尽可能地考虑各种不同的设计选项,比较不同选项下的 。
18、原型方法的最大优点是能够及早地解决系统开发中的 ,从而降低软件项目失败的风险。
19、复杂的工作总会同时存在着正常流程和异常流程,异常流程大多是一些特殊情况下的处理,限定了异常处理的上下文环境,即异常处理具有 的情景性。
20、文档审查主要获取对象包括相关产品的 、 和客户的需求文档。
21、面向目标方法的处理过程可以分为三个阶段:目标获取、 和目标实现。
22、目标实现阶段的主要任务是收集与目标相关的需求信息,讨论可能的候选解决方案,确定 终的系统 和解决方案。
23、场景具有重点描述真实世界的特征,它利用情景、 、事件随时间的演化等方式来叙述性地描述系统的使用。
24、具体场景,又称为 ,是对个别行为者、事件、情节的细节描述。
25、抽象场景,又称为 ,是以经验中的类别和抽象概念来描述事实。
26、探索性场景可以用来进行需求获取和 。
27、每个 是对相关场景集合的叙述性的文本描述,这些场景是用户和系统之间的交互行为序列,帮助实现用户的目的。
28、用例是场景方法中的一种,是 的结构化文本描述。
29、在高层的功能需求获取完备之前,用例的产生方式中不允许使用 方式。
30、单个用例描述了系统的功能片段,系统的所有用例基于一定的关系组织起来,建立 ,就可以描述整个系统的功能。
31、原有用例和新建立的 的关系即为包含关系。 32、在需求工程中,主要产生三类重要的文档:项目前景和范围文档、用户需求文档以及需求规格说明。 通常被用来代替用户需求文档,起到记录、交流领域信息和用户期望的作用。
33、需求获取得到的信息和需求开发应该建立的软件系统解决方案之间有着很大的差距。 就是用来解决这个差距的需求工程活动。
34、需求分析的根本任务是: 并创建解决方案。
35、分解将单个复杂和难以理解的问题分解成多个相对更容易的子问题,并掌握各子问题之间的 。
38、需求分析方法主要有:结构化方法、信息工程方法和面向对象方法。其中 是目前工业界使用的主流方法。
40、后期需求阶段分析关注的是解系统解决方案的建立,因此它以软件系统为中心,注重于分析系统的内部功能以及它与环境的互动,是对 的详细信息的分析。
41、需求协商活动既包括对目标冲突的处理,也包括对 冲突的处理。
57、用例模型的基本元素有四种:用例、参与者、关系和 。
58、UML 行为模型是用例模型的 ,以更加详细的方式说明用例所描述的系统行为。
59、UML 行为模型的活动图是依据 进行的用例实现。
60、UML 行为模型的交互图通常描述的是单个用例的 。
61、接口需求规格说明文档是对整个系统中需要软、硬件 部分的详细描述。
62、优秀的需求规格说明文档应该具备:正确性、无歧义、完备性、一致性、根据重要性和稳定性分级、 、可修改、可跟踪等特性。
63、需求验证常见方法有:需求评审、 、测试用例开发、用户手册编制、利用跟踪关系和自动化分析。
64、评审又被称为 ,是指由作者之外的其他人来检查产品问题的方法。
65、需求基线的维护主要包括配置管理和 。
66、需求跟踪是以 为基线,在向前和向后两个方向上,描述需求以及跟踪需求变化的能力。
67、从需求向后回溯(前向跟踪的两种联系之一)说明软件需求来源于哪些涉众的需要和 。
68、后向跟踪是指 到软件需求规格说明文档之后的演化过程。
69、后向跟踪包括两种联系:从需求向前跟踪和 。
三、判断题
1、 需求工程包括需求获取和需求开发两个方面。( )
2、 需求验证是需求工程中最后一个活动。()
3、 软件系统能够与问题域进行交互和相互影响的原因在于,软件系统中的某些部分对问题域中的某些部分具有模拟特性。()
4、 规格说明是问题域为满足用户需求而提供的解决方案,规定了解系统的行为特征。
()
5、 业务需求具有明显的目的性和较高的抽象性,经过明确和细化的处理,可以直接转化为系统需求。()
6、 需求开发的一些特性决定了需求开发过程只能是一个简单的线性增量过程。()
7、 对于需求不确定性比较小的项目,用户参与可以取得比较好的效果,但对于需求不确定性比较大的项目,用户参与反而可能带来阻碍作用。()
8、 按照构建技术进行分类,原型可分为:水平原型和垂直原型。()
9、 严格意义上的原型主要被用在需求分析阶段。()
10、要完成相同的功能,构建抛弃式原型比构建演化式原型所花费的代价要大得多。()
11、水平原型方法仅仅实现选定功能实现的所有层次,能够处理较大范围的功能。()
12、垂直原型方法会触及选定功能所有层次中的某些特定层次,处理的功能范围通常较小。
()
13、建立外观原型时重在原型的用户界面和交互方式,原型的功能和技术实现细节就会被简化处理。()
14、 14、如果选择的开发方法是实验式或者探索式开发方法,应该尽量花费最小的代价,争取最快的速度,忽略或简化不重要的功能处理。()
15、原型修正主要依据评估人员的反馈,可以忽略事先的原型调整计划。()
16、文档审查是一种传统的需求获取方法,是专门针对文档进行的需求获取活动。()
17、由于文档是来自于当前计算机或手工系统的产物,因此它是正确的,也正是客户所需要的。()
18、成功的需求获取任务不仅要求成功地执行每一次具体的需求获取行为,还要求成功地处理多次获取行为之间的关系。()
19、对系统的现状和背景进行分析往往能够发现重要的目标,得到一些明确的问题和缺陷,它们的反面就是系统需要实现的目标。()
20、场景被人们广泛接受的原因是因为人们更倾向于会对真实事件和真实事物的描述产生反应。()
21、描述场景时所使用的常见媒介形式主要有:叙述性的自由文本、结构化文本。强限制文本、表格、图表、图像等。()
22、描述性场景的目的是为了记录已经得到的需求,即整理每次需求获取行为中得到的信息。()
23、UML 就是以用例来捕获系统所有的系统需求的。()
24、用例的内容只能包含有正常流程,而不能包含有异常流程。()
25、用例可以用于各种目的的应用,包括描述、探索和解释。()
26、用例是在对现实世界的探索中或者是在对需求规格说明的解释中产生的,是通过功能分解的方式创建的。()
27、抽象用例是不能被实例化的,它必须被包含在其他用例中才能得以执行。()
28、用例间的泛化关系是指子用例继承了父用例的特征。()并增加了新的特征
29、抽象一方面要求人们关注重要的信息,同时又不能忽略次要的内容。另一方面也要求人们将认知保留在适当的层次,屏蔽更深层次的细节。()
30、由于计算模型的形式化特征不适合于需求工程阶段,因此计算模型不适合用于需求分析中的建模。()
31、具有形式化特征的计算模型是用户和开发者共同理解的模型。()
32、由于模型需要描述的内容太过复杂的,因此分析模型对模型语言语用的要求不可能太高。()
33、软件需求分析的关键是为真实世界的问题建立模型,即问题域建模。()
34、在“结构化方法-信息工程方法-面向对象方法”的发展历程中,每一种后来的方法在吸收了前面方法的重要思想的同时也替代前面的方法。()
35、上下文图是 DFD 的一个特定层次,被用来说明系统的上下文环境,确定系统的边界。
()
36、发起或触发用例的外部用户以及其他软件系统等角色被称为参与者。()
37、交互图是对单个用例的典型场景的实现,适合于事务性业务工作的表示。()
38、UML 行为模型的状态图是以状态机模型的方式进行的用例实现。状态图只能用来实现单个用例。 ()
39、软件需求规格说明文档是对部分系统功能分配给软件部分的详细描述。()
40、人机交互文档是对整个系统功能中需要进行人机交互部分的详细描述。()
41、验证活动同样普遍存在于需求分析过程中。()
42、需求验证并不是一个可以一次结束的活动,它可能需要多次、反复地执行验证。()
前向跟踪是指需求在被获取到软件需求规格说明文档之前的演化过程。()