【架构章节习题第01题:绿色】
01.编译器是一种非常重要的基础软件,其核心功能是对代码形态的单个或一组源程序依次进行预处理。词法分析,语法分析,语义分析,代码生成,代码优化等处理,最终生成目标机器的可执行代码。考虑以下与编译器相关的软件架构设计场景,传统的编译器设计当中,上述处理过程都以独立功能模块的形式存在,程序源代码作为一个整体,依次在不同的模块中进行传递,最终完成编译过程。针对这种设计思路,传统的编译器采用()架构风格比较合适。
随着编译,链接,调试,执行等开发过程的一体化趋势发展,集成开发环境IDE也随之出现,IDE集成了编译器,连接器,调试器等多种工具,支持代码的增量修改与处理,能够实现不同工具之间的信息交互,覆盖整个软件开发生命周期。针对这种需求,IDE采用(2)架构风格比较合适。IDE强调交互式的编程,用户在修改程序代码后,会同时触发语法高亮显示,语法错误提示,程序结构更新等多种功能的调用与结果呈现,针对这种需求,通常采用(3)架构风格比较合适。
某公司已经开发了一款针对某种嵌入式操作系统专用编程语言IDE,随着一种新的嵌入式操作系统上市并迅速占领市场,公司决定对IDE进行适应性的改造。支持采用现有编程语言进行编程,生成符合新操作系统的需求的运行代码,并能够在现有的操作系统上模拟出新操作系统的运行环境,以支持代码调试工作,针对上述要求,为了使IDE能够生成符合新操作系统的要求的运行代码,采用基于(4)的架构设计策略比较合适;为了模拟新操作系统的运行环境,通常采用(5)架构风格比较合适。
A.管道过滤器
B.批处理序列
C.过程控制
D.独立进程
》
A.规则引擎
B.解释器
C.数据共享
D.黑板
》
A.隐式调用
B.显式调用
C.主程序子程序
D.层次结构
》
A.代理
B.适配
C.包装
D.模拟
》
A.仓库结构
B.隐式调用
C.基于规则
D.虚拟机
解答:答案选择B|D|A|B|D。
【架构章节习题第02题:绿色】
02.在一个典型的基于MVC的J2EE应用中,分发客户请求,有效组织其他构件为客户端提供服务的控制器由()实现。
A.Entity Bean
B.Session Bean
C.Servlet
D.JSP
解答:答案选择C。
【架构章节习题第03题:黄色】
03.架构复审是基于架构开发中的一个重要环节,以下关于架构复审的叙述中错误的是()。
A.架构复审的目标是标识潜在的风险,及早发现架构设计的缺陷和错误
B.架构复审的过程中,通常会对一个可运行的最小化系统进行评估和测试
C.架构复审人员由系统设计和开发人员组成
D.架构设计,文档化和复审是一个迭代的过程
解答:答案选择C。架构评估需要客户方的人员参与。
【架构章节习题第04题:绿色】
04.某公司欲开发一个基于图形用户界面的集成调试器,该调试器的编辑器和变量监视器可以设置调试断点。当调试器在断点处暂定运行时,编辑程序可以自动卷屏到断点,变量监视器刷新变量数值,针对这样的功能描述,采用()的架构风格最为合适。
A.数据共享
B.虚拟机
C.隐式调用
D.显式调用
解答:答案选择C。
【架构章节习题第05题:红色】
05.某公司欲开发一款工业机器人,用来进行汽车零件的装配。公司的架构师经过了分析与讨论,给出了该机器人控制软件的两种候选架构方案:闭环控制和分层结构。以下对于这两种架构的选择理由,错误的是()
A.应该采用闭环控制架构。因为闭环结构给出了将软件分解为几个协作构件的方法,这对于复杂任务特别合适。
B. 应该采用闭环控制架构。因为闭环控制架构中机器人的主要构件控制器,传感器,发动机等,是彼此分开的,并能够独立替换。
C.应该采用分层结构,因为分层结构很好的组织了用来协调机器人操作的构件,系统结构更加清晰。
D. 应该采用分层结构,因为抽象层的存在,满足了处理不确定性的需要,在较低层次不确定的实现细节在较高层次会变得确定。
解答:答案选择A。AD之间二选一。错就错在针对复杂任务特别合适这点上。
【架构章节习题第06题:绿色】
06.Architecture Tradeoff Analysis Method(ATAM)是一种软件架构的评估方法。以下关于该方法的叙述中正确的是()。
A.ATAM是一种代码评估方法
B.ATAM需要评估软件的需求是否准确
C.ATAM需要对软件系统进行测试
D.ATAM不是一种准确的评估工具
解答:答案选择D。ATAM是基于场景的,该方法较为主观。ATAM不是评估代码而是评估架构,所以A不正确;
【架构章节习题第07题:黄色】
07.在RUP当中采用4+1视图模型来描述软件系统的体系结构。在该模型中最终用户侧重于()系统工程师侧重于()。
A.实现视图
B.进程视图
C.逻辑视图
D.部署视图
解答:答案选择C|D。UML视图和架构的视图是一一对应的关系。二周目第二空错了。
【架构章节习题第08题:绿色】
08.软件架构是降低成本,改进质量,按时和按需交付产品的关键因素。以下关于软件架构的描述,错误的是()。
A.根据用户需求,能够确定一个最佳的软件架构,指导整个软件开发过程。
B.软件架构设计需要满足系统的质量属性,如性能,安全性和可修改性等。
C.软件架构设计需要确定组件之间的依赖关系,支持项目计划和管理活动
D.软件架构能够指导设计人员和实现人员的工作
解答:答案选择A。我们无法得到一个最佳的架构,在项目早期。
【架构章节习题第09题:绿色】
09.基于软件架构的设计ABSD,强调由商业,质量和功能需求的组合驱动软件架构设计。它强调采用()来描述软件架构,采用()来描述需求。
A.类图与序列图
B.视角与视图
C.构件和类图
D.构件与功能
》
A.用例和类图
B.用例与视角
C.用例与质量场景
D./视角与质量场景
解答:答案选择B|C。二周目红色变绿色。
【架构章节习题第10题:绿色】
10.()描述了一类软件架构的特征,它独立于实际问题,强调软件系统中通用的组织结构选择。垃圾回收机制是Java语言管理内存资源时常用的一种()。
A.架构风格
B.开发方法
C.设计模式
D.分析模式
解答:答案选择A|C。
【架构章节习题第11题:绿色】
11.识别风险点,非风险点,敏感点和权衡点是软件架构评估过程当中的关键步骤。针对某系统所做的架构设计中,系统需要支持的最大并发数量直接影响传输协议和数据格式。描述了系统架构设计中的一个(),由于系统的业务逻辑目前尚不清楚,因此现有系统三层架构中的第二层可能会出现功能重复,这会影响项目的可修改性。描述了系统架构设计中的一个()
A.敏感点
B.风险点
C.非风险点
D.权衡点
解答:答案选择A|B。某些因素会导致不良影响的就是风险点。
【架构章节习题第12题:绿色】
12.某企业内部现有的主要业务功能已经封装成Web服务。为了拓展业务范围,需要将现有的业务功能进行多种组合,形成新的业务功能。针对业务灵活组合这一要求,采用()架构风格最为合适。
A.管道过滤器
B.解释器
C.显式调用
D.黑板
解答:答案选择B。自定义业务,可以组出多种业务来。
【架构章节习题第13题:绿色】
13.以下叙述,()不是软件架构的主要作用。
A.在设计变更相对容易的阶段,考虑系统结构的可选方案
B.便于技术人员与非技术人员就软件设计进行沟通。
C.软件软件的结构,属性与内部交互关系
D.表达系统是否满足用户的功能性需求
解答:答案选择D。表达非功能性需求。
【架构章节习题第14题:绿色】
14.以下关于软件中间件的技术,错误的是()
A.中间件通过标准接口实现与应用程序的关联,提供特定功能的服务。
B.使用中间件可以提高应用软件的可移植性。
C.使用中间件将增加应用软件设计的复杂性
D.使用中间件有助于提高软件开发效率
解答:答案选择C。设局都变得复杂了,那还要中间件干啥。
【架构章节习题第15题:绿色】
15.某公司开发一个VIP管理系统,系统需要根据不同的商场活动,不定期更新VIP会员的审核标准和VIP折扣系统。针对上述需求,采用()架构风格最为合适。
A.规则系统
B.过程控制
C.分层
D.管道过滤器
解答:答案选择A。这里如果有策略模式更加合适吧。
【架构章节习题第16题:黄色】
16.某公司欲开发一个网上商城系统,在架构设计阶段,公司的架构师识别出三个核心质量属性场景,其中“系统主站断电后,能够在两分钟内自动切换到备用站点,并恢复正常运行。”主要与(1)质量属性相关。通常可采用(2)架构策略实现该属性。在并发用户数不超过1000人时,用户的交易请求应该在0.5秒之内完成。这主要与(3)质量属性相关。通常可以采用(4)架构策略来实现该质量属性。系统应该能够抵挡恶意用户的入侵行为,并进行报警和记录。主要与(5)质量属性相关,通常可以采用(6)架构策略来实现该属性。
A.性能
B.可用性
C.易用性
D.可修改性
》
A.主动冗余
B.信息隐藏
C.抽象接口
D.记录回放
》
A.可测试性
B.易用性
C.性能
D.互操作性
》
A.操作窜形化
B.资源调度
C.心跳
D.内置监控器
》
A.可用性
B.安全性
C.可测试性
D.可修改性
》
A.内置监控器
B.记录/回放
C.追踪审计
D.维护现有接口
解答:答案选择B|A|B|D|B|C。性能的解决方案就是资源调度。回放记录是一种系统攻击策略。
【架构章节习题第17题:黄色】
17.将软件需求模型转换为架构模型是软件系统分析阶段的一项重要工作。以下描述中,()是在转换过程中需要关注的问题。
A.如何通过多视图问题描述软件系统的架构
B.如何确定架构模型中有哪些元素构成
C.如何采用表格或者用例映射保证转换的可追踪性
D.如何通过模型转换技术,将高层架构模型逐步细化为细的粒度架构模型
解答:答案选择C。从本质上看,需求和软件架构设计面临的是不同的对象,一个是问题空间,另一个是解空间;保持两者可追踪性和转换,一直是软件工程领域追求的目标。从软件需求模型向SA模型的转换主要关注两个问题:
如何根据需求模型创建软件架构模型
如何保证模型转换的可追踪性
本题中选项A和选项B是软件架构设计阶段需要考虑的问题。而选项D是软件架构实现阶段中需要考虑的问题
【架构章节习题第18题:绿色】
18.某公司拟开发一个地面清洁机器人,机器人的控制者首先定义清洁任务和任务之间的关系。机器人接受任务后需要响应外界环境触发的一些突发任务,根据自身状态进行动态调整。最终自动完成任务。针对上述需求,该机器人应该采用()架构风格最为合适。
A.面向对象
B.主程序子程序
C.规则系统
D.管道过滤器
解答:答案选择C。规则系统是虚拟机风格。它与解释器模式最大的不同在于规则系统更加偏向于专家系统。它有经验系统在里面。在这里如果有隐式调用,或者有过程调用,那么都是可以
【架构章节习题第19题:绿色】
19.某公司拟开发一个语音识别系统。其语音识别主要过程包括分割原始语音信号,识别音素,产生候选词,判定语法片段,提供语义解释,每个过程都需要基于先验知识的条件判断进行相应的识别动作。针对该系统的特点,采用()架构风格最为合适。
A.解释器
B.面向对象
C.黑板
D.隐式调用
解答:答案选择C.
【架构章节习题第20题:红色】
20.特定领域软件架构DSSA以一个特定问题领域为对象,形成由领域参考模型,参考需求,()等组成的开发基础架构,支持一个特定领域中多个应用的生成。DSSA的基本活动包括领域分析,领域设计和领域实现。其中领域分析的主要目的是获得(),从而描述领域中系统之间共同的需求;领域设计的目标是获得(),从而描述领域模型中,用来表示需求的解决方案。领域实现的主要目标是开发和组织可重用信息,并实现基础软件架构。
A.参考设计
B.参考规约
C.参考架构
D.参考实现
》
A.领域边界
B.领域信息
C.领域对象
D.领域模型
》
A.特定领域的软件需求
B.特定领域的软件架构
C.特定领域的软件设计模型
D.特定领域软件重用的模型
解答:答案选择C|D|B。二周目红变绿。