2019年下半年软件评测师上午真题

第 1 题

虚拟存储技术使(  )密切配合来构成虚拟存储器。

  • (A) 寄存器和主存
  • (B) 主存和辅存
  • (C) 寄存器和Cache
  • (D) Cache和硬盘

答案与解析

  • 试题难度:一般
  • 知识点:计算机组成与体系结构>多级存储体系
  • 试题答案:[['B']]
  • 试题解析:

    虚拟存储器:具有部分装入对换功能,能从逻辑上对内存容量进行大幅度扩充,使用方便的一种存储器系统。虚拟存储器的容量与主存大小无关。虚拟存储器的基本思路是:作业提交时,先全部部进入辅助存储器,作业投入运行时,不把作业的全部信息同时装入主存储器,而是将其中当前使用部分先装入主存储器,其余暂时不用的部分先存放在作为主存扩充的辅助存储器中,待用到这些信息时,再由系统自动把它们装入到主存储器中。

第 2 题

若计算机字长为32,则采用补码表示的整数范围为(  )。

  • (A) [-231,231)
  • (B) (-231,231)
  • (C) [232,231)
  • (D) [-231,232)

答案与解析

  • 试题难度:一般
  • 知识点:计算机组成与体系结构>数据的表示
  • 试题答案:[['A']]
  • 试题解析:

    本题中,字长32位,即用32位二进制表示数,带入上表中可以得出,应该为最小值为-231,最大值为231-1,即选项A[-231,231)。

第 3 题

CPU 执行指令时,先要根据程序计数器将指令从内存读取出并送入(  ),然后 译码并执行。

  • (A) 数据寄存器
  • (B) 累加寄存器
  • (C) 地址寄存器
  • (D) 指令寄存器

答案与解析

  • 试题难度:一般
  • 知识点:计算机组成与体系结构>运算器与控制器
  • 试题答案:[['D']]
  • 试题解析:

    累加器寄存器是专门存放算术或逻辑运算的一个操作数和运算结果的寄存器
    指令寄存器一般用来保存当前正在执行的一条指令。
    存储器数据寄存器主要是用来保存操作数和运算结果等信息的,其目的是为了节省读取操作数所需占用总线和访问存储器的时间。
    存储器地址寄存器一般用来保存当前CPU所访问的内存单元的地址,以方便对内存的读写操作。

第 4 题

以下关于CPU与I/O设备交换数据所用控制方式的叙述中,正确的是(  )。

  • (A) 中断方式下,CPU与外设是串行工作的
  • (B) 中断方式下,CPU需要主动查询和等待外设
  • (C) DMA方式下,CPU与外设可并行工作
  • (D) DMA方式下,需要CPU执行程序传送数据

答案与解析

  • 试题难度:一般
  • 知识点:计算机组成与体系结构>输入输出控制方式
  • 试题答案:[['C']]
  • 试题解析:

    中断方式下的数据传送是当I/O接口准备好接收数据或准备好向CPU传送数据时, 就发出中断信号通知CPU。对中断信号进行确认后,CPU保存正在执行的程序的现场, 转而执行提前设置好的I/O中断服务程序,完成一次数据传送的处理。这样,CPU就不需要主动查询外设的状态,在等待数据期间可以执行其他程序,从而提高了 CPU的利用率。采用中断方式管理I/O设备,CPU和外设可以并行地工作。
    程序查询方式下,CPU通过执行程序查询外设的状态,判断外设是否准备好接收数 据或准备好了向CPU输入的数据。
    直接内存存取(Direct Memory Access, DMA)方式的基本思想是通过硬件控制实现主存与I/O设备间的直接数据传送,数据的传送过程由DMA控制器(DMAC)进行控制,不需要CPU的干预。在DMA方式下,由CPU启动传送过程,即向设备发出“传送一块数据”的命令,在传送过程结束时,DMAC通过中断方式通知CPU进行一些后续处理工作。
    综合来看由于DMA方式下数据的传送过程由DMA控制器(DMAC)进行控制,不需要CPU的干预,CPU可以去做自己的事,这时是与外设并行工作的。

第 5 题

某计算机的主存储器以字节为单位进行编址,其主存储器的容量为1TB,也就是(  )。

  • (A) 230B
  • (B) 210KB
  • (C) 210MB
  • (D) 210GB

答案与解析

  • 试题难度:容易
  • 知识点:计算机组成与体系结构>其它
  • 试题答案:[['D']]
  • 试题解析:

    1 B=8 bit
    1 KB=210 B=1024 B
    1 MB=210 KB=220 B=1024*1024 B
    1 GB=210 MB=220KB=230 B=1024*1024*1024 B
    1 TB=210 GB=220 MB=230KB=240B=1024*1024*1024 *1024 B

第 6 题

(  )是构成我国保护计算机软件著作权的两个基本法律文件。

  • (A) 《中华人民共和国著作权法》和《计算机软件保护条例》
  • (B) 《中华人民共和国著作权法》和《中华人民共和国版权法》
  • (C) 《计算机软件保护条例》和《中华人民共和国软件法》
  • (D) 《中华人民共和国软件法》和《中华人民共和国著作权法》

答案与解析

  • 试题难度:一般
  • 知识点:法律法规与标准化>其它
  • 试题答案:[['A']]
  • 试题解析:

    构成我国保护计算机软件著作权的两个基本法律文件是《中华人民共和国著作权法》和《计算机软件保护条例》
    《计算机软件保护条例》:该《条例》分总则、软件著作权、软件著作权的许可使用和转让、法律责任、附则5章33条
    《中华人民共和国著作权法》:1990年9月7日,第七届全国人民代表大会常务委员会第十五次会议通过《中华人民共和国著作权法》

第 7 题

软件著作权的客体不包括(  )。

  • (A) 源程序
  • (B) 目标程序
  • (C) 软件文档
  • (D) 软件开发思想

答案与解析

  • 试题难度:容易
  • 知识点:法律法规与标准化>其它
  • 试题答案:[['D']]
  • 试题解析:

    计算机软件著作权的客体是指著作权法保护的计算机软件著作权的范围(受保护的对象)。根据《著作权法》第三条和《计算机软件保护条例》第二条的规定,著作权法保护的计算机软件是指:计算机程序及相关的文档。
    根据《计算机软件保护条例》第三条第一款的规定,计算机程序是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可被自动转换成代码化指令序列的符号化语句序列。计算机程序包括源程序和目标程序,同一程序的源程序文本和目标程序文本视为同一软件作品。
    根据《计算机软件保护条例》第三条第二款的规定,计算机程序的文档是指用自然语言或者形式化语言所编写的文字资料和图表,用了描述程序的内容、组成、设计、功能规格、开发情况、测试结果及使用方法等。文档一般包括程序设计说明书、流程图、用户手册等。

第 8 题

常用作网络边界防范的是(  )。

  • (A) 防火墙
  • (B) 入侵检测
  • (C) 防毒墙
  • (D) 漏洞扫描

答案与解析

  • 试题难度:容易
  • 知识点:信息安全>防火墙技术
  • 试题答案:[['A']]
  • 试题解析:

    防火墙技术是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术。其功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。
    入侵检测是防火墙的合理补充,帮助系统对付网络攻击,扩展了系统管理员的安全管理能力(包括安全审计、监视、进攻识别和响应),提高了信息安全基础结构的完整性。它从计算机网络系统中的若干关键点收集信息,并分析这些信息,看看网络中是否有违反安全策略的行为和遭到袭击的迹象。入侵检测被认为是防火墙之后的第二道安全闸门,在不影响网络性能的情况下能对网络进行监测,从而提供对内部攻击、外部攻击和误操作的实时保护。
    防毒墙是指位于网络入口处(网关),用于对网络传输中的病毒进行过滤的网络安全设备。通俗的说,防毒墙可以部署在企业局域网和互联网交界的地方,阻止病毒从互联网侵入内网。凡是病毒都有一定的特征。防毒墙会扫描通过网关的数据包,然后对这些数据进行病毒扫描,如果是病毒,则将其清除。理论上讲,防毒墙可以阻止任何病毒从网关处侵入企业内部网络。
    漏洞扫描是指基于漏洞数据库,通过扫描等手段对指定的远程或者本地计算机系统的安全脆弱性进行检测,发现可利用漏洞的一种安全检测(渗透攻击)行为。

第 9 题

甲怀疑乙发给他的信息已遭人篡改,同时怀疑乙的公钥也是被人冒充的。为了消除甲的疑虑,甲、乙需要找一个双方都信任的第三方,即(  )来签发数字证书。

  • (A) 注册中心RA
  • (B) 国家信息安全测评认证中心
  • (C) 认证中心CA
  • (D) 国际电信联盟ITU

答案与解析

  • 试题难度:一般
  • 知识点:信息安全>数字证书
  • 试题答案:[['C']]
  • 试题解析:

    证书机构CA是PKI的信任基础,它管理公钥的整个生命周期,其作用包括:发放证书、规定证书的有效期和通过发布证书废除列表(CRL)确保必要时可以废除证书。
    注册机构RA提供用户和CA之间的一个接口,它获取并认证用户的身份,向CA提出证书请求。它主要完成收集用户信息和确认用户身份的功能。这里指的用户,是指将要向认证中心(即CA)申请数字证书的客户,可以是个人,也可以是集团或团体、某政府机构等。
    国际电信联盟是联合国的一个重要专门机构,也是联合国机构中历史最长的一个国际组织。简称“国际电联”、“电联”或“ITU”。国际电联是主管信息通信技术事务的联合国机构,负责分配和管理全球无线电频谱与卫星轨道资源,制定全球电信标准,向发展中国家提供电信援助,促进全球电信发展。
    国家信息安全测评认证中心是国家信息安全保障体系中的重要基础设施之一,在国家专项投入的支持下,拥有国内一流的信息安全漏洞分析资源和测试评估技术装备;建有漏洞基础研究、应用软件安全、产品安全检测、系统隐患分析和测评装备研发等多个专业性技术实验室;具有专门面向党政机关、基础信息网络和重要信息系统开展风险评估的国家专控队伍。

第 10 题

将二进制序列0011011表示为八进制形式,为(  )。

  • (A) 033
  • (B) 27
  • (C) 66
  • (D) 154

答案与解析

  • 试题难度:一般
  • 知识点:计算机组成与体系结构>数据的表示
  • 试题答案:[['A']]
  • 试题解析:

    二进制转八进制,将二进制序列从右向左分组,每三位二进制一组,然后将每组对应的序列转换成对应的八进制数字即可;
    本题序列为:0011011分组后为0 011 011,每组转成八进制数字为:0 3 3

第 11 题

设X、Y、Z为逻辑变量,当且仅当X和Y同时为1时,Z为0,其他情况下Z为1,则对应的逻辑表达式为(  )。

  • (A) Z=X·Y
  • (B) X+Y
  • (C)
  • (D)

答案与解析

  • 试题难度:一般
  • 知识点:计算机组成与体系结构>数据的表示
  • 试题答案:[['D']]
  • 试题解析:

</p>

<!--[if gte mso 9]>

</xml><![endif]-->

根据题意“当且仅当XY同时为1时,Z0,其他情况下Z1”,可以得出选项D为正确选项。

</p>

第 12 题

以下关于海明码的叙述中,正确的是(  )。

  • (A) 校验位与数据信息位混淆且随机分布
  • (B) 数据信息位与校验位需要满足一定的位置关系
  • (C) 需将所有校验位设置在所有数据信息位之后
  • (D) 校验位的长度必须与数据信息位的长度相同

答案与解析

  • 试题难度:一般
  • 知识点:计算机组成与体系结构>校验码
  • 试题答案:[['B']]
  • 试题解析:

    海明码是由贝尔实施室设计的,利用奇偶性来检查和纠错的校验方法。海明码的构成方法是在数据位之间的确定位置上插入k个校验位,通过扩大码距来实现检错和纠错。
    数据位(n位)与校验位(k位),满足关系2k ≥ n+k

第 13 题

以下描述中,属于通用操作系统基本功能的是(  )。

  • (A) 对计算机系统中各种软、硬件资源进行管理
  • (B) 对信息系统的运行状态进行监控
  • (C) 对数据库中的各种数据进行汇总和检索
  • (D) 对所播放的视频文件内容进行分析

答案与解析

  • 试题难度:容易
  • 知识点:操作系统>其它
  • 试题答案:[['A']]
  • 试题解析:

    操作系统能有效地组织和管理系统中的各种软/硬件资源,合理地组织计算机系统工作流程,控制程序的执行,并且向用户提供一个良好的工作环境和友好的接口。

第 14 题

某计算机系统页面大小为4K,进程P的页面变换表如下表所示。若P中某数据的逻辑地址为十六进制2C18H,则该地址的页号和页内地址分别为(  );经过地址变换后,其物理地址应为十六进制(  )。

  • (A) 2和518H
  • (B) 2和C18H
  • (C) 5和518H
  • (D) 5和C18H
  • (A) 2C18H
  • (B) 4C18H
  • (C) 5C18H
  • (D) 8C18H

答案与解析

  • 试题难度:一般
  • 知识点:操作系统>段页式存储
  • 试题答案:[['B'],['C']]
  • 试题解析:

    题中页面大小为4K即212,即一个页面需要12位二进制来表示;地址2C18 H,对应的二进制为:10 1100 0001 1000,由于一个页需要12位二进制表示,因此前面两位10表示的是页号,后面12位1100 0001 1000表示的是页内地址,即页号位2,页内地址为C18;查表,页号为2的地址对应的物理块号为5,即0101,所以对应的物理地址为 0101 1100 0001 1000 即5C18 H。

第 15 题

假设系统有n(n>5)个并发进程,它们竞争互斥资源R。若采用PV操作,当有3个 进程同时申请资源R,而系统只能满足其中1个进程的申请时,资源R对应的信号量S 的值应为(  )。

  • (A) -1
  • (B) -2
  • (C) -3
  • (D) 0

答案与解析

  • 试题难度:一般
  • 知识点:操作系统>信号量与PV操作
  • 试题答案:[['B']]
  • 试题解析:

    PV操作:是实现进程同步和互斥的常用方法,P操作和V操作是低级通信原语,在执行期间不可分割;其中P操作表示申请一个资源,V操作表示释放一个资源。
    P操作的定义:S:=S-1,若S>=0,则执行P操作的进程继续执行;若S<0,则将该进程设为阻塞状态(因为无可用资源),并将其插入阻塞队列。
    V操作的定义:S:=S+1,若S>0,则执行V操作的进程继续执行;若S<=0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,然后执行V操作的进程继续。
    本题3个进程同时申请,1个进程获得资源,即1个进程运行另2个进程等待;当S值为负值时,S值的绝对值就是等待进程的数量,因此,此时S的绝对值应该为2,所以S=-2。

第 16 题

若系统中有4个互斥资源R,当系统中有2个进程竞争R,且每个进程都需要i个R(i≤3)时,该系统可能会发生死锁的最小i值是(  )。

  • (A) 1
  • (B) 2
  • (C) 3
  • (D) 4

答案与解析

  • 试题难度:一般
  • 知识点:操作系统>死锁
  • 试题答案:[['C']]
  • 试题解析:

    当给每个进程都分配其所需资源数少1个资源,且还有1个剩余资源时,系统不会发生死锁。将本题中的数值带入上述公式中得:2*(i-1)+1<=4,得出i<=2.5,因此当i>=2.5时系统就可能会发生死锁,本题中选项C和选项D都符合要求,但本题需求i的最小值,因此正确选项应该选择C。

第 17 题

编译和解释是实现高级程序设计语言的两种基本方式,(   )是这两种方式的主要区别。

  • (A) 是否进行代码优化
  • (B) 是否进行语法分析
  • (C) 是否生成中间代码
  • (D) 是否生成目标代码

答案与解析

  • 试题难度:一般
  • 知识点:程序设计语言>编译与解释
  • 试题答案:[['D']]
  • 试题解析:

    解释程序也称解释器;直接解释执行源程序,或者将源程序翻译成某种中间代码后再加以执行。
    编译程序也称编译器;将源程序翻译成目标语言程序,然后再计算机上运行目标程序。
    两者的根本区别:编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;解释方式下,解释程序和源程序(或某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序。即:解释方式,翻译程序不生成独立的目标程序,而编译方式则生成独立保持的目标程序。
    一般的编译程序工作过程包括词法分析、语法分析、语义分析、中间代码生成、代 码优化、目标代码生成,以及出错处理和符号表管理,如下图所示。

第 18 题

某个不确定有限自动机(S0为初态,S3为终态)如下图所示,(  )是该自动机可识别的字符串(即从初态到终态的路径中,所有边上标记的字符构成的序列)。

  • (A) baabb
  • (B) bbaab
  • (C) aabab
  • (D) ababa

答案与解析

  • 试题难度:容易
  • 知识点:程序设计语言>文法
  • 试题答案:[['A']]
  • 试题解析:

    确定的有限自动机(S,∑,f,s0,Z)
    S是一个有限集,其每个元素称为一个状态
    ∑是一个有穷字母表,其每个元素称为一个输入字符
    F是S× ∑→S上的单值部分映射
    f(A ,a)=Q 表示当前状态为A,输入为a时,将转换到下一个状态Q,称Q为A的一个后记状态
    s0 ∈S,是唯一的一个开始状态
    Z是非空的终止状态集合,Z⊆S
    非确定的有限自动机与确定的区别
    F是S× ∑→2S上的映射
    对于S中的一个给的状态及输入符号,返回一个状态的集合。即当前状态的后继状态不一定是唯一的
    有向弧上的标记可以是ℇ

    题干中有限自动机对应的正规式为:( a | b )* a b b,即以abb结尾的序列,题干选项中符合以abb结尾的选项为A

第 19 题

在C程序中,(  )是合法的用户定义变量名。
①_123②form-7③short④form_7

  • (A) ①③
  • (B) ②③④
  • (C) ②④
  • (D) ①④

答案与解析

  • 试题难度:一般
  • 知识点:程序设计语言>其它
  • 试题答案:[['D']]
  • 试题解析:

    在C语言中规定:用户在自定义标识符必须必须以字母a~z、 A~Z或下划线开头,后面可跟任意个(可为0)字符,这些字符可以是字母、下划线和数字,其他字符不允许出现在标识符中。C语言中的关键字,有特殊意义,不能作为标识符;
    题中的short表示短整型数据的关键字,所以不能用作用户自定义标识符。

第 20 题

在C程序中,设有“int a=3,b=2,c=1;”,则表达式a>b>c的值是(  )。

  • (A) 0
  • (B) 1
  • (C) 2
  • (D) 不确定

答案与解析

  • 试题难度:一般
  • 知识点:程序设计语言>其它
  • 试题答案:[['A']]
  • 试题解析:

    关系运算>为左结合运算,所以表达式a>b>c,先计算a>b(3>2)结果为1(即等式成立);计算结果再与c进行运算即1>c(1>1)结果为0(即等式不成立)。

第 21 题

在C程序中,对于如下的两个for语句,其运行后a和b的值分别为(  )。
for(int a=0;a==0;a++);
for(int b=0;b=0;++b);

  • (A) 0,0
  • (B) 0,1
  • (C) 1,0
  • (D) 1,1

答案与解析

  • 试题难度:一般
  • 知识点:程序设计语言>其它
  • 试题答案:[['C']]
  • 试题解析:

    for循环语法:
    for(①初始化表达式;②条件表达式;④累加器){
    ③循环体
    }
    执行流程:
    (1)执行初始化表达式①;
    (2)执行条件表达式②,如果条件满足,为true,执行循环体③, 执行累加器④,继续执行条件表达式②,如果条件满足,为 true,执行循环体③, 执行累加器④……以此类推,直到循环条件不满足,结束循环
    本题中第一个for循环语句,第一次运行时先执行赋值语句a=0,然后进行条件比较a==0为真,然后执行循环题(本题循环体为空),再执行累计部分即a++;执行后a=1;再进行条件比较a==0为假,最后结束循环。所以这时a的值为1;
    本题中第二个for循环语句,第一次运行时先执行赋值语句b=0,然后进行条件比较b=0为假(b=0是一个赋值语句不是一个条件表达式,判定结果为0即假),接下来就直接结束循环;所以这时b的值为0。

第 22 题

函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(call by value) 方式,第二个参数采用传引用(call by reference)方式,main()执行后输出的值为(   )。

  • (A) 2
  • (B) 3
  • (C) 8
  • (D) 10

答案与解析

  • 试题难度:一般
  • 知识点:程序设计语言>传值与传址
  • 试题答案:[['C']]
  • 试题解析:

    传值调用:形参取的是实参的值,形参的改变不会导致调用点所传的实参的值发生改变。
    引用(传址)调用:形参取的是实参的地址,即相当于实参存储单元的地址引用,因此其值的改变同时就改变了实参的值。
    在函数执行的过程中,f(5,x)f(int x,int &a)可以得出第一个参数x的取值为5(第一个参数为传值调用);第二个参数a取得左边main()函数中x的地址(第二个参数为传址调用);当运行x=2*a-1后,f()函数中x的取值变为3(2*2-1);当运行a=x+5后,a对应地址的取值被修改为8,也就是将main()函数中的x值修改为8;当运行return后,f()函数结束。这时main()函数中的x取值为8;所以当main()函数答应x值时,应该输出为8。

第 23 题

若某二叉树的先序遍历序列是ABDCE,中序遍历序列是BDACE,则该二叉树为(  )。

  • (A)
  • (B)
  • (C)
  • (D)

答案与解析

  • 试题难度:一般
  • 知识点:数据结构与算法基础>树与二叉树
  • 试题答案:[['D']]
  • 试题解析:

    先序遍历:先遍历根节点,然后以先序遍历的方式遍历左子树,最后以先序遍历的方式遍历右子树。
    中序遍历:先以中序遍历的方式遍历左子树,然后遍历根节点,最后以中序遍历的方式遍历右子树。
    选项A:先序遍历的结果为:ABDEC;中序遍历的结果为:DBEAC
    选项B:先序遍历的结果为:ABCDE;中序遍历的结果为:BADCE
    选项C:先序遍历的结果为:ABDCE;中序遍历的结果为:BDAEC
    选项D:先序遍历的结果为:ABDCE;中序遍历的结果为:BDACE

第 24 题

对n个关键码构成的序列采用简单选择排序法进行排序的过程是:第一趟经过n-1次关键码之间的比较,确定出最小关键码在序列中的位置后,再将其与序列的第一个关键码进行交换,第二趟则在其余的n-1个关键码中进行n-2次比较,确定出最小关键码的位置后,再将其与序列的第二个关键码进行交换……以此类推,直到序列的关键码从小到大有序排列。在简单选择排序过程中,关键码之间的总比较次数为(  )。

  • (A) n(n-1)/2
  • (B) n2/2
  • (C) n(n+1)/2
  • (D) nlogn

答案与解析

  • 试题难度:一般
  • 知识点:数据结构与算法基础>时间复杂度与空间复杂度
  • 试题答案:[['A']]
  • 试题解析:

    依据题干的描述完成第1趟排序比较次数为n-1;第2趟为n-2次比较;以此类推;所以总的比较次数为:(n-1)+(n-2)+……+1=n(n-1)/2

第 25 题

数据库是按照一定的数据模型组织、存储和应用的(  )的集合。

  • (A) 命令
  • (B) 程序
  • (C) 数据
  • (D) 文件

答案与解析

  • 试题难度:容易
  • 知识点:数据库系统>其它
  • 试题答案:[['C']]
  • 试题解析:

    数据库是一个长期存储在计算机内的、有组织的、可共享的、统一管理的数据的集合;支持数据库的软件系统称为数据库管理系统;数据库是以文件方式存储数据的,在应用程序和数据库之间由数据库管理系统负责数据的存取。

第 26 题

关系数据库是表的集合。对视图进行查询,本质上就是查询从(  )中获得的数据。

  • (A) 一个视图
  • (B) 一个或若干个索引文件
  • (C) 一个或若干个视图
  • (D) 一个或若干个基本表

答案与解析

  • 试题难度:一般
  • 知识点:数据库系统>其它
  • 试题答案:[['D']]
  • 试题解析:

    在关系数据库中,基本表存放的是各种信息。
    索引文件由数据文件组成,它是带索引的顺序文件。
    视图是从一个或多个表或视图中导出的表;其结构和数据是建立在对表的查询基础上;视图不是真实存在的基础表,而是一个虚拟表;数据库中只存放视图的定义;视图的数据是没有实际存放,视图的数据结构存储在数据库中。
    从本质上来看对视图进行查询,就是从一个或若干个基本表中进行数据查询。

第 27 题

某银行信用卡额度关系C(信用卡号,用户名,身份证号,最高消费额度,累计消 费额)中,信用卡号唯一标识关系C的每一个元组。一个身份证只允许办理一张信用卡。 关系C有(  )。

  • (A) 1个候选键,即信用卡号
  • (B) 2个候选键,即信用卡号、身份证号
  • (C) 1个候选键,即身份证号
  • (D) 1个候选键,即信用卡号、用户名

答案与解析

  • 试题难度:一般
  • 知识点:数据库系统>其它
  • 试题答案:[['B']]
  • 试题解析:

    在关系数据库候选码/候选键:如果在一个关系中,存在一个属性(或属性组)都能用来唯一标识该关系的元组,并不含有多余的属性,这个属性(或属性组)称为该关系的候选码或候选键。

    依据题干的描述信任卡号能唯一标识关系C的每一个元组,且不含多余属性,因此信任卡号为候选码
    依据题干的描述,一个身份证只允许办理一张信任卡,也就是一个身份证只对应一张信任卡,身份证号函数决定信任卡号,综上所述身份证也能唯一标识每一个元组,且不含多余属性,因此身份证号为候选码
    综上所述,本题中存在2个候选码:信任卡号和身份证号

第 28 题

给出关系R(A,B,C)和S(A,B,C),R和S的函数依赖集F={A→B,B→C}。若R 和S进行自然连接运算,则结果集有(  )个属性。关系R和S(  )。

  • (A) 3
  • (B) 4
  • (C) 5
  • (D) 6
  • (A) 不存在传递依赖
  • (B) 存在传递依赖A→B
  • (C) 存在传递依赖A→C
  • (D) 存在传递依赖B→C

答案与解析

  • 试题难度:一般
  • 知识点:数据库系统>规范化理论
  • 试题答案:[['A'],['C']]
  • 试题解析:

    传递函数依赖:在关系模式R (U) 中, 如果X→Y, Y→Z, Z不是Y的子集, Y不函数决定X, 则称Z对X传递函数依赖。
    题中“R和S的函数依赖集F={A→B,B→C}”,即存在A→C;所以在R和S关系中都存在函数依赖。
    自然连接:是一种特殊的等值连接;要求两个关系中进行比较的分量必须是相同的属性组;并且在结果集中将重复属性列去掉;由于R和S关系中的列都为A、B、C,R和S进行自然连接运算后,形成只有A、B、C组成的3元关系;

第 29 题

以下关于数据流图的基本要素的叙述中,不正确的是(  )。

  • (A) 外部实体仅指软件系统的用户
  • (B) 数据流由一组固定成分的数据组成,表示数据的流向
  • (C) 加工用于描述输入数据流到输出数据流之间的变换
  • (D) 数据存储用来表示存储的数据

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>需求分析
  • 试题答案:[['A']]
  • 试题解析:

    数据流:由一个或一组固定的数据项组成,表示数据的流向。
    加工:描述了输入数据流到输出数据流之间的变换,也就是输入数据流经过什么处理后变成了输出数据流。
    数据存储:数据存储用来存储数据。
    外部实体:是指在于软件系统之外的人员或组织,其指出系统所需数据的发源地(源)和系统所产生的数据的归宿地(宿)。

第 30 题

软件需求规格说明书的内容不包括(  )。

  • (A) 软件功能需求
  • (B) 软件非功能需求
  • (C) 设计约束
  • (D) 接口设计

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>需求分析
  • 试题答案:[['D']]
  • 试题解析:

    软件需求包括功能需求、非功能需求和设计约束3个方面的内容。
    功能需求:所开发的软件必须具体什么样的功能。
    非功能需求:是指产品必须具备的属性或品质,如可靠性、性能、响应时间、容错性和扩展性等。
    设计约束:也称为限制条件、补充规约,这通常是对解决方案的一些约束说明。
    接口设计:为设计阶段的内容。

第 31 题

下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的权重表示活动的持续时间(天),则里程碑(  )在关键路径上。在其他活动按时完成的情况下,活动FJ最多可以晚(  )天开始而不影响工期。

  • (A) B
  • (B) C
  • (C) D
  • (D) E
  • (A) 0
  • (B) 1
  • (C) 2
  • (D) 3

答案与解析

  • 试题难度:一般
  • 知识点:项目管理>Gant图与Pert图
  • 试题答案:[['C'],['D']]
  • 试题解析:

    松弛时间:表示在不影响整个工期的前提下,完成该任务有多少机动余地。
    关键路径:在活动图中时间跨度最长的路径。
    题中所有从开始到结束的路径中最长的为ADGIJL,其总长度为27天。选项中事件D在关键路径上。
    题中经过FJ最长的路径为ABFJL共计24天,27-24=3天,所以松弛时间为3天。

第 32 题

某开发小组为某企业开发较大规模的项目,该开发小组已经为同一行业的其他企业开发过类似的项目,且该项目需求变化很少,则最适宜采用(  )开发过程模型。

  • (A) 瀑布
  • (B) 演化
  • (C) 螺旋
  • (D) 喷泉

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>软件开发方法
  • 试题答案:[['A']]
  • 试题解析:

    瀑布模型:是将软件生存周期中的各个活动规定为依线性顺序连接的若干个阶段的模型,包括需求分析、设计、编码、测试、运行与维护。它规定了由前至后、相互衔接的固定次序;以项目阶段评审和文档控制为手段有效地对整个开发过程进行指导;其优点是:容易理解,管理成本低;强调开发的阶段性早期计划及需求调查和产品测试;其缺点是:客户必须能够完整、正确、清晰地表达他们的需要;在开始的2~3个阶段中,很难评估真正的进度状态;当项目结束时,出现大量的集成和测试工作;直到项目结束之前,都不能演示系统的能力;需求或设计中的错误往往只有到了项目后期才能够被发现,对项目风险控制能力较弱,从而导致项目常常延期完成,开发费用超出预期。适合需求明确的项目;
    原型模型:开始于沟通,其目的是定义软件的总体目标,标识需求,然后快速制定原型开发的计划,确定原型的目标和范围,采用快速设计方式对其进行建模,并构件原型。其优点是:利于增加软件人员和用户对系统需求的理解;原型的最终版本可作为产品或者最终系统的一部分;其缺点是:文档容易被忽略;建立原型的许多工作被浪费;项目难以规划和管理。适用于需求不明确、动态变化的项目。
    演化型原型:其目的是将原型作为目标系统的一部分,通过对原型的多次改进,逐步将原型演化成最终的产品。
    螺旋模型:采用一种周期性的方法来进行系统开发,结合原型方法和瀑布模型;每一周期都包括制定计划、风险分析、实施工程和评审4个阶段,进行迭代。其优点是:客户始终参与,和管理层有效地交互;强调风险分析,使得开发人员和用户对每个演化层出现的风险有所了解。其缺点是:需要具有相当丰富的风险评估经验,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失;过多的迭代次数会增加开发成本,延迟提交时间。适合于风险比较大,系统复杂的项目。
    喷泉模型:是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。使软件开发过程自下而上周期的各阶段是相互迭代和无间隙的特性。其优点是:模型的各个阶段没有明显的界限,开发人员可以同步进行开发;是可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程;其缺点是:由于喷泉模型在各个开发阶段是重叠的,因此在开发过程中需要大量的开发人员,因此不利于项目的管理;此外这种模型要求严格管理文档,使得审核的难度加大,尤其是面对可能随时加入各种信息、需求与资料的情况。用于面向对象开发。
    本题中由于已经做过该行业类似的项目,需求变化很少,适合采用瀑布模型。

第 33 题

以下(  )不是敏捷开发方法Scrum的步骤。

  • (A) Product Backlog
  • (B) Refactoring
  • (C) Sprint Backlog
  • (D) Sprint

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>软件开发方法
  • 试题答案:[['B']]
  • 试题解析:

    Scrum为并列争球法,是敏捷开发方法的一种。该方法使用迭代的方法,其中把每30天一次的迭代称为冲刺,并按需求的优先级来实现产品。多个自组织和自治小组并行地递增实现产品,协调是通过简短的日常情况会议进行。具体步骤包括:
    首先需要确定一个ProductBacklog,即按优先顺序排列的一个产品需求列表;
    Scrum Team根据ProductBacklog列表,进行工作量的预估和安排;
    有了ProductBacklog列表,通过Sprint Planning Meeting(Sprint计划会议)从中挑选一个Story作为本次迭代完成的目标,这个目标的时间周期是1~4个星期,然后细化这个Story,形成一个SprintBacklog;
    SprintBacklog是由Scrum Team完成的,每个成员根据Sprint Backlog再细化成更小的任务(在2天内能完成);
    在Scrum Team完成计划会议上选出的Sprint Backlog过程中,需要进行Daily Scrum Meeting,每次会议控制在15分钟左右,每个人都必须发言,向所有成员当面汇报前一天的工作,承诺当天要完成的任务,可以提出遇到不能解决的问题,并更新自己的Sprint burn down;
    做到每日集成,也就是每天都要有一个可以成功编译并且可以演示的版本;
    当一个Story完成,即Sprint Backlog完成,也就表示一次Sprint完成,此时需要进行Sprint Review Meeting(演示会议),即评审会议,产品负责人和客户都要参加,每一个Scrum Team的成员都要向他们演示自己完成的软件产品;
    Sprint Retrospective Meeting(回顾会议),也称为总结会议,以轮流发言方式进行,每个人都要发言,总结并讨论改进的地方,放入下一轮Sprint的产品需求中。
    重构(Refactoring)就是通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。不是Scrum的步骤。

第 34 题

为了提高模块独立性,模块之间最好采用(  )耦合。

  • (A) 数据
  • (B) 标记
  • (C) 控制
  • (D) 公共

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>软件设计
  • 试题答案:[['A']]
  • 试题解析:

    模块独立是值每个模块完成换一个相对独立的特定子功能,并且与其他模块之间的联系简单。衡量模块独立程度的标准有:聚合和耦合——高聚低耦;其中耦合是模块之间的相对独立性的度量;耦合类型从低到高如下所示:
    非直接耦合:两个模块之间没有直接关系,它们的联系完全是通过主模块的控制和调用来实现的。
    数据耦合:两个模块彼此间通过数据参数交换信息。
    标记耦合:一组模块通过参数表传递记录信息,这个记录是某一个数据结构的子结构,而不是简单变量。
    控制耦合:两个模块彼此间传递的信息中有控制信息。
    外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息。
    公共耦合:两个模块之间通过一个公共的数据区域传递信息。
    内容耦合:一个模块需要涉及到另一个模块的内部信息。

第 35 题

在ISO/IEC软件质量模型中,可靠性指在指定条件下,软件维持其性能水平有关的 能力,其子特性不包括(  )。

  • (A) 成熟性
  • (B) 容错性
  • (C) 易恢复性
  • (D) 准确性

答案与解析

  • 试题难度:一般
  • 知识点:软件质量与评价>软件质量模型
  • 试题答案:[['D']]
  • 试题解析:

    软件质量模型包括6个特性功能性、可靠性、易用性、效率、维护性、可移植性;
    功能性包括:适合性、准确性、互操作性、保密安全性等子特性
    可靠性包括:成熟性、容错性、易恢复性等子特性
    易用性包括:易理解性、易学性、易操作性、吸引性等子特性
    效率包括:时间特性、资源利用等子特性
    维护性包括:易分析性、易改变性、稳定性、易测试性等子特性
    可移植性包括:适应性、易安装性、共存性、易替换性等子特性

第 36 题

以下不属于在需求分析阶段编写的文档是(  )。

  • (A) 软件需求规格说明书
  • (B) 概要设计文档
  • (C) 测试计划
  • (D) 用户手册

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>需求分析
  • 试题答案:[['B']]
  • 试题解析:

    本题中需求分析阶段涉及的文档有:软件需求规格说明书、测试计划、用户手册等;
    题中的概要设计文档属于软件设计中概要设计阶段需要编写的内容。

第 37 题

由于操作系统升级而对软件进行修改的行为属于(  )维护。

  • (A) 改正性
  • (B) 适应性
  • (C) 改善性
  • (D) 预防性

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>软件维护类型
  • 试题答案:[['B']]
  • 试题解析:

    维护分类(ISO/IEC14764)
    更正性维护:更正交付后发现的错误。
    适应性维护:使软件产品能够在变化后或变化中的环境中继续使用。
    完善性维护:改进交付后产品的性能和可维护性。
    预防性维护:在软件产品中的潜在错误成为实际错误前,检测并更正它们。
    依据题干的描述本次维护应该是为了适用变化了的运行环境,应属于适应性维护。

第 38 题

在分层体系结构中,(  )接收用户的请求并决定调用哪个模型去处理该请求, 以及确定选择哪个视图来显示返回的数据。在基于JavaEE平台开发的软件系统中,常用(  )技术来实现该层。

  • (A) 表示层
  • (B) 控制层
  • (C) 模型层
  • (D) 数据层
  • (A) HTML
  • (B) JSP
  • (C) Servlet
  • (D) EJB

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>其它
  • 试题答案:[['B'],['C']]
  • 试题解析:

    多层软件体系结构通常包括:表示层、控制层、模型层和数据层。
    表示层主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。最常用的技术是JSP。
    控制层接收用户的请求并决定调用哪个模型去处理该请求,以及确定选择哪个视图来显示返回的数据。通常用Servlet技术来实现。
    模型层主要负责业务逻辑的处理。
    数据层主要负责数据的存储和访问。
    EJB容器:负责所有的EJB的运行,支持EJB组件的事务处理和生命周期管理,以及Bean的查找和其他服务,支持J2EE多层架构的基础结构,是一个控制业务实现的运行期环境,并提供事务服务、持久性、安全性等重要的系统服务,让开发人员不必开发基础服务而将注意力集中在业务逻辑的实现。

第 39 题

以下关于二叉树的叙述中,不正确的是(  )。由5个结点构成的二叉树有(  )种不同的形式。

  • (A) 每个内部结点最多有两棵子树
  • (B) 某个结点如果只有一个孩子结点,则无左右之分
  • (C) 除了根结点之外,其他结点只有一个父结点
  • (D) 二叉树可以是空集
  • (A) 14
  • (B) 30
  • (C) 42
  • (D) 48

答案与解析

  • 试题难度:一般
  • 知识点:数据结构与算法基础>树与二叉树
  • 试题答案:[['B'],['C']]
  • 试题解析:

    二叉树是n(n ≥ 0)个结点的有限集合,它或者是空树(n = 0),或者是一个根结点及两颗不相交的且分别称为左、右子树的二叉树所组成。
    二叉树中,除了根结点之外,其他每个结点只有一个父结点。
    N个节点(N>=2)的二叉树有:

    这是1个求和公式。
    N=0,是空树,只有1种形态,即A[0]=1。
    N=1,是单节点树,只有1种形态。即A[1]=1。
    当N>=2时,A[N]是对A[N]A[N-M-1],M从0~N-1的求和。
    如:
    当N=2时,M=0~N-1=0~1,
    A[2]=A[0] ×A[2-0-1]+A[1] ×A[2-1-1]=A[0] ×A[1]+A[1] ×A[0]=2;
    当N=3时,M=0~N-1=0~2,
    A[3]=A[0] ×A[3-0-1]+A[1] ×A[3-1-1]+A[2] ×A[3-2-1]
    =A[0] ×A[2]+A[1] ×A[1]+A[2]A[0]=1×2+1×1+2×1=5
    当N=4时,M=0~N-1=0~3,
    A[4]=A[0] ×A[4-0-1]+A[1] ×A[4-1-1]+A[2] ×A[4-2-1] +A[3] ×A[4-3-1] =5+2+2+5=14
    当N=5时,M=0~N-1=0~4,
    A[5]=A[0] ×A[5-0-1]+A[1] ×A[5-1-1]+A[2] ×A[5-2-1] +A[3] ×A[5-3-1] +A[4] ×A[5-4-1]=14+5+2+2+5+14=42

第 40 题

已知某文档仅包含6种不同的字符,其每个字符出现的频率如下表所示,采用霍夫曼编码对该文档压缩存储,则单词“face”的编码为(  ),该文档的压缩比为(  )。

  • (A) 110001001101
  • (B) 101000010100
  • (C) 001101001100
  • (D) 110101001100
  • (A) 20%
  • (B) 25%
  • (C) 30%
  • (D) 40%

答案与解析

  • 试题难度:一般
  • 知识点:数据结构与算法基础>其它
  • 试题答案:[['A'],['B']]
  • 试题解析:

    哈夫曼树又称最优二叉树,是一种带权路径长度最短的二叉树。所谓树的带权路径长度,就是树中所有的叶结点的权值乘上其到根结点的路径长度(若根结点为0层,叶结点到根结点的路径长度为叶结点的层数)。树的带权路径长度记为WPL=(W1*L1+W2*L2+W3*L3+…+ Wn*Ln),N个权值Wi(i=1,2,…n)构成一棵有N个叶结点的二叉树,相应的叶结点的路径长度为Li(i=1,2,…n)。可以证明哈夫曼树的WPL是最小的。
    构造哈夫曼树的算法如下:
    1)对给定的n个权值{W1,W2,W3,…,Wi,…,Wn}构成n棵二叉树的初始集合F={T1,T2,T3,…,Ti,…, Tn},其中每棵二叉树Ti中只有一个权值为Wi的根结点,它的左右子树均为空。
    2)在F中选取两棵根结点权值最小的树作为新构造的二叉树的左右子树,新二叉树的根结点的权值为其左右子树的根结点的权值之和。
    3)从F中删除这两棵树,并把这棵新的二叉树同样以升序排列加入到集合F中。
    4)重复2)和3),直到集合F中只有一棵二叉树为止。

    用二叉树设计二进制前缀编码:以电文中的字符作为叶子结点构造二叉树。然后将二叉树中结点引向其左孩子的分支标 ‘0’,引向其右孩子的分支标 ‘1’; 每个字符的编码即为从根到每个叶子的路径上得到的 0, 1 序列。如此得到的即为二进制前缀编码。

    构造的哈弗曼树和节点编码如下所示:

    对应各字符的编码为:a(0)、b(101)、c(100)、d(111)、e(1101)、f(1100)
    face的编码为:1100 0 100 1101
    平均码长 =0.45╳1+0.12╳3+0.13╳3+0.16╳3+0.05╳4+0.09╳4=0.45+0.36+0.39+0.48+0.20+0.36=2.24
    由于6个字符,至少需要3位二进制才能完成编码。
    压缩比为:1-2.24/3=0.25

第 41 题

下图是(  )设计模式的类图,该设计模式的目的是(  )。该图中,Handler 和Handler之间是(  )关系,Handler和ConcreteHandler之间是(  )关系。

  • (A) 适配器
  • (B) 桥接
  • (C) 装饰
  • (D) 责任链
  • (A) 将一个类的接口转换为客户期望的另一种接口,使得原本因不匹配的接口而无法合作的类可以一起工作
  • (B) 将一个抽象与其实现分离开,以便两者能够各自独立地演变
  • (C) 动态地给一个对象附加额外的职责,不必通过子类就能灵活地增加功能
  • (D) 使多个对象都有机会处理同一个请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止
  • (A) 依赖
  • (B) 关联
  • (C) 继承
  • (D) 实现
  • (A) 依赖
  • (B) 关联
  • (C) 继承
  • (D) 组合

答案与解析

  • 试题难度:一般
  • 知识点:面向对象>面向对象的基本概念
  • 试题答案:[['D'],['D'],['B'],['C']]
  • 试题解析:

    Decorator(装饰)模式描述了如何动态地为对象添加一些额外的职责。
    Chain of Responsibility(责任链)使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系,将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。
    Adapter(适配器)将一个类的接口转换成客户希望的另一个接口。
    Bridge(桥接)将抽象部分与其实现部分分离,使它们都可以独立地变化。
    类图中Handler和Handler之间是关联关系
    Handler和ConcreteHandler之间是继承关系

第 42 题

以下对软件测试对象的叙述中,正确的是(  )。

  • (A) 只包括代码
  • (B) 包括代码、文档、相关数据和开发软件
  • (C) 只包括代码和文档
  • (D) 包括代码、文档和相关数据

答案与解析

  • 试题难度:一般
  • 知识点:软件测试基础>软件测试的对象
  • 试题答案:[['D']]
  • 试题解析:

    根据软件的定义,软件包括程序、数据和文档,所以软件测试就不仅仅是对程序的测试,也包括对文档的测试等。软件测试应该贯穿于整个软件生命周期,在整个软件生命周期中,不同阶段测试的对象和测试的类型也将不同。在软件定义阶段产生的可行性研究报告、软件需求说明书或系统功能说明书,在软件开发阶段产生的概要设计说明书、详细设计说明书,以及源程序等都是软件测试的对象。

第 43 题

以下(  )不属于单元测试中模块接口测试的测试内容。

  • (A) 是否修改了只做输入用的形式参数
  • (B) 全局变量的定义在各模块是否一致
  • (C) 是否使用了尚未初始化的变量
  • (D) 输出给标准函数的参数个数是否正确

答案与解析

  • 试题难度:较难
  • 知识点:软件测试基础>软件测试分类(按照开发阶段分)
  • 试题答案:[['C']]
  • 试题解析:

    单元测试的内容:模块接口测试;局部数据结构测试;路径测试;错误处理测试;边界测试;
    模块接口测试具体包括:调用所测模块时的输入参数与模块的形式参数在个数、属性、顺序上是否匹配;所测模块调用子模块时,其输入给子模块的参数与子模块中的形式参数在个数、属性、顺序上是否匹配;是否修改了只作输入用的形式参数;输出给标准函数的参数在个数、属性、顺序上是否正确;全局量的定义在各模块中是否一致;限制是否通过形式参数来传递。
    局部数据结构测试包括:不正确或不一致的数据类型说明;适用尚未赋值或尚未初始化的变量;错误的初始值或错误的缺省值;变量名拼写错或书写错;不一致的数据类型。
    选项C为局部数据结构测试的内容。

第 44 题

以下关于确认测试的叙述中,不正确的是(  )。

  • (A) 确认测试需要验证软件的功能和性能是否与用户要求一致
  • (B) 确认测试是以用户为主的测试
  • (C) 确认测试需要进行有效性测试
  • (D) 确认测试需要进行软件配置复查

答案与解析

  • 试题难度:一般
  • 知识点:软件测试基础>软件测试分类(按照开发阶段分)
  • 试题答案:[['B']]
  • 试题解析:

    确认测试:
    任务:验证软件的功能和性能及其他特性是否与用户的要求一致(软件的功能和性能要求在软件需求规格说明中明确规定)
    内容:有效性测试:是在模拟的环境下,运用黑盒测试的方法,验证所测软件是否满足需求规格说明书列出的需求;软件配置复查:其目的是保证软件配置的所有成分都齐全,各方面的质量都符合要求,具有维护阶段所必需的细节,而且已经编排好分类的目录。
    一般为第三方测试。

第 45 题

以下关于软件质量特性的叙述中,不正确的是(  )。

  • (A) 功能性指软件在指定条件下满足明确和隐含要求的能力
  • (B) 可靠性指软件在指定条件下维持规定的性能级别的能力
  • (C) 易用性指软件在指定条件下被理解、学习使用和吸引用户的能力
  • (D) 可维护性指软件从一种环境迁移到另一种环境的能力

答案与解析

  • 试题难度:一般
  • 知识点:软件质量与评价>软件质量模型
  • 试题答案:[['D']]
  • 试题解析:

    功能性:是指当软件在指定条件下使用时,软件产品满足明确和隐含要求功能的能力。
    可靠性:在指定条件下使用时,软件产品维持规定的性能级别的能力。
    易用性:是指在指定条件下使用时,软件产品被理解、学习、使用和吸引用户的能力。
    效率:是指在规定条件下,相对于所用资源的数软件产品可提供适当的性能的能力。
    维护性:是指软件产品可被修改的能力。修改可能包括修正、改进或软件适应环境、 需求和功能规格说明中的变化。
    可移植性:是指软件产品从一种环境迁移到另外一种环境的能力。

第 46 题

以下关于软件测试原则的叙述中,不正确的是(  )。

  • (A) 所有的软件测试都应追溯到用户需求
  • (B) 应当尽早和不断地进行测试
  • (C) 人力充足时应进行完全测试
  • (D) 非单元测试阶段,程序员应避免检查自己的程序

答案与解析

  • 试题难度:一般
  • 知识点:软件测试基础>软件测试的原则
  • 试题答案:[['C']]
  • 试题解析:

    软件测试原则:所有的测试都应追溯到用户需求;应尽早并不断地进行测试;测试工作应避免由原开发软件的人或小组来承担(单元测试除外);穷举测试是不可能的,测试需要终止;充分重视测试中的群集现象;严格按照测试计划来进行,避免随意性。

第 47 题

以下关于软件生命周期测试策略的叙述中,不正确的是(  )。

  • (A) 在软件分析阶段进行需求说明书评测
  • (B) 在软件概要设计阶段进行概要设计说明书评测
  • (C) 在软件详细设计阶段进行详细设计说明书评测
  • (D) 在软件开发阶段进行编码规范评测

答案与解析

  • 试题难度:一般
  • 知识点:软件测试基础>软件测试策略(开发阶段)
  • 试题答案:[['D']]
  • 试题解析:

    分析设计阶段的测试工作是评审与测试相结合的过程,主要包括需求说明书评测、概要设计说明书评测、详细设计说明书评测以及软件编码规范评测等。
    开发阶段的工作包括单元测试、集成测试、确认测试、系统测试、验收测试。
    选项D描述错误。

第 48 题

以下关于软件失效术语的叙述中,不正确的是(  )。

  • (A) 软件错误是指人为犯错给软件留下的不良的痕迹
  • (B) 软件缺陷是指存在于软件中的那些不希望或者不可接受的偏差
  • (C) 软件失效指软件运行过程中出现的一种不希望或不可接受的内部状态
  • (D) 一个软件错误会产生一个或多个软件缺陷

答案与解析

  • 试题难度:一般
  • 知识点:软件测试基础>软件失效分类
  • 试题答案:[['C']]
  • 试题解析:

    软件错误:是指在软件生存周期内的不希望或不可接受的人为错误,其结果是导致软件缺陷的产生
    软件缺陷:是存在于软件之中的那些不希望或不可接受的偏差,其结果是软件运行于某一特定条件时出现软件故障,这时称软件缺陷被激活
    软件故障:是指软件运行过程中出现的一种不希望或不可接受的内部状态。此时若无适当措施加以处理,便产生软件失效
    软件失效:是指软件运行时产生的一种不希望或不可接受的外部行为结果。

第 49 题

以下关于软件缺陷的叙述中,不正确的是(  )。

  • (A) 需要对软件缺陷划分严重性,但不需要划分处理优先级
  • (B) 需要进行软件错误跟踪管理
  • (C) 每次对软件错误的处理都要保留处理信息
  • (D) 错误修复后必须经过验证

答案与解析

  • 试题难度:容易
  • 知识点:软件测试基础>软件错误跟踪管理
  • 试题答案:[['A']]
  • 试题解析:

    严重性和优先级是软件测试缺陷表示的两个重要因素:
    严重性:表示软件缺陷所造成的危害的恶劣程度。
    优先级:表示修复缺陷的重要程度与次序。
    错误流程管理原则:
    每次对错误的处理都要保留处理信息,包括处理姓名、时间、方法、意见、Bug状态
    为了保证错误处理的正确性,需要有丰富测试经验的测试人员验证发现的错误是否是真正的错误,书写的测试步骤是否准确,可以重复
    拒绝或延期处理错误不能由程序员单方面决定,应该由项目经理、测试经理和设计经理共同决定
    误修复后必须由报告错误的测试人员验证,确认已经修复后,才能关闭错误。

第 50 题

以下不属于自动化测试的局限性的是(  )。

  • (A) 周期很短的项目没有足够时间准备测试脚本
  • (B) 业务规则复杂的项目难以自动化
  • (C) 公司有大量测试人员不需要自动化
  • (D) 易用性测试难以自动化

答案与解析

  • 试题难度:容易
  • 知识点:软件测试基础>自动化测试(优势、缺点、工具)
  • 试题答案:[['C']]
  • 试题解析:

    自动化测试是通过测试工具或其他手段,按照测试工程师的预定计划对软件产品进行自动的测试。其局限性有以下几个方面:
    定制型项目,一般测试积累少,不适合自动化功能测试。
    周期很短的项目,一般周期短,花大量精力准备的测试脚本,不能得到重复地利用。
    业务规则复杂的对象,由于有复杂的逻辑关系和运算关系,工具很难实现;甚至比准备工作比直接手工测试时间还长。
    人体感观与易用性测试,无法用工具来实现。
    不稳定的软件,由于软件不稳定,易导致自动化测试失败或者测试本身无效。
    涉及物理交互,自动化测试工具不能有效地完成与物理设备的交互。
    选项C是错误的描述。

第 51 题

以下关于边界值分析法的叙述中,不正确的是(  )。

  • (A) 大量错误发生在输入或输出的边界取值上
  • (B) 边界值分析法是在决策表法基础上进行的
  • (C) 需要考虑程序的内部边界条件
  • (D) 需要同时考虑输入条件和输出条件

答案与解析

  • 试题难度:一般
  • 知识点:黑盒测试>边界值分析法错误推测法
  • 试题答案:[['B']]
  • 试题解析:

    边界值分析是一种补充等价划分的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例。实践证明,为检验边界附近的处理专门设计测试用例,常常取得良好的测试效果。边界值分析法不仅重视输入条件边界,而且也适用于输出域测试用例。人们长期的测试工作经验得知:大量的错误是发生在输入或输出范围的边界上的,而不是在输入范围的内部。如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构边界上的值作为测试用例。因此针对各种边界情况设计测试用例,可以查出更多地错误。
    选项B描述错误。

第 52 题

一个程序的控制流图中有5个结点,8条边,在测试用例数最少的情况,确保程序 中每个可执行语句至少执行一次所需要的测试用例数的上限是(  )。

  • (A) 4
  • (B) 5
  • (C) 6
  • (D) 7

答案与解析

  • 试题难度:一般
  • 知识点:白盒测试>逻辑覆盖法
  • 试题答案:[['B']]
  • 试题解析:

    控制流程图的环路复杂性 V(G)等于:
    (1)控制流程图中的区域个数。
    (2)边数-结点数+2。
    (3)判定数+1。
    本题为:8-5+2=5

第 53 题

对于逻辑表达式(buf_c[i]>223 && buf_c[i]<240 &&i+2<total_bytes),需要(  )个测试用例才能完成条件组合覆盖。

  • (A) 2
  • (B) 4
  • (C) 8
  • (D) .16

答案与解析

  • 试题难度:一般
  • 知识点:白盒测试>逻辑覆盖法
  • 试题答案:[['C']]
  • 试题解析:

    多条件覆盖(MCC)/条件组合覆盖:设计足够的测试用例,使得使得每个判定中条件的各种可能组合都至少出现一次。
    本题中有3个条件,分布为:buf_c[i]>223 ;buf_c[i]<240;i+2<total_bytes,其组合有23种。

第 54 题

以下关于性能测试的叙述中,不正确的是(  )。

  • (A) 性能测试是在真实环境下检查系统服务等级的满足情况
  • (B) 基于性能测试对系统未来容量做出预测和规划
  • (C) 性能测试主要关注输出结果是否正确
  • (D) 性能测试是性能调优的基础

答案与解析

  • 试题难度:容易
  • 知识点:负载压力测试>并发性能测试
  • 试题答案:[['C']]
  • 试题解析:

    性能测试用来保证产品发布后系统的性能能够满足用户需求。性能测试通常存在性能调优与性能评测两种性能测试策略。
    性能评测主要包括:在真实环境下,检查系统服务等级的满足情况,评估并报告整个系统的性能;对系统的未来容量作出预测和规划。
    性能评测室性能调优的基础,性能调优的步骤如下:查找形成系统瓶颈或者故障的根本原因;进行性能调整和优化;评估性能调整的效果。
    选项C是不准确的描述。

第 55 题

以下关于Web的兼容性测试的叙述中,不正确的是(  )。

  • (A) 需要针对主流操作系统进行平台兼容性测试
  • (B) 不同浏览器的安全性设计是一致的
  • (C) 层次结构风格在不同的浏览器上可能有不同的显示
  • (D) 浏览器的兼容性和操作系统的兼容性可以结合起来进行测试

答案与解析

  • 试题难度:容易
  • 知识点:Web应用测试>Web应用运行测试(客户端配置与兼容性测试)
  • 试题答案:[['B']]
  • 试题解析:

    Web的配置测试与兼容性测试包括3个方面:
    浏览器的配置测试:测试不同配置对Web功能的影响程度,再核查有影响的配置在功能说明书中是否有明确题示。
    平台兼容性测试:需要在用户可能用到的操作系统下,对web系统进行兼容性测试。
    浏览器兼容性测试:不同的浏览器对Java、Javascript、ActiveX、Plug-ins或不同的HTML规格有不同的支持;框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示;不同的浏览器对安全性和Java的设置也不一样;浏览器的兼容性可以与操作系统的兼容性结合起来,最有效的方法是采用浏览器/操作系统兼容矩阵来测试不同版本的操作系统上不同厂商、不同版本的浏览器对某些构件和设置的适应性。

第 56 题

网络测试类型包括(  )。
①网络可靠性测试②网络可接受性测试
③网络瓶颈测试④网络容量规划测试

  • (A) ①③
  • (B) ①②
  • (C) ①②③
  • (D) ①②③④

答案与解析

  • 试题难度:容易
  • 知识点:网络测试>网络测试类型
  • 试题答案:[['D']]
  • 试题解析:

    依据不同的测试目的和对象:

    网络可靠性测试

    网络可接受性测试

    网络瓶颈测试

    网络容量规划测试

    网络升级测试

    网络功能/特性测试

    网络吞吐量测试

    网络响应时间测试

    衰减测试

    网络配置规模测试

</p>

网络设备评估测试

第 57 题

在线帮助测试属于文档测试的一项,以下(  )不属于在线帮助文档测试的测试 内容。

  • (A) 印刷与包装
  • (B) 准确性
  • (C) 帮助索引
  • (D) 超链接

答案与解析

  • 试题难度:容易
  • 知识点:文档测试>在线帮助测试
  • 试题答案:[['A']]
  • 试题解析:

    针对在线帮助的测试包括:准确性、帮助索引、帮助的文档编写和程序编写、超链接、链接的意义、帮助的风格等内容。选项A属于用户文档的内容。

第 58 题

Web测试的测试点包括(  )。
①链接测试②表格测试③框架测试④图形测试

  • (A) ①②
  • (B) ①③
  • (C) ①②③
  • (D) ①②③④

答案与解析

  • 试题难度:容易
  • 知识点:Web应用测试>Web应用开发测试
  • 试题答案:[['D']]
  • 试题解析:

    Web代码测试包括:源代码规则分析、链接测试、框架测试、表格测试、图形测试等方面。

第 59 题

模拟攻击试验是安全性测试方法之一,以下不属于模拟攻击试验的是(  )。

  • (A) 冒充
  • (B) 重演
  • (C) 侦听
  • (D) 拒绝服务

答案与解析

  • 试题难度:一般
  • 知识点:安全测试与评估>安全性测试方法
  • 试题答案:[['C']]
  • 试题解析:

    模拟攻击试验是一组特殊的墨盒测试安全,相关模拟攻击实验的设计应结合应用具体的安全机制及特点。针对系统的身份认证机制,可设计冒充攻击试验;针对系统用于认证及授权决策的网络消息,可设计重演攻击试验;针对系统关键核心安全模块,可设计服务拒绝攻击试验;由于系统运行时涉及各种内部用户,因此安全测试需验证系统防范内部用户的安全攻击,因此可设计内部攻击实验。

    侦听技术实际上是在数据通信或数据交互过程,对数据进行截取分析的过程,主要用于对网络加密的验证。

第 60 题

标准符合性测试是软件测试的工作之一,这里的标准不包括(  )。

  • (A) 数据内容类标准
  • (B) 开发人员技术要求类标准
  • (C) 通信协议类标准
  • (D) 开发接口类标准

答案与解析

  • 试题难度:容易
  • 知识点:标准符合性测试>标准符合性测试
  • 试题答案:[['B']]
  • 试题解析:

    标准符合性测试:数据内容类标准;通信协议类标准;开发接口类标准(SQL标准符合性测试、ODBC标准符合性测试、JDBC标准符合性测试);信息编码类标准。
    选项B为干扰项。

第 61 题

以下关于可靠性测试意义的叙述中,不正确的是(  )。

  • (A) 软件失效可能导致灾难性后果
  • (B) 软件失效在整个计算机系统失效中占比较少
  • (C) 相比硬件可靠性技术,软件可靠性技术不成熟
  • (D) 随着计算机应用系统中软件成分的增加,软件可靠性问题越来越重要

答案与解析

  • 试题难度:一般
  • 知识点:可靠性测试>可靠性定义
  • 试题答案:[['B']]
  • 试题解析:

    软件失效可能造成灾难的后果;软件的失效在整个计算机系统失效中的比例比较高;相比硬件可靠性技术,软件可靠性技术很不成熟;与硬件元器件成本急剧下降形成鲜明对比的是,软件费用呈有增无减的势头,而软件可靠性问题是造成这种费用增长的主要原因之一;随着计算机应用中软件成分的不断增加,使得系统对于软件的依赖性越来越强,软件对生成活动和社会生活的影响越来越大,从而增加了软件可靠性问题在软件工程领域乃至整个计算机工程领域的重要性。以上这些都体现了软件可靠性测试的重要性。

第 62 题

You are developing a server-side enterprise application. It must support a variety of different clients including desktop browsers, mobile browsers and native mobile applications. The application might also expose an API for 3rd parties to consume. It might also( )with other applications via either web services or a message broker. The application handles requests (HTTP requests and messages) by executing business logic; accessing a database; exchanging messages with other systems; and returning a HTML/JSON/XML ( ). There are logical components corresponding to different functional areas of the application.
What's the application's deployment architecture?
Define an architecture that structures the application as a set of ( ), collaborating services. This approach corresponds to the Y-axis of the Scale Cube. Each service is:
● Highly maintainable and testable - enables rapid and frequent development and deployment
● Loosely coupled with other services - enables a team to work independently the majority of time on their service(s) without being impacted by changes to other services and without affecting other services
( )deployable - enables a team to deploy their service without having to coordinate with other teams
● Capable of being developed by a small team - essential for high productivity by avoiding the high communication head of large teams
Services( )using either synchronous protocols such as HTTP/REST or asynchronous protocols such as AMQP. Services can be developed and deployed independently of one another. Each service has its own database in order to be decoupled from other services. Data consistency between services is maintained using some particular pattern.

  • (A) integrate
  • (B) coordinate
  • (C) cooperate
  • (D) communicate
  • (A) request
  • (B) response
  • (C) text
  • (D) file
  • (A) loosely coupled
  • (B) loosely cohesion
  • (C) highly coupled
  • (D) highly cohesion
  • (A) Dependently
  • (B) Independently
  • (C) Coordinately
  • (D) Integratedly
  • (A) interoperate
  • (B) coordinate
  • (C) communicate
  • (D) depend

答案与解析

  • 试题难度:较难
  • 知识点:专业英语>专业英语
  • 试题答案:[['A'],['B'],['A'],['B'],['C']]
  • 试题解析:

    假设你在开发一个服务端应用。该应用必须支持各种各样的客户端,包括桌面浏览器、手机浏览器和本地手机应用。应用可能也需要公开部分API供第三方使用,还可能于其他应用通过Web Service或者消息代理(message broker)相集成。应用执行业务逻辑来处理请求(HTTP请求或者消息);访问数据库;与其他系统交换消息;并返回HTML/JSON/XML类型的响应。有一些逻辑组件对应于应用的不同功能模块。
    应用的部署架构是什么?
    通过采用y轴方向上伸缩立方(Scale Cube)来设计应用的架构,将应用按功能分解为一组松耦合且相互协作的服务的集合。每个服务具有如下特征:
     高可维护性和可测试性——支持快速、频繁的开发和部署;
     与其他服务松耦合——使团队能够在大部分时间独立地工作于其服务上,而不受对其他服务的更改的影响,也不影响其他服务;
     可独立部署——团队能够不与其他团队协调而部署他们的服务;
     能够由一个小团队开发——通过避免大型团队的高沟通主管,对高生产力至关重要。
    服务间通过HTTP/REST等同步协议或AMQP等异步协议进行通信。服务可以独立开发和部署。每个服务有其自己的数据库,以便与其他服务解耦。服务之间的数据一致性通过其他特定的模式来维护。

results matching ""

    No results matching ""