2012年系统架构师考试题详解

考试科目一:综合知识

假设系统中有n个进程共享3台打印机,任一进程在任一时刻最多只能使用1台打印机。若用PV操作控制n个进程使用打印机,则相应信号量S的取值范围为(1);若信号量S的值为-3,则系统中有(2)个进程等待使用打印机。
(1)A.0,-1,…,-(n-1)                      B.3210, -1,•••, - (n-3)
       C.C. 1, 0, -1,•••, - (n-1)                   D.2, 1, 0, -1, •••, - (n-2)
(2)A.0                  B.1                 C.2                 D.3

【答案】B D 【解析】本题考查操作系统进程管理方面的基础知识。
试题(1)的正确答案为选项B。根据题意,假设系统中有n个进程共享3台打印机,
意味着每次只允许3个进程进入互斥段,那么信号量的初值应为3。可见,根据排除法只有选项B中含有3。
试题(2)的正确答案为选项D。信号量S的物理意义为:当S多0时,表示资源的可用数;当S<0时,其绝对值表示等待资源的进程数。

假设文件系统采用索引节点管理,且索引节点有8个地址项iaddr[0]iaddr[7],每个地址项大小为4B, iaddr[0]iaddr[4]采用直接地址索弓丨,iaddr[5]iaddr[6]采用一级间接地址索引,iaddr[7]采用二级间接地址索引。假设磁盘索引块和磁盘数据块大小均为1KB字节,文件Filel的索引节点如下图所示。若用户访问文件Filel中逻辑块号为5和261的信息,则对应的物理块号分别为(3);101号物理块存放的是(4)。

(3)A.89和90      B.89和136            C.58和187            D.90和136
(4)A.Filel的信息                       B.直接地址索引表   
C.一级地址索引表                       D.二级地址索引表

2012年系统架构师考试题详解_第1张图片

【答案】C D 【解析】本题考查操作系统文件管理方面的基础知识。
根据题意,磁盘索引块为1KB,每个地址项大小为4B,故每个磁盘索引块可存放1024/4=256个物理块地址。又因为文件索引节点中有8个地址项,其中5个地址项为直接地址索引,这意味着逻辑块号为0〜4的为直接地址索引;2个地址项是一级间接地址索引,其中第一个地址项指出的物理块中是一张一级间接地址索引表,存放逻辑块号为5〜260对应的物理块号,第二个地址项指出的物理块中是另一张一级间接地址索引表,存放逻辑块号为261〜516对应的物理块号。经上分析,从题图不难看出,逻辑块号为5的信息应该存放在58号物理块中,逻辑块号为261的信息应该存放在187号物理块中。
由题中可知,iaddr[7]采用二级间接地址索引,且iaddr[7]中存放的物理块号为101。1个地址项是二级间接地址索引,这意味着该地址项指出的物理块中存放的是256个一级间接地址索引表,故101号物理块存放的是二级间接地址索引表。
2012年系统架构师考试题详解_第2张图片

在数椐库设计的需求分析阶段应当形成(5),这些文档可以作为(6)阶段的设计依据。
(5)A.程序文档、数据字典和数据流图     B.需求说明文档、 程序文档和数据流图
       C.需求说明文档、 数据字典和数据流图  D.需求说明文档、 数据字典和程序文档
(6)A.逻辑结构设计 B.概念结构设计    C.物理结构设计    D.数据库运行和维护

【答案】C B 【解析】本题考查数据库系统基本概念方面的基础知识。
数据库设计主要分为用户需求分析、概念结构、逻辑结构和物理结构设计四个阶段。其中,在用户需求分析阶段中,数据库设计人员采用一定的辅助工具对应用对象的功能、性能、限制等要求所进行的科学分析,并形成需求说明文档、数据字典和数据流程图。用户需求分析阶段形成的相关文档用以作为概念结构设计的设计依据。

某商场商品数据库的商品关系模式P (商品代码,商品名称,供应商,联系方式,库存量),函数依赖集F={商品代码一商品名称,(商品代码,供应商)一库存量,供应商一联系方式。商品关系模式P达到(7);该关系模式分解成(8)后,具有无损连接的特性,并能够保持函数依赖。
(7)A.INF                B.2NF               C.3NF               D.BCNF
(8)A.P1 (商品代码,联系方式),P2 (商品名称,供应商,库存量)
       B.P1 (商品名称,联系方式),P2 (商品代码,供应商,库存量)
       C.P1 (商品代码,商品名称,联系方式),P2 (供应商,库存量)
       D.P1 (商品代码,商品名称),P2 (商品代码,供应商,库存量), P3 (供应商,联系方式)

【答案】A D 【解析】本题考查的是应试者关系数据库方面的基础知识。
根据题意,零件P关系中的(商品代码,供应商)可决定的零件P关系的所有属性,所以零件P关系的主键为(商品代码,供应商);又因为,根据题意(商品代码,供应商)一商品名称,而商品代码一商品名称,供应商一联系方式,可以得出商品名称和联系方式都部分依赖于码,所以,该关系模式属于1NF。
关系模式P属于INF,
1NF存在冗余度大、修改操作的不一致性、插入异常和删除异常四个问题。所以需要对模式分解,其中选项A、选项B和选项C的分解是有损且不保持函数依赖。例如,选项A中的分解P1的函数依赖集F1=0,分解P2的函数依赖集
F2=0,丢失了F中的函数依赖,即不保持函数依赖。

以下关于软件中间件的叙述,错误的是(9)。
(9)A.中间件通过标准接口实现与应用程序的关联,提供特定功能的服务
B.使用中间件可以提高应用软件可移植性
       C.使用中间件将增加应用软件设计的复杂度
D.使用中间件有助于提高开发效率

【答案】C 【解析】
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。
软件中间件的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户开发和集成应用软件。它不仅仅要实现互连,还要实现应用之间的互操作。

以下关于嵌入式系统开发的叙述,正确的是(10)。
(10)A.宿主机与目标机之间只需要建立逻辑连接
B.宿主机与目标机之间只能采用串口通信方式
C.在宿主机上必须釆用交叉编译器来生成目标机的可执行代码
        D.调试器与被调试程序必、须安装在同一台机器上

【答案】C 【解析】 在嵌入式系统开发中,由于嵌入式设备不具备足够的处理器能力和存储空间,程序开发一般用PC
(宿主机)来完成,然后将可执行文件下载到嵌入式系统(目标机)中运行。
当宿主机与目标机的机器指令不同时,就需要交叉工具链(指编译、汇编、链接等一整套工具)。

以下关于嵌入式系统硬件抽象层的叙述,错误的是(11)。
(11)A.硬件抽象层与硬件密切相关,可对操作系统隐藏硬件的多样性
B.硬件抽象层将操作系统与硬件平台隔开
C.硬件抽象层使软硬件的设计与调试可以并行
        D.硬件抽象层应包括设备驱动程序和任务调度

【答案】D 【解析】
硬件抽象层是位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。

(12)不是反映嵌入式实时操作系统实时性的评价指标。
(12)A.任务执行时间                            B.中断响应和延迟时间
        C.任务切换时间                            D.信号量混洗时间

【答案】A 【解析】
一个嵌入式实时操作系统(RTOS)的评价要从很多角度进行,如体系结构、API的丰富程度、网络支持、可靠性等。其中,实时性是RTOS评价的最重要的指标之一,
实时性的优劣是用户选择操作系统的一个重要参考。
严格地说,影响嵌入式操作系统实时性的因素有很多,如常用系统调用平均运行时间、任务切换时间、线程切换时间、信号量混洗时间(指从一个任务释放信号量到另一
个等待该信号量的任务被激活的时间延迟)、中断响应时间等。 任务执行时间不是反映RTOS实时性的评价指标。

以下关于网络控制的叙述,正确的是(13)。
(13)A.由于TCP的窗口大小是固定的,所以防止拥塞的方法只能是超时重发
        B.在前向纠错系统中,当接收端检测到错误后就要请求发送端重发出错分组
C.在滑动窗口协议中,窗口的大小以及确认应答使得可以连续发送多个数据
        D.在数据报系统中,所有连续发送的数据都可以沿着预先建立的虚通路传送

【答案】C 【解析】
TCP采用可变大小的滑动窗口协议进行流量控制。在前向纠错系统中,当接收端检测到错误后就根据纠错编码的规律自行纠错;在后向纠错系统中,接收方会请求发送方重发出错分组。IP协议不预先建立虚电路,而是对每个数据报独立地选择路由并一站一站地进行转发,直到送达目标地。

以下关于域名服务器的叙述,错误的是(14)。
(14)A.本地缓存域名服务不需要域名数据库
B.顶级域名服务器是最高层次的域名服务器
        C.本地域名服务器可以采用递归查询和迭代查询两种查询方式
        D.权限服务器负责将其管辖区内的主机域名转换为该主机的IP地址

【答案】B 【解析】
可提供域名服务的包括本地缓存、本地域名服务器、权限域名服务器、顶级域名服务器以及根域名服务器。DNS主机名解析的查找顺序是,先查找客户端本地缓存,如果没有成功,则向DNS服务器发出解析请求。
本地缓存是内存中的一块区域,保存着最近被解析的主机名及其IP地址映像。由于解析程序缓存常驻内存中,所以比其他解析方法速度快。
当一个主机发出DNS查询报文时,这个查询报文就首先被送往该主机的本地域名服务器。本地域名服务器离用户较近,当所要查询的主机也属于同一个本地ISP时,该本地域名服务器立即就能将所查询的主机名转换为它的IP地址,而不需要再去询问其他的域名服务器。
每一个区都设置有域名服务器,即权限服务器,它负责将其管辖区内的主机域名转换为该主机的IP地址。在其上保存有所管辖区内的所有主机域名到IP地址的映射。
顶级域名服务器负责管理在本顶级域名服务器上注册的所有二级域名。当收到DNS查询请求时,能够将其管辖的二级域名转换为该二级域名的IP地址。或者是下一步应该找寻的域名服务器的IP地址。
根域名服务器是最高层次的域名服务器。每一个根域名服务器都要存有所有顶级域名服务器的IP地址和域名。当一个本地域名服务器对一个域名无法解析时,就会直接找到根域名服务器,然后根域名服务器会告知它应该去找哪一个顶级域名服务器进行查询。

以下关于网络存储的叙述,正确的是(15)。
(15)A.DAS支持完全跨平台文件共享,支持所有的操作系统
B.NAS通过SCSI连接至服务器,通过服务器网卡在网络上传输数据
        C.FCSAN的网络介质为光纤通道,而IP SAN使用标准的以太网
        D.SAN设备有自己的文件管理系统,NAS中的存储设备没有文件管理系统

【答案】C 【解析】本题考查网络存储的基础知识。 DAS (Direct Attached
Storage,直接附加存储)即直连方式存储。在这种方式中,存储设备是通过电缆(通常是SCSI接口电缆)直接连接服务器。I/O
(输入/输入)请求直接发送到存储设备。DAS也可称为SAS ( Server-Attached
Storage,服务器附加存储)。它依赖于服务器,其本身是硬件的堆叠,不带有任何存储操作系统,DAS不能提供跨平台文件共享功能,各系统平台下文件需分别存储。
NAS是(Network Attached
Storage)的简称,中文称为网络附加存储。在NAS存储结构中,存储系统不再通过I/O总线附属于某个特定的服务器或客户机,而是直接通过网络接口与网络直接相连,由用户通过网络来访问。
NAS设备有自己的OS,其实际上是一个带有瘦服务的存储设备,其作用类似于一个专用的文件服务器,不过把显示器,键盘,鼠标等设备省去,NAS用于存储服务,可以大大降低了存储设备的成本,另外NAS中的存储信息都是采用RAID方式进行管理的,
从而有效的保护了数据。
SAN是通过专用高速网将一个或多个网络存储设备和服务器连接起来的专用存储系统,未来的信息存储将以SAN存储方式为主。SAN主要采取数据块的方式进行数据和信息的存储,目前主要使用于以太网(IPSAN)和光纤通道(FCSAN)两类环境中。

以下关于软件架构风格与系统性能关系的叙述,错误的是(16)。
(16)A.对于采用层次化架构风格的系统,划分的层次越多,系统的性能越差
B.对于采用管道-过滤器架构风格的系统,可以通过引入过滤器的数据并发 处理提高系统性能
C.对于采用面向对象架构风格的系统,可以通过减少功能调用层次提高系统性能
D.对于采用过程调用架构风格的系统,可以通过将显式调用策略替换为隐式调用策略提高系统性能

【答案】D 【解析】本题主要考查对软件架构风格与系统性能之间关系的理解。
对于采用层次化架构风格的系统,划分的层次越多,系统完成某项功能需要的中间调用操作越多,其性能越差。对于采用管道-过滤器架构风格的系统,可以通过引入过滤器的数据并发处理可以有效提高系统性能。对于采用面向对象架构风格的系统,可以通过减少功能调用层次提高系统性能。对于采用过程调用架构风格的系统,将显式调用策略替换为隐式调用策略能够提高系统的灵活性,但会降低系统的性能。

峰值MIPS (每秒百万次指令数)用来描述计算机的定点运算速度,通过对计算机指令集中基本指令的执行速度计算得到。假设某计算机中基本指令的执行需要5个机器周期,每个机器周期为3微秒,则该计算机的定点运算速度为(17) MIPS。
(17)A.8                 B.15                C.0.125                 D.0.067

【答案】D 【解析】
每完成一个基本指令需要5*3=15微秒,根据峰值MIPS的定义,其定点运算速度为1/15=0.067MIPS,特别需要注意单位“微秒”和“百万指令数”,在计算过程中恰好抵消。

ERP中的企业资源包括(18)。
(18)A.物流、资金流和信息流                    B.物流、工作流和信息流
        C.物流、资金流和工作流                    D.资金流、工作流和信息流

【答案】A 【解析】本题考查企业资源的基本概念。
ERP中的企业资源包括企业的“三流”资源,即物流资源、资金流资源和信息流资源。ERP实际上就是对这“三流”资源进行全面集成管理的管理信息系统。

CRM是一套先进的管理思想及技术手段,它通过将(19)进行有效的整合,最终为企业涉及到的各个领域提供了集成环境。CRM系统的四个主要模块包括(20)。
(19)A.员工资源、客户资源与管理技术            B.销售资源、信息资源与商业智能
        C.销售管理、市场管理与服务管理            D.人力资源、业务流程与专业技术
(20)A.电子商务支持、呼叫中心、移动设备支持、数据分析
B.信息分析、网络应用支持、客户信息仓库、工作流集成
        C.销售自动化、营销自动化、客户服务与支持、商业智能
        D.销售管理、市场管理、服务管理、现场服务管理

【答案】D C 【解析】本题考查企业信息化的基本知识。
CRM是一套先进的管理思想及技术手段,它通过将人力资源、业务流程与专业技术进行有效的整合,最终为企业涉及到客户或者消费者的各个领域提供了完美的集成,使得企业可以更低成本、更高效率地满足客户的需求,并与客户建立起基于学习性关系基础上的一对一营销模式,从而让企业可以最大程度提高客户满意度和忠诚度。CRM系统的主要模块包括销售自动化、营销自动化、客户服务与支持、商业智能。

企业信息化程度是国家信息化建设的基础和关键,企业信息化方法不包括(21)。
(21)A.业务流程重组        B.组织机构变革        C.供应链管理 D.人力资本投资

【答案】B 【解析】本题考查企业信息化的基本方法。
企业信息化程度是国家信息化建设的基础和关键,企业信息化就是企业利用现代信息技术,通过信息资源的深入开发和广泛利用,实现企业生产过程的自动化、管理方式的网络化、决策支持的智能化和商务运营的电子化,不断提高生产、经营、管理、决策的效率和水平,进而提高企业经济效益和企业竞争力的过程。企业信息化方法主要包括
业务流程重构、核心业务应用、信息系统建设、主题数据库、资源管理和人力资本投资方法。企业战略规划是指依据企业外部环境和自身条件的状况及其变化来制定和实施战略,并根据对实施过程与结果的评价和反馈来调整,制定新战略的过程。

企业信息资源集成管理的前提是对企业(22)的集成,其核心是对企业(23)的集成。
(22)A.信息功能      B.信息设施      C.信息活动      D.信息处理
(23)A.业务流       B.内部信息流 C.外部信息流 D.内部和外部信息流

【答案】A D 【解析】本题考査信息资源管理的基本知识。
集成管理是企业信息资源管理的主要内容之一。实行企业信息资源集成的前提是对企业历史上形成的企业信息功能的集成,其核心是对企业内部和外部信息流的集成,其实施的基础是各种信息手段的集成。通过集成管理实现企业信息系统各要素的优化组合,使信息系统各要素之间形成强大的协同作用,从而最大限度地放大企业信息的功能,实现企业可持续发展的目的。

为了加强对企业信息资源的管理,企业应按照信息化和现代化企业管理要求设置信息管理机构,建立信息中心。信息中心的主要职能不包括(24)。
(24)A.处理信息,确定信息处理的方法    B.用先进的信息技术提高业务管理水平
C.组织招聘信息资源管理员       D.建立业务部门期望的信息系统和网络

【答案】C 【解析】本题考查企业信息中心的主要职能。
为了加强对企业信息资源的管理,企业应按照信息化和现代化企业管理要求设置信息管理机构,建立信息中心,确定信息主管,统一管理和协调企业信息资源的开发、收集和使用。信息中心是企业的独立机构,直接由最高层领导并为企业最高管理者提供服务。其主要职能是处理信息,确定信息处理的方法,用先进的信息技术提高业务管理水平,建立业务部门期望的信息系统和网络并预测未来的信息系统和网络,培养信息资源的管理人员等。

以下关于软件生存周期模型的叙述,正确的是(25)。
    (25)A.在瀑布模型中/前一个阶段的错误和疏漏会隐蔽地带到后一个阶段
B.在任何情况下使用演化模型,都能在一定周期内由原型演化到最终产品
C.软件生存周期模型的主要目标是为了加快软件开发的速度
        D.当一个软件系统的生存周期结束之后,它就进入到一个新的生存周期模型

【答案】A 【解析】
软件产品从形成概念开始,经过开发、使用和维护,直到最后退役的全过程成为软件生存周期。一个完整的软件生存周期是以需求为出发点,从提出软件开发计划的那一刻开始,直到软件在实际应用中完全报废为止。软件生存周期的提出了是为了更好地管理、维护和升级软件,其中更大的意义在于管理软件开发的步骤和方法。
软件生存周期模型又称软件开发模型(software develop model)或软件过程模型 (software process
model),它是从某个特定角度提出的软件过程的简化描述。软件生存周期模型主要有瀑布模型、演化模型、原型模型、螺旋模型喷泉模型和基于可重用构件的模型等。
瀑布模型是最早使用的软件生存周期模型之一。瀑布模型的特点是因果关系紧密相连,前一个阶段工作的结果是后一个阶段工作的输入。或者说,每一个阶段都是建立在前一个阶段的正确结果之上,前一个阶段的错误和疏漏会隐蔽地带入后一个阶段。这种错误有时甚至可能是灾难性的,因此每一个阶段工作完成后,都要进行审查和确认。
演化模型主要针对事先不能完整定义需求的软件开发,是在快速开发一个原型的基础上,根据用户在调用原型的过程中提出的反馈意见和建议,对原型进行改进,获得原型的新版本,重复这一过程,直到演化成最终的软件产品。演化模型的主要优点是,任何功能一经开发就能进入测试,以便验证是否符合产品需求,可以帮助引导出高质量的产品要求。其主要缺点是,如果不控制地让用户接触开发中尚未稳定的功能,可能对开发人员及永固都会产生负面的影响。

螺旋模型将整个软件开发过程分为多个阶段,每个阶段都由目标设定、(26)、开发和有效性验证以及评审4个部分组成。
(26)A.需求分析          B.风险分析          C.系统设计          D.架构设计

【答案】B 【解析】
螺旋模型是在快速原型的基础上扩展而成的一种生存周期模型。这种模型将整个软件开发流程分成多个阶段,每个阶段都由4部分组成,它们是:
①目标设定。为该项目进行需求分析,定义和确定这一个阶段的专门目标,指定对过程和产品的约束,并且制定详细的管理计划。
②风险分析。对可选方案进行风险识别和详细分析,制定解决办法,采取有效的措施避免这些风险。
③开发和有效性验证。风险评估后,可以为系统选择开发模型,并且进行原型开发,即开发软件产品。
④评审。对项目进行评审,以确定是否需要进入螺旋线的下一次回路,如果决定继续,就要制定下一阶段计划。
螺旋模型的软件开发过程实际是上述4个部分的迭代过程,每迭代一次,螺旋线就增加一周,软件系统就生成一个新版本,这个新版本实际上是对目标系统的一个逼近。经过若干次的迭代后,系统应该尽快地收敛到用户允许或可以接受的目标范围内,否则也可能中途夭折。

基于UML的需求分析过程的基本步骤为:利用(27)表示需求;利用(28)表示目标软件系统的总体架构。
(27)A.用例及用例图        B.包图及类图 C.剧情及序列图       D.组件图及部署图(28)A.用例及用例图        B.包图及类图 C.剧情及序列图       D.组件图及部署图

【答案】A B 【解析】 基于UML的需求分析过程大致可分为以下步骤:
①利用用例及用例图表示需求。从业务需求描述出发获取执行者和场景;对场景进行汇总、分类、抽象,形成用例;确定执行者与用例、用例与用例图之间的关系,生成用例图。
②利用包图和类图表示目标软件系统的总体框架结构。根据领域知识、业务需求描述和既往经验设计目标软件系统的顶层架构;从业务需求描述中提取“关键概念”,形成领域概念模型;从概念模型和用例出发,研究系统中主要的类之间的关系,生成类图。

快速应用开发(Rapid Application Development,RAD)通过使用基于(29)的开发方法获得快速开发。当(30)时,最适合于采用RAD方法。
(29)A.用例                B.数据结构              C.剧情                D.构件(30)A.一个新系统要采用很多新技术     B.新系统与现有系统有较高的互操作性
        C.系统模块化程度较高             D.用户不能很好地参与到需求分析中

【答案】D C 【解析】 快速应用开发(Rapid Application
Development,RAD)是一种比传统生存周期法快得多的开发方法,它强调极短的开发周期。RAD模型是瀑布模型的一个高速变种,通过使用基于构件的开发方法获得快速开发。如果需求理解得很好,且约束了项目范围,利用这种模型可以很快地开发出功能完善的信息系统。但是RAD也具有以下局限性:
①并非所有应用都适合RAD。RAD对模块化要求比较高,如果有哪一项功能不能被模块化,那么RAD所需要的构建就会有问题;如果高性能是一个指标,且该指标必须通过调整接口使其适应系统构件才能获得,则RAD也有可能不能奏效。
②开发者和客户必须在很短的时间完成一系列的需求分析,任何一方配合不当,都会导致RAD项目失败。
③RAD只能用于管理信息系统的开发,不适合技术风险很高的情况。例如,当一个新系统要采用很多新技术,或当新系统与现有系统有较高的互操作性时,就不适合使用RAD。

以下关于软件开发方法的叙述,错误的是(31)。
(31)A.对于较为复杂的应用问题,适合釆用形式化方法进行需求分析
        B.形式化方法的优势在于能够精确地表述和研究应用问题及其软件实现
        C.净室软件工程将正确性验证作为发现和排除错误的主要机制
        D.净室软件工程强调统计质量控制技术,包括对客户软件使用预期的测试

【答案】A 【解析】 软件开发方法是指软件开发过程所遵循的办法和步骤,从不同的角度可以对软件开发方法进行不同的分类。
形式化方法是一种具有坚实数学基础的方法,从而允许对系统和开发过程做严格处理和论证,适用于那些系统安全级别要求极高的软件的开发。形式化方法的主要优越性在于它能够数学地表述和研究应用问题及软件实现。但是它要求开发人员具备良好的数学基础。用形式化语言书写的大型应用问题的软件规格说明往往过于细节化,并且难于为用户和软件设计人员所理解。由于这些缺陷,形式化方法在目前的软件开发实践中并未得到普遍应用。
净室软件工程(Cleanroom Software Engineering, CSE)是软件开发的一种形式化方
法,可以开发较高质量的软件。它使用盒结构规约进行分析和建模,并且将正确性验证作为发现和排除错误的主要机制,使用统计测试来获取认证软件可靠性所需要的信息。CSE强调在规约和设计上的严格性,还强调统计质量控制技术,包括基于客户对软件的预期使用测试。

软件开发环境应支持多种集成机制。根据功能不同,可以将集成机制分为三个部分:(32),用以存储与系统开发有关的信息,并支持信息的交流与共享;(33),是实现过程集成和控制集成的基础;(34),它的统一性和一致性是软件开发环境的重要特征。
(32)A.算法模型库     B.环境信息库     C.信息模型库   D.用户界面库(33)A.工作流与日志服务器                    B.进程通信与数据共享服务器
        C.过程控制与消息服务器                    D.同步控制与恢复服务器
(34)A.底层数据结构        B.数据处理方法        C.业务过程模型     D.环境用户界面

【答案】B C D 【解析】 软件开发环境(Software Development Environment,
SDE)是指支持软件的工程化 开发和维护而使用的一组软件,由软件工具集和环境集成机制构成。
软件开发环境应支持多种集成机制,根据功能的不同,集成机制可以划分为环境信息库、过程控制与消息服务器、环境用户界面三个部分。
①环境信息库。环境信息库是软件开发环境的核心,用以存储与系统开发有关的信息,并支持信息的交流与共享。环境信息库中主要存储两类信息,一类是开发过程中产生的有关被开发系统的信息,例如分析文档、设计文档和测试报告等;另一类是环境
提供的支持信息,如文档模板、系统配置、过程模型和可复用构件等。
②过程控制与消息服务器。过程控制与消息服务器是实现过程集成和控制集成的基础。过程集成时按照具体软件开发过程的要求进行工具的选择与组合,控制集成使各工具之间进行并行通信和协同工作。
③环境用户界面。环境用户界面包括环境总界面和由它实行统一控制的各环境部件及工具的界面。统一的、具有一致性的用户界面是软件开发环境的重要特征,是充分发挥环境的优越性、高效地使用工具并减轻用户的学习负担的保证。

对于违反里氏替换原则的两个类A和B,可以采用的候选解决方案中,正确的是(35).
(35)A.尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程
        B.创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题
        C.将B到A的继承关系改成组合关系
        D.区分是“Is-a”还是“Has-a”。如果是Is-a,可以使用继承关系,如果是Has-a,应该改成组合或聚合关系

【答案】A 【解析】 里氏替换原则是面向对象设计原则之一,由Barbara
liskov提出,其基本思想是,一个软件实体如果使用的是一个基类对象,那么一定适用于其子类对象,而且觉察不出基类对象和子类对象的区别,即把基类都替换成它的子类,程序的行为没有变化。反过来则不一定成立,如果一个软件实体使用的是一个子类对象,那么它不一定适用于基类对象。
在运用里氏替换原则时,尽量将一些需要扩展的类或者存在变化的类设计为抽象类
或者接口,并将其作为基类,在程序中尽量使用基类对象进行编程。由于子类继承基类并实现其中的方法,程序运行时,子类对象可以替换基类对象,如果需要对类的行为进行修改,可以扩展基类,增加新的子类,而无需修改调用该基类对象的代码。

以下关于黑盒测试用例设计方法的叙述,错误的是(36)。
    (36)A.边界值分析通过选择等价类边界作为测试用例,不仅重视输入条件边界,而且也必须考虑输出域边界
B.因果图方法是从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),可以通过因果图转换为判定表
C.正交试验设计法,就是使用已经造好了的正交表格来安排试验并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率
D.等价类划分法根据软件的功能说明,对每一个输入条件确定若干个有效等价类和无效等价类,但只能为有效等价类设计测试用例

【答案】D 【解析】
黑盒测试也称为功能测试,主要用于集成测试,确认测试和系统测试阶段。黑盒测试根据软件需求规格说明所规定的功能来设计试用例,一般包括功能分解、等价类划分、边界值分析、判定表、因果图、状态图、随机测试、错误推测和正交试验法等。
在设计测试用例时,等价类划分是用得最多的一种黑盒测试方法。所谓等价类就是某个输入域的集合,对每一个输入条件确定若干个有效等价类和若干个无效等价类,分别设计覆盖有效等价类和无效等价类的测试用例。无效等价类是用来测试非正常的输入
数据的,所以要为每个无效等价类设计一个测试用例。
边界值分析通过选择等价类边界作为测试用例,不仅重视输入条件边界,而且也必须考虑输出域边界。在实际测试工作中,将等价类划分法和边界值分析结合使用,能更有效地发现软件中的错误。
因果图方法是从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果 (输出或程序状态的改变),可以通过因果图转换为判定表。
正交试验设计法,就是使用已经造好了的正交表格来安排试验并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率。

以下关于软件测试工具的叙述,错误的是(37)。
(37)A.静态测试工具可用于对软件需求、结构设计、详细设计和代码进行评审、走
查和审查
B.静态测试工具可对软件的复杂度分析、数据流分析、控制流分析和接口分析提供支持
C.动态测试工具可用于软件的覆盖分析和性能分析
        D.动态测试工具不支持软件的仿真测试和变异测试

【答案】D 【解析】
测试工具根据工作原理不同可分为静态测试工具和动态测试工具。其中静态测试工具是对代码进行语法扫描,找到不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等。它直接对代码进行分析,不需要运行代码,也不需要对代码编译链接和生成可执行文件,静态测试工具可用于对软件需求、结构设计、详细设计和代码进行评审、走审和审查,也可用于对软件的复杂度分析、数据流分析、控制流分析和接口分析提供支持;动态测试工具与静态测试工具不同,它需要运行被测试系统,并设置探针,向代码生成的可执行文件中插入检测代码,可用于软件的覆盖分析和性能分析,也可用于软件的模拟、建模、仿真测试和变异测试等。

架构描述语言(Architecture Description Language,ADL)是一种为明确说明软件系统的概念架构和对这些概念架构建模提供功能的语言。ADL主要包括以下组成部分:组件、组件接口、(38)和架构配置。
(38)A.架构风格          B.架构实现          C.连接件           D.组件实现

【答案】C 【解析】本题主要考查架构描述语言的知识。 架构描述语言(Architecture Description Language,
ADL)是一种为明确说明软件系统的概念架构和对这些概念架构建模提供功能的语言。ADL主要包括以下组成部分:组件、组件接口、连接件和架构配置。ADL
对连接件的重视成为区分ADL和其他建模语言的重要特征之一

ANSI/IEEE 1471-2000是对软件密集型系统的架构进行描述的标准。在该标准中, (39)这一概念主要用于描述软件架构模型_。在此基础上,通常采用(40)描述某个利益相关人(Stakeholder)所关注架构模型的某一方面。(41)则是对所有利益相关人关注点的响应和回答。
(39)A.上下文           B.架构风格          C.组件                D.视图
(40)A.环境                B.资源                C.视角                D.场景
(41)A.架构                B.系统                C.模型                D.使命

【答案】D C A 【解析】本题主要考查ANSI/IEEE 1471-2000标准的相关知识。 在ANSI/IEEE
1471-2000标 准中,系统是为了达成利益相关人(Stakeholder)的某些使命(Mission),在特定环境
(Enviroment)中构建的。每一个系统都有一个架构(Architecture)。架构是对所有利益相关人的关注点(Concern)的响应和回答,通过架构描述(Architecture
Description)来
说明。每一个利益相关人都有各自的关注点。这些关注点是指对其重要的,与系统的开发、运营或其他方面相关的利益。架构描述(Architecture
Description)本质上是多视图的。每一个视图(View)是从一个特定的视角(Viewpoint)来表述架构的某一个独立的方面。试图用一个单一的视图来覆盖所有的关注点当然是最好的,但实际上这种表述方式将很难理解。视角(Viewpoint)的选择,基于要解决哪些利益相关人的哪些关注点。它决定了用来创建视图的语言、符号和模型等,以及任何与创建视图相关的建模方法或者分析技术。一个视图(View)包括一个或者多个架构模型(Model),一个模型也可能参与多个视图。模型较文本的表述的好处在于,可以更容易的可视化、检查、分析、管
理和集成。

采用以架构为核心的软件开发方法,在建立软件架构的初期,首要任务是选择一个合适的(42),在此基础上,开发人员通过架构模型,可以获得关于(43)的理解,为将来的架构实现与演化过程建立了目标。
(42)A.分析模式          B.设计模式          C.架构风格          D.架构标准
(43)A.架构需求          B.架构属性          C.架构优先级     D.架构约束

【答案】C B 【解析】本题主要考查以架构为核心的软件系统开发方法。
在该方法中,架构用来激发和调整设计策略,不同的视图用来表达与质量目标有关的信息。架构设计是一个迭代过程,在建立软件架构的初期,选择一个合适的架构风格是首要的,在此基础上,开发人员通过架构模型,可以获得关于软件架构属性的理解,为将来的架构实现与演化过程建立了目标。

在数据库系统中,“事务”是访问数据库并可能更新各种数据项的一个程序执行单元。为了保证数据完整性,要求数据库系统维护事务的原子性、一致性、隔离性和持久性。针对事务的这4种特性,考虑以下的架构设计场景:
假设在某一个时刻只有一个活动的事务,为了保证事务的原子性,对于要执行写操作的数据项,数据库系统在磁盘上维护数据库的一个副本,所有的写操作都在数据库副本上执行,而保持原始数据库不变,如果在任一时刻操作不得不中止,系统仅需要删除副本,原数据库没有受到任何影响。这种设计策略称为(44)。
事务的一致性要求在没有其他事务并发执行的情况下,事务的执行应该保证数据库的一致性。数据库系统通常采用(45)机制保证单个事务的一致性。
事务的隔离性保证操作并发执行后的系统状态与这些操作以某种次序顺序执行(即可串行化执行)后的状态是等价的。两阶段锁协议是实现隔离性的常见方案,该协议(46)。
持久性保证一旦事务完成,该事务对数据库所做的所有更新都是永久的,如果事务完成后系统出现故障,则需要通过恢复机制保证事务的持久性。假设在日志中记录所有对数据库的修改操作,将一个事务的所有写操作延迟到事务提交后才执行,则在日志中(47),当系统发生故障时,如果某个事务已经开始,但没有提交,则该事务应该(48)。
(44)A.主动冗余          B.影子拷贝          C.热备份       D.多版本编程
(45)A.逻辑正确性检查   B.物理正确性检查   C.完整性约束检查D.唯一性检查
(46)A.能够保证事务的可串行化执行,可能发生死锁
B.不能保证事务的可串行化执行,不会发生死锁
C.不能保证事务的可串行化执行,可能发生死锁
        D.能够保证事务的可串行化执行,不会发生死锁
(47)A.无需记录“事务开始执行”这一事件 B.无需记录“事务已经提交”这一事件
        C.无需记录数据项被事务修改后的新值 D.无需记录数据项被事务修改前的原始值
(48)A.重做            B.撤销            C.什么都不做     D.抛出异常后退出

【答案】B C A D C 【解析】本题主要考查数据库系统架构设计知识。
在数据库系统中,“事务”是访问并可能更新各种数据项的一个程序执行单元。为了保证数据完整性,要求数据库系统维护事务的原子性、一致性、隔离性和持久性。
题干中第1个架构设计场景描述了数据库设计中为了实现原子性和持久性的最为简单的策略:“影子拷贝”。该策略假设在某一个时刻只有一个活动的事务,首先对数据库做副本(称为影子副本),并在磁盘上维护一个dp_pointer指针,指向数据库的当前副本。对于要执行写操作的数据项,数据库系统在磁盘上维护数据库的一个副本,所有的写操作都在数据库副本上执行,而保持原始数据库不变,如果在任一时刻操作不得不中止,
系统仅需要删除新副本,原数据库副本没有受到任何影响。
题干中的第2个架构设计场景主要考查考生对事务一致性实现机制的理解。事务的一致性要求在没有其他事务并发执行的情况下,事务的执行应该保证数据库的一致性。数据库系统通常采用完整性约束检查机制保证单个事务的一致性。
题干中的第3个架构设计场景主要考查数据库的锁协议。两阶段锁协议是实现事务隔离性的常见方案,该协议通过定义锁的增长和收缩两个阶段约束事务的加锁和解锁过程,能够保证事务的串行化执行,但由于事务不能一次得到所有需要的锁,因此该协议会可能会导致死锁。
. 题干中的第4个架构设计场景主要考查数据库的恢复机制,主要描述了基于日志的延迟修改技术(deferred-modification
technique)的设计与恢复过程。该技术通过在日志中记录所有对数据库的修改操作,将一个事务的所有写操作延迟到事务提交后才执行,
曰志中需要记录“事务开始”和“事务提交”时间,还需要记录数据项被事务修改后的新值,无需记录数据项被事务修改前的原始值。当系统发生故障时,如果某个事务已经开始,但没有提交,则该事务对数据项的修改尚未体现在数据库中,因此无需做任何恢复动作。

若系统中的某子模块需要为其他模块提供访问不同数据库系统的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询。针对上述需求,可以采用(49)设计模式抽象出相同的数据库访问过程,该设计模式(50)。
(49)A.外观                B.装饰                C.桥接                D.享元
(50)A.可以动态、透明地给单个对象添加职责
        B.为子系统定义了一个高层接口,这个接口使得这一子系统更加容易使用
        C.通过运用共享技术,有效支持大量细粒度的对象
D.将抽象部分与它的实现部分分离,使它们都可以独立地变化

【答案】A B 【解析】
外观(fa9ade)模式是对象的结构模式,要求外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

某软件公司欲设计一款图像处理软件,帮助用户对拍摄的照片进行后期处理。在软件需求分析阶段,公司的系统分析师识别出了如下3个关键需求:
图像处理软件需要记录用户在处理照片时所有动作,并能够支持用户动作的撤销与重做等行为。
图像处理软件需要根据当前正在处理的照片的不同特征选择合适的处理操作,处理操作与照片特征之间具有较为复杂的逻辑关系。
图像处理软件需要封装各种图像处理算法,用户能够根据需要灵活选择合适的处理算法;软件还要支持高级用户根据一定的规则添加自定义处理算法。
在系统设计阶段,公司的架构师决定采用设计模式满足上述关键需求中对系统灵活性与扩展性的要求。具体来说,为了支持灵活的撤销与重做等行为,采用(51)最为合适;为了封装图像操作与照片特征之间的复杂逻辑关系,采用(52)最为合适;为了实现图像处理算法的灵活选择与替换,采用(53)最为合适。
(51)A.工厂模式          B.责任链模式     C.中介者模式 D.命令模式
(52)A.状态模式          B.适配器模式     C.组合模式      D.单例模式
(53)A.模板方法模式        B.访问者模式     C.策略模式      D.观察者模式

【答案】D A C 【解析】本题主要考查设计模式知识。
题干描述了某软件公司一款图像处理软件的需求分析与设计过程,并明确指出采用设计模式实现关键需求对系统灵活性与扩展性的要求。针对需求1,为了支持灵活的撤销与重做等行为,采用命令模式最为合适,因为命令模式可以将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,还可以对请求排队,或记录请求日志,以及支持可撤销的操作。针对需求2,为了封装图像操
作与照片特征之间的复杂逻辑关系,采用状态模式最为合适,因为状态模式将每一个条件分支放入一个独立的类中,这样就可以根据对象自身的情况将对象的状态作为一个对象,这一对象可以不依赖于其他对象而独立变化;针对需求3,为了实现图像处理算法
的灵活选择与替换,采用策略模式最为合适,因为策略模式定义一系列的算法,把它们封装起来,并且使它们可相互替换,使得算法可独立于使用它的客户而变化。

特定领域软件架构(Domain Specific Software Architecture, DSSA)是在一个特定应用领域中,为一组应用提供组织结构参考的标准软件体系结构。DSSA的基本活动包括领域分析、领域设计和领域实现。其中领域分析的主要目的是获得(54),从而描述领域中系统之间共同的需求,即领域需求;领域设计的主要目标是获得(55),从而描述领域模型中表示需求的解决方案;领域实现的主要目标是开发和组织可重用信息,并对基础软件架构进行实现。
(54)A.领域边界          B.领域信息          C.领域对象          D.领域模型
(55)A.特定领域软件需求                      B.特定领域软件架构
        C.特定领域软件设计模型                    D.特定领域软件重用模型

【答案】D B 【解析】 特定领域软件架构(Domain Specific Software
Architecture,DSSA)以一个特定问题领域为对象,形成由领域参考模型、参考需求、参考架构等组成的开发基础架构,其目标是支持一个特定领域中多个应用的生成。DSSA的基本活动包括领域分析、领域设计和领域实现。其中领域分析的主要目的是获得领域模型,领域模型描述领域中系统之间共同的需求,即领域需求;领域设计的主要目标是获得DSSA,DSSA描述领域模型中表示需求的解决方案;领域实现的主要目标是依据领域模型和DSSA开发和组织可重用信息,并对基础软件架构进行实现。

某公司欲开发一个在线交易系统,在架构设计阶段,公司的架构师识别出3个核心质量属性场景。其中“在并发用户数量为1000人时,用户的交易请求需要在0.5秒内得 到响应”主要与(56)质量属性相关,通常可采用(57)架构策略实现该属性:“当系统由于软件故障意外崩溃后,需要在0.5小时内恢复正常运行”主要与(58)质量属性相关,通常可采用(59)架构策略实现该属性;“系统应该能够抵挡恶意用户的入侵行为,并进行报警和记录”主要与(60)质量属性相关,通常可采用(61)架构策略实现该属性。
(56)A.性能                B.吞吐量           C.可靠性       D.可修改性
(57)A.操作串行化     B.资源调度          C.心跳            D.内置监控器
(58)A.可测试性          B.易用性           C.可用性       D.互操作性
(59)A.主动冗余          B.信息隐藏          C.抽象接口      D.记录/回放
(60)A.可用性           B.安全性           C.可测试性      D.可修改性
(61)A.内置监控器     B.记录/回放         C.追踪审计      D.维护现有接口

【答案】A B C A B C 【解析】本题主要考查考生对质量属性的理解和质量属性实现策略的掌握。
对于题干描述:“在并发用户数量为1000人时,用户的交易请求需要在0.5秒内得到响应”,主要与性能这一质量属性相关,实现该属性的常见架构策略包括:增加计算资源、减少计算开销、
引入并发机制、采用资源调度等。“当系统由于软件故障意外崩溃后,需要在0.5小时内恢复正常运行”主要与可用性质量属性相关,通常可采用心跳、Ping/Echo、主动冗余、被动冗余、选举等架构策略实现该属性;“系统应该能够抵挡恶意用户的入侵行为,并进行报警和记录”主要与安全性质量属性相关,通常可采用入侵检测、用户认证、用户授权、追踪审计等架构策略实现该属性。

基于场景的架构分析方法(Scenarios-based Architecture Analysis MethodSAAM)是卡耐基梅隆大学软件工程研究所的Kazman等人于1983年提出的一种非功能质量属性的架构分析方法,是最早形成文档并得到广泛应用的软件架构分析方法。SAAM的主要输入是问题描述、(62)和架构描述文档,其分析过程主要包括场景开发、(63)、单个场景评估、场景交互和总体评估。
(62)A.问题说明          B.问题建模          C.需求说明          D.需求建模
(63)A.架构需求          B.架构描述          C.架构设计          D.架构实现

【答案】C B 【解析】本题主要考查考生对基于场景的架构分析方法(Scenarios-based Architecture
AnalysisMethod, SAAM)的掌握和理解。
SAAM是卡耐基梅隆大学软件工程研究所的Kazman等人于1983年提出的一种非功能质量属性的架构分析方法,是最早形成文档并得到广泛应用的软件架构分析方法。SAAM的主要输入是问题描述、需求说明和架构描述,其分析过程主要包括场景开发、架构描述、单个场景评估、场景交互和总体评估。

下图所示PKI系统结构中,负责生成和签署数字证书的是(64),负责验证用户身份的是(65)。

(64)A.证书机构CA        B.注册机构RA        C.证书发布系统        D.PKI策略
(65)A.证书机构CA        B.注册机构RA        C.证书发布系统        D.PKI策略

2012年系统架构师考试题详解_第3张图片

【答案】A B 【解析】本题考查网络安全方面关于PKI的基础知识。
在PKI系统体系中,证书机构CA负责生成和签署数字证书,注册机构RA负责验证申请数字证书用户的身份。

中国M公司与美国L,公司分别在各自生产的平板电脑产品上使用iPad商标,且分 别享有各自国家批准的商标专用权。中国Y手电筒经销商,在其经销的手电筒高端产品上也使用iPad商标,并取得了注册商标。以下说法正确的是(66)。
(66)A.L公司未经M公司许可在中国市场销售其产品不属于侵权行为
B.L公司在中国市场销售其产品需要取得M公司和Y经销商的许可
C.L公司在中国市场销售其产品需要向M公司支付注册商标许可使用费
D.Y经销商在其经销的手电筒高端产品上使用iPad商标属于侵权行为

【答案】C 【解析】本题考查知识产权知识,涉及商标权的相关概念。 知识产权具有地域性的特征,按
照一国法律获得承认和保护的知识产权,只能在该国发生法律效力,即知识产权受地域限制,只有在一定地域内知识产权才具有独占性(专用性)。或者说,各国依照其本国法律授予的知识产权,只能在其本国领域内受其国家的法律保护,而其他国家对这种权利没有保护的义务,任何人均可在自己的国家内自由使用外国人的知识产品,既无须取得权利人的许可,也不必向权利人支付报酬。
通过缔结有关知识产权的国际公约的形式,某一国家的国民(自然人或法人)的知识产权在其他国家也能取得权益。参加知识产权国际公约的国家,会相互给予成员国国民的知识产权保护。虽然众多知识产权国际条约等的订立,使地域性有时会变得模糊,但地域性的特征不但是知识产权最“古老”的特征,也是最基本的特征之一。目前知识产权的地域性仍然存在,如是否授予权利、如何保护权利,仍须由各成员国按照其国内法来决定。依据我国商标法52条规定,未注册商标不得与他人在同一种或类似商品上已经注册的商标相同或近似。若未经商标注册人的许可,在同一种商品或者类似商品上使用与他人注册商标相同或者近似的商标的,属于侵犯专用权的行为,应当承担相应的法律责任。
知识产权的利用(行使)有多种方式,许可使用是其之一,它是指知识产权人将自己的权利以一定的方式,在一定的地域和期限内许可他人利用,并由此获得报酬(即向被许可人收取一定数额的使用费)的法律行为。对于注册商标许可而言是指注册商标所有人通过订立许可使用合同,许可他人使用其注册商标的法律行为。
依据我国商标法规定,不同类别商品(产品)是可以使用相同或类似商标的,如在水泥产品和化肥产品都可以使用“秦岭”商标,因为水泥产品和化肥产品是不同类别的产品。但对于驰名商标来说,不能在任何商品(产品),使用与驰名商标相同或类似的标识。

M画家将自己创作的一幅美术作品原件赠与了L公司。L公司未经该画家的许可, 擅自将这幅美术作品作为商标注册,且取得商标权,并大量复制用于该公司的产品上。L公司的行为侵犯了M画家的(67)。
(67)A.著作权           B.发表权           C.商标权           D.展览权

【答案】A 【解析】本题考查知识产权基础知识,涉及侵权的相关概念。
绘画、书法、雕塑等美术作品的原件可以买卖、赠与。但是,获得一件美术作品并不意味着获得该作品的著作权。我国著作权法第18条规定:“美术等作品原件所有权的转移。不视为作品著作权的转移,但美术作品原件的展览权由原件所有人享有”。这就是说,艺术类作品物转移的事实并不引起美术作品著作权的转移,受让人只是取得物的所有权和作品原件的展览权,作品的著作权仍然由作者等著作权人享有。除了艺术类作品之外,对任何原件所有权可能转移的作品,如书籍、软件等都要注意区分作品物质载体的财产权和作品的著作权这两种不同的权利。
发表权是指作者决定作品是否公之于众和以何种方式公之于众的权利。发表权作为著作权人的一种权利,其包含两种含义:一是权利人有权决定是否发表,或许可他人发表;二是权利人有权以某种方式发表,如出版、发行、展览、销售等,以及确定在什么时间、地点发表。在一些情况下,作者虽未将作品公之于众,但可推定作者同意发表其作品。例如,作者许可他人使用其未发表的作品意味着作者同意发表其作品,
认为作者已经行使发表权。又如,作者将其未发表的作品原件所有权转让给他人,意味着发表权与著作财产权的一起行使,即作者的发表权也已行使完毕,已随着财产权转移。再如,展览尚未发表的作品即为作品的发表,展览行为必然附带着发表,所以推定已经行使了发表权。发表权是一次性权利,即发表权行使一次后,不再享有发表权。例如,第一次出版、第一次表演、上网公布等都属于行使发表权。以后再次使用作品与发表权无关,而是行使作品的使用权。发表权须借助一定的作品使用方式行使,即作品的公之于众要以某种确定的方式实现。也就是说,发表权难以孤立地行使,要以某种确定的方式实现,如书籍的出版、剧本的上演、绘画的展出等,既是作品的发表,同时也是作品的使用。
在我国商标权的取得实行的是注册原则,即商标所有人只有依法将自己的商标注册后,商标注册人才能取得商标权,其商标才能得到法律的保护。M画家并未将其美术作品实施商标注册,不享有其美术作品的商标权,因此L公司的行为未侵犯M画家的商标权,而是侵犯了M画家的在先权利。在先权利包括著作权、外观设计专利权、商号权、
地理标志权、姓名权等。
展览权是将作品原件或复制件公开陈列的权利。公开陈列的作品既可以是已经发表的作品,也可以是尚未发表的作品。画展、书法展、摄影展等都是公开陈列。

以下我国的标准代号中,(68)表示行业标准。
(68)A.GB                B.SJ                C.DB11              D.Q

【答案】B 【解析】本题考查标准与标准化基本知识。 我国标准分为国家标准、行业标准、地方标准和企业标准四类。
国家标准是由国务院标准化行政主管部门制定的标准。国家标准的编号由标准代号、标准发布顺序号和标准发布年代号构成。国家标准的代号由大写汉字拼音字母构成,强制性国家标准代号为GB,推荐性国家标准的代号为GB/To例如,“GB
8567-1988 软件产品开发文件编制指南”为强制性国家标准。
行业标准代号由国务院各有关行政主管部门提出其所管理的行业标准范围的申请报告,国务院标准化行政主管部门审查确定并正式公布该行业标准代号。已正式公布的行业代号:QJ
(航天)、SJ (电子)、JB (机械)、JR (金融)、HB
(航空)等等。行业标准代号由汉字拼音大写字母组成,再加上斜线T组成推荐性行业标准。行业标准的编号由行业标准代号、标准发布顺序及标准发布年代号组成。例如,“HB
6698-1993软件工具评价与选择的分类特性体系”为强制性行业标准编号。GJB为中华人民共和国国家军用标准代号。
地方标准是由省、自治区、直辖市标准化行政主管部门制定并报国务院标准化行政主管部门和国务院有关行业行政主管部门备案的标准。地方标准代号由大写汉字拼音DB加上省、自治区、直辖市行政区划代码的前两位数子(北京市11、天津市12),再加上斜线T组成推荐性地方标准(DBXX
/ T),不加斜线T为强制性地方标准(DBXX)。地方标准的编号由地方标准代号、发布顺序号、发布年三部分组成,即DBXX XXX—XXXXo
企业标准是由企业自行组织制定、作为组织生产依据的相应标准。企业标准一经制定颁布,即对整个企业具有约束性,是企业法规性文件,没有强制性企业标准和推荐企业标准之分。企业代号可用大写拼音字母或阿拉数字或两者兼用所组成(Q/XXX),按中央所属企业和地方企业分别由国务院有关行政主管部门或省、自治区、直辖市政府标准化行政主管部门会同同级有关行政主管部门加以规定。企业标准的编号由企业标准代号,发布顺序号和发布年代号组成,S/Q/XXX
XXXX—XXXX。

研究表明,肿瘤的生长有以下规律:当肿瘤细胞数目超过1011时才是临床可观察的;在肿瘤生长初期,几乎每隔一定时间就会观测到肿瘤细胞数量翻一番;在肿瘤生长后期,肿瘤细胞的数目趋向某个稳定值。为此,图(69)反映了肿瘤的生长趋势。
    (69)A.
B.
        C.
        D.

2012年系统架构师考试题详解_第4张图片
2012年系统架构师考试题详解_第5张图片
2012年系统架构师考试题详解_第6张图片
2012年系统架构师考试题详解_第7张图片

【答案】D 【解析】本题考查应用数学基础知识。
用函数曲线来表示事物随时间变化的规律十分常见。我们可以用函数f(t)表示肿瘤细胞数量随时间变化的函数。那么,当肿瘤细胞数目超过1011时才是临床可观察的,可以表示为f(0)=10u。在肿瘤生长初期,几乎每隔一定时间就会观测到肿瘤细胞数量翻一番,可以表示为t

九个项目All, A12, A13, A21, A22, A23, A31, A32, A33的成本从1百万,2百万,……,9百万各不相同,但并不顺序对应。已知All与A21、A12与A22的成本都有一倍关系,All与A12、A21与A31、A22与A23、A23与A33的成本都相差1百万。由此可以推断,项目A22的成本是(70)百万。
(70)A.2                 B.4                     C.6                     D.8

【答案】C 【解析】本题考查应用数学基础知识。 为便于直观分析,题中的叙述可以用下图来表示:
2012年系统架构师考试题详解_第8张图片
九个项目Ay (i=l,2, 3; j=l,2,
3)的成本值(单位为百万,从1到9各不相同)将分别填入i行j列对应的格中。格间的黑点表示相邻格有一倍关系,白点表示相邻格相差1。
已知A22与A12的值有一倍关系,那就只可能是1-2, 2-4, 3-6或4-8,因此A22的值只可能是1,2, 3,4,6,8。
如果A22=l,则A23=A12=2,出现相同值,不符合题意。
如果A22=2,则A12只能是4(A12=1将导致A11=A22=2矛盾),A23只能为3(A23=1
将导致A33=A22=2矛盾),A33出现矛盾。 如果A22=3,则A12=6, All=5或7,不可能与A21有一倍关系。
如果A22=4,则A12=2或8。A12=8将导致All=7或9,不可能与A21有成倍关系。因此A12=2, A23只能是5
(A23=3将导致A33矛盾),A33=6,而All=l或3都将导致A21矛盾。 如果A22=8,则A12=4, A23只能是7
(A23=9将导致A33=8矛盾),A33只能是6, All只能是3 (All=5将导致A21矛盾),A21=6矛盾。
因此,A22只可能为6。 实际上,当A22=6时,A12=3, A23只能为7
(A23=5将最终导致矛盾),A33=8。此时,All、A21、A31可能分别是2、4、5,也可能是4、2、1。

An application architecture specifies the technologies to be used to implement one or more information systems. It serves as an outline for detailed design, construction, and implementation. Given the models and details, include (71) , we can distribute data and processes to create a general design of application architecture. The design will normally be constrained by architecture standards, project objectives, and (72) • The first physical DFD,to be drawn is the (73) . The next step is to distribute data stores to different processors. Data (74) are two types of distributed data which most RDBMSs support. There are many distribution options used in data distribution. In the case of (75),we should record each table as a data store on the physical DFD and connect each to the appropriate server.
(71)A.logical DFDs and ERD
        B.ideal object model and analysis class model
        C.use case models and interface prototypes
        D.physical DFDs and database schema
    (72)A.the database management system        
B.the feasibility of techniques
        C.the network topology and technology   
D.the user interface and process methods
(73)A.context DFD B.                    B.system DFD
        C.network architecture DFD          D.event-response DFD
(74)A.vertical partitioning and horizontal replication
        B.vertical replication and horizontal partitioning
        C.integration and distribution
        D.partitioning and replication
(75)A.storing all data on a single server
        B.storing specific tables on different servers
        C.storing subsets of specific tables on different servers
        D.duplicating specific tables or subsets on different servers

【答案】A B C D B 【解析】
应用架构说明了实现一个或多个信息系统所使用的技术,它作为详细设计、构造和实现的一个大纲。给定了包括逻辑数据流图和实体联系图在内的模型和详细资料,我们可以分配数据和过程以创建应用架构的一个概要设计。概要设计通常会受到架构标准、项目目标和所使用技术的可行性的制约。需要绘制的第一个物理数据流图是网络架构数据流图。接下来是分配数据存储到不同的处理器。数据分区和复制是大多数关系型数据库支持的两种分布式数据形式。有许多分配方法用于数据分布。在不同服务器上存储特定表的情况下,我们应该将每个表记为物理数据流图中的一个数据存储,并将其连接到相应的服务器。

考试科目二:案例分析

试题一
【说明】
某软件公司为其新推出的字处理软件设计了一种脚本语言,专门用于开发该字处理软件的附加功能插件。为了提高该语言的编程效率,公司组织软件工具开发部门为脚本语言研制一套集成开发环境。软件工具开发部门根据字处理软件的特点,对集成开发环境进行了需求分析,总结出以下3项核心需求:
(1) 集成开发环境需要提供对脚本语言的编辑、语法检查、解释、执行和调试等功能的支持,并要实现各种功能的灵活组合、配置与替换。
(2) 集成开发环境需要提供一组可视化的编程界面,用户通过对界面元素拖曳和代码填充的方式就可以完成功能插件核心业务流程的编写与组织。
(3) 在代码调试功能方面,集成开发环境需要实现在脚本语言编辑界面中的代码自动定位功能。具体来说,在调试过程中,编辑界面需要响应调试断点命中事件,并自动跳转到当前断点处所对应的代码。
针对上述需求,软件工具开发部门对集成开发环境的架构进行分析与设计,王工认为该集成开发环境应该采用管道-过滤器的架构风格实现,李工则认为该集成开发环境应该采用以数据存储为中心的架构风格来实现。公司组织专家对王工和李工的方案进行了评审,最终采用了李工的方案。

【问题1】
请用200字以内的文字解释什么是软件架构风格,并从集成开发环境与用户的交互方式、集成开发环境的扩展性、集成开发环境的数据管理三个方面说明为什么最终采用了李工的设计方案。
软件架构风格是指描述特定软件系统组织方式的惯用模式。组织方式描述了系统的组成构件和这些构件的组织方式,惯用模式则反映众多系统共有的结构和语义。
从集成开发环境与用户的交互方式看,用户通常采用交互式的方式对脚本语言进行编辑、解释执行与调试。在这种情况下,采用以数据存储为中心的架构风格能够很好地支持交互式数据处理,而管道-过滤器架构风格则对用户的交互式数据处理支持有限。
从集成开发环境的扩展性来看,系统核心需求要求实现各种编辑、语法检查、解释执行等多种功能的灵活组织、配置与替换。在这种情况下,采用以数据存储为中心的架构风格,以数据格式解耦各种功能之间的依赖关系,并可以灵活定义功能之间的逻辑顺序。管道-过滤器架构风格同样以数据格式解耦数据处理过程之间的依赖关系,但其在数据处理逻辑关系的灵活定义方面较差。
从集成开发环境的数据管理来看,集成开发环境需要支持脚本语言、语法树(用于检查语法错误)、可视化模型、调试信息等多种数据类型,并需要支持数据格式的转换。
以数据存储为中心的架构将数据存储在统一的中心存储器中,中心存储器能够表示多种数据格式,并能够为数据格式转换提供各种支持。管道-过滤器架构风格通常只能支持有限度的数据格式,并且在数据格式转换方面的灵活性较差。

【问题2】
在对软件系统架构进行设计时,要对架构需求进行分析,针对特定需求选择最为合适的架构风格,因此实际的软件系统通常会混合多种软件架构风格。请对核心需求进行分析,说明为了满足需求(2)和(3),分别应采用何种架构风格,并概要说明采用相应架构风格后的架构设计过程。
为了满足需求(2),应该采用解释器架构风格。具体来说,需要:①为可视化编程元素及其拖拽关系定义某种语言,并描述其语法与语义;②编写解释器对该语言进行
解释;③生成对应的脚本语言程序。
为了满足需求(3),应该采用隐式调用架构风格。具体来说,首先需要定义“断点在调试过程中命中”这一事件,并实现当断点命中后的屏幕定位函数。集成开发环境维
护一个事件注册表结构,将该事件与屏幕定位函数关联起来形成注册表中的一个记录项。
在调试过程中,集成开发环境负责监听各种事件,当“断点在调试过程中命中”这一事件发生时,集成开发环境查找事件注册表,找到并调用屏幕定位函数,从而实现脚本语言编辑界面与调试代码的自动定位。

试题二
【说明】
某软件公司拟开发一套电信领域的分布式系统,该系统后台多个功能模块同时运行时的计算负载较大,且需要控制不同的特定电信硬件设备,由于硬件体积和I/O端口冲突等原因,这些设备需要分散安装在多个不同计算机系统中。该系统上线运行后将为企业最终用户提供7X24小时的不间断服务,而用户的单次接入服务往往需要后台多个模块共同协作完成。基于上述原因,该系统后台软件模块需分布在局域网内的多台计算机上。
项目组决定基于ISO的开放分布进程(0DP)规范来进行系统架构的设计与开发,近期项目组召开了多次会议,对架构设计阶段的关键问题进行了讨论分析。

【问题1】
ODP从5个标准的视点组织分析系统的架构,这些视点描述了同一系统的不同重要方面,请根据图2-1中不同视点所关注的核心内容,将备选的架构视点填入图中的(1)~
(5)。
2012年系统架构师考试题详解_第9张图片
备选答案:技术选择架构、企业业务架构、分布式工程架构、计算接口架构、逻辑信息架构 (1)企业业务架构 (2) 逻辑信息架构 (3)
计算接口架构 (4) 分布式工程架构 (5) 技术选择架构 【问题2】
在技术选择架构规划时,王工认为系统应基于现有分布式基础设施(分布式中间件)
来构建,因为这样可以充分利用现有基础设施提供的各种支撑,在更短时间内构造出质量更高的分布式系统;而李工则认为可基于基本的进程间通信机制自主开发系统的支撑平台,这样可以避免对特定中间件的依赖,项目组经过认真讨论,最终采用了王工的方案。请用400字以内文字,从构件管理支持、互操作支持以及公共服务支持三个方面说明现有分布式基础设施为构建分布式系统所提供的基本支撑。
(1)
构件管理支持:现有分布式基础设施一般通过构件容器为构件提供基本的运行环境;具体功能一般包括管理构件的实例及其生命周期、管理构件的元信息等。
(2)
互操作支持:现有分布式基础设施均提供了高层通信协议以屏蔽节点的物理特性以及各节点在处理器、操作系统、程序设计语言等方面的异构性;基于互操作支持,
开发人员在开发与调用分布式对象时,均不需自己编写处理底层通信的代码。 (3)
公共服务支持:现有分布式基础设施通常将针对分布式软件的通用支持集成于一身,以公共服务的形式提供给应用程序;其提供的常见公共服务包括命名服务、事务
服务、安全服务、持久性服务等。 【问题3】
由于系统后台模块的分布式特性,后台分布式对象之间的互操作机制是需要考虑的核心问题之一。图2-2所示是当前分布式基础设施中支持分布式对象互操作的基本机制,
请将相应部件名称填入图中(1) ~ (2);基于图2-2给出的结构,用300字以内文字说明完成一次分布式对象调用的详细步骤。
2012年系统架构师考试题详解_第10张图片
(1) 存根/粧 (2) 框架或 (1) 代理 (2) 存根 一次远程调用的过程如下:
①客户程序将调用请求发送给客户端粧,对于客户程序来说,桩就是服务程序在客户端的代理。 ②客户端粧负责将远程调用请求进行编组并发送给通信总线。
③调用请求经通信总线传送到服务端框架。 ④服务端框架将调用请求解组并分派给真正的远程对象实现(服务程序)。
⑤服务程序完成客户端的调用请求,将结果返冋给服务端框架。 ⑥服务端框架将调用结果编组并发送给通信总线。 ⑦调用结果经通信总线传送到客户端桩。
⑧客户端粧将调用结果解组并返回给客户程序,客户程序得到调用结果。

试题三
【说明】
在嵌入式系统中,软件采用开放式架构已成为新的发展趋势。软件架构设计的优劣将直接影响软件的重用和移植能力。
某软件公司主要从事宇航领域的嵌入式软件研发工作。经二十多年的发展,其软件产品已被广泛应用于各种航天飞行器中。该公司积累了众多成熟软件,但由于当初没有充分考虑软件的架构,原有软件无法被再利用,为适应嵌入式软件技术发展需要,该公司决策层决定成立宇航嵌入式软件开放式架构研究小组,为公司完成开放式架构的定义与设计,确保公司软件资源能得到充分利用。
研究小组查阅了大量的国外资料和标准,最终将研究重点集中在了 SAEAS4893《通用开放式架构(GOA)框架》标准,图3-1给出了 GOA定义的架构图。

2012年系统架构师考试题详解_第11张图片

【问题1】 请用300字以内的文字简要说明开放式架构的四个基本特点。 开放架构应具有以下4个基本特点:
①可移植性。各种计算机应用系统可在具有开放架构特性的各种计算机系统间进行移植,不论这些计算机是否同种型号、同种机型。
②可互操作性。如计算机网络中的各结点机都具有开放架构的特性,则该网上各结点机间可相互操作和资源共享。
③可剪裁性。如某个计算机系统是具有开放架构特性的,则在该系统的低档机上运行的应用系统应能在高档机上运行,原在高档机上运行的应用系统经剪裁后也可在低档机上运行。
④易获得性。在具有开放架构特性的机器上所运行的软件环境易于从多方获得,不受某个来源所控制。 【问题2】
如图3-1所示,GOA框架规定了软件、硬件和接口的结构,以在不同应用领域中实现系统功能。GOA框架规定了一组接口,其重要特点是建立了关键组件及组件间接口关系,这些接口的确定可用于支持软件的可移植性和可升级性,以满足功能的增加和技术的更新要求。除操作系统服务与扩展操作系统之间的接口(3X)外,GOA将其他接口分为两类:即直接接口
(iD (i=l, 2, 3, •••))和逻辑接口(iL (i=l, 2, 3,•••)),
直接接口定义了信息传输方式;逻辑接口定义了对等数据交换的要求,逻辑接口没有定义真正的信息传输方式,其传输发生在一个或多个直接接口。根据图3-1所标注的接口在框架中的具体位置,请填写表3-1的(1)〜(8)处空白。
2012年系统架构师考试题详解_第12张图片
2012年系统架构师考试题详解_第13张图片

试题四
【说明】
某软件企业为影音产品销售公司W开发一套在线销售系统,以提升服务的质量和效率。项目组经过讨论后决定釆用面向对象方法开发该系统。在设计建模阶段需要满足以下设计要求:
(1) W公司经常进行促销活动。根据不同的条件(如订单总额、商品数量、产品种类等),公司可以提供百分比折扣或现金减免等多种促销方式供提交订单的用户选择。实现每种促销活动的代码量很大,且会随促销策略不同经常修改。系统设计中需要考虑现有的促销和新的促销,而不用经常地重写控制器类代码。
(2) 该在线销售系统需要计算每个订单的税率,不同商品的税率及计算方式会有所区别。所以W公司决定在系统中直接调用不同商品供应商提供的税率计算类,但每个供应商的类提供了不同的调用方法。系统设计中需要考虑如果公司更换了供应商,应该尽可能少地在系统中修改或创建新类。
项目组架构师决定采用设计模式来满足上述设计要求,并确定从当前已经熟练掌握的设计模式中进行选择,这些设计模式包括:适配器模式(Adapter)、构造器模式(Builder)、命令模式(Command)、外观模式(Facade)、中介模式(Mediator)、原型模 式(Prototype)、代理模式(Proxy)、状态模式(State)和策略模式(Strategy)等。

【问题1】 设计模式按照其应用模式可以分为三类:创建型、结构型和行为型,请用200字以内文字说明三者的作用。
创建型模式主要用于创建对象,为设计类实例化新对象提供指南。 结构型模式主要用于处理类或对象的组合,对类如何设计以形成更大的结构提供指南。
行为型模式主要用于描述类或对象的交互以及职责的分配,对类之间交互以及分配责任的方式提供指南。 【问题2】
请将项目组已经掌握的设计模式按照其作用分别归类到创建型、结构型和行为型模式中。 创建型模式:构造器模式、原型模式。
结构型模式:适配器模式、外观模式、代理模式。 行为型模式:命令模式、中介模式、状态模式和策略模式。 【问题3】
针对题目中所提出的设计要求(1)和(2),项目组应该分别选择何种设计模式? 请分别用200字以内文字说明具体的解决方案。 (1) 策略模式
解决方案:在具有公共接口的独立类中定义每个计算。可以利用该模式创建各种促销类,它们从同一个超类继承。每个类都有相同名称的标准接口方法,用于根据订单编号计算将要折扣的金额总数。计算每个促销的内部代码对促销类来说完全不同(3分)。
(2) 适配器模式
解决方案:增加一个类作为适配器,转换类的接口到客户端类期望的另一个接口。实现一个适配器类,这个类为系统的其他部分提供了一个不变的方法供调用,为了集成不同商品供应商提供的税率计算类,编写一个适配器类的子类,包含调用购买类所需的代码。该子类将系统的调用映射到某个供应商的税率计算类。如果要更换供应商,那么只需要写一个新的适配器子类,其他保持不变。

试题五
【说明】
某软件公司欲开发一个基于Web 2.0的大型社交网络系统。就该系统的数据架构而言,李工决定采用公司熟悉的数据架构,使用通用的商用关系型数据库,系统内部数据 采用中央集中方式存储。
该系统投入使用后,初期用户数量少,系统运行平稳。6个月后,用户数出现了爆炸式增长,系统暴露出诸多问题,集中表现在:
(1) 用户执行读写操作时,响应时间均变得很慢;
(2) 随着系统功能的扩充,原有数据格式发生变化,又出现新的数据格式,维护困难;
(3) 数据容量很快超过系统原有的设计上限,数据库扩容困难;
(4) 软件系统不断出现宕机,整个系统可用性较差。
经过多次会议讨论,公司的王工建议采用NoSQL数据库来替代关系数据库,以解决上述问题。但李工指出NoSQL数据库出现时间不长,在使用上可能存在风险。公司技术人员对NoSQL数据库产品进行了认真测试,最终决定采用NoSQL数据库来替代现有的数据库系统。

【问题1】 分别解释产生问题(1)〜(4)的原因。 其原因主要是: (1)
用户响应时间慢。大型社交网络系统要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库应付上万次SQL查询还勉强可以,
但是应付上万次SQL写数据请求,硬盘I/O就已经无法承受了。特别是涉及到多表连接 操作,会导致响应变慢。 (2)
数据格式变化。大型社交网络系统随着用户的使用,会不断地增加新的功能,
导致原有数据格式发生变化,甚至出现新的数据格式。但关系数据库中采用元组方式组织数据,难以使用新型数据格式,难以维护。 (3)
数据容量超过设计上限。对于大型社交网络系统,往往会在很短时间内产生海量数据。关系数据库多采用中央数据存储,使得数据容量受限于前期设计的上限,很难实现数据容量的横向扩展。
(4) 系统可用性差:关系数据库采用中央数据存储,容易成为系统的性能瓶颈,单点故障很容易导致系统崩溃,负载过高往往导致系统出现宕机现象。
【问题2】 请针对问题(1)〜(4),分别指出NoSQL数据库的哪些特点促使公司最终采用了 NoSQL数据库。
针对问题(1),NoSQL数据库支持高并发数据访问,性能较高。
针对问题(2),NoSQL数据库的数据存储结构松散,能够灵活支持多种类型的数据格式。
针对问题(3),NoSQL数据库能够支持海量数据的存储,且易于横向扩展。
针对问题(4),NoSQL数据库基于分布式数据存储,不存在单点故障和性能瓶颈,系统可用性高。 【问题3】
请指出该系统采用NoSQL数据库时可能存在的问题。 该系统采用NoSQL数据库时可能存在的问题有: (1)
NoSQL数据库的现有产品不够成熟,大多数产品处于初创期。 (2) NoSQL数据库并未形成一定的标准,产品种类繁多,缺乏官方支持。 (3)
NoSQL数据库不提供对SQL的支持,学习和应用迁移成本较高。 (4) NoSQL数据库支持的特性不够丰富,现有产品提供的功能比较有限。

考试科目三:论文

试题一 论基于架构的软件设计方法及应用
基于架构的软件设计(Architecture-Based Software Design, ABSD)方法以构成软件架构的商业、质量和功能需求等要素来驱动整个软件开发过程。ABSD是一个自顶向下, 递归细化的软件开发方法,它以软件系统功能的分解为基础,通过选择架构风格实现质量和商业需求,并强调在架构设计过程中使用软件架构模板。采用ABSD方法,设计活动可以从项目总体功能框架明确后就开始,因此该方法特别适用于开发一些不能预先决定所有需求的软件系统,如软件产品线系统或长生命周期系统等,也可为需求不能在短时间内明确的软件项目提供指导。

请围绕“基于架构的软件开发方法及应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与开发的、采用ABSD方法的软件项目以及你在其中所承担的主要工作。 .
2.结合项目实际,详细说明采用ABSD方法进行软件开发时,需要经历哪些开发阶段?每个阶段包括哪些主要活动?
3.阐述你在软件开发的过程中都遇到了哪些实际问题及解决方法。

一、论文中要具体介绍项目的背景与总体需求、系统所采用的技术路线以及你所承担的实际工作。
二、采用ABSD方法进行软件开发时,需要经历架构需求、架构设计、架构文档化、架构复审、架构实现和架构演化六个阶段。
1. 架构需求阶段需要明确用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。其主要活动包括需求获取、标识构件和架构评审。 (1) 需求获取活动需要定义开发人员必须实现的软件功能,使得用户能够完成他们的任务,从而满足功能需求。与此同时,还要获得软件质量属性,满足一些非功能性需求。
(2) 标识构件活动首先需要获得系统的基本结构,然后对基本结构进行分组,最后将基本结构进行打包成构件。 (3)
架构需求评审活动组织一个由系统涉众(用户、系统分析师、架构师、设计实现人员等)组成的小组,对架构需求及相关构件进行审查。审查的主要内容包括所获取的需求是否真实反映了用户需求,构件合并是否合理等。
2. 架构设计阶段是一个迭代过程,利用架构需求生成并调整架构决策。主要活动包括提出架构模型、将已标识的构件映射到架构中、分析构件之间的相互作用、产生系统架构和架构设计评审。
3. 架构文档化的主要活动是对架构设计进行分析与整理,生成架构规格说明书和测试架构需求的质量设计说明书。
4. 在一个主版本的软件架构分析之后,需要安排一次由外部人员(客户代表和领域专家)参加的架构复审。架构复审需要评价架构是否能够满足需求,质量属性需求是否在架构中得以体现、层次是否清晰、构件划分是否合理等。从而标识潜在的风险,及早发现架构设计中的缺陷和错误。
5. 架构实现主要是对架构进行实现的过程,主要活动包括架构分析与设计、构件实现、构件组装和系统测试。
6. 架构演化阶段主要解决用户在系统开发过程中发生的需求变更问题。主要活动包括架构演化计划、构件变动、更新构件的相互作用、构件的组装与测试和技术评审。
三、在软件开发的过程中可能遇到的问题包括:在架构需求获取过程中如何对捕获的架构需求进行筛选和优先级排序;在架构复审过程中如何解决评审人员的意见不一致问题;在架构实现过程中如何根据项目组实际情况选择开发语言与开发平台;在架构演化过程中如何筛选并处理用户的需求变更,等等。

试题二 论企业应用系统的数据持久层架构设计
数据持久层(Data Persistence Layer)通常位于企业应用系统的业务逻辑层和数据源层之间,为整个项目提供一个高层、统一、安全、并发的数据持久机制,完成对各种数据进行持久化的编程工作,并为系统业务逻辑层提供服务。它能够使程序员避免手工编写访问数据源的方法,使其专注于业务逻辑的开发,并且能够在不同项目中重用本框架, 这大大简化了数据的增加、删除、修改、查询功能的开发过程,同时又不丧失多层结构的天然优势,继承延续应用系统架构的可伸缩性和可扩展性。当运用关系型数据库作为 数据存储机制时,在业务层与数据源间加入数据持久层,能够解决对象与关系的“阻抗 不匹配”问题,将对象的状态持久化存储到关系型数据库中。

请围绕“企业应用系统的数据持久层架构设计”论题,依次从以下三方面进行论述。
1. 概要叙述你参与分析和设计的企业应用系统开发项目以及你所担任的主要
工作。
2. 分析在企业应用系统的数据持久层架构设计中有哪些数据访问模式,并详细阐述每种数据访问模式的主要内容。
3. 数据持久层架构设计的好坏决定着应用程序性能的优劣,请结合实际说明在数据持久层架构设计中需要考虑哪些问题。

简要描述所参与分析和设计的企业应用系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。
二、分析在企业应用系统的数据持久层架构设计中有哪些数据访问模式,并详细阐述每种数据访问模式的主要内容。
企业应用系统的数据持久层架构设计中主要有五种数据访问模式: (1) 在线访问(Online
Access)。OA是最基本的数据访问模式,也是在实际开发过程中最常采用的。这种数据访问模式会占用一个数据库连接,读取数据,每个数据库操
作都会通过这个连接不断地与后台的数据源进行交互。 (2) 数据访问对象(Data Access
Object)。DAO模式是标准的J2EE设计模式之一, 开发人员常常用这种模式将底层数据访问操作与高层业务逻辑分离开。一个典型的DA0
实现通常包括:一个DAO工程类;一个DAO接口; 一个实现了 DAO接口的具体类, 包含访问特殊数据源中数据的逻辑;数据传输对象。 (3)
数据传输对象(Data Transfer
Object)。DTO是经典EJB设计模式之一,它本身是一组对象或者数据的容器,需要跨越不同的进程或者网络的边界来传输数据。对象本身应该不包含具体的业务逻辑,并且通常这些对象内部职能进行一些诸如内部一致性检
查和基本验证之类的方法,而且这些方法最好不要再调用其他的对象行为。在具体实现DT0时,可以使用编程语言内置的集合对象,也可以通过创建自定义类来实现DT0对象。
(4) 离线数据模型(Off-line Data
Model)。0DM以数据为中心,数据从数据源获取之后,将按照某种预定义的结构存放在系统中,成为应用的中心。离线方式可以使得对数据的各种操作独立于各种与后台数据源之间的连接或者事务;通过与XML集成数据可以方便地与XML格式的文档之间相互转换;独立于数据源,ODM定义了数据的存储结构和规则。
(5) 对象关系映射(Object Relational
Mapping)。0RM是随着面向对象软件开发方法发展而产生的,面向对象开发方法是主流的开发方法,关系型数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,
业务实体在内存中表现为对象,在数据库中表现为关系数据。ORM
—般以中间件的形式存在,能够帮助将应用程序中的数据转换成关系型数据库中的记录;或者将关系数据库中的记录转换成应用程序中便于操作的对象。
三、数据持久层架构设计的好坏决定着应用程序性能的优劣,无论在C/S,还是在B/S结构中,持久层在处理数据的同时,对服务器锁的类型和持续时间、输入输出活动量以及处理器负荷等产生主要影响,并由此影响应用程序的总体性能。在持久层设计阶段需要考虑的问题包括:网络流量问题;返回结果集的问题;查询或锁定超时的问题;
应用程序开发工具的问题;使用游标的问题;应用层设计的问题等。

试题三 论决策支持系统的开发与应用
决策支持系统(Decision Support Systems,DSS)是以管理科学、运筹学、控制论和行为科学为基础,以计算机技术、仿真技术和信息技术为手段,以人机交互方式进行半结构化和非结构化决策的信息系统。它调用各种信息资源,并提供各种分析工具,为决策者提供分析问题、建立模型、模拟决策过程和方案的环境,帮助决策者提高决策水平和质量。决策支持系统在许多领域得到了广泛的应用,已成为许多行业经营管理中一个不可缺少的现代化支持工具。

请围绕“决策支持系统的开发与应用”论题,依次从以下三个方面进行论述。
1. 概要叙述你参与管理和开发的决策支持系统项目以及在其中所担任的主要工作。
2. 简要叙述决策支持系统包含的典型组成部件及对应的基本功能。说明在建立决策支持系统时需解决的一般关键问题。
3. 说明你所参与管理和开发的决策支持系统的应用场合以及对决策结果的要求,具体阐述在开发过程中所采用的关键技术、实施过程和实际应用的效果。

简要叙述所参与管理和开发的决策支持系统项目,并明确指出在其中承担的主要任务和开展的主要工作。 二、决策支持系统包括如下典型组件: (1)
接口部分,即输入/输出的界面,是人机交互的窗口。 (2)
模型管理子系统,具有存储、动态建模的功能。目前模型管理的实现是通过模型库系统来完成的。 (3)
知识管理子系统,集中管理决策问题领域的知识(规则和事实),包括知识的获取、表达、管理等功能。 (4)
数据管理子系统,DSS的数据库通常包括在数据仓库中。数据仓库是集成的、面向主题的数据库集合。数据仓库通常从内部和外部数据源中抽取。内部数据主要来自于组织的交易处理系统。外部数据包括行业数据、市场调查数据等。
(5) 用户,用户可看作系统的一部分。DSS的用户主要是企业各层次的管理者和商业分析人员。 在建立决策支持系统时,主要有以下几个关键问题:
1.建立数据仓库系统 数据仓库系统必须为决策支持的分析处理提供以下服务: (1) 根据主题需要,从OLTP数据库中抽取分析用的数据。为此在抽取过程中要对原始数据进行分类、求和、统计等处理,抽取的过程实际上是数据的再组织。
(2) 在抽取过程中,完成数据净化,即去掉不合格的原始数据,必要时还必须对缺损的数据加以补充。 (3)
在改变分析决策的主题时,可以按主题进行数据查询和访问。 (4) 采用多级存储模式,解决数据量巨大及按照主题、粒度划分的数据组织问题。
2. 模型、方法和知识管理系统 釆用数据仓库和多维数据库技术的数据管理子系统将数据进行整理(预处理)和净化之后,形成可靠的易于进行决策的“数据源”(即数据仓库或多维数据库),这个“数据源”的结构与形式和决策支持系统所采用的模型与知识有关。决策粗略地分为结构化
决策支持、非结构化决策支持、半结构化决策支持。一个较好的决策支持系统必须完成 这三方面的决策支持。
模型、方法和知识的管理是决策支持系统的核心,它对依据问题建立的模型库、方法库和知识库进行管理。 (1)
对模型库、方法库和知识库进行维护。模型、方法和知识管理系统必须有对三库的维护界面;可根据问题的需要对模型、方法和知识库进行增加、删除和修改,并保证三库的一致性:一是系统运行过程调用每个库时不发生矛盾,特别是对知识库的维护
更为复杂;二是每种模型、方法和知识都能调用到。 (2)
模型、方法和知识管理系统根据用户的要求和数据仓库提供的数据,能有效地选择模型、方法和知识,经系统运行得到相应的结果,并将结果送给交互环境进行输出。
智能决策支持系统一般是在模型、方法和知识管理系统的基础上增加专家系统和数据采掘与知识发现技术。 智能决策支持系统(Intelligence
Decision Support System,IDSS)的主要任务包括: (1) 分析和识别问题; (2) 描述决策问题和决策知识;
(3) 形成候选的决策方案(目标、规划、方法和途径等); (4) 构造决策问题的求解模型(如数学模型、运筹学模型、程序模型、经验模型等);
(5) 建立评价决策问题的各种准则(如价值准则、科学准则、效益准则等); (6) 多方案、多目标、多准则情况下的比较和优化; (7)
综合分析,包括决策结果或方案对实际问题可能产生的作用和影响的分析,以及各种环境因素、变量对决策方案或结果的影响程序分析等。
3. 用户交互环境 用户交互环境是决策者或决策部门与决策支持系统打交道的界面,它负责接收用户发出的各种命令,根据这些命令调用不同的子系统,并获得处理结果,最后再将这些结果输出给用户。
交互环境的好坏直接影响着用户对系统的使用。一个好的交互环境,其输入应当简单、易学、易用。其输出应当做到内容丰富、形式活泼。
三、考生需结合自身参与项目的实际状况,指出其参与管理和开发的决策支持系统的应用行业或领域,选择一个关键问题说明其设计、实现的具体过程、方法以及对实际应用效果的分析。

试题四 论企业信息化规划的实施与应用
企业信息化建设是一项长期而艰巨的任务,不可能在短时间内完成。信息化规划是企业信息化建设的纲领和向导,是信息系统设计和实施的前提和依据。信息化规划以整个企业的发展目标和战略、企业各部门的目标与功能为基础,同时结合行业信息化方面的实践和对信息技术发展趋势的掌握,制定出企业信息化远景、目标和发展战略,从而 达到全面、系统地指导企业信息化建设的目的。

请围绕“企业信息化规划的实施与应用”论题,依次从以下三个方面进行论述。
1. 概要叙述你参与的企业信息化规划项目以及你在其中所担任的主要工作。
2. 简要叙述企业信息化规划的主要内容。结合你参与的项目的实际情况,详细分析有关企业的信息化规划目标及规划的具体内容。
3. 说明你所参与实施的企业信息化规划的步骤及效果,介绍其是否达到了预期的目标并分析原因。

一、简要叙述所参与管理和开发的企业信息化规划项目,并明确指出在其中承担的主要任务和开展的主要工作。 二、企业信息化规划的内容
企业信息化规划不仅涉及到信息系统规划,同时与企业规划、业务流程建模等紧密相关,是融合企业战略、管理规划、业务流程重组等内容的“业务+管理+技术”的规划活动,如下图所示。
2012年系统架构师考试题详解_第14张图片
涉及到业务流程重组和信息资源规划、信息技术战略规划、信息系统战略规划和企业战略规划等多个领域。所有的规划都应该围绕企业关键目标的实现而展开,并为企业目标的实现提供支持和必须的服务。
进行信息化规划时,需要做好以下几个方面的工作: (1)明确发展目标和实施重点。 (2) 成立领导机构。 (3) 做好企业业务信息化需求分析。
(4) 确定企业信息化不同发展阶段的投资预算。 (5) 制定必要的促进企业信息化建设的规章制度。
三、结合实际项目,详细阐述企业信息化规划的目标和实施重点,对于企业业务信息化需求分析应进行重点论述。说明企业信息化规划的实施过程,总结实施效果并进行进一步的分析。

你可能感兴趣的:(资格考试)