软件设计与体系结构

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.面向对象编程中是如何体现封装性的?

2.面向对象编程的重载和重写的含义是什么?

3.什么是接口回调?其过程细节是怎样的?

4.是举例说明什么是组合关系和依赖关系?

5.距离说明什么是抽象类和接口,有什么区别,如何应用它

们?

6.面向对象方法有哪些基本原则?

①抽象类与接口②面向抽象原则③开-闭原则④“多用组

合,少用继承”原则⑤“高内聚-低耦合“原则

7.什么是设计模式?它的基本要素有哪些?

8.什么是框架?框架与模式的区别有哪些?

框架是针对某个领域,提供用于开发应用系统的类的集合。

区别:①层次不同②范围不同③相互关系

9.举例说明面向对象的多态性?

10.软件体系结构有哪几种形式?

1.概念结构:从主要设计元素(构件)及其相互关联、设

计原则和性能角度考虑的结构。

2.模块结构:根据功能分解建立模块的层次结构包括模块

接口、模块管理、模块控制和一致性等问题。

3.代码结构:描述源程序,二进制程序,库文件。在开发

环境下的组织包括系统资源配置管理,系统构造和对象嵌

入机制 OEM 等。

4.执行结构:描述系统的动态结构包括性能、调度、动态

配置和不同系统间的接口等。

11.构件之间的连接方式有哪些?

1)过程调用: 在某一特定执行路径中传递执行指针。如普通

过程调用、远程过程调用。

2)数据流: 相互独立的处理通过数据流进行交互,在得到数

据的同时被赋予控制权限。如 UNIX 系统中的管道。

3)间接激活: 处理因事件的发生而激活,在处理间没有直接

交互。例如,事件驱动系统、自动垃圾回收等。

4)消息传递: 相互独立的处理间有明确交互,通过显式数据

传递。传递可以是同步的,也可以是异步的。如TCP/IP 。

5)共享数据: 构件通过同一数据空间进行并发操作。如多用

户数据库, 数据黑板。

12.C/S体系结构的主要组成部分有哪些?其作用是什么?

1)服务器:负责给其他子系统提供服务。如,数据库服

务器提供数据存储和管理服务,文件服务器提供文件

管理服务,打印服务器提供打印服务等。

2)客户机:向服务器请求服务。客户机通常都是独立的

子系统,在某段时间内,可能有多个客户机程序在并

发运行。

3)网络:连接放在不同机器上的客户机和服务器。13.三层C/S体系结构的数据处理流程是怎样的?

14.软件体系结构的评价指标有哪些?

1)性能:性能是指系统的响应能力,即响应时间、单位时间的

处理量及特定事务的处理时间等。一般使用基准测试程序对性能进行测试。

2)可靠性:可靠性是指“在特定环境和特定时间内,计算机程

序无故障地运行的概率”。可靠性通常用“平均失效间隔时间”

(MTBF)来衡量。 MTBF=MTTF+MTTR

3)可用性:可用性是系统能够正常运行的时间比例。

4)安全性:安全性是系统在向合法用户提供服务的同时能够阻

止非授权用户使用的企图或拒绝服务的能力。安全性又可划分为机密性、完整性、不可否认性及可控性等。

5)可修改性:可修改性是指能够快速地以较高的性能价格比对

6)功能性:功能性是系统能完成所期望工作的能力。一项任务

的完成需要系统中许多构件的相互协作。

7)可变更性:可变更性是指体系结构经扩充或变更而成为新体

系结构的能力。这种新体系结构应该符合预先定义的规则,在某些具体方面不同于原有的体系结构。当要将某个体系结构作为一系列相关产品(例如,软件产品线)的基础时,可变更性有重要的作用。

8)可集成性:集成性是指系统能与其他系统协作的程度。

9)互操作性:作为系统组成部分的软件不是独立存在的,经常

与其他系统或自身环境相互作用。为了支持互操作性,软件体系结构必须为外部可视的功能特性和数据结构提供精心设计的功能入口。

15.什么是ADL,常见的主流ADL有哪些?

体系结构描述语言(architecture description language,

ADL)是参照传统编程语言,并针对软件体系结构特点,重新设计、开发和使用的专门的软件体系结构描述语言。

主要的体系结构描述语言(ADL):

Aesop支持体系结构风格的应用;

MetaH为设计者提供了关于实时电子控制系统软件的设计指导;

C2支持基于消息传递风格的用户界面系统的描述;

Rapide支持体系结构设计的模拟,并提供了分析模拟结果的工具;

SADL提供关于体系结构细化的形式化基础;

Unicon支持异构的构件和连接类型,并提供了关于体系结构的高层编译器;

Wright支持体系结构之间交互的说明和分析。

16.ADL有哪些特性?

1)构造能力:ADL能使用较小的独立体系结构元素来建

造大型软件系统。

2)抽象能力:ADL可以在描述软件体系结构中的构件和

连接件时只关注它们的抽象特性,而不管其具体的实

现细节。

3)复用能力:ADL在设计和开发软件系统时可把所用到

的构件、连接件甚至是软件体系结构都当做可复用的

部件。

4)组合能力:ADL在描述每一系统元素时都要描述其自

己的局部结构,这种描述局部结构的特点使得ADL可

支持软件系统的动态变化组合。

5)异构能力:ADL允许多个不同的体系结构描述关联存

在。分析和推理能力:ADL允许对其描述的体系结构

进行多种不同的性能和功能上的多种推理分析。

17.ADL构成元素?

构件:构件是一个计算单元或数据存储。可以包含多种属性,如接口、类型、语义、约束、演化和非功能属性等接口是构件与外部世界的一组交互点,ADL中的构件接口说明了构件提供了哪些服务。

连接件:用来建立构件之间的交互以及支配这些交互规则的体系结构构造模块。连接件可以是共享变量、表入口、缓冲区、对连接器的指令、动态数据结构等。连接件

也有接口。连接件的接口由一组角色组成,连接件的每一种角色定义了该连接件表示的交互的参与者,二元连接有两个角色,如消息传递连接件的角色是发送者和接收者。

体系结构配置:体系结构配置描述体系结构的构件与连接件的连接图。体系结构配置提供信息来确定构件是否正确连接、接口是否匹配、连接件构成的通信是否正确,并说明实现要求行为的组合语义。

18.设计模式基本要素?

模式名用于描述模式的名字,说明模式的问题、解决方

案和效果。

问题解决说明在何种场合使用模式。要描述使用模式的

先决条件和特定设计问题

相关文档
最新文档