CMS专题

单选题(1)的选择是开发一个软件系统时的基本设计决策;(2)是最底层的模式,关注软件系统的设计与实现,描述了如何实现构件及构件之间的关系。引用计数是C++管理动态资源时常用的一种(3)。空白(3)处应选择()A 架构模式B 惯用法C 设计模式D 分析模式

题目
单选题
(1)的选择是开发一个软件系统时的基本设计决策;(2)是最底层的模式,关注软件系统的设计与实现,描述了如何实现构件及构件之间的关系。引用计数是C++管理动态资源时常用的一种(3)。空白(3)处应选择()
A

架构模式

B

惯用法

C

设计模式

D

分析模式

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

论软件系统架构风格 系统架构风格(System Architecture Style)是描述某一特定应用领域中系统组织方式的惯用模式.架构风格定义了一个词汇表和一组约束,词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的口软件系统架构风格反映了领域中众多软件系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。软件系统架构风格的共有部分可以使得不同系统共享同一个实现代码,系统能够按照常用的、规范化的方式来组织,便于不同设计者很容易地理解系统架构。

请以“软件系统架构风格”论题,依次从以下三个方面进行论述: 1.概要叙述你参与分析和开发的软件系统开发项目以及你所担任的主要工作。 2.分析软件系统开发中常用的软件系统架构风格有哪些?详细阐述每种风格的具体含义。 3.详细说明在你所参与的软件系统开发项目中,采用了哪种软件系统架构风格,具体实施效果如何。


正确答案:写作要点:
一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。
二、常见的架构风格5大类,至少选2-3个类进行说明。
Garlan和Shaw将软件架构风格分为五大类,数据流风格、调用/返回风格、独立构件风格、虚拟机风格和仓库风格。其中:
(1)数据流风格包括批处理序列架构风格和管道/过滤器架构风格;
(2)调用/返回风格包括主程序/子程序架构风格、数据抽象和面向对象架构风格和层次结构架构风格;
(3)独立构件风格包括进程通信架构风格和事件驱动的架构风格;
(4)虚拟机风格包括解释器架构风格和基于规则的系统;
(5)仓库风格包括数据库架构风格和黑板架构风格。
其他的还有特定领域软件架构、状态转移等以及分布式处理等。其中分布式架构风格中有客户机/服务器风格、浏览器/服务器风格、CORBA、DCOM、EJB。
每一种具体的软件结构风格的模型如下:
1.数据流风格包括批处理序列和管道/过滤器架构风格。
(1)批处理序列架构风格。组件为一系列固定顺序的计算单元,组件间只通过数据传递交互。每个处理步骤是一个独立的程序,每一步必须在前一步结束后才能开始,数据必须是完整的,以整体的方式传递。
(2)管道/过滤器架构风格。每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流,经过处理,产生输出数据流。这个过程通常通过对输入流的变换及增量计算来完成,包括通过计算和增加信息丰富数据,通过浓缩和删除精炼数据,通过改变记录方式转化数据,递增地转化数据等。在输入被完全消费之前,输出便产生了。这里构件被称为过滤器,连接件就是数据流传输的管道,将一个过滤器的输出传到另一过滤器的输入。
2.调用/返回风格包括主程序/子程序架构风格、数据抽象和面向对象架构风格以及层次结构架构风格
(1)主程序/子程序架构风格。单线程控制,把问题划分为若干处理步骤,构件即为主程序和子程序。子程序通常可合成为模块。过程调用作为交互机制,即充当连接件。调用关系具有层次性,其语义逻辑表现为子程序的正确性取决于它调用的子程序的正确性。
(2)数据抽象和面向对象架构风格。这种风格的构件是对象。对象是抽象数据类型的实例。在抽象数据类型中,数据的表示和它们的相应操作被封装起来。对象的行为体现在其接受和请求的动作。连接件即是对象间交互的方式,对象是通过函数和过程的调用来交互的。对象具有封装性,一个对象的改变不会影响其他对象。对象拥有状态和操作,也有责任维护状态。这种结构风格中包含有封装、交互、多态、集成、重用等特征。
(3)层次结构架构风格。层次系统组织成一个层次结构。构件在一些层实现了虚拟机。连接件通过决定层间如何交互的协议来定义,拓扑约束包括对相邻层间交互的约束。这个风格的特点是每层为上一层提供服务,使用下一层的服务,只能见到与自己邻接的层。大的问题分解为若干个渐进的小问题,逐步解决,隐藏了很多复杂度。修改一层,最多影响两层,而通常只能影响上层。上层必须知道下层的身份,不能调整层次之间的顺序。
3.独立构件风格包括进程通信架构风格和事件驱动的架构风格
(1)进程通信架构风格。构件是独立的过程,连接件是消息传递。这种风格的特点是构件通常是命名过程,消息传递的方式可以是点对点、异步和同步方式、以及远过程调用等
(2)事件驱动的架构风格。构件不直接调用一个过程,而是触发或广播一个或多个事件。系统中的其他构件中的过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册的所有过程。一个事件的触发就导致了另一个模块中的过程的调用。这种风格中的构件是非命名的过程,它们之间交互的连接件往往是以过程之间的隐式调用(Implicit Invocation)来实现的。基于事件的隐式调用风格的主要优点是为软件重用提供了强大的支持,为构件的维护和演化带来了方便,其缺点是构件放弃了对系统计算的控制。
4.虚拟机风格包括解释器架构风格和基于规则的系统
(1)解释器架构风格。一个解释器通常包括完成解释工作的解释引擎,一个包含将被解释的代码的存储区,一个记录解释引擎当前工作状态的数据结构,以及一个记录源代码被解释执行的进度的数据结构。具有解释器风格的软件中含有一个虚拟机,可以仿真硬件的执行过程和一些关键应用。其缺点是执行效率较低。
(2)基于规则的系统。基于规则的系统包括规则集、规则解释器、规则/数据选择器以及工作内存。
5.仓库风格包括数据库架构风格和黑板架构风格
(1)数据库架构风格。数据库架构是库风格最常见的形式。构件主要有两大类,一个是中央共享数据源,保存当前系统的数据状态,另一个是多个独立处理元素,处理元素对数据元素进行操作。
(2)黑板架构风格。黑板架构包括知识源、黑板、控制三部分。知识源包括若干独立计算的不同单元,提供解决问题的知识,知识源响应黑板上的变化,也只修改黑板。黑板是一个全局数据库,包含解域的全部状态,是知识源互相作用的唯一媒介。知识源响应是通过黑板状态的变化来控制。黑板通常应用在对于解决问题没有确定性算法的系统中,例如信号处理、问题规划、编译器优化等软件系统的设计中。
三、结合项目的实际状况,指出在架构设计时选择使用软件架构风格的情况,包括选择的依据、如何做的,要给出实际的效果及分析。

第2题:

的选择是开发一个软件系统时的基本设计决策;(2)是最低层的模式,关注软件系统的设计与实现,描述了如何实现构件及构件之间的关系。引用-计数是C++管理动态资源时常用的一种(3)。

(1)

A.架构模式

B.惯用法

C.设计模式

D.分析模式


正确答案:A

第3题:

试题(45)

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

(45)

A. 在建立软件架构的初期,一般需要选择一个合适的架构风格

B. 将架构分析阶段已标识的构件映射到架构中,并分析这些构件之间的关系

C. 软件架构设计活动将已标识构件集成到软件架构中,设计并实现这些构件

D. 一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审


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

第4题:

认识与描述客观系统是软件开发工具对软件开发()阶段的支持、

  • A、需求分析
  • B、总体设计
  • C、实现
  • D、运行维护

正确答案:B

第5题:

软件架构设计主要关注软件构件的( )、属性和(请作答此空),并通过多种视图全面描述特定系统的架构。

A. 实现方式
B. 交互作用
C. 设计方案
D. 测试方式

答案:B
解析:
软件架构设计主要关注软件构件的结构、属性和交互作用 ,并通过多种视图全面描述特定系统的架构。

第6题:

从模式所提供的解决方案的抽象程度来看,模式可以分为()

A.测试模式

B.面向软件实现的设计模式

C.软件子系统或构件设计模式

D.体系结构设计模式


参考答案:B, C, D

第7题:

( )的选择是开发一个软件系统时的基本设计决策;( )是最低层的模式,关注软件系统的设计与实现,描述了如何实现构件及构件之间的关系。引用一计数是C++管理动态资源时常用的一种(请作答此空)。

A. 架构模式
B. 惯用法
C. 设计模式
D. 分析模式

答案:B
解析:
本题考查软件设计中使用的架构模式、设计模式和惯用法的基本概念。
架构模式是软件设计中的高层决策,例如C/S结构就属于架构模式,架构模式反映了开发软件系统过程中所作的基本设计决策;设计模式主要关注软件系统的设计,与具体的实现语言无关:惯用法则是实现时通过某种特定的程序设计语言来描述构件与构件之间的关系,例如引用-计数就是C++语言中的一种惯用法。

第8题:

● (57) 的选择是开发一个软件系统时的基本设计决策; (58) 是最低层的模式,关注软件系统的设计与实现,描述了如何实现构件及构件之间的关系。引用-计数是C++管理动态资源时常用的一种 (59) 。

(57)A. 架构模式 B. 惯用法 C. 设计模式 D. 分析模式

(58)A. 架构模式 B. 惯用法 C. 设计模式 D. 分析模式

(59)A. 架构模式 B. 惯用法 C. 设计模式 D. 分析模式


正确答案:A,B,B


试题(57)~(59)分析
    本题考查软件设计中使用的架构模式、设计模式和惯用法的基本概念。
    架构模式是软件设计中的高层决策,例如C/S结构就属于架构模式,架构模式反映了开发软件系统过程中所作的基本设计决策;设计模式主要关注软件系统的设计,与具体的实现语言无关:惯用法则是实现时通过某种特定的程序设计语言来描述构件与构件之间的关系,例如引用-计数就是C++语言中的一种惯用法。
参考答案
(57)A(58)B(59)B

 

第9题:

软件架构设计主要关注软件构件的(请作答此空)、属性和( ),并通过多种视图全面描述特定系统的架构。

A. 功能
B. 实现
C. 组成元素
D. 结构

答案:D
解析:
软件架构设计主要关注软件构件的结构、属性和交互作用 ,并通过多种视图全面描述特定系统的架构。

第10题:

软件复用是面向对象系统分析与设计的核心支持技术之一,软件复用的核心是()。

  • A、对象类
  • B、模块
  • C、设计模式
  • D、软件构件技术

正确答案:D

更多相关问题