单选题
需求分析活动建造了软件的数据领域、功能领域和行为领域模型。模型的核心是数据字典,围绕着这个核心有三种不同的图,其中,______描述数据对象间的关系,用于进行数据建模;______表示了系统的各种行为模式及在状态间进行变迁的方式,是行为建模的基础。
单选题
- A.实体关系图
- B.数据流图
- C.状态变迁图
- D.程序流图
单选题
- A.实体关系图
- B.数据流图
- C.状态变迁图
- D.程序流图
【正确答案】
C
【答案解析】[解析] 实体关系图(E-R图)描述数据对象间的关系,用于进行数据建模,这种模型称为概念数据模型。
数据流图是描述数据处理过程的一种图形工具。数据流图从数据传递和加工的角度,以图形的方式描述数据在系统流程中流动和处理的移动变换过程,反映数据的流向、自然的逻辑过程和必要的逻辑数据存储。
状态变迁图表示系统的各种行为模式以及在状态间进行变迁的方式,是行为建模的基础。
程序流图适合于描述系统中某个加工的执行细节,主要用在详细设计中。
单选题
在软件调试中,______通过演绎或归纳并利用二分法来定位问题源。
【正确答案】
C
【答案解析】[解析] 调试过程由两个步骤组成,它从表示程序中存在错误的某迹象开始,首先确定错误的准确位置,也就是找出哪条模块或哪条语句引起了错误。然后仔细研究推断代码以确定问题的原因,并设法改正。总的来说有三种调试的实现方法,分别是蛮力法、回溯法和原因排除法。
蛮力法的调试可能是为了找到错误原因而使用的最普通但是最低效的方法了。当所有其他的方法都失败的情形下,我们才会使用这种方法。根据“让计算机自己来寻找错误”的思想,进行内存映象,激活运行时的跟踪。
回溯是在小程序中经常能够奏效的相当常用的调试方法。从发现症状的地方开始,开始(手工地)向回跟踪源代码,直到发现错误原因。
原因排除法是通过演绎和归纳,以及二分法来实现的。对和错误发生有关的数据进行分析可寻找到潜在的原因。先假设一个可能的错误原因,然后利用数据来证明或者否定这个假设。也可以先列出所有可能的原因,然后进行检测来一个个地进行排除。如果最初的测试表明某个原因看起来很像,那么就要对数据进行细化来精确定位错误。
上面的每一种方法都可以使用调试工具来辅助完成。我们可以使用许多带调试功能的编译器、动态的调试辅助工具(跟踪器)、自动的测试用例生成器、内存映像工具,以及交叉引用生成工具。
单选题
管道和过滤器模式属于______。
- A.数据为中心的体系结构
- B.数据流体系结构
- C.调用和返回体系结构
- D.层次式体系结构
【正确答案】
B
【答案解析】[解析] 体系结构风格有9大类:
(1)数据流系统:包括顺序批处理、管道和过滤器。
(2)调用和返回系统:包括主程序和子程序、面向对象系统、层次结构。
(3)独立部件:包括通信进程、事件隐式调用。
(4)虚拟机:包括解释器、规则及系统。
(5)以数据为中心的系统:包括数据库、超文本系统、黑板系统。
(6)特殊领域风格;例如过程控制、模拟器。
(7)特殊结构的风格:例如分布式处理、状态转移系统。
(8)不同风格合成建立的异构结构。
(9)最初始、最基本的主程序/子程序。
管道和过滤器模式是为处理数据流系统提供的一种模式。它是由过滤器和管道组成的。每个处理步骤都被封装在一个过滤器组件中,数据通过相邻过滤器之间的管道进行传输。每个过滤器可以单独修改,功能单一,并且它们之间的顺序可以进行配置。
单选题
用户界面设计中,设计原则不正确的是______。
- A.为用户提供更多的信息和功能
- B.减少用户的记忆负担
- C.保持界面一致性
- D.置用户于控制之下
【正确答案】
A
【答案解析】[解析] 用户界面设计是一项复杂的任务,它必须遵循一些“良好设计”的指导原则,以下介绍一些关键的用户界面设计原则:
(1)用户控制。人机界面设计首先要确立用户类型。划分类型可以从不同的角度,视实际情况而定。确定类型后要针对其特点预测他们对不同界面的反应。这就要从多方面设计分析。用户应当感觉系统的运行在自己的控制之下。在图形界面或基于Web的界面中,用户指导程序的每一步执行;即使在程序进行某些处理或用户等待输出结果时,用户同样保持对控制的敏感度。
(2)信息最小量。人机界面设计要尽量减少用户记忆负担,采用有助于记忆的设计方案。
(3)帮助和提示。要对用户的操作命令做出反应,帮助用户处理问题。系统要设计有恢复出错现场的能力,在系统内部处理工作要有提示,尽量把主动权让给用户。
(4)媒体最佳组合。多媒体界面的成功并不在于仅向用户提供丰富的媒体,而应在相关理论指导下,注意处理好各种媒体间的关系,恰当选用。
(5)界面一致性。一致性要求用户界面遵循标准和常规的方式,让用户处在一个熟悉的和可预见的环境之中,这主要体现在命名、编码、缩写、布局以及包括菜单、按钮和键盘功能在内的控制使用等。
(6)界面容错性。一个好的界面应该以一种宽容的态度允许用户进行实验和出错,使用户在出现错误时能够方便地从错误中恢复。
(7)界面美观性。界面美观性是视觉上的吸引力,主要体现在具有平衡和对称性、合适的色彩、各元素具有合理的对齐方式和间隔、相关元素适当分组、使用户可以方便地找到要操作的元素等。
(8)界面可适应性。界面可适应性是指用户界面应该根据用户的个性要求及其对界面的熟知程度而改变,即满足定制化和个性化的要求。所谓定制化是在程序中声明用户的熟知程度,用户界面可以根据熟知程度改变外观和行为;所谓个性化是使用户按照自己的习惯和爱好设置用户界面元素。
单选题
用边界值分析法,假定10<X<30,那么X在测试中应取的边界值是______。
- A.X=11,X=29
- B.X=9,X=10,X=30,X=31
- C.X=10,X=30
- D.X=9,X=31
【正确答案】
B
【答案解析】[解析] 边界值分析法是对各种输入、输出范围的边界情况设计测试用例的方法。
使用边界值分析法设计测试用例,确定边界情况应考虑选取正好等于,刚刚大于,或刚刚小于边界的值作为测试数据,这样发现程序中错误的概率较大。
边界值分析法的使用要注意以下几点:
(1)如果输入条件规定了取值范围或数据个数,则可选择正好等于边界值、刚刚在边界范围内和刚刚超越边界外的值进行测试。
(2)针对规格说明的每个输入条件,使用上述原则。
(3)对于有序数列,选择第一个和最后一个作为测试数据。
单选题
需求工程活动产生软件运行特征的规约,指明软件和其他系统元素的接口并建立______。
- A.数据流图和数据字典
- B.程序流程图
- C.体系结构模型
- D.软件必须满足的约束条件
【正确答案】
D
【答案解析】[解析] 需求工程活动产生软件运行特征的规约,指明软件和其他系统元素的接口并建立软件必须满足的约束条件。数据流图和数据字典只是这些约束条件的表示方法,而程序流程图和体系结构模型是设计阶段的工作。
单选题
软件设计阶段的度量考虑了架构层次、构件层次和界面设计层次的问题,其中构件层次的设计度量集中于软件构件的内部特性,______不属于构件层次设计度量。
- A.模块内聚
- B.模块耦合
- C.布局恰当性
- D.复杂度
【正确答案】
C
【答案解析】[解析] 构件层次设计度量主要考虑模块的独立性问题,这包括内聚、耦合和复杂度。布局恰当性属于界面设计层次的问题。
单选题
复用应该是每个软件过程都不可缺少的部分。下列制品,不属于复用候选的软件制品是______。
- A.项目计划
- B.体系结构
- C.用户界面
- D.用户需求
【正确答案】
D
【答案解析】[解析] 在软件的复用过程中,有高级的复用,例如项目计划和体系结构的复用;也有低层的复用,例如代码复用和界面复用等。显然,用户需求是用户自己对软件的一些要求和目标,这是不能复用的。
单选题
面向功能的软件度量使用软件所提供功能的测量作为规范化值。下面关于面向功能的软件度量方法的描述,不正确的是______。
- A.面向功能度量是由Albrecht首先提出来的,他建议采用基于功能点的测量
- B.功能点是基于软件信息领域的可计算的(直接的)测量及软件复杂性的评估而导出的
- C.“功能”不能直接测量,所以必须通过其他直接的测量来导出
- D.“用户输入数”和“用户输出数”不属于面向功能的软件度量需要考虑的因素
【正确答案】
D
【答案解析】[解析] 面向功能的软件度量是对软件和软件开发过程的间接度量,注意力集中于程序的功能性和实用性,而不是对LOC计数。该度量是由Albrecht首先提出来的。他提出了一种叫做功能点方法的生产率度量法,该方法利用有关软件数据域的一些计数度量和软件复杂性估计的经验关系式,导出功能点FP(Function Point)。
功能点通过填写图表来计算。首先要确定五个数据域的特征,并在表格中相应位置给出计数。数据域的值以如下方式定义:
(1)用户输入数:每个用户输入应是面向不同应用的输入数据,对它们都要进行计数。输入数据应区别于查询数据,它们应分别计数。
(2)用户输出数:各个用户输出是为用户提供的面向应用的输出信息,它们均应计数。在这里的“输出”是指报告、屏幕信息、错误信息等,在报告中的各个数据项不应再分别计数。
(3)用户查询数:查询是一种联机输入,它引发软件以联机方式产生某种即时响应。每一个不同的查询都要计数。
(4)文件数:每一个逻辑主文件都应计数。这里的逻辑主文件,是指逻辑上的一组数据,它们可以是一个大的数据库的一部分,也可以是一个单独的文件。
(5)外部接口数:对所有用来将信息传送到另一个系统中的接口(即磁带、磁盘和可读/写光盘上的数据文件)均应计数。
一旦收集到上述数据,就可以计算出与每一个计数相关的加权复杂性值。
单选题
某个系统在开发时,用户已经定义了软件的一组一般性目标,但不能标识出详细的输入、处理及输出需求;开发者也可能暂时不能确定算法的有效性、操作系统的适应性或人机交互的形式。在这种情况下,采用______开发最恰当。
- A.瀑布模型
- B.迭代模型
- C.原型模型
- D.螺旋模型
【正确答案】
C
【答案解析】[解析] 从试题描述来看,用户对软件的需求并不明确,而且开发人员对算法也不确定,因此,适合使用原型模型。通过开发出原型,明确用户的需求,探索算法的有效性。通过原型的运行,来分析操作系统的适应性,以及人机交互的形式。