体系结构复习参考.docx

上传人:b****8 文档编号:12858487 上传时间:2023-06-08 格式:DOCX 页数:15 大小:63.35KB
下载 相关 举报
体系结构复习参考.docx_第1页
第1页 / 共15页
体系结构复习参考.docx_第2页
第2页 / 共15页
体系结构复习参考.docx_第3页
第3页 / 共15页
体系结构复习参考.docx_第4页
第4页 / 共15页
体系结构复习参考.docx_第5页
第5页 / 共15页
体系结构复习参考.docx_第6页
第6页 / 共15页
体系结构复习参考.docx_第7页
第7页 / 共15页
体系结构复习参考.docx_第8页
第8页 / 共15页
体系结构复习参考.docx_第9页
第9页 / 共15页
体系结构复习参考.docx_第10页
第10页 / 共15页
体系结构复习参考.docx_第11页
第11页 / 共15页
体系结构复习参考.docx_第12页
第12页 / 共15页
体系结构复习参考.docx_第13页
第13页 / 共15页
体系结构复习参考.docx_第14页
第14页 / 共15页
体系结构复习参考.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

体系结构复习参考.docx

《体系结构复习参考.docx》由会员分享,可在线阅读,更多相关《体系结构复习参考.docx(15页珍藏版)》请在冰点文库上搜索。

体系结构复习参考.docx

体系结构复习参考

1、设计模式一般用来解决什么样的问题(a)

   A.同一问题的不同表相   B不同问题的同一表相

   C.不同问题的不同表相   D.以上都不

2、下列属于面向对象基本原则的是(c)

   A.继承 B.封装C.里氏代换 D都不是

3、Open-Close原则的含义是一个软件实体(a)

   A.应当对扩展开放,对修改关闭.

   B.应当对修改开放,对扩展关闭

   C.应当对继承开放,对修改关闭

   D.以上都不对

4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用(a)模式。

   A.创建型 B.结构型C行为型D.以上都可以

5、要依赖于抽象,不要依赖于具体。

即针对接口编程,不要针对实现编程,是(d)的表述

   A.开-闭原则

   B.接口隔离原则

   C.里氏代换原则

   D.依赖倒转原则

6、依据设计模式思想,程序开发中应优先使用的是(a)关系实现复用。

   A,委派 B.继承 C创建  D.以上都不对

   复用方式:

继承和组合聚合(组合委派)

7、设计模式的两大主题是(d)

   A.系统的维护与开发      B对象组合与类的继承

   C.系统架构与系统开发    D.系统复用与系统扩展

8、单子模式中,两个基本要点(ab)和单子类自己提供单例

   A.构造函数私有   B.唯一实例

   C.静态工厂方法   D.以上都不对

9、下列模式中,属于行为模式的是(b)

   A.工厂模式  B观察者  C适配器 以上都是

10、“不要和陌生人说话”是(d)原则的通俗表述

   A.接口隔离  B.里氏代换 C.依赖倒转  D.迪米特:

一个对象应对其他对象尽可能少的了解

11、构造者的的退化模式是通过合并(c)角色完成退化的。

   A.抽象产品   B产品   C创建者    D使用者

12、单子(单例,单态)模式类图结构如下:

   下列论述中,关于”0..1”表述的不正确的是(d)

   A.1表示,一个单例类中,最多可以有一个实例.

   B.”0..1”表示单例类中有不多于一个的实例

   C.0表示单例类中可以没有任何实例

   D.0表示单例类可以提供其他非自身的实例

13、对象适配器模式是(a)原则的典型应用。

   A.合成聚合复用原则    B.里式代换原则

   C.依赖倒转原则       D.迪米特法则

14、静态工厂的核心角色是(a)

   A.抽象产品  B.具体产品   C.静态工厂  D.消费者

15、下列关于静态工厂与工厂方法表述错误的是:

(a)

   A.两者都满足开闭原则:

静态工厂以ifelse方式创建对象,增加需求的时候会修改源代码

   B.静态工厂对具体产品的创建类别和创建时机的判断是混和在一起的,这点在工厂方法中

   C.不能形成静态工厂的继承结构

   D.在工厂方法模式中,对于存在继承等级结构的产品树,产品的创建是通过相应等级结构的工厂创建的。

16、在观察者模式中,表述错误的是(c)

   A.观察者角色的更新是被动的。

   B.被观察者可以通知观察者进行更新

   C.观察者可以改变被观察者的状态,再由被观察者通知所有观察者依据被观察者的状态进行。

   D.以上表述全部错误。

17.对于违反里式代换原则的两个类,可以采用的候选解决方案错误的是:

(d)

   A.创建一个新的抽象类C,作为两个具体类的超类,将A和B共同的行为移动到C中,从而解决A和B行为不完全一致的问题。

   B.将B到A的继承关系改组成委派关系。

   C.区分是“IS-a”还是”Has-a”。

如果是“Is-a”,可以使用继承关系,如果是”Has-a”应该改成委派关系

   D.以上方案错误

18.对象组合的有点表述不当的是(d)

   A.容器类仅能通过被包含对象的接口来对其进行访问。

   B.“黑盒”复用,封装性好,因为被包含对象的内部细节对外是不可见。

   C.通过获取指向其它的具有相同类型的对象引用,

       可以在运行期间动态地定义(对象的)组合

   D.造成极其严重的依赖关系。

19.关于继承表述错误的是:

(d)

   A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。

   B.泛化类(超类)可以显式地捕获那些公共的属性和方法。

特殊类(子类)则通过附加属性和方法来进行实现的扩展。

   C.破坏了封装性,因为这会将父类的实现细节暴露给子类。

   D.继承本质上是“白盒复用”,对父类的修改,不会影响到子类。

20.对于依赖倒转的表述错误的是(e)

   A.依赖于抽象而不依赖于具体,也就是针对接口编程。

   B.依赖倒转的接口并非语法意义上的接口,而是,一个类对其他对象进行调用时,所知道的方法集合。

   C.从选项B的角度论述,一个对象可以有多个接口。

   D.实现了同一接口的对象,可以在运行期间,顺利地进行替换。

而且不必知道所示用的对象是那个实现类的实例。

   E.此题没有正确答案。

21.面向对象的六条基本原则包括:

开闭原则,里式代换原则,合成聚合原则以及

       (依赖倒转),(迪米特法则),(单一原则),(接口隔离?

)。

22.在存在继承关系的情况下,方法向(超类)方向集中,而数据向(子类)方向集中。

23.适配器模式,分为类的适配器和对象的适配器两种实现。

       其中类的适配器采用的是(继承)关系,而对象适配器采用的是(组合聚合)关系。

24.设计模式的基本要素有(名字),(意图),(问题),(解决方案),(参与者与协作者),(实现),(一般性结构)。

25.创立型模式的根本意图是要把(对象的创建)和(使用分离)的责任进行分离,从而降低系统的(耦合度)。

26.工厂模式分为(简单工厂),(工厂方法),(抽象工厂)三种类型

27.门面模式是(迪米特)法则的典型运用

28.MVC模型的基本工作原理是基于(观察者)模式,实现是基于(命令)模式

29.设计模式的思想根源是(开闭)基本原则的宏观运用,本质上是没有任何模式的,

       发现模式的人永远是大师,而死守模式的人,最对只能是一个工匠.

UML、设计模式(测试题)

不定项选择题:

1.一个软件产品是否成功,因素有(       )。

 需求收集是否正确、体系结构的构建是否合理、测试是否完全、软件的管理   

3.用例是从(  用户   )的观点对系统行为的一个描述。

4.顺序图所表达的是基于(   时间顺序   )的动态交互。

6.表示一个操作中的参数和返回值的数据类型的称呼是(形构     )。

8.在找出了类的继承关系后,通常可以用(  接口    )来表示最上层的基类。

9.UML中的实现是一种特殊类型的继承,因为它是指从一个(    接口  )继承。

10.使用用例的难点在于(  用例中各个场景的具体步骤   )。

11.收集用例的方法是(   交谈   )。

12.产生类图和得到用例这两个步骤,位于前面的是(没有固定顺序 )。

13.面向对象理论中,对象之间发送信号,在UML状态图里就是(  事件    )。

14.顺序图中,动态创建对象表示法的特点是(是在时间线上的某一点创建,结束时尾部打X)。

15.当代软件工程的特点是(       ) 允许各个阶段进行、各个阶段没有明显的分界线、允许后期得到的信息返回,使得早期的能够被修改。

16.GRAPPLE

中最重要的段是(       )。

需求收集需求分析用例开发编码

测试

17.设计模式的基本要素有(  名称,目的(意图),解决方案,实施后达到的效果    )。

18.当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用(   创建性   )模式。

19.当我们想将抽象部分和实现部分分离时,可以使用(   桥接   )模式。

20.当我们想用不同的请求对客户进行参数化时,可以使用(   命令   )模式。

21.当我们想封装不同算法并使它们可相互替换时,可以使用(     策略)模式。

25.设计模式中应优先使用的复用技术是(   对象组合   )。

26.在Lexi系统中,我们把所有文档元素都看作是图元,这样,它们就有了相同的(  接口(也叫类型)    )。

1.软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述   活动  ,也不描述       系统怎样开发    ,它只描述系统的     组成元素   及其相互的    交互协作      。

2.一个UML模型只描述了一个系统    要做什么      ,它并没告诉我们系统是 怎么做        。

3.接口是以在整个模型中反复使用的一组行为,是一个没有  属性    而只有方法    的类。

4.多重性指的是,某个类有     多个个对象可以和另一个类的      1个  对象关联。

5.当一个类的对象可以充当多种角色时,    自身   关联就可能发生。

6.在泛化关系中,子类可以替代父类。

也就是说,后者出现的地方,前者都可以出现。

但是反过来却不成立。

7.最通常的依赖关系是一个类操作的   形构    中用到了    另一个类       的定义。

9.实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用  虚线  表示,继承关系用实线  表示。

10.UML背后的两个重量级概念是用例 和面向象  。

11.状态图和类图、顺序图不同之处在于,后两种图能够对   多个对象 建立模型,而状态图只是对1个对象  建立模型。

12.状态图中3个常用的动作是 入口动作 、出口动作  和 do动作,也就是对象处于这个状态时应该做什么。

13.顺序图中,消息用 水平箭头线   表示;时间用  垂直虚线   表示。

14.当逻辑发生分支时,在顺序图中用生命线发生的分支  表示,在协作图中用嵌套的序号 表示。

15.顺序图强调的是交互的时间顺序,协作图强调的是交互的  空间关系和参与交互的对象的上下文环境  。

16.GRAPPLE

把开发过程分为5个 段 ,之中又由许多 动作组成。

17.GRAPPLE过程中,得到初步类图是在需求收集段,细化类图是在需求分析    段。

18.每一个设计模式都集中于一个特定的设计问题  ,描述了   相互通信的对象或类 、以及     解决方案     和 解决效果  。

19.面向对象系统中功能复用的两种最常用技术是对象组合    和类继承 。

20.设计模式中应优先使用对象组而不是 类继承  。

2、软件工程包括3个要素方法、工具、过程。

4、三层C/S结构风络是由_表示层、功能层、数据层三个层次构成。

6、、Web服务开发生命周期分为构建、部署、运行、管理四个阶段。

7、MVC模式的中的M,V,C分别对应Mode、View、Controller三个单词。

12、浏览器/服务器(B/S)风格是三层应用结构的一种实现方式,其具体结构分为浏览器、Web服务器、数据库服务器三个部分。

13、软件体系结构设计的核心问题是能否使用重复的体系结构模式,即能否达到体系结构级的软件重用。

19、软件危机的原因:

20、在三层C/S体系结构中,中间件是最重要的构件。

21、通常,一个Web服务可以分为四个逻辑层,分别为数据层、数据访问层、业务层、监听者。

离客户最远的是数据层

23、一般来说,模式有以下四个基本成分:

模式名称、问题、解决方案、效果

27、基于事件的隐式调用风格的思想是构件不直接调用一个过程,而是触发或广播一个或多个事件。

29、SOA模型具有松散耦合、粗粒度服务、标准化接口等特征。

30、利用设计模式可以方便地重用成功的设计和结构。

31、软件系统的可靠性依赖于状态的执行顺序和每一个状态的可靠性。

33、与C/S体系结构相比,B/S体系结构的系统扩展能力好,安全性难以控制。

()

34、每个系统都可以划分为分层模式。

(错)

40、Web服务栈包含以下5个层次:

消息格式层、描述服务层、发现服务层、

编码格式层、传输协议层。

41、和Web服务密切相关的协议和语言中:

包括SOAP、WSDL、UDDI

42、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之

44、事实上,软件总是有体系结构的,不存在没有体系结构的软件。

51、软件危机是指计算机软件的开发和维护过程中所遇到的一系列严重问

题。

53、软件体系结构风格描述某一特定领域中系统组织方式的惯用模式。

55、设计模式是一些设计面向对象的软件开发的经验总结,是系统的命名、

解释、和评价某一个重要的面向对象的可重现的面向对象的设计方案。

58、管道过滤器风格有哪些特点?

答:

(1)使得软件具有良好的隐蔽性和高内聚、低耦合的特点;

(2)允许设计者

将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成;(3)支持软

件重用;(4)系统维护和增强性能简单;(5)允许对一些吞吐量、死锁属性的分

析;(6)支持并行执行。

但是,这样的系统也存在着若干不利因素。

(1)通常导

致进程成为批处理的结构。

这是因为虽然过滤器右增车式地处理数据,但它们是

独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换。

(2)

不适合处理交互的应用。

当需要增量地显示改变时,这个问题尤为严重。

(3)因

为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,

这样就导致了系统性能下降,并增加了编写过滤器的复杂性。

59、什么是设计模式?

它与风格、框架有什么区别联系?

设计模式是对通用设计问题的重复解决方案。

软件体系结构风络是描述某

一特定应用领域中系统组织方式的惯用模式。

61、构件是指语义完整、语法正确和有可重用价值的单位软件。

65、什么是MVC模式,其优缺点分别是什么?

MVC是一种交互界面组织结构模型,用它把系统的组成分解为模型、视图和控制

三种构件。

优点:

(1)可以支持多个视图。

(2)方便对视图的更改。

缺点:

(1)增加了复杂性。

还增加了用户界面代码的事件驱动特性,调试用

户界面代码会变得更加困难。

1.管道和过滤器风格

答:

在管道过滤器模式下,功能模块称作过滤器;功能模块间的连接可以看作输

《软件体系结构》期末复习题

1、软件危机主要表现在哪些方面?

答:

1)软件成本日益增长;2)开发进度难以控制;3)软件质量差;4)软件维护困难。

这题最好谈谈自己对软件危机的看法。

2、软件体系结构建模的种类有:

结构模型、框架模型、动态模型、过程模型、功能模型。

3、“4+1”视图模型从5个不同的视角包括:

逻辑视图、进程视图、物理视图、开发视图和场景视图来描述软件体系结构。

4、构件:

是具有某种功能的可重用的软件模板单元。

连接件:

表示构件之间的交互。

配置:

表示构件和连接件的拓扑逻辑和约束。

端口:

表示构件和外部环境的交互点。

角色:

定义了该连接交互的参与者。

5、画出“4+1”视图模型图,分析各部分的原理和功能。

见p31

6、软件体系结构风格:

是描述某一特定应用领域中系统组织方式的惯用模式。

7、分层系统的优点有:

1)支持基于抽象程度递增的系统设计,使设计者可以把一个复杂系统按递增的步骤进行分解;

2)支持功能增强,因为每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层;

3)支持重用。

只要提供的服务接口定义不变,同一层的不同实现可以交换使用。

这样,就可以定义一组标准的接口,而允许各种不同的实现方法。

8、分层系统的缺点有:

1)并不是每个系统都可以很容易地划分为分层的模式,甚至即使一个系统的逻辑结构是层次化的,出于对系统性能的考虑,系统设计师不得不把一些低级或高级的功能综合起来;

2)很难找到一个合适的、正确的层次抽象方法。

9、B/S体系结构的优点有什么?

答:

1)基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。

用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的功能,很容易在运行时自动升级。

2)B/S体系结构还提供了异种机、异种网、异种应用服务的联机、联网、统一服务的最现实的开放性基础。

10、B/S体系结构的缺点有什么?

答:

1)B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能。

2)B/S体系结构的系统扩展能力差,安全性难以控制。

3)采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远地低于C/S体系结构。

4)B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用。

11、软件体系结构的动态性主要分为:

交互式动态性、结构化动态性、体系结构动态性等三类。

12、请画出基于构件的动态系统结构模型画。

见p153

13、Web服务分为五个逻辑层:

数据层、数据访问层、业务逻辑层、业务面、监听者。

14、Web服务的特点有:

使用标准协议规范、使用协约的规范性、高度集成能力、完好的封装性、松散耦合。

15、请画出Web服务的模型图。

见p173

16、Web服务体系结构的优势有:

1)高度的通用性和易用性;2)完全的平台、语言独立性;3)高度的集成性;4)容易部署和发布。

17、UML中的交互图有两种,分别是顺序图和协作图,请分析一下两者之间的主要差别和各自的优缺点。

掌握利用两种图进行的设计的方法。

答:

顺序图可视化地表示了对象之间随时间发生的交互,它除了展示对象之间的关联,还显示出对象之间的消息传递。

与顺序图一样,协作图也展示对象之间的交互关系。

顺序图强调的是交互的时间顺序,而协作图强调的是交互的语境和参与交互的对象的整体组织。

顺序图按照时间顺序布图,而协作图按照空间组织布图。

顺序图可以清晰地表示消息之间的顺序和时间关系,但需要较多的水平方向的空间。

协作图在增加对象时比较容易,而且分支也比较少,但如果消息比较多时难以表示消息之间的顺序。

18、什么是高内聚度?

答:

高内聚度是对一个类中的各个职责之间相关程度和集中程度的度量。

一个具有高度相关职责的类并且这个类所能完成的工作量不是特别巨大,那么它就具有高内聚度。

19、UML提供了一系列的图支持面向对象的分析与设计,其中____

(1)___给出系统的静态设计视图;___

(2)____对系统的行为进行组织和建模是非常重要的;____(3)___和____(4)___都是描述系统动态视图的交互图,其中___(3)___描述了以时间顺序组织的对象之间的交互活动,___(4)____强调收发消息的对象的组织结构。

A、状态图B、用例图C、时序图D、配置图

E、协作图F、类图

答:

(1)F

(2)B(3)C(4)E

20、找出下面场景中的概念类:

(1)顾客带着购买的商品或服务来到POS收款台

(2)收款员启动一次销售

(3)收款员输入商品标识

(4)系统记录商品,并且显示该商品说明,价格,并计算总金额。

按一组计价规则计算单价。

答:

顾客、POS收款台、收款员、销售、商品标识、商品、商品说明。

21、画出下面场景的时序图:

1.收款员启动一次销售(makeNewSale())

2.收款员输入商品标识(enterItem(itemID,quantity))

3.销售结束,系统计算并显示总金额(endSale())

4.顾客付款,系统处理支付。

(makePayment(amount))

21题24题

22、统一过程中有哪四个阶段,各阶段需要完成的主要工作有哪些?

答:

1)初始阶段:

编制简要的愿景文档、业务案例、确定范围、粗略评估成本。

2)细化阶段:

细化场景文档、迭代地实现核心构架、解决高风险的问题、定义大多数的需求和范围、进一步评估成本。

3)构造阶段:

迭代地实现系统的其余部分、准备部署。

4)提交阶段:

beta测试、部署。

23、简述统一建模语言(UML):

答:

统一建模语言(UML)是一种绘制软件蓝图的标准语言。

可以用UML对软件密集型系统的制品进行可视化详述和文档化。

UML是一种定义良好、易于表达、功能强大且普遍适用的可视化建模语言。

它融入了软件工程领域的新思想、新方法和新技术。

它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。

UML的作用就是用很多图从静态和动态方面来全面描述我们将要开发的系统。

24、在电话系统中假设有两个打电话的个案:

使用电话卡和对方付款,其中PhoneUser是电话用户,请画出其usecasediagram。

答:

usecasediagram如下所示:

 

25、试述一种系统的可靠性模型化方法或步骤。

P246

三:

设计题:

食品安全是当今社会关注的一个焦点。

一个食品安全管理系统由食品安全门户子系统、

检测子系统、预警子系统、数据库访问子系统和权限管理子系统组成。

门户、检测可以通过

浏览器访问,PDA可以使用检测系统。

其中门户子系统包含了食品安全知识发布、食品安

(1)全信息查询。

检测子系统包括样品登记、随行单生成与分发、检测结果处理与发布。

问题:

a.软件体系结构“4+1”视图是哪几种视图,简要说明每种视图的特点?

逻辑视图(LogicalView),设计的对象模型(使用面向对象的设计方法时)。

过程视图(ProcessView),捕捉设计的并发和同步特征。

物理视图(PhysicalView),描述了软件到硬件的映射,反映了分布式特性。

开发视图(DevelopmentView),描述了在开发环境中软件的静态组织结构。

场景(scenarios),综合所有视图,进行无缝协同工作。

b.请根据上面所描述的需求,设计出该系统的功能视图,并简要说明

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 自然景观

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2