【第1题】
前趋图(Precedence Graph)是一个有向无环图,记为:→={(Pi,Pj)|Pi must complete before Pj may start} 。假设系统中进程P={P1,P2,P3,P4,P5,P6,P7},且进程的前趋图如下:
那么, 该前驱图可记为 ( )。
答案解析
本题考查操作系统的基本概念。
前趋图是一个有向无环图,记为DAG (Directed Acyclic Graph),用于描述进程之间执行的前后关系。图中的每个结点可用于描述一个程序段或进程,乃至一条语句;结点间的有向边则用于表示两个结点之间存在的偏序(Partial Order,亦称偏序关系)或前趋关系 (Precedence Relation) “ →”。
对于试题所示的前趋图,存在前趋关系:(P1,P2),(P1,P3), (P1,P4),(P2,P5), (P2, P3), (P3,P4), (P3, P5),(P4, P5),(P5,P6), (P5, P7) ,(P6,P7)
可记为:P={P1,P2,P3,P4,P5,P6,P7}
→={(P1,P2),(P1,P3), (P1,P4),(P2,P5), (P2, P3), (P3,P4), (P3, P5),(P4, P5),(P5,P6), (P5, P7) ,(P6,P7)}
注意:在前趋图中,没有前趋的结点称为初始结点(Initial Node),没有后继的结点称为终止结点(Final Node)。
正确答案: B
【第2题】
在支持多线程的操作系统中,假设进程P创建了线程T1、T2和T3,那么下列说法正确的是( )。
答案解析
在同一进程中的各个线程都可以共享该进程所拥有的资源,如访问进程地址空间中的每一个虚地址;访问进程所拥有的已打开文件、定时器、信号量等,但是不能共享进程中某线程的栈指针。
正确答案: C
【第3题】
假设某计算机的字长为32位,该计算机文件管理系统磁盘空间管理采用位示图(bitmap)记录磁盘的使用情况。若磁盘的容量为300GB,物理块的大小为4MB,那么位示图的大小为( )个字。
答案解析
本题考查操作系统文件管理方面的基础知识。
根据题意,若磁盘的容量为300GB,物理块的大小为4MB,则该磁盘的物理块数为300X1024/4=76800个,位示图的大小为76800/32=2400个字。
正确答案: A
【第4题】
实时操作系统主要用于有实时要求的过程控制等领域。因此,在实时操作系统中,对于来自外部的事件必须在( )。
答案解析
本题考查操作系统的基础知识。
实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速响应。因此,实时操作系统与分时操作系统的第一点区别是交互性强弱不同,分时系统交互性强,实时系统交互性弱但可靠性要求高;第二点区别是对响应时间的敏感性强,对随机发生的外部事件必须在被控制对象规定的时间内做出及时响应并对其进行处理;第三点区别是系统的设计目标不同,分时系统是设计成一个多用户的通用系统,交互能力强;而实时系统大都是专用系统。
正确答案: D
【第5题】
通常在设计关系模式时,派生属性不会作为关系中的属性来存储。按照这个原则,假设原设计的学生关系模式为Students (学号,姓名,性别,出生日期,年龄,家庭地址),那么该关系模式正确的设计应为( )。
答案解析
本题考查关系数据库方面的基本概念。
在概念设计中,需要概括应用系统中的实体及其联系,确定实体和联系的属性。派生属性是指可以由其他属性通过计算来获得,若在系统中存储派生属性,会引起数据冗余,增加额外存储和维护负袒,还可能导致数据的不一致性,故派生属性不会作为关系中的属性来存储。
本题中“年龄”是派生属性,该属性可以由“系统当前时间-出生日期”计算获得,故关系模式Students正确的设计是“年龄”小作为关系中的属性来存储。
正确答案: C
【第6~7题】
给出关系R(U,F), U= {A,B,C,D,E), F={A→B,D→C,BC→E,AC→B),求属性闭包的等式成立的是( 问题1
)。R的候选关键字为( 问题2
)。
问题1:
问题2:
答案解析
此题考察关系数据库的基本理论。
第一题考察属性闭包的计算方法,超级超纲,凯恩建议了解即可,不学也行。关系数据库中的 [X]+F=Y 闭包求法包括以下三个步骤:(1)将最终结果属性集设为Y,并将Y初始化为空。(2)检查F中的每一个函数依赖 A→B,如果属性集 A 中所有属性均在 Y 中,而B中有的属性不在 Y 中,则将其加入到 Y 中。(3)重复第二步,直到没有属性可以添加到属性集 Y 中为止,得到的 Y 就是 X 的闭包。
A选项(A)+ F根据 A→B 可得(A)+ F = {A,B} ,B选项(B)+ F 因为不存在B为左侧决定因素的函数依赖,所以(B)+ F = {B} ,C 选项(AC)+ F 根据 A→B,BC→E,AC→B 可得(A)+ F ={A,B,C,E} ,D 选项(AD)+ F 根据 A→B,D→C, BC→E 可得(A)+ F ={A,B,C,D,E} = U。所以选 D 选项。
第二问考察候选码的计算方法,属于基础题,凯恩建议必会!如果有属性或属性组能唯一标识元组,则它就是候选码。候选码的计算分方法有分析法和作图法。个人建议用作图法。作图法就是根据题目给出的函数依赖画出有向图。然后从起点出发找,看是否能遍历所有节点。一个不行再试另一个起点。最后的结果就是候选码。如下图所示。从图很直观地可以看出,入度为零的结点是 A 与 D,从这两个结点的组合出发,能遍历全图,所以候选码是 AD。
可以看到属性闭包也可以通过先做出有向图,然后从某个点出发遍历得到。比如 A 在 F 上的闭包从图中看出就是 (A,D)。
正确答案(问题1): D
正确答案(问题2): A
【第8题】
在分布式数据库中有分片透明、复制透明、位置透明和逻辑透明等基本概念。其中,是指用户无需知道数据存放的物理位置。其中,( )是指用户无需知道数据存放的物理位置。
答案解析
本题考查对分布式数据库基本概念的理解。
分片透明是指用户或应用程序不需要知道逻辑上访问的表具体是怎么分块存储的。复制透明是指采用复制技术的分布方法,用户不需要知道数据是复制到哪些节点,如何复制的。位置透明是指用户无需知道数据存放的物理位置。逻辑透明是指用户或应用程序无需知道局部场地使用的是哪种数据模型。
正确答案: C
【第9题】
以下关于操作系统微内核架构特征的说法,不正确的是( )。
答案解析
本题考查操作系统的基础知识。
微内核(Micro Kernel)是现代操作系统普遍采用的架构形式。它是一种能够提供必要服务的操作系统内核,被设计成在很小的内存空间内增加移植性,提供模块设计,这些必要的服务包括任务、线程、交互进程通信以及内存管理等。而操作系统其他所有服务(含设备驱动)在用户模式下运行,可以使用户安装不同的服务接口(API)。 微内核的主要优点在于结构清晰、内核代码量少,安全性和可靠性高、可移植性强、可伸缩性、可扩展性高;其缺点是难以进行良好的整体优化、进程间互相通信的开销大、内核功能代码不能被直接调用而带来服务的效率低。
正确答案: D
【第10题】
分页内存管理的核心是将虚拟内存空间和物理内存空间皆划分成大小相同的页面,并以页面作为内存空间的最小分配单位。下图给出了内存管理单元的虚拟地址到物理地址的翻译过程。
假设页面大小为4KB,那么CPU发出虚拟地址0010000000000100后,其访问的物理地址是( )。
答案解析
本题考查计算机内存管理的基础知识。
虚拟内存管理是计算机体系结构设计中必须考虑的问题。计算机内存管理通过段页式管理算法,可以使计算机内存容量被无限延伸,以提升计算机处理能力。
分页式管理是将一个进程的逻辑地址空间分成若干个大小相等的片,称之为页面或页, 并为各页加以编号,从0开始编码。相应地也把内存空间分成与页面相同大小的若干个存储块,称之为物理块或页框,也同样为它们加以编号。在为进程分配内存时,以块为单位将进程中若干个页分别装入多个可以不相邻的物理块中,从而实现无存储碎片的管理。分页式管理中,通常进程使用的地址是一种虚拟存储地址,必须通过页表转换才能访问到实际物理地址,虚拟地址一般由页面号和页内偏移组成,页面号是指需要访问页表的序号,而页内偏移是指在某页内相对0地址的偏移值。
因此,本题中给出虚拟地址0010000000000100中的页表序号是02(10),图中页表2序列中内容是110,因此物理地址应该是110加偏移地址,即1100000000000100是正确答案。
正确答案: A
【第11题】
以下关于计算机内存管理的描述中,( )属于段页式内存管理的描述。
答案解析
本题考查计算机内存管理的基础知识。
计算机内存管理有多种管理算法,从发展历史看,内存管理经历了固定分区、非固定分区、页式、段式和段页式等方法,当前较流行的是段页式内存管理。
页式内存管理:其核心是将虚拟内存空间和物理内存空间皆划分成大小相同的页面,并以页面作为内存空间的最小分配单位。—个程序的一个页面可以放在任意一个物理页面里。 段式内存管理:其核心是将一个程序按照逻辑单元分成多个程序段,每一个段使用自己单独的虚拟地址空间。采用段页表来进行管理。比如编译器可以将一个程序分成5个虚拟空间,即符号表、代码段、常数段、数据段和调用桟。
因此,一个程序就是一段,使用基址极限对来进行管理的管理方法属于分区式管理;一个程序分为许多固定大小的页面,使用页表进行管理的管理方法属于页式管理;程序按逻辑分成多段,用一组基址极限对来进行管理。基址极限对存放在段表里的管现方法诚于段式管理;只有程序按逻辑分为多段,每一段内又进行分页,使用段页表来进行管理的管理方法属于段页式管理。
正确答案: C
【第12题】
软件脆弱性是软件中存在的弱点(或缺陷),利用它可以危害系统安全策略,导致信息丢失、系统价值和可用性降低。嵌入式系统软件架构通常采用分层架构,它可以将问题分解为一系列相对独立的子问题,局部化在每一层中,从而有效地降低单个问题的规模和复杂性,实现复杂系统的分解。但是,分层架构仍然存在脆弱性。常见的分层架构的脆弱性包括( )等两个方面。
答案解析
本题考查软件架构脆弱性方面的基础知识。
脆弱性表示人、事物、组织机构等面对波动性、随机性变化或者压力时表现出来的变化趋势,软件脆弱性是指软件中存在的弱点(或缺陷),利用它可以危害系统安全策略,导致信息丢失、系统价值和可用性降低等。通常在软件设计时,分层架构由于其良好的可扩展性和可维护性被广泛采纳,但是,分层架构也存在众多脆弱性问题,主要表现在以下两个方面:
①一旦某个底层发生错误,那么整个程序将会无法正常运行,如产生一些数据溢出、空指针、空对象的安全问题,也有可能会得出错误的结果;
②将系统隔离为多个相对独立的层,这就要求在层与层之间引入通信机制,这种本来“直来直去”的操作现在要层层传递,势必造成性能的下降。
正确答案: B
【第13题】
以下关于区块链应用系统中“挖矿”行为的描述中错误的是( )。
答案解析
本题考查区块链的基础知识。
以区块链技术最成功的应用比特币为例,矿工的“挖坑”行为,其动机是为了获得代币奖励;其技术本质是尝试计算一个Hash碰撞,从而完成工作量证明;对社区而言,成功挖矿的矿工获得记账权和代币奖励是区块链应用系统的激励机制,是社区自我维持的关键。然而,挖矿行为自身并不能防止双花攻击(即一笔钱可以花出去两次)。
正确答案: D
【第14题】
在Linux系统中,DNS的配置文件是( ),它包含了主机的域名搜索顺序和DNS服务器的地址。
答案解析
本题考查Linux中DNS的配置知识。
在Linux中,DNS的配置文件保存在/etc/resolv.conf。/etc/resolv.conf是DNS客户机的配置文件,用于设置DNS服务器的IP地址及DNS域名,还包含了主机的域名搜索顺序。该文件是由域名解析器(一个根据主机名解析IP地址的库)使用的配置文件。它的格式比较简单,每行以一个关键字开头,后接一个或多个由空格隔开的参数。
正确答案: C
【第15题】
下面关于网络延迟的说法中,正确的是( )。
答案解析
本题考查网络延迟的基础知识。
对等网络,即对等计算机网络,是—种在对等者(Peer)之间分配任务和工作负载的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式。在对等网络中,由于采用总线式的连接,因此网络中的终端数量越多,终端所能够分配到的转发时隙就越小,所带来的延迟也就越大。A选项错误。
路由器—般采取存储转发方式,而交换机采取的是直接转发方式,相比存储转发方式,直接转发方式转发时延更小。因为存储转发方式需要对待转发的数据包进行重新拆包,分析其源地址和目的地址,再根据路由表对其进行路由和转发,而直接转发方式不对数据包的三层地址进行分析,因此路由器转发所带来的延迟要大于交换机。B选项错误。
数据在Internet中传输时,由于互联网中的转发数据量大且所需经过的节点多,势必会带来更大的延迟。C选项错误。
网络延迟=处理延迟+排队延迟+发送延迟+传播延迟。如果不考虑网络环境,服务器的延迟的主要因素是队列延迟和磁盘IO延迟。D选项正确。
正确答案: D
【第16~17题】
进行系统监视通常有三种方式:一是通过(问题1
),如UNIX/Lmux系统中的ps、last等;二是通过系统记录文件查阅系统在特定时间内的运行状态;三是集成命令、文件记录和可视化技术的监控工具,如(问题2
)。
问题1:
问题2:
答案解析
本题考查系统安全知识。
Windows的netstat命令用来查看某个端口号是否被占用以及由哪个进程占用。
Perfmon (Performance Monitor)是Windows自带的性能监控工具,提供了图表化的系统性能实时监视器、性能日志和警报管理。通过添加性能计数器(Performance Co inter)可以实现对CPU、内存、网络、磁盘、进程等多类对象的上百个指标的监控。
iptables是在Linux 2.4内核之后普遍使用的基于包过滤的防火墙工具,可以对流入和流出服务器的数据包进行很精细的控制。
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况。
正确答案(问题1): A
正确答案(问题2): C
【第18~21题】
与电子政务相关的行为主体主要有三类,即政府、企(事)业单位及居民。因此,政府的业务活动也主要围绕着这三类行为主体展开。政府与政府、政府与企(事)业单位以及政府与居民之间的互动构成了5种不同的、却又相互关联的领域。其中人口信息采集、 处理和利用业务属于( 问题1
)领域;营业执照的颁发业务属于( 问题2
)领域;户籍管理业务属于(问题3
)领域;参加政府工程投标活动属于(问题4
)领域。
问题1:
问题2:
问题3:
问题4:
答案解析
与电子政务相关的行为主体主要有三个,即政府、企(事)业单位及居民。因此,政府的商务活动也主要围绕着这三个行为主体展开。政府与政府,政府与企(事)业单位,以及政府与居民之间的互动构成了下面5个不同的、却又相互关联的领域。
1)政府与政府(G2G)
政府与政府之间的互动包括首脑机关与中央和地方政府组成部门之间的互动,中央政府与各级地方政府之间,政府的各个部门之间、政府与公务员和其他政府工作人员之间的互动。这个领域涉及的主要是政府内部的政务活动,包括国家和地方基础信息的采集、处理和利用,如人脸信息;政府之间各种业务流所需要采集和处理的信息,如计划管理;政府之间的通信系统,如网络系统:政府内部的各种管理信息系统,如财务管理;以及各级政府的决策支持系统和执行信息系统,等等。
2)政府对企(事)业单位(G2B)
政府面向企业的活动主要包括政府向企(事)业单位发布的各种方针、政策、法规、行政规定,即企(事)业单位从事合法业务活动的环境;政府向企(事)业单位颁发的各种营业执照、许可证、合格证和质量认证等。
3)政府对居民(G2C)
政府对居民的活动实际上是政府面向居民所提供的服务。政府对居民的服务首先是信息服务,让居民知道政府的规定是什么,办事程序是什么,主管部门在哪里,以及各种关于社区公安和水、火、天灾等与公共安全有关的信息。户口、各种证件和牌照的管理等政府面向居民提供的各种服务。政府对居民提供的服务还包括各公共部门,如学校、医院、图书馆和公园等。 4)企业对政府(B2G)
企业面向政府的活动包括企业应向政府缴纳的各种税款,按政府要求应该填报的各种统计信息和报表,参加政府各项工程的竞、投标,向政府供应各种商品和服务,以及就政府如何创造良好的投资和经营环境,如何帮助企业发展等提出企业的意见和希望,反映企业在经营活动中遇到的困难,提出可供政府采纳的建议,向政府申请可能提供的援助等等。
5)居民对政府(C2G)
居民对政府的活动除了包括个人应向政府缴纳的各种税款和费用,按政府要求应该填报的各种信息和表格,以及缴纳各种罚款等外,更重要的是开辟居民参政、议政的渠道,使政府的各项工作不断得以改进和完善。政府需要利用这个渠道来了解民意,征求群众怠见,以便更好地为人民服务。此外,报警服务(盗贼、医疗、急救、火警等)即在紧急情况下居民需要向政府报告并要求政府提供的服务,也属于这个范围。
正确答案(问题1): B
正确答案(问题2): A
正确答案(问题3): D
正确答案(问题4): C
【第22~23题】
软件文档是影响软件可维护性的决定因素。软件的文档可以分为用户文档和( 问题1
)两类。其中,用户文档主要描述( 问题2
)和使用方法,并不关心这些功能是怎样实现的。
问题1:
问题2:
答案解析
本题考查软件文档的相关知识。
软件文档是影响软件可维护性的决定因素。根据文档内容,软件文档又可分为用户文档和系统文档两类。其中,用户文档主要描述系统功能和使用方法,并不关心这些功能是怎样实现的。
正确答案(问题1): A
正确答案(问题2): C
【第24~25题】
软件需求开发的最终文档经过评审批准后,就定义了开发工作的( 问题1
)它在客户和开发者之间构筑了产品功能需求和非功能需求的一个(问题2
)是需求开发和需求管理之间的桥梁。
问题1:
问题2:
答案解析
本题考查软件需求工程的相关知识。
需求基线指已经通过正式评审和批准的规格说明或产品,可作为进一步开发的基础,而且只有通过正式的变更控制过程才能修改它。建立需求基线的目的是防止需求的变化给程序 架构造成重大影响。因此,它是团队成员已经承诺将在某一特定产品版本中实现的功能性和非功能性需求的一组集合,它在客户和开发者之间构筑了一个需求约定,是需求开发和需求管理之间的桥梁。
正确答案(问题1): A
正确答案(问题2): C
【第26~28题】
软件过程是制作软件产品的一组活动及其结果。这些活动主要由软件人员来完成,软件活动主要包括软件描述、( 问题1
)、软件有效性验证和(问题2
)。其中,(问题3
)定义了软件功能以及使用的限制。
问题1:
问题2:
问题3:
答案解析
本题考查软件过程的相关知识。
软件过程(Software Procedure)是指软件生存周期所涉及的一系列相关过程。过程是活动的集合;活动是任务的集合;任务起着把输入进行加工然后输出的作用。活动的执行可以是顺序的、重复的、并行的、嵌套的或者是有条件地引发的。软件过程是指软件整个生命周期,包括需求获取、需求分析、设计、实现、测试、发布和维护的一个过程模型。一个软件过程定义了软件开发中采用的方法,但软件过程还包含该过程中应用的技术方法和自动化工具。过程定义一个框架,为有效交付软件,这个框架必须创建。软件过程构成了软件项管理控制的基础,并且创建了一个环境以便于技术方法的采用、工作产品(模型、文档、报告、表格等)的产生、里程碑的创建、质量的保证、正常变更的正确管理。
软件过程中的活动主要由软件人员来完成,软件活动主要包括软件描述、软件开发、软件有效性验证和软件演化。其中,软件描述定义了软件功能以及使用的限制。
正确答案(问题1): D
正确答案(问题2): C
正确答案(问题3): C
【第29~30题】
对应软件开发过程的各种活动,软件开发工具有需求分析工具、( 问题1
)、编码与排错工具、测试工具等。按描述需求定义的方法可将需求分析工具分为基于自然语言或图形描述的工具和基于( 问题2
)的工具。
问题1:
问题2:
答案解析
本题考查软件系统工具的相关知识。
软件系统工具的种类繁多,很难有统一的分类方法。通常可以按软件过程活动将软件工具分为软件开发工具、软件维护工具、软件管理和软件支持工具。其中,对应软件开发过程的各种活动,软件开发工具有需求分析工具、设计工具、编码与排错工具、测试工具等。
需求分析工具用以辅助软件需求分析活动,辅助系统分析员从需求定义出发,生成完整的、淸晰的、一致的功能规范。功能规范是软件所要完成的功能精确而完整的陈述,描述该软件要做什么及只做什么,是软件开发者和用户间的契约,同时也是软件设计者和实现者的依据。功能规范应正确、完整地反映用户对软件的功能要求,其表达是清晰的、无歧义的。需求分析工具的目标就是帮助分析员形成这样的功能规范。按描述需求定义的方法可将需求分析分为基于自然语言或图形描述的工具和基于形式化需求定义语言的工具。
正确答案(问题1): A
正确答案(问题2): B
【第31~32题】
软件设计包括四个既独立又相互联系的活动:( 问题1
)、软件结构设计、人机界面设计和( 问题2
)。
问题1:
问题2:
答案解析
本题考查软件设计的基础知识。
软件设计包括四个既独立又相互联系的活动,即数据设计、软件结构设计、人机界面设计和过程设计,这叫个活动完成以后就得到了全面的软件设计模型。
正确答案(问题1): B
正确答案(问题2): D
【第33~34题】
信息隐蔽是开发整体程序结构时使用的法则,通过信息隐蔽可以提高软件的( 问题1
)测试性和( 问题2
)。
问题1:
问题2:
答案解析
本题考查软件结构化设计的基础知识。
信息隐蔽是开发整体程序结构时使用的法则,即将每个程序的成分隐蔽或封装在一个单的设计模块中,并且尽可能少地暴露其内部的处理过程。通过信息隐蔽可以提高软件的可修改性、可测试性和可移植性,它也是现代软件设计的一个关键性原则。
正确答案(问题1): A
正确答案(问题2): C
【第35题】
按照外部形态,构成一个软件系统的构件可以分为五类,其中,( )是指可以进行版本替换并增加构件新功能。
答案解析
本题考查软件构件的基础知识。
如果把软件系统看成是构件的集合,那么从构件的外部形态来看,构成一个系统的构件可分为五类:独立而成熟的构件得到了实际运行环境的多次检验;有限制的构件提供了接口,指出了使用的条件和前提;适应性构件进行了包装或使用了接口技术,把不兼容性、资源冲突等进行了处理,可以直接使用;装配的构件在安装时,已经装配在操作系统、数据库管理系统或信息系统不同层次上,可以连续使用;可修改的构件可以进行版本替换,如果对原构件修改错误、增加新功能,可以利用重新“包装”或写接口来实现构件的替换。
正确答案: B
【第36~38题】
中间件是提供平台和应用之间的通用服务,这些服务具有标准的程序接口和协议。中间件的基本功能包括:为客户端和服务器之间提供( 问题1
);提供( 问题2
)保证交易的一致性;提供应用的(问题3
)。
问题1:
问题2:
问题3:
答案解析
本题考查中间件的基础知识。
中间件提供平台和应用之间的通用服务,这些服务具有标准的程序接口和协议。中间件的基本功能包括:为客户端和服务器之间提供连接和通信:提供交易管理机制保证交易的一致性;提供应用的负载均衡和高可用性等。
正确答案(问题1): A
正确答案(问题2): B
正确答案(问题3): D
【第39~40题】
应用系统开发中可以采用不同的开发模型,其中,(问题1
)将整个开发流程分为目标设定、风险分析、开发和有效性验证、评审四个部分;( 问题2
)则通过重用来提高软件的可靠性和易维护性,程序在进行修改时产生较少的副作用。
问题1:
问题2:
答案解析
本题考查软件开发模型的基础知识。
应用系统开发中可以采用不同的开发模型,包括瀑布模型、演化模型、原型模型、螺旋模型、喷泉模型和基于可重用构件的模型等。其中,螺旋模型将整个开发流程分为目标设定、风险分析、开发和有效性验证、评审四个部分;构件则通过重用来提高软件的可靠性和易维护性,程序在进行修改时产生较少的副作用。
正确答案(问题1): B
正确答案(问题2): C
【第41题】
关于敏捷开发方法的特点,不正确的是( )。
答案解析
本题考查敏捷开发方法的基础知识。
敏捷开发方法主要有两个特点:敏捷开发方法是适应性而非预设性的;敏捷开发方法是面向人而非面向过程的。敏捷开发方法以原型化开发方法为基础,采用迭代增量式开发,发行版本小型化。敏捷开发方法特别强调开发中相关人员之间的信息交流。
正确答案: B
【第42~43题】
自动化测试工具主要使用脚本技术来生成测试用例,其中,(问题1
)是录制手工测试的测试用例时得到的脚本;( 问题2
)是将测试输入存储在独立的数据文件中,而不是在脚本中。
问题1:
问题2:
答案解析
本题考查软件测试的基础知识。
自动化测试工具主要使用脚本技术来生成测试用例,脚本是一组测试工具执行的指令集合。脚本的基本结构主要有五种:线性脚本是录制手工测试的测试用例时得到的脚本;结构化脚本具有各种逻辑结构和函数调用功能;共享脚本是指一个脚本可以被多个测试用例使用;数据驱动脚本是指将测试输入存储在独立的数据文件中,而不是脚本中;关键字驱动脚本是数据驱动脚本的逻辑扩展,用测试文件描述测试用例。
正确答案(问题1): A
正确答案(问题2): C
【第44~47题】
考虑软件架构时,重要的是从不同的视角(perspective)来检查,这促使软件设计师考虑架构的不同属性。例如,展示功能组织的(问题1
)能判断质量特性,展示并发行为的( 问题2
)能判断系统行为特性。选择的特定视角或视图也就是逻辑视图、进程视图、实现视图和(问题3
)。使用( 问题4
)来记录设计元素的功能和概念接口,设计元素的功能定义了它本身在系统中的角色,这些角色包括功能、性能等。
问题1:
问题2:
问题3:
问题4:
答案解析
本题考查软件架构的相关知识。
在软件架构中,从不同的视角描述特定系统的体系结构,从而得到多个视图,并将这些视图组织起来以描述整体的软件架构模型。因此,在考虑体系结构时,可以从不同的视角来检查,这促使软件设计师考虑体系结构的不同属性。例如,展示功能组织的静态视角能判断质量特性,展示并发行为的动态视角能判断系统行为特性。选择的特定视角或视图也就是逻辑视图、进程视图、实现视图和配置视图。使用逻辑视图来记录设计元素的功能和概念接口,设计元素的功能定义了它本身在系统中的角色,这些角色包括功能、性能等。
正确答案(问题1): A
正确答案(问题2): B
正确答案(问题3): B
正确答案(问题4): A
【第48~50题】
在软件架构评估中,(问题1
)是影响多个质量属性的特性,是多个质量属性的(问题2
) 。例如,提高加密级别可以提高安全性,但可能要耗费更多的处理时间,影响系统性能。如果某个机密消息的处理有严格的时间延迟要求,则加密级别可能就会成为一个( 问题3
)。
问题1:
问题2:
问题3:
答案解析
本题考查体系结构评估的相关知识。
敏感点(sensitivity point)和权衡点(tradeoffpoint)是关键的体系结构决策。敏感点是一个或多个构件(和/或构件之间的关系)的特性。研究敏感点可使设计人员或分析员明确在搞清楚如何实现质量目标时应注意什么。权衡点是影响多个质量属性的特性,是多个质量属性的敏感点。因此,改变加密级别可能会对安全性和性能产生非常重要的影响。提高加密级別可以提高安全性,但可能要耗费更多的处理时间,影响系统性能。如果某个机密消息的处理有严格的时间延迟要求,则加密级别可能就会成为一个权衡点。
正确答案(问题1): B
正确答案(问题2): A
正确答案(问题3): B
【第51~53题】
针对二层C/S软件架构的缺点,三层C/S架构应运而生。在三层C/S架构中,增加了 个( 问题1
)。三层C/S架构是将应用功能分成表示层、功能层和(问题2
)三个部分。其中( 问题3
)是应用的用户接口部分,担负与应用逻辑间的对话功能。
问题1:
问题2:
问题3:
答案解析
本题考查软件架构中三层C/S架构的相关知识。
传统的层C/S结构存在以下几个局限:是单一服务器且以局域网为中心的,所以难以扩展至大型企业广域网或Internet;受限于供应商;软硬件的组合及集成能力有限;难以管理大量的客户机。因此,三层C/S结构应运而生。
三层C/S结构是将应用功能分成表示层、功能层和数据层三部分,其解决方案是对这三层进行明确分割,并在逻辑上使其独立。原来的数据层作为DBMS已经独立出来,将表示层和功能层分离成各自独立的程序,使这两层间的接口简洁明了。三层C/S结构中,表示层是应用的用户接口部分,它担负着用户与应用间的对话功能。它用于检查用户从键盘等输入的数据,显示应用输出的数据。功能层相当于应用的本体,它是将具体的业务处理逻缉编入程序中。数据层就是DBMS,负责管理对数据库数据的读写。
正确答案(问题1): A
正确答案(问题2): B
正确答案(问题3): A
【第54~55题】
经典的设计模式共有23个,这些模式可以按两个准则来分类:一是按设计模式的目的划分,可分为( 问题1
)型、结构型和行为型三种模式;二是按设计模式的范围划分可以把设计模式分为类设计模式和( 问题2
)设计模式。
问题1:
问题2:
答案解析
软件模式主要可分为设计模式、分析模式、组织和过程模式等,每一类又可细分为若干个子类。在此着重介绍设计模式,目前它的使用最为广泛。设计模式主要用于得到简洁灵活的系统设计,GoF的书中共有23个设计模式,这些模式可以按两个准则来分类:一是按设计模式的目的划分,可分为创建型、结构型和行为型三种模式;二是按设计模式的范围划分,即根据设计模式是作用于类还是作用于对象来划分,可以把设计模式分为类设计模式和对象设计模式。
正确答案(问题1): A
正确答案(问题2): C
【第56~58题】
创建型模式支持对象的创建,该模式允许在系统中创建对象,而不需要在代码中标识特定类的类型,这样用户就不需要编写大量、复杂的代码来初始化对象。在不指定具体类的情况下, ( 问题1
)模式为创建一系列相关或相互依赖的对象提供了一个接口。 (问题2
)模式将复杂对象的构建与其表示相分离,这样相同的构造过程可以创建不同的对象。( 问题3
)模式允许对象在不了解要创建对象的确切类以及如何创建等细节的情况下创建自定义对象。
问题1:
问题2:
问题3:
答案解析
在系统中,创建性模式支持对象的创建。该模式允许在系统中创建对象,而不需要在代码中标识特定类的类型,这样用户就不需要编写大量、复杂的代码来初始化对象。它是通过该类的子类来创建对象的。
在不指定具体类的情况下,Abstract Factory模式为创建一系列相关或相互依赖的对象提供了一个接口。根据给定的相关抽象类,Abstract Factory模式提供了从一个相匹配的具体子类集创建这些抽象类的实例的方法。Abstract Factory模式提供了一个可以确定合适的具体类的抽象类,这个抽象类可以用来创建实现标准接口的具体产品的集合。客户端只与产品接口和Abstract Factory类进行交互。使用这种模式,客户端不用知道具体的构造类。Abstract Factory模式类似于Factory Method模式,但是Abstract Factory模式可以创建一系列的相关对象。
Builder模式将复杂对象的构建与其表示相分离,这样相同的构造过程可以创建不同的对象。通过只指定对象的类型和内容,Builder模式允许客户端对象构建一个复杂对象客户端可以不受该对象构造的细节的影响。这样通过定义一个能够构建其他类实例旳类,就可以简化复杂对象的创建过程。Builder模式生产一个主要产品,而该产品中可能有多个类,但是通常只有一个主类。
Prototype模式允许对象在不了解要创建对象的确切类以及如何创建等细节的情况下创建自定义对象。使用Prototype实例,便指定了要创建的对象类型,而通过复匍这个Prototype,就可以创建新的对象。Prototype模式是通过先给出一个对象的Prototype对象,然后再初始化对象的创建。创建初始化后的对象再通过Prototype对象对其自身进行复制来创建其他对象。Prototype模式使得动态创建对象更加简单,只要将对象类定义成能够复制自身就可以实现。
正确答案(问题1): B
正确答案(问题2): C
正确答案(问题3): A
【第59~63题】
某公司欲开发一个在线教育平台。在架构设计阶段,公司的架构师识别出3个核心质量属性场景。其中“网站在并发用户数量10万的负载情况下,用户请求的平均响应时间应小于3秒”这一场景主要与(问题1
)质量属性相关,通常可采用(问题2
)架构黃略实现该属性; “主站宕机后,系统能够在10秒内自动切换至备用站点并恢复正常运行”主要与(问题3
)质量属性相关,通常可采用( 问题4
)架构策略实现该属性;“系统完成上线后,少量的外围业务功能和界面的调整与修改不超过10人·月”主要与(问题5
)质量属性相关。
问题1:
问题2:
问题3:
问题4:
问题5:
答案解析
本题考查质量属性的基础知识与应用。
架构的基本需求主要是在满足功能属性的前提下,关注软件质量属性,架构设汁则是为满足架构需求(质量属性)寻找适当的“战术”(即架构策略)。
软件属性包括功能属性和质量属性,但是,软件架构(及软件架构设计师)重点关注的是质量属性。因为在大量的可能结构中,可以使用不同的结构来实现同样的功能性,即功能性在很大程度上是独立于结构的,架构设计师面临着决策(对结构的选择),而功能性所关心的是它如何与其他质量属性进行交互,以及它如何限制其他质量属性。
常见的6个质量属性为可用性、可修改性、性能、安全性、可测试性、易用性。质量属性场景是一种面向特定的质量属性的需求,由以下6部分组成:刺激源、刺激、环境、制品、响应、响应度量。
题目中描述的人员管理系统在架构设计阶段,公司的架构师识别出3个核心质量属性场景,其中“网站在并发用户数量10万的负载情况下,用户请求的平均响应时间应小于3秒” 这一场景主要与性能质量属性相关,通常可采用提高计算效率、减少计算开销、控制资源使用、资源调度、负载均衡等架构策略实现该属性;“主站宕机后,系统能够在10秒内动切换至备用站点并恢复正常运行”主要与可用性质量属性相关,通常可采用Ping/Edio、心跳、异常检测、主动冗余、被动冗余、检查点等架构策略实现该属性;“系统完成上线后,少量的外围业务功能和界面的调整与修改不超过10人·月”主要与可修改性质量属性相关。
正确答案(问题1): A
正确答案(问题2): D
正确答案(问题3): B
正确答案(问题4): C
正确答案(问题5): A
【第64题】
SYN Flooding攻击的原理是( )。
答案解析
本题考查网络安全的知识。
SYN Flooding是一种常见的DOS(denial of service,拒绝服务)和DDoS( distributed denia’ of service,分布式拒绝服务)攻击方式。它使用TCP协议缺陷,发送大量的伪造的TCP连接请求,使得被攻击方CPU或内存资源耗尽,最终导致被攻击方无法提供正常的服务。
正确答案: A
【第65题】
下面关于Kerberos认证的说法中,错误的是( )。
答案解析
本题目考查Kerberos认证系统的认证流程知识。
Kerberos提供了一种单点登录(SSO)的方法。考虑这样一个场景,在一个网络中有不同的服务器,比如,打印服务器、邮件服务器和文件服务器。这些服务器都有认证的需求。 很自然的,让每个服务器自己实现一套认证系统是不合理的,而是提供一个中心认证服务器(AS-Authentication Server)供这作服务器使用。这样任何客户端就只需维护,一个密码就能登录所有服务器。
因此,在Kerberos系统中至少有三个角色:认证服务器(AS),客户端(Clienl)和普通服务器(Server)。客户端和服务器将在AS的帮助下完成相互认证。
在Kerberos系统中,客户端和服务器都有一个唯一的名字。同时,客户端和服务器都有自己的密码,并且它们的密码只有自己和认证服务器AS知道。
客户端在进行认证时,需首先向密钥分发中心来申请初始票据。
正确答案: B
【第66~67题】
某软件公司根据客户需求,组织研发出一套应用软件,并与本公司的职工签订了保密协议,但是本公司某研发人员将该软件中的算法和部分程序代码公开发表。该软件研发人员 (问题1
),该软件公司丧失了这套应用软件的( 问题2
)。
问题1:
问题2:
答案解析
本题考査知识产权的基础知识。
根据题目描述,该软件公司的研发人员参与开发的该软件是职务作品,因此该软件著作权属于公司。
软件著作权的客体是指计算机软件,即计算机程序及其有关文档。
软件著作权包括人身权、财产权等,人身权包括署名权、修改权、保护作品完整权等权力,财产权包括复制权、发行权、展览权、改编权、信息网络传播权等权利。发表权指决定软件是否公之于众的权利;发行权是指以出售或者赠与方式向公众提供软件的原件或者复制件的权利;信息网络传播权是指以有线或者无线方式向公众提供软件,使公众可以在其个人选定的时间和地点获得软件的权利。
研发人员将该软件中的算法和部分程序代码公开发表,使该公司丧失了商业秘密。
正确答案(问题1): D
正确答案(问题2): D
【第68题】
按照《中华人民共和国著作权法》的权利保护期,( )受到永久保护。
答案解析
本题考查知识产权的基础知识。
发表权指决定软件是否公之于众的权利;修改权是指对软件进行增补、删节,或者改变指令、语句顺序的权利;复制权是将软件制作一份或者多份的权利:发行权是指以上售或者赠与方式向公众提供软件的原件或者复制件的权利。
修改权属于软件著作权中的人身权,得到永久保护。
正确答案: B
【第69题】
为近似计算XYZ三维空间内由三个圆柱x2+y2≤1,y2+z2≤1,x2+z2≤1相交部分V的体积,以下四种方案中,( )最容易理解,最容易编程实现。
答案解析
本题考查应用数学-随机模拟的基础知识。
由于三个圆柱相交部分很难画图,很难想象其形状,也很难确定其边界参数,因此,方 案A、B、C的计算都有相当难度。方案D的计算非常容易,在计算机上利用伪随机数,很容易取得正立方体{-1≤x,y,z≤1}内均匀分布的随机点,也很容易判断该点是否位于V内。对大量的随机点,很容易统计在该正立方体中的随机点位于V中的比例。该比例值的8倍就近似地等于V的体积。
正确答案: D
【第70题】
某厂生产的某种电视机,销售价为每台2500元,去年的总销售量为25000台,固定成本总额为250万元,可变成本总额为4000万元,税率为16%,则该产品年销售量的盈亏平衡点为()台(只有在年销售量超过它时才能盈利)。
答案解析
本题考査应用数学-管理经济学的基础知识。
可变成本总额与销售的电视机台数有关。去年销售了25000台,可变成本总额为4000万元,因此,每台电视机的可变成本为4000/2.5=1600元。
如果年销售量为N台,则总成本=固定成本+NX每台的可变成本=250+0.16N (万元)。总收益=0.25N(1-16%) =0.21N (万元)。
对于盈亏平衡点的年销售量N, 250+0.16N=0.21N,所以W=5000 (台)。
正确答案: A
【第71~75题】
The purpose of systems design is to specify a(n) ( 问题1
) ,which defines the technologies to be used to build the proposed information systems. This task is accomplished by analyzing the data models and process models that were initially created during (问题2
) . The ( 问题3
) is used to establish physical processes and data stores across a network. To complete this activity, the analyst may involve a number of system designers and ( 问题4
) , which may be involved in this activity to help address business data, process, and location issues. The key inputs to this ta;>k are the facts, recommendations, and opinions that are solicited from various sources and the approved (问题5
) from the decision analysis phase.
问题1:
问题2:
问题3:
问题4:
问题5:
答案解析
系统设计的目的是确定一种应用体系架构,该架构定义了用于构建所建议信息系统的技术。通过分析最初在需求分析期间创建的数据模型和过程模型来完成该项任务。物理数据流程图用于在整个网络上建立物理过程和数据存储。为了完成此活动,分析人员可能需要许多系统设计人员和系统用户参与到该活动中,帮助处理业务数据、流程和位置问题。该任务的关键输入是从各种来源获取的事实、建议和意见,以及在决策分析阶段获批的系统建议。
正确答案(问题1): D
正确答案(问题2): A
正确答案(问题3): B
正确答案(问题4): A
正确答案(问题5): B
更多内容请见: 备考系统架构设计师-核心总结索引