系统架构师(每日一练16)

每日一练

1.软件测试一般分为两个大类:动态测试和静态测试。前者通过运行程序发现错误,包括()等方法;后者采用人工和计算机辅助静态分析的手段对程序进行检测,包括()等方法。答案与解析
问题1

  • A.边界值分析、逻辑覆盖、基本路径
  • B.桌面检查、逻辑覆盖、错误推测
  • C.桌面检查、代码审查、代码走查
  • D.错误推测、代码审查、基本路径

问题2

  • A.边界值分析、逻辑覆盖、基本路径
  • B.桌面检查、逻辑覆盖、错误推测
  • C.桌面检查、代码审查、代码走查
  • D.错误推测、代码审查、基本路径

2.()的目的是检査模块之间,以及模块和已集成的软件之间的接口关系,并验证已集成的软件是否符合设计要求。其测试的技术依据是()答案与解析
问题1

  • A.单元测试
  • B.集成测试
  • C.系统测试
  • D.回归测试

问题2

  • A.软件详细设计说明书
  • B.技术开发合同
  • C.软件概要设计文档
  • D.软件配置文档

3.以下关于实时操作系统(RTOS)任务调度器的叙述中,正确的是()。答案与解析

  • A.任务之间的公平性是最重要的调度目标
  • B.大多数RTOS调度算法都是抢占方式(可剥夺方式)
  • C.RTOS调度器都采用了基于时间片轮转的调度算法
  • D.大多数RTOS调度算法只采用一种静态优先级调度算法

4.某公司欲开发一个漫步者机器人,用来完成火星探测任务。机器人的控制者首先定义探测任务和任务之间的时序依赖性,机器人接受任务后,需要根据自身状态和外界环境进行动态调整,最终自动完成任务。针对这些需求,该机器人应该采用()架构风格最为合适。答案与解析

  • A.解释器
  • B.主程序-子程序
  • C.隐式调用
  • D.管道-过滤器

5.面向对象的分析模型主要由顶层架构图、用例与用例图和()构成;设计模型则包含以()表示的软件体系结构图、以交互图表示的用例实现图、完整精确的类图、描述复杂对象的()和用以描述流程化处理过程的活动图等。答案与解析
问题1

  • A.数据流模型
  • B.领域概念模型
  • C.功能分解图
  • D.功能需求模型

问题2

  • A.模型视图控制器
  • B.组件图
  • C.包图
  • D.2层、3层或N层

问题3

  • A.序列图
  • B.协作图
  • C.流程图
  • D.状态图

6.我国的《著作权法》对一般文字作品的保护期是作者有生之年和去世后50年,德国的《版权法》对一般文字作品的保护期是作者有生之年和去世后70年。假如某德国作者已去世60年,以下说法中正确的是()。答案与解析

  • A.我国M出版社拟在我国翻译出版该作品,需要征得德国作者继承人的许可方可在我国出版发行
  • B.我国M出版社拟在我国翻译出版该作品,不需要征得德国作者继承人的许可,就可在我国出版发行
  • C.我国M出版社未征得德国作者继承人的许可,将该翻译作品销售到德国,不构成侵权
  • D.我国M出版社未征得德国作者继承人的许可,将该翻译作品在我国销售,构成侵权

7.一个软件的架构设计是随着技术的不断进步而不断变化的。以编译器为例,其主流架构经历了管道-过滤器到数据共享为中心的转变过程。以下关于编译器架构的叙述中,错误的是()。答案与解析

  • A.早期的编译器采用管道一过滤器架构风格,以文本形式输入的代码被逐步转化为各种形式,最终生成可执行代码
  • B.早期的编译器采用管道一过滤器架构风格,并且大多数编译器在词法分析时创造独立的符号表,在其后的阶段会不断修改符号表,因此符号表并不是程序数据的一部分
  • C.现代的编译器采用以数据共享为中心的架构风格,主要关心编译过程中程序的中间表示
  • D.现代的编译器采用以数据共享为中心的架构风格,但由于分析树是在语法分析阶段结束后才产生作为语义分析的输入,因此分析树不是数据中心的共享数据

8.针对二层c/s软件架构的缺点,三层c/s架构应运而生,在三层c/s架构中,增加了一个(),三层c/s架构是将应用功能分成表示层,功能层和()三个部分,其中()是应用的用户接口部分,担负与应用逻辑间的对话功能。答案与解析
问题1

  • A.应用服务器
  • B.分布式数据库
  • C.内容分发
  • D.镜像

问题2

  • A.硬件层
  • B.数据层
  • C.设备层
  • D.通信层

问题3

  • A.表示层
  • B.数据层
  • C.应用层
  • D.功能层

9.软件开发环境应支持多种集成机制。其中,()用于存储与系统开发有关的信息,并支持信息的交流与共享:()是实现过程集成和控制集成的基础。答案与解析
问题1

  • A.算法模型库
  • B.环境信息库
  • C.信息模型库
  • D.用户界面库

问题2

  • A.工作流与日志服务器
  • B.进程通信与数据共享服务器
  • C.过程控制与消息服务器
  • D.同步控制与恢复服务器

解析


1.答案:AC
动态测试是通过运行程序发现错误,包括黑盒测试(等价类划分、边界值分析法、错误推测法)与白盒测试(各种类型的夏盖测试)。
静态测试是人工测试方式,包括桌前检查(桌面检查)代码走查、代码审查。


2.答案:BC
单元测试也称为模块测试,测试的对象是可独立编译或汇编的程序模块、软件构件或O0软件中的类(统称为模块),其目的是检査每个模块能否正确地实现设计说明中的功能、性能、接口和其他设计约束等条件,发现模块内可能存在的各种差错。单元测试的技术依据是软件详细设计说明书。集成测试的目的是检査模块之间,以及模块和已集成的软件之间的接口关系,并验证已集成的软件是否符合设计要求。集成测试的技术依据是软件概要设计文档。集成测试是根据软件概要设计文档来进行测试,因为概要设计文档中设计了功能信息的相关信息及要求。
系统测试的对象是完整的、集成的计算机系统,系统测试的目的是在真实系统工作环境下,验证完整的软件配詈项能否和系统正确连接,并满足系统/子系统设计文档和软件开发合同规定的要求。系统测试的技术依据是用户需求或开发合同,除应满足一般测试的准入条件外,在进行系统测试前,还应确认被测系统的所有配置项已通过测试对需要固化运行的软件还应提供固件。
变更部分的正确性和对变更需求的符合性,以及软件原有的、正确的功能可归测试的目的是测试软件变更之后,性能和其他规定的要求的不损害性。


3.答案:B
实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。因而,提供及时响应和高可靠性是其主要特点。
为了精确管理"时间"资源,以达到实时性和可预测性要求,并能够满足实时系统的新要求,需用实时调度理论对任务进行调度和可调度性分析。任务调度技术包括调度策略和可调度性分析方法,两者是紧密结合的。任务调度技术研究的范围包括任务使用系统资源(包括处理机、内存、I0、网络等资源)的策略和机制,以及提供判断系统性能是否可预测的方法和手段。例如,什么时候调度任务运行、在哪运行(当系统为多处理机系统或分布式系统时)、运行多长时间等等;以及判断分析用一定参数描述的实时任务能否被系统正确调度。给定一组实时任务和系统资源,确定每个任务何时何地执行的整个过程就是调度。在非实时系统中,调度的主要目的是缩短系统平均响应时间,提高系统资源利用率,或优化某一项指标;而实时系统中调度的目的则是要尽可能地保证每个任务满足它们的时间约束,及时对外部请求作出响应。实时调度技术通常有多种划分方法。抢占式调度通常是优先级驱动的调度。每个任务都有优先级,任何时候具有最高优先级目已启动的任务先执行。个正在执行的任务放弃处理器的条件为:自愿放弃处理器(等待资源或执行完毕):有高优先级任务启动,该高优先级任务将抢占其执行。除了共享盗源的临界段之外,高优先级任务一旦准备就绪,可在任何时候抢占低优先级任务的执行。抢占式调度的优点是实时性好、反应快,调度算法相对简单,可优先保证高优先级任务的时间约束,其缺点是上下文切换多。
而非抢占式调度是指不允许任务在执行期间被中断,任务一旦占用处理器就必须执行完毕或自愿放弃。其优点是上下文切换少;缺点是在一般情况下,处理器有效资源利用率低,可调度性不好。在RTOS中,大多数的RTOS调度算法都是抢占式的。


4.答案:A


5.答案:BCD
面向对象的分析模型主要由顶层架构图、用例与用例图、领域概念模型构成;设计模型则包含以包图表示的软件体系结构图、以交互图表示的用例实现图、完整精确的类图、针对复杂对象的状态图和用以描述流程化处理过程的活动图等。


6.答案:B
本题考查知识产权方面的基础知识。按照《伯尔尼公约》的规定,一个成员国给予其他成员国作品的版权保护期,应按照该成员国版权法的规定。依据我国著作权法的规定,该德国作者的作品已经超过法定版权保护期,不再受到版权保护。因此,出版社不需要征得德国作者继承人的许可,即可在我国出版发行该德国作者的作品。如果将该译出版作品未征得德国作者继承人的许可销售到德国,已构成侵权。这是因为德国的《版权法》规定作品的版权保护期是作者有生之年和去世后70年,作者去世60年,作品的保护期尚未超过,所以我国出版社若将该翻译出版作品未征得德国作者继承人的许可销售到德国,则构成侵权。我国的《著作权法》对一般文字作品的保护期是作者有生之年和去世后50年,该作者已去世60年,超过了我国《著作权法》对一般文字作品的保护期,在我国也不再受著作权保护。所以我国M出版社不需要征得德国作者继承人的许可,即可在我国出版发行该德国作者的作品。


7.答案:D
一个软件的架构设计是随着技术的不断进步而不断变化的。以编译器为例,其主流架构经历了管道-过滤器到数据共享为中心的转变过程。早期的编译器采用管道-过滤器架构风格,以文本形式输入的代码被逐步转化为各种形式,最终生成可执行代码。早期的编译器采用管道-过滤器架构风格,并且大多数编译器在词法分析时创造独立的符号表,在其后的阶段会不断修改符号表,因此符号表并不是程序数据的一部分。现代的编译器采用以数据共享头中心的架构风格,主要关心编译过程中程序的中间表示。现代的编译器采用以数据共享为中心的架构风格,分析树是在语法分析阶段结束后才产生作为语义分析的输入,分析树是数据中心中重要的共享数据,为后续的语义分析提供了帮助。


8.答案:ABA
三层C/S架构增加了应用服务器,将应用功能分为表示层、功能层和数据层三个部分。其中:1、表示层是应用的用户接口部分,它担负着用户与应用间的对话功能。2、功能层相当于应用的本体,它是将具体的业务处理逻辑编入程序中。3、数据层就是数据库管理系统,负麦管理数据库数据的读写


9.答案:BC
软件开发环境(Software Development Environment,SDE)是指支持软件的工程化开发和维护而使用的一组软件,由软件工具集和环境集成机制构成:
软件开发环境应支持多种集成机制,例如,平台集成、数据集成、界面集成、控制集成和过程集成等。软件开发环境应支持小组工作方式,并为其提供配置管理,环境的服务可用于支持各种软件开发活动,包括分析、设计、编程、调试和文档等。
较完善的软件开发环境通常具有多种功能,例如,软件开发的一致性与完整性维护,配置管理及版本控制,数据的多种表示形式及其在不同形式之间的自动转换,信息的自动检索与更新,项目控制和管理,以及对开发方法学的支持。软件开发环境具有集成性、开放性、可裁减性、数据格式一致性、风格统一的用户界面等特性,因而能大幅度提高软件生产率。
集成机制根据功能的不同,可划分为环境信息库、过程控制与消息服务器、环境用户界面三个部分。(1)环境信息库。环境信息库是软件开发环境的核心,用以存储与系统开发有关的信息,并支持信息的交流与共享。环境信息库中主要存储两类信息,一类是开发过程中产生的有关被开发系统的信息,例如,分析文档、设计文档和测试报告等;另一类是环境提供的支持信息,例如,文档板、系统配罟、过程模型和可复用构件等。(2)过程控制与消息服务器。过程控制与消息服务器是实现过程集成和控制集成的基础。过程集成是按照具体软件开发过程的要求进行工具的选择与组合,控制集成使各工具之间进行并行通信和协同工作。(3)环境用户界面。环境用户界面包括环境总界面和由它实行统一控制的各环境部件及工具的界面。统一的、具有一致性的用户界面是软件开发环境的重要特征,是充分发挥环境的优越性、高效地使用工具并减轻用户的学习负担的保证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

懒人w

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值