● 某软件开发公司负责开发一个 Web 服务器服务端处理软件,其核心部分是对客户端请求消息的解析与处理,包括 HTTP 报头分离、SOAP 报文解析等功能。该公司的架构师决定采用成熟的架构风格指导整个软件的设计,以下 (53) 架构风格,最适合该服务端处理软件。(53)A. 虚拟机B. 管道-过滤器C. 黑板结构D. 分层结构

题目

● 某软件开发公司负责开发一个 Web 服务器服务端处理软件,其核心部分是对客户端请求消息的解析与处理,包括 HTTP 报头分离、SOAP 报文解析等功能。该公司的架构师决定采用成熟的架构风格指导整个软件的设计,以下 (53) 架构风格,最适合该服务端处理软件。

(53)

A. 虚拟机

B. 管道-过滤器

C. 黑板结构

D. 分层结构


相似考题

4.阅读以下关于软件架构风格的说明,在答题纸上回答问题1和问题2。 【说明】 某软件公司为其新推出的字处理软件设计了一种脚本语言,专门用于开发该字处理软件的附加功能插件。为了提高该语言的编程效率,公司组织软件工具开发部门为脚本语言研制一套集成开发环境。软件工具开发部门根据字处理软件的特点,对集成开发环境进行了需求分析,总结出以下3项核心需求: (1)集成开发环境需要提供对脚本语言的编辑、语法检查、解释、执行和调试等功能的支持,并要实现各种功能的灵活组合、配置与替换。 (2)集成开发环境需要提供一组可视化的编程界面,用户通过对界面元素拖拽和代码填充的方式就可以完成功能插件核心业务流程的编写与组织。 (3)在代码调试功能方面,集成开发环境需要实现在脚本语言编辑界面中的代码自动定位功能。具体来说,在调试过程中,编辑界面需要响应调试断点命中事件,并自动跳转到当前断点处所对应的代码。 针对上述需求,软件工具开发部门对集成开发环境的架构进行分析与设计,王工认为该集成开发环境应该采用管道-过滤器的架构风格实现,李工则认为该集成开发环境应该采用以数据存储为中心的架构风格来实现。公司组织专家对王工和李工的方案进行了评审,最终采用了李工的方案。【问题1】(12分) 请用200字以内的文字解释什么是软件架构风格,并从集成开发环境与用户的交互方式、集成开发环境的扩展性、集成开发环境的数据管理三个方面说明为什么最终采用了李工的设计方案。 【问题2】(13分) 在对软件系统架构进行设计时,要对架构需求进行分析,针对特定需求选择最为合适的架构风格,因此实际的软件系统通常会混合多种软件架构风格。请对核心需求进行分析,说明为了满足需求(2)和(3),分别应采用何种架构风格,并概要说明采用相应架构风格后的架构设计过程。

更多“● 某软件开发公司负责开发一个 Web 服务器服务端处理软件,其核心部分是对客户端请求消息的解析与处理,包括 HTTP 报头分离、SOAP 报文解析等功能。该公司的架构师决定采用成熟的架构风格指导整个软件的设计,以下 (53) 架构风格,最适合该服务端处理软件。(53)A. 虚拟机B. 管道-过滤器C. 黑板结构D. 分层结构”相关问题
  • 第1题:

    ● Java虚拟机采用 (20)软件体系结构。

    A.管道一过滤器

    B.分层

    C.黑板

    D.解释器


    正确答案:D

  • 第2题:

    软件架构风格描述某一特定领域中的系统组织方式和惯用模式,反映了领域中众多系统所共有的( )特征。对于语音识别、知识推理等问题复杂、解空间很大、求解过程不确定的这一类软件系统。通常会采用( )架构风格。

    A.语法和语义 B.结构和语义 C.静态和动态 D.行为和约束 A.管道-过滤器 B.解释器 C.黑板 D.过程控制


    正确答案:B,C

  • 第3题:

    老于是某银行的系统架构师,他为银行投资管理系统设计的软件架构包括进程通信和事件驱动的系统,该软件架构风格属于( )。

    A:数据流风格
    B:独立构件风格
    C:仓库风格
    D:虚拟机风格

    答案:B
    解析:
    软件架构五大风格:
    (1)数据流风格:包括批处理序列架构风格(Batch Sequential)和管理/过滤器架构风格(Pipes/Filters)。
    (2)调用/返回风格:包括主程序/子程序架构风格(Main Program and Subroutine)、数据抽象和面向对象架构风格(DataAbstraction and Object-Oriented)及层次结构架构风格(Hierarchical Layers).
    (3)独立构件风格:包括进程通信架构风格(Communicating Processes)和事件驱动架构风格(EventSystems)。
    (4)虚拟机风格:包括解释器架构风格(Interpreters)和基于规则的系统(Rule-based Systems)架构风格。
    (5)仓库风格:包括数据库架构风格(Database)和黑板架构风格(BlackBoards)

  • 第4题:

    老于是某银行的系统架构师,他为银行投资管理系统设计的软件架构包括进程通信和事件驱动的系统,该软件架构风格属于( )。

    A.数据流风格
    B.独立构件风格
    C.仓库风格
    D.虚拟机风格

    答案:B
    解析:
    Garlan和Shaw对通用软件架构风格进行了分类,他们将软件架构分为数据流风格、调用/返回风格、独立构件风格、虚拟机风格和仓库风格。(1)数据流风格:数据流风格包括批处理序列和管理/过滤器两种风格。(2)调用/返回风格:调用/返回风格包括主程序/子程序、数据抽象和面向对象,以及层次结构。(3)独立构件风格:独立构件风格包括进程通信和事件驱动的系统。(4)虚拟机风格:虚拟机风格包括解释器和基于规则的系统。(5)仓库风格:仓库风格包括数据库系统、黑板系统和超文本系统。

  • 第5题:

    Java虚拟机采用( )软件体系结构。

    A.管道一过滤器
    B.分层
    C.黑板
    D.解释器

    答案:D
    解析:
    Java虚拟机(Java Virtual Machine,JVM)是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。
    Garlan和Shaw将通用软件体系结构风格总结为五个大类:数据流风格、调用/返回风格、独立构件风格、虚拟机风格、仓库风格。数据流风格有:批处理序列、管道/过滤器;调用/返回风格有:主程序/子程序、面向对象风格、层次结构;独立构件风格有:进程通讯、事件系统;虚拟机风格有:解释器、基于规则的系统;仓库风格有:数据库系统、超文本系统、黑板系统。而JAVA虚拟机采用解释器软件体系结构。

  • 第6题:

    软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式。架构风格反映领域中众多系统所共有的结构和( ),强调对架构(请作答此空)的重用。

    A. 分析
    B. 设计
    C. 实现
    D. 评估

    答案:B
    解析:
    软件架构设计的一个核心问题是能否使用重复的架构模式,即能否达到架构级的软件重用。也就是说,能否在不同的软件系统中,使用同一架构。基于这个目的,学者们开始研究和实践软件架构的风格和类型问题。软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式。它反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。按这种方式理解,软件架构风格定义了用于描述系统的术语表和一组指导构件系统的规则

  • 第7题:

    某公司欲实现一个数据处理软件,该软件需要从网络接收一组复杂的数据,然后分步进行解析和处理。在这种情况下,采用( )的体系结构风格比较适合。

    A. 远程过程调用
    B. 层次化
    C. 管道/过滤器
    D. 共享数据

    答案:C
    解析:
    当一个软件需要处理复杂数据,且数据需要通过分步进行处理,具有明显的阶段特性时,采用管道和过滤器模式是比较好的方式,因此本题应该选择C。

  • 第8题:

    软件架构风格描述某一特定领域中的系统组织方式和惯用模式,反映了领域中众多系统所共有的()特征。对于语音识别、知识推理等问题复杂、解空间很大、求解过程不确定的这一类软件系统,通常会采用(请作答此空)架构风格。对于因数据输入某个构件,经过内部处理,产生数据输出的系统,通常会采用()架构风格。

    A. 管道-过滤器
    B. 解释器
    C. 黑板
    D. 过程控制

    答案:C
    解析:

  • 第9题:

    软件架构风格描述某一特定领域中的系统组织方式和惯用模式,反映了领域中众多系统所共有的( )特征。对于语音识别、知识推理等问题复杂、解空间很大、求解过程不确定的这一类软件系统,通常会采用()架构风格。对于因数据输入某个构件,经过内部处理,产生数据输出的系统,通常会采用(请作答此空 )架构风格。

    A. 事件驱动系统
    B. 黑板
    C. 管道-过滤器
    D. 分层系统

    答案:C
    解析:
    体系结构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。对软件体系结构风格的研究和实践促进对设计的重用,一些经过实践证实的解决方案也可以可靠地用于解决新的问题。例如,如果某人把系统描述为客户/服务器模式,则不必给出设计细节,我们立刻就会明白系统是如何组织和工作的。语音识别是黑板风格的经典应用场景。输入某个构件,经过内部处理,产生数据输出的系统,正是管道-过滤器中过滤器的职能,把多个过滤器使用管道相联的风格为管道-过滤器风格。

  • 第10题:

    以下关于软件架构风格与系统性能关系的叙述,错误的是()

    A. 对于采用层次化架构风格的系统,划分的层次越多,系统的性能越差
    B. 对于采用管道一过滤器架构风格的系统,可以通过引入过滤器的数据并发处理提高系统性能
    C. 对于采用面向对象架构风格的系统,可以通过减少功能调用层次提高系统性能
    D. 对于采用过程调用架构风格的系统,可以通过将显式调用策略替换为隐式调用策略提高系统性能

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

  • 第11题:

    某软件开发公司负责开发一个Web服务器服务端处理软件,其核心部分是对客户端请求消息的解析与处理,包括HTTP报头分离、SOAP报文解析等功能。该公司的架构师决定采用成熟的架构风格指导整个软件的设计,以下()架构风格,最适合该服务端处理软件。

    • A、虚拟机
    • B、管道.过滤器
    • C、黑板结构
    • D、分层结构

    正确答案:B

  • 第12题:

    单选题
    博学公司欲实现一个数据处理软件,该软件需要从网络接收一组复杂的数据,然后分步进行解析和处理。在这种情况下,采用()的体系结构风格比较适合。
    A

    远程过程调用

    B

    层次化

    C

    管道/过滤器

    D

    共享数据


    正确答案: C
    解析: 层次系统组织成一个层次结构,每一层为上层服务,并作为下层客户。例如,4层的分层式体系结构可以分为应用软件、业务软件、中间件和系统软件。这种风格支持基于可增加抽象层的设计。这样,允许将一个复杂问题分解成一个增量步骤序列的实现。由于每一层最多只影响两层,同时只要给相邻层提供相同的接口,允许每层用不同的方法实现,同样为软件重用提供了强大的支持。在管道/过滤器风格的软件体系结构中,每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流。在本题中,博学公司欲实现一个数据处理软件,该软件需要从网络接收一组复杂的数据,然后分步进行解析和处理,适合采用的是管道/过滤器风格。

  • 第13题:

    某公司采用基于架构的软件设计(Architecture-Based Software Design,ABSD)方法进行软件设计与开发。ABSD方法有三个基础,分别是对系统进行功能分解、采用(52)实现质量属性与商业需求、采用软件模板设计软件结构。 ABSD方法主要包括架构需求等6个主要活动,其中(53)活动的目标是标识潜在的风险,及早发现架构设计中的缺陷和错误;(54)活动针对用户的需求变化,修改应用架构,满足新的需求。 小王是该公司的一位新任架构师,在某项目中主要负责架构文档化方面的工作。小王(55)的做法不符合架构文档化的原则。架构文档化的主要输出结果是架构规格说明书和(56)。

    A.架构风格

    B.设计模式

    C.架构策略

    D.架构描述


    正确答案:A
    ABSD方法有3个基础。第一个基础是功能的分解。在功能分解中,ABSD方法使用已有的基于模块的内聚和耦合技术。第二个基础是通过选择体系结构风格来实现质量和业务需求。第三个基础是软件模板的使用。软件模板利用了一些软件系统的结构。ABSDM模型把整个基于体系结构的软件过程划分为体系结构需求、设计、文档化、复审、实现、演化等六个子过程。架构需求:需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。架构需求受技术环境和架构设计师的经验影响。需求过程主要是获取用户需求,标识系统中所要用到的构件。如果以前有类似的系统架构的需求,我们可以从需求库中取出,加以利用和修改,以节省需求获取的时间,减少重复劳动,提高开发效率。架构设计:架构需求用来激发和调整设计决策,不同的视图被用来表达与质量目标有关的信息。架构设计是一个迭代过程,如果要开发的系统能够从已有的系统中导出大部分,则可以使用已有系统的设计过程。架构文档化:绝大多数的架构都是抽象的,由一些概念上的构件组成。例如,层的概念在任何程序设计语言中都不存在。因此,要让系统分析师和程序员去实现架构,还必须得把架构进行文档化。文档是在系统演化的每一个阶段,系统设计与开发人员的通讯媒介,是为验证架构设计和提炼或修改这些设计(必要时)所执行预先分析的基础。架构文档化过程的主要输出结果是架构需求规格说明和测试架构需求的质量设计说明书这两个文档。生成需求模型构件的精确的形式化的描述,作为用户和开发者之间的一个协约。软件架构的文档要求与软件开发项目中的其他文档是类似的。文档的完整性和质量是软件架构成功的关键因素。文档要从使用者的角度进行编写,必须分发给所有与系统有关的开发人员,且必须保证开发者手上的文档是最新的。架构复审:架构设计、文档化和复审是一个迭代过程。从这个方面来说,在一个主版本的软件架构分析之后,要安排一次由外部人员(用户代表和领域专家)参加的复审。复审的目的是标识潜在的风险,及早发现架构设计中的缺陷和错误,包括架构能否满足需求、质量需求是否在设计中得到体现、层次是否清晰、构件的划分是否合理、文档表达是否明确、构件的设计是否满足功能与性能的要求等等。由外部人员进行复审的目的是保证架构的设计能够公正地进行检验,使组织的管理者能够决定正式实现架构。架构实现:所谓“实现”就是要用实体来显示出一个软件架构,即要符合架构所描述的结构性设计决策,分割成规定的构件,按规定方式互相交互。架构演化:在构件开发过程中,最终用户的需求可能还有变动。在软件开发完毕,正常运行后,由一个单位移植到另一个单位,需求也会发生变化。在这两种情况下,就必须相应地修改软件架构,以适应新的变化了的软件需求。

  • 第14题:

    某软件公司欲实现一个数据处理软件,该软件需要从网络接收一组复杂的数据,然后分步进行解析和处理。在这种情况下,采用(34)的体系结构风格比较适合。

    A.远程过程调用

    B.层次化

    C.管道/过滤器

    D.共享数据


    正确答案:C
    解析:当一个软件需要处理复杂数据,且数据需要通过分步进行处理,具有明显的阶段特性时,采用管道和过滤器模式是比较好的方式,因此本题应该选择C。

  • 第15题:

    基于组件的软件开发架构模式一般在( )软件开发架构模式中使用。

    A.管道-过滤器
    B.面向对象
    C.事件驱动
    D.客户/服务器

    答案:B
    解析:
    软件架构模式有:
    (1)管道-过滤器模式,适用于批处理系统。
    (2)面向对象模式,其典型应用是基于组件的软件开发。
    (3)事件驱动模式,其典型应用包括各种图形界面应用。
    (4)分层模式,如ISO/OSI的七层网络模型。
    (5)C/S模式,该模式中客户与服务器分离,允许网络分布操作。

  • 第16题:

    Java虚拟机采用( )软件体系结构。

    A.管道-过滤器
    B.分层
    C.黑板
    D.解释器

    答案:D
    解析:
    Java虚拟机(Java Virtual Machine,JVM)是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。
    Garlan和Shaw将通用软件体系结构风格总结为五个大类:数据流风格、调用/返回风格、独立构件风格、虚拟机风格、仓库风格。数据流风格有:批处理序列、管道/过滤器;调用/返回风格有:主程序/子程序、面向对象风格、层次结构;独立构件风格有:进程通讯、事件系统;虚拟机风格有:解释器、基于规则的系统;仓库风格有:数据库系统、超文本系统、黑板系统。而JAVA虚拟机采用解释器软件体系结构。

  • 第17题:

    软件架构中,( )包括批处理序列和管道/过滤器两种风格。

    A.数据流
    B.调用/返回
    C.虚拟机
    D.独立构件

    答案:A
    解析:
    软件架构分为数据流风格、调用/返回风格、独立构件风格、虚拟机风格和仓库风格。

  • 第18题:

    软件架构设计包括提出架构模型、产生架构设计和进行设计评审等活动,是一个迭代的过程。以下关于软件架构设计活动的描述,错误的是()

    A. 在建立软件架构的初期,一般需要选择一个合适的架构风格
    B. 将架构分析价段已标识的构件映射到架构中,并分析这些构件之间的关系
    C. 软件架构设计活动将已标构件集成到软件架构中,设计并实现这些构件
    D. 一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审

    答案:C
    解析:
    软件架构设计包括提出架构模型、产生架构设计和进行设计评审等活动,是一个迭代的过程,在建立软件架构的初期,一般需要选择一个合适的架构风格,并将架构分析阶段已标识的构件映射到架构中,并分析这些构件之间的关系,一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审。—般来说,软件架构设计活动将已标识构件集成到软件架构中,设计这些构件,但不予以实现。

  • 第19题:

    对于因数据输入某个构件,经过内部处理,产生数据输出的系统,通常会采用()架构风格。

    A. 事件驱动系统
    B. 黑板
    C. 管道-过滤器
    D. 分层系统

    答案:C
    解析:
    输入某个构件,经过内部处理,产生数据输出的系统,正是管道-过滤器中过滤器的职能,把多个过滤器使用管道相联的风格为管道-过滤器风格。

  • 第20题:

    Windows操作系统在图形用户界面处理方面采用的核心架构风格是(请作答此空)风格。Java语言宣传的"一次编写,到处运行"的特性,从架构风格上看符合( )风格的特点。

    A. 虚拟机
    B. 管道-过滤器
    C. 事件驱动
    D. 微内核-扩展

    答案:C
    解析:
    Windows操作系统在图形用户界面处理方面采用的是典型的"事件驱动"的架构风格。首先注册事件处理的是回调函数,当某个界面事件发生时(例如键盘敲击、鼠标移动等),系统会查找并选择合适的回调函数处理该事件。Java语言是一种解释型语言,在Java虚拟机上运行,这从架构风格上看是典型的"虚拟机"风格,即通过虚拟机架构屏蔽不同的硬件环境。

  • 第21题:

    某软件开发公司负责开发一个Web服务器服务端处理软件,其核心部分是对客户端请求消息的解析与处理,包括HTTP报头分离、SOAP报文解析等功能。该公司的架构师决定采用成熟的架构风格指导整个软件的设计,以下( )架构风格,最适合该服务端处理软件。

    A. 虚拟机
    B. 管道-过滤器
    C. 黑板结构
    D. 分层结构

    答案:B
    解析:
    根据题干描述,Web服务器服务端的核心功能是数据处理,由于Web服务在数据传输方面具有协议分层的特征,即底层协议会包装上层协议(HTTP协议体中包含整个SOAP消息内容),因此需要数据内容的逐步分解与分阶段处理。比较选项中的架构风格,由于管道-过滤器的架构风格支持分阶段数据处理,因此特别适合该服务端处理软件的要求。

  • 第22题:

    博学公司欲实现一个数据处理软件,该软件需要从网络接收一组复杂的数据,然后分步进行解析和处理。在这种情况下,采用()的体系结构风格比较适合。

    • A、远程过程调用
    • B、层次化
    • C、管道/过滤器
    • D、共享数据

    正确答案:C

  • 第23题:

    在DNS中,正向解析是指(3),记录类别(4)不是用于正向解析的,而是用于反向解析的。空白处(3)应选择()

    • A、根据IP地址解析域名
    • B、根据域名来解析IP地址
    • C、服务端响应客户端的请求
    • D、客户端响应服务端的请求

    正确答案:B