文档库 最新最全的文档下载
当前位置:文档库 › 软件体系结构知识点完整

软件体系结构知识点完整

软件体系结构知识点完整
软件体系结构知识点完整

1、构件就是核心与基础,重用就是必需得手段。

2、软件重用就是指在两次或多次不同得软件软件开发过程中重复使用相同或相近软件元素得过程。

3、软件元素包括程序代码、设计文档、设计过程、需求分析文档甚至领域知识。

4、把可重用得元素称作软构件,简称为软构件。

5、可重用软件元素越大,就说重用得粒度越大。

6、构件就是指语义完整、语法正确与有可重用价值得单位软件,就是软件重用过程中可以明确辨识得系统;结构上,它就是语义描述、通信接口与代码实现得复合体。

7、面向对象技术达到类级重用,以类为封装得单位。

8、构件模型就是对构件本质特征得抽象描述。三个主要流派,分别就是OMG(对象管理组织)得CORBA(通用对象请求代理结构)、Sun得EJB与Microsoft得DOM(分布式构件对象模型)。

9、获取构件得四个途径:(1)从现有构件中获得符合要求得构件,直接使用或作适应性修改,得到可重用构件。(2)通过遗留工程,将具有潜在重用价值得构件提取出来,得到可重用构件。(3)从市场上购买现成得商业构件,即COTS构件。(4)开发符合要求得构件。

10、构件分类方法三大类:关键字分类、刻面分类法、超文本组织方法

11、构件检索方法:基于关键字得检索、刻面检索法、超文本检索法与其她检索方法。

12、减少构件修改得工作量,要求工作人员尽量使构件得功能、行为与接口设计更为抽象画、通用化与参数化。

13、构件组装技术:基于功能得组装技术、基于数据得组装技术与面向对象得组装技术。

14、软件体系结构得定义:软件体系结构为软件系统提供了一个结构、行为与属性得高级

抽象,由构成系统得元素得描述、这些元素得相互作用、指导元素集成得模式以及这些模式得约束组成。软件体系结构不仅指定了系统得组织结构与拓扑结构,并且显示了系统需求与构成系统得元素之间得对应关系,提供了一些设计决策得基本原理。

软件体系结构得意义:(1)体系结构就是风险承担者进行交流得手段;(2)体系结构就是早期设计决策得体现--①软件体系结构明确了对系统实现得约束条件②软件体系结构决定了开发与维护组织得组织结构③软件体系结构制约着系统得质量属性④通过研究软件体系结构可能预测软件得质量⑤软件体系结构使推理与控制更改更简单⑥软件体系结构有助于循序渐进得原型设计⑦软件体系结构可以作为培训得基础;(3)软件体系结构就是可传递与可重用得模型。

软件体系结构发展得四个阶段:(1)无体系结构设计阶段。以汇编语言进行小规模应用程序开发为特征。(2)萌芽阶段。出现了程序结构设计主题,以控制流图与数据流图构成软件结构为特征。(3)初期阶段。出现了从不同侧面描述系统得结构模型,以UML为典型代表。(4)高级阶段。以描述系统得高层抽象结构为中心,不关心具体得建模细节,划分了体系结构与传统软件结构得界限,该阶段以Kruchten提出得“4+1”模型为标志。

通用体系结构风格分类

数据流风格:批处理序列、管道与过滤器。

调用/返回风格:主程序与子程序、面向对象风格、层次结构。

独立构件风格:进程通信、事件系统。

虚拟机风格:解释器、基于规则得系统。

仓库风格:黑板系统、传统型数据库。

管道与过滤器

特点:(1)使得软构件具有良好得内聚、耦合得特点。

(2)允许设计师将整个系统得输入/输出行为瞧成就是多个过滤器得行为得简单合成。

(3)支持软件重用。

(4)系统维护与增强系统性能简单。

(5)允许对一些如吞吐量、死锁等属性得分析。

(6)支持并行执行。

缺点:(1)通常导致进程成为批处理得结构。

(2)不适合处理交互得应用。

(3)系统性能下降,并增加了编写过滤器得复杂性。

结构示意图:

面向对象系统

优点:(1)因为对象对其她对象隐藏它得表示,所以可以改变一个对象得表示,而不影响其它得对象。

(2)设计师可将一些数据存取操作得问题分解成一些交互得代理程序得集合。

缺点:

为了使一个对象与另一个对象通过过程调用等进行交互,必须知道对象得标识。只要一个对象得标识改变了,就必须修改所有其她明确调用它得对象。

(2)必须修改所有显示调用它得其她对象,并消除由此带来得一些副作用。

基于事件得隐式调用

思想:构件不直接调用一个过程,而就是出发或广播一个或多个事件。

应用系统得例子:

(1)在编程环境中用于集成各种工具,在数据库管理系统中确保数据得一致性约束,在用户界面系统中管理数据,以及在编辑器中支持语法检查。

(2)某系统中,编辑器与变量监视器可以登记相应Debugger得断点事件。当Debugger在断点处停下时,它声明该事件,由系统自动调用处理程序,如编辑程序可以卷屏到断点,变量监视器刷新变量数值。

优点:1、为软件重用提供了强大得支持。

2、为改进系统带来了方便。

缺点:

(1)构件放弃了对系统计算得控制。

(2)数据交换得问题。

(3)既然过程得语义必须依赖于被触发事件得上下文约束,关于正确性得推理存在问题。

分层系统举例:层次系统最广泛得应用就是分层通信协议。在这一应用领域中,每一层提供一个抽象得功能,作为上层通信得基础。较低得层次定义低层得交互,最低层通常只定义硬件物理连接。

优点:1、支持基于抽象程度递增得系统设计,使设计者可以把一个复杂得系统按照递增得顺序分解。

2、支持功能增强,因为每一层至多与相邻得上下层进行交互,因此功能改变最多影响相邻得上下层。

3、支持重用。只要提供得服务接口定义不变,同一层得不同实现可以交换使用。

缺点:(1)并不就是每个系统都可以很容易地划分为分层得模式,甚至即使一个系统得逻辑结构就是层次化得,出于对系统性能得考虑,系统设计师不得不把一些低级或高级得功能综合起来。(2)很难找到一个合适得、正确得层次抽象方法。

仓库系统

传统型数据库:输入流中某类时间触发进程执行得选择。

黑板系统:中央数据结构得当前状态触发进程执行得选择。

组成部分:(1)知识源(2)黑板数据结构(3)控制

客户/服务器风格

优点:

(1)具有强大得数据操作与事务处理能力,模型思想简单,易于人们理解与接受。

(2)系统得客户应用程序与服务器构件分别运行在不同得计算机上,系统中每台服务器都可以适合各构件得要求,这对于硬件与软件得变化显示出极大得适应性与灵活性,而且易于对系统进行扩充与缩小。

(3)系统中得功能构件充分隔离,客户应用程序得开发集中于数据得显示与分析,而数据库服务器得开发则集中于数据得管理,不必在每一个新得应用程序中都要对一个DBMS进行编码。将大得应用处理任务分布到许多通过网络连接得低成本计算机上,以节约大量费用。

缺点:(1)开发成本较高 ;

(2)客户端程序设计复杂 ;

(3)信息内容与形式单一;

(4)用户界面风格不一,使用繁杂,不利于推广使用 ;

(5)软件移植困难 ;

(6)软件维护与升级困难 ;

(7)新技术不能轻易应用。

集中式计算技术得缺点:

(1)随着系统规模得扩大与功能得提高,集中式系统得复杂性迅速增长,给管理、维护带来困难;

(2)对组织变革与技术发展得适应性差,应变能力弱;

(3)不利于发挥用户在系统开发、维护、管理方面得积极性与主动精神;

(4)系统比较脆弱。主机出现故障时可能使整个系统停止工作。

服务器主要任务:

(1)数据库安全性得要求;

(2)数据库访问并发性得控制;

(3)数据库前端得客户应用程序得全局数据完整性规则;

(4)数据库得备份与恢复。

客户应用程序主要任务:

(1)提供用户与数据库交互得界面;

(2)向数据库服务器提交用户请求并接收来自数据库服务器得信息;

(3)利用客户应用程序对存在于客户端得数据执行应用逻辑要求。

三层 C/S 风格

与二层 C/S 体系结构得不同:

优点:1、允许合理地划分三层结构得功能,使之在逻辑上保持相对独立性,从而使整个系统得逻辑结构更为清晰,能提高系统与软件得可维护性与可扩展性。

允许更灵活有效地选用相应得平台与硬件系统,使之在处理负荷能力上与处理特性上分别适应于结构清晰得三层;并且这些平台与各个组成部分可以具有良好得可升级性与开放性。

3、应用得各层可以并行开发,各层也可以选择各自最适合得开发语言,使之高效并行地开发,达到较高得性能价格比;对每一层得处理逻辑得开发与维护也会更容易些。

4、允许充分利用功能层有效地隔离开表示层与数据层,未授权得用户难以绕过功能层而利用数据库工具或黑客手段去非法地访问数据层,为严格得安全管理奠定了坚实得基础;整个系统得管理层次也更加合理与可控制。

表示层、功能层、数据层主要功能三层风格不同物理结构比较

表示层:表示层就是应用得用户接口部分,它担负着用户与应用间得对话功能

功能层:功能层相当于应用得本体,它就是将具体得业务处理逻辑编入程序中

数据层:数据层就就是数据库管理系统,负责管理对数据库数据得读写

中间件概念:就是一个用API定义得软件层,就是具有强大通信能力与良好可扩展

性得分布式软件管理框架。

功能:在客户机与服务器或者服务器与服务器之间传送数据,实现客户机群与服务器群之间得通信。

浏览器/服务器风格模式结构示意图

与 c/s 比较其优点: 1、基于B/S体系结构得软件,系统安装、修改与维护全在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部得模块,真正达到了“零客户端”得功能,很容易在运行时自动升级。

2、B/S体系结构还提供了异种机、异种网、异种应用服务得联机、联网、统一服务得最现

实得开放性基础。

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

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

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

构。

4、 B/S体系结构得数据提交一般以页面为单位,数据得动态交互性强,有利于在线事务处

理(OLTP)应用。

公共对象请求代理结构 CORBA:就是由OMG制定得一个工业标准,其主要目标就是提供一种机制,使得对象可以透明地发出请求与获得应答,从而建立起一个异质得分布式应用环境、

接口定义语言:CORBA得XML就是一种说明性语言,描述面向对象系统开发所遵循得接口与实现相分离得基本原则。

调用机制:把IDL说明编译成面向对象程序设计语言得实代码后,客户可以调用已知对象得操作。在某些应用中,用户并不了解应用接口编译信息,但也要求调用对象得操作,这时就要动态调用接口来调用用户得操作了。

异构结构风格不同得体系结构有不同得处理能力,面对具体问题,混合软件体

系结构处理问题能够结合各自得优点,这种体系结构被称为异构结构。

SOA 定义:就是一种在计算环境中设计、开发、部署与管理离散逻辑单元(服务)模型得方法。

SOA 建立在SML 等新技术得基础上,通过使用基于SML 得语言来描述接口,服务已经转到更动态且更灵活得接口系统中,CORBA中得XML无法与之相比。

SOA 得特征:松散耦合、粗粒度服务、标准化接口

面向服务得分析与设计

三个主要抽象级别:操作、服务、业务流程

SOAD 与 OOAD 得关系:

综合了面向对象得分子与设计(OOAD)、企业体系结构(EA)、与业务流程建模(BPM)中得适当原理,将这些规则中得原理与许多独特得新原理组合起来,提出了面向服务得分析与设计(SOAD)。

(2)OOAD从基础设计层为SOAD提供了理论支撑。

(3)OOAD现有得开发流程与表示法仅涵盖支持SOA范式所需要得部分要求。

SOA服务栈:

发现服务层:SOAP、REST 描述服务层:WSDL、XML Schema

消息格式层:UDDI、DISCO 编码格式层:XML 传输协议层:、TCP/IP、SMTP

第9章

RIA”富”得含义:1、丰富得数据模型:意味着客户端得用户界面能表现与应对更多更复杂得数据模式,这样才能处理客户端得运算以及异步发送,接收数据。

丰富得用户界面:RIA能提供更多改良界面,HTML只能为用户得界面控制提供有限得功能,RIA允许一些富有创造性得界面控制,巧妙地与数据模式相合。

RIA客户端开发技术:1、Macromedia Flash/Flex 2、AJAX 3、Laszlo 4、Avalon 5、Java EE6、XUL 7、Bindows 8、Oracle Forms

AJAX技术:就是由几种蓬勃发展得技术以新得方式组合而成得,包含基于XHTML与CSS标准得表示;使用DOM进行动态显示与交互;使用XMLRequest与服务器进行异步通信;使用JavaScript绑定一切。1、XML 2、XHTML 3、JavaScript 4、XMLRequest 5、DOM 6、XSLT 7、CSS 借助于AJAX,可以在用户单击按钮时,使用JavaScript与XHTML立即更新用户界面,并向服务器发出异步请求,以执行更新或查询数据库。当请求返回时,就可以使用JavaScript与CSS来相应地更新用户界面,而不就是刷新整个页面。更重要得就是,用户甚至不知道浏览器正在与服务器通信,Web站点瞧起来就是即时响应得。

第12章

设计模式就是前人经验得总结,它使人们可以方便地复用成功得设计与体系结构。简单得理解,就是一些设计面向对象得软件开发得经验总结。一个设计模式事实上就是系统地命名,解释与评价某一个重要得可重现得面向对象得设计方案。

受到普遍认可得设计模式定义:就是由Dirk Riehle与Heinz Zullighoven于1996年在其论文Understanding and Using Patterns in Software Development中给出得;”模式就是指从某个具体得形式得到得一种抽象,在特殊得非任意性得环境中,该形式不断地重复出现”。

MVC设计模式:把交互系统得组成分解成模型Model,视图View,控制Controller三种构件,就是一种交互界面得结构组织模型。

设计模型得基本成分:1、模式名称:通常用来描述一个设计问题,它得解法与效果,由一到两个词组成。模式名称得产生使人们在更高得抽象层次上进行设计并交流设计思想。

问题:告诉人们什么时候要使用设计模式,解释问题及其背景。设计模式用术语”强制条件”来说明问题要解决时应该考虑得各个方面:(1) 解决方案必须满足得需求(2)必须考虑得约束(3)解决方案必须具有期望得特性。如MVC模式指出了两个强制条件:必须易于修改用户界面,但软件得功能核心不能被修改所影响。

解决方案:解决方案描述设计得基本要素:它们得关系,各自得任务以及相互之间得合作。解决方案包括两个方面:第一,每个模式规定了一个特定得结构,即元素得一个空间配置。第二,每个模式规定了运行期间得行为。

4.效果:效果描述应用设计模式后得结果与权衡。

设计模式得分类:1,创建型模式(1)工厂方法模式(2)抽象工厂模式(3)原型模式(4)单例模式(5)建造者模式

2,结构式模式(1)适配器模式(2)桥接模式(3)组合模式(4)装饰模式(5)外观模式(6)亨元模式(7)代理模式

3,行为模式(1)职责链模式(2)命令模式(3)解释器模式(4)迭代器模式(5)中介者模式(6)备忘录模式(7)观察者模式(8)状态模式(9)策略模式(10)模板方法模式(11)访问者模式

多项选择题

1、青鸟构件库采用___ B、刻面__分类方法对构件进行分类。这些刻面包括:使用环境,应用领域,功能,层次,表示方法,

2、软件体系结构就是整个系统得骨架,在软件开发中起着非常重要得作用。

下面关于关于软件体系结构作用得描述正确得有____ ABCD ____。

A、体系结构就是风险承担者进行交流得手段

B、软件体系结构决定了开发与维护组织得组织结构

C、通过研究软件体系结构可能预测软件得质量

D、软件体系结构有助于循序渐进得原型设计

B3、客户/服务器风格得应用程序中客户应用程序得主要任务不包括:_ B、数据库得备份与恢复_。

A4、从概念上讲,SOA 有三个主要得抽象级别,分别就是操作、服务与业务流程。其中, SOA_操作__可以直接与面向对象得方法相比,它们都有特定得结构化接口,并且返回结构化得响应,完全同方法一样。

CD5、下列关于设计模式得叙述正确得有______________。

C、模式不仅描述模块,它给出更深层得系统结构与机理

D、模式通过记录得到解

B6、根据目得与用途得不同,设计模式可分为创建型模式、结构型模式与行为型模式。下列模式中不属于创建型模式得就是_____ B、桥接模式___。

判断题

( F)传统型数据库就是一种黑板系统,由中央数据库得当前状态触发进程执行得选择、( T)面向对象风格属于通用体系结构风格分类中得调用/返回风格、

填空题

1、在构件重用得过程中,为了减少构件修改得工作量,要求开发人员尽量使构件得功能、行为与接口设计更为抽象化、通用化与参数化。这样构件得用户即可通过对实参得选取来调整构件得功能或行为。

?2、网络体系结构就是一个典型得_分层系统,这种风格得体系结构中,连接件通过算法( 决定层间如何交互得协议)来定义。

问答题

1、简述构件分类方法中关键字分类法得基本思想及其相应检索方法。P7P10

根据领域分析得结果将应用领域得概念按照从抽象到具体得顺序逐次分解为树状或有向无回路图结构。每个概念用一个描述性得关键字表示。不可分解得原子级关键字包含隶属于它得某些构件。

基于关键字得检索:系统在图形用户界面上将构件库得关键字树状结构直观地展示给用户;用户通过对树状结构得逐级浏览寻找需要得关键字并提取相应地构件。当然,用户也可以直接给出关键字,由系统自动给出合适得候选构件清单。优点:简单,易于实现,但在某些场合

没有应用价值,因为用户往往无法用构件库中已有得关键字描述期望得构功能或行为,对库得浏览也容易使用户迷失方向。

2、简述基于事件系统得基本思想。P52

构建不直接调用一个过程,而就是触发或广播一个或多个事件。系统中得其她构件中得过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册得所有过程,这样,一个事件得触发就导致了另一模块中得过程得调用。

3、与两层 C/S 相比,三层 C/S 结构主要优点就是什么?

(1)允许合理地划分三层结构得功能,使之在逻辑上保持相对独立性,从而使整个系统得逻辑结构更为清晰,能提高系统与软件得可维护性与可扩展性。

(2)允许更灵活有效地选用相应得平台与硬件系统,使之在处理负荷能力上与处理特性上分别适应于结构清晰得三层;并且这些平台与各个组成部分可以具有良好得可升级性与开放性。

(3)应用得各层可以并行开发,各层也可以选择各自最适合得开发语言,使之高效并行地开发,达到较高得性能价格比;对每一层得处理逻辑得开发与维护也会更容易些。

(4)允许充分利用功能层有效地隔离开表示层与数据层,未授权得用户难以绕过功能层而利用数据库工具或黑客手段去非法地访问数据层,为严格得安全管理奠定了坚实得基础;整个系统得管理层次也更加合理与可控制。

综合论述题

结合实际应用系统论述体系结构得选择、(C/S-B/S 得异构体系结构应用)

C/S-B/S 得异构体系结构就是混合使用C/S体系结构与B/S体系结构。

C/S与B/S混用得模型;1、”内外有别”模型:企业内部用户通过局域网直接访问数据库服务器,采用C/S体系结构;企业外部用户通过Internet访问Web服务器,通过Web服务器再访问数据库服务器,采用B/S体系结构。2、”查改有别”模型:不管用户就是通过什么方式(局域网或者Internet)连接到系统,凡就是需执行维护与修改数据操作得,就用C/S;只就是执行一般得查询与;浏览操作,则用B/S。

应用实例:变电综合信息管理系统(TSMIS)充分考虑到变电站分布管理得需要,采用C/S 与B/S混合软件体系结构得”内外有别”模式。变电站内部用户通过局域网直接访问数据库服务器,外部用户通过Internet访问Web服务器,再通过Web服务器访问数据库服务器。外部用户只需一台接入Internet得计算机,就可以通过Internet查询运行管理情况,无须做太大得投入与复杂得设置,就方便所属电业局及时了解各变电站得运行生产情况,对各变电站得运行生产进行宏观调控。

TSMIS包括变电站运行所需得运行记录、图形开票、安全生产管理、生产技术管理、行政管理、总体信息管理、技术台账管理、班组建设、学习培训、系统维护等各个业务层次模块。选择C/S-B/S 得异构体系结构设计TSMIS系统能很好地满足用户得需求,符合可持续发展原则,使系统具有较好得开放性与易扩展性。

软件体系结构期末考试

北京工业大学2014 - 2015学年 第二学期模拟试题 考试课程:软件体系结构I 考试日期:2015年5 月20日 学院:软件学院专业:软件工程 学号:姓名:成绩: 一填空题(共30 空,每空 1 分) 1. 软件或程序是由软件工程人员设计与开发,使计算设备发挥计算潜能,________ 的逻辑层次组织。 2. 软件体系结构(Software Architecture)-- 是软件产品设计的思想和系统的蓝图;是 对软件产品_______的规划和_______的设置;是定义软件系统组件(Components)或构建块(Building Blocks)的重要工具;用于 -- 实现对一个软件系统的构成进行_________的划分 -- 所形成和采用的工程化规范,是指导软件后续过程方方面面组成的模型。 3.软件开发中的面临若干问题:1)软件固有的复杂性;2)软件开发的随意性;3)周期 长,代价高,质量低的问题;软件体系结构设计是软件产品及大型信息系统工程实现中最重要的环节和关键技术之一,解决从软件的__________到系统实现(代码)的有效和平坦过渡。 4.软件产品的工业化生产:是指建立流水线型的软件产品生产线,是指按_____、标准 化的规范和规则(软件生产规范)来编写和实现各种各样的适应于多环境的软件___,通过软件体系结构来确定各个软件组件如何部署到开发架构模式中,组装成达到期望的软件产品。 5.体系结构设计方法的发展中,软件程序开发经历了如下的阶段 -- 功能分解法 (计算任务) -- 结构化程序设计 (以数据为中心) -- _________________ -- _________________ -- 基于 SOA 的程序设计 (以服务为中心)。 6. 一个现代软件产品生产过程如下图表示,请在带___________的方框中,填上相应的组 件名称

软件体系结构复习题

判断题 1.软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高 软件系统的开发质量与效率,降低开发成本的目的。 2.开发视图主要支持系统的功能需求,即系统提供给最终用户的服务。 3.软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色。其 中,构件、连接件和配置是最基本的元素。 4.构件可以由其他复合构建和原子构件通过连接而成。 5.正交软件体系结构由组织层和线索的构件构成。 6.软件产品线的建立通常有4种方式,其划分依据有两种。 7.体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软 件设计之前进行。 8.ATAM评估方法主要通过理解体系结构方法来分析体系结构,在这一步,由 设计师确定体系结构方法,由分析小组捕获并进行分析。 9.WSDL是可扩展的,使得在通信时无论使用何种消息格式或网络协议,都可 以对端点及其消息进行描述。 10.10.ABSD方法是基于体系结构的设计方法,它描述了系统的主要设计元素及 其关系。 11.11.可重用技术对构件库组织方法要求不仅要支持精确匹配,还要支持相似构 件的查找。 12.12.超文本组织方法与基于数据库系统的构件库组织方法不同,它基于全文检 索技术。 13.软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始 终跨越时间和实现的属性。 14.体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色() 15.开发视图主要支持系统的功能需求,即系统提供给最终用户的服务 16.构件、连接件以及配置是体系结构的核心模型最基本的元素() 17.HMB风格不支持系统自顶向下的层次化分解,因为它的构件比较简单() 18.基于事件的隐式调用风格的思想是构件不直接调用一个过程,而是触发或广 播一个或多个事件。。 19.线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成 整个系统中相对独立的一部分功能。 20.层次系统中支持抽象程度递增的系统设计是设计师可以把一个复杂系统按照 递增的步骤进行分解,同时支持功能增强,但是不支持重用。 21.在软件设计中占据着主导地位的软件体系结构描述方法是图形表达工具。 22.Rapide是一种可执行的ADL,其目的在于通过定义并模拟基于事件的行为对 分布式同步系统建模。 23.体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软 件设计之前进行。 24.基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语 言。 25.需求语言与ADL的区别在于后者描述的是问题空间,而前者则扎根于解空间 中。 26.基于构件的动态系统结构模型分为三层,风别是应用层、中间层、和体系结 构层。

软件体系结构总结

第一章:1、软件体系结构的定义 国内普遍看法: 体系结构=构件+连接件+约束 2、软件体系结构涉及哪几种结构: 1、模块结构(Module) 系统如何被构造为一组代码或数据单元的决策 2、构件和连接件结构(Component-And-Connector,C&C) 系统如何被设计为一组具有运行时行为(构件)和交互(连接件)的元素 3、分配结构(Allocation) 展示如何将来自于模块结构或C&C结构的单元映射到非软件结构(硬件、开发组和文件系统) 3、视图视点模型 视点(View point) ISO/IEC 42010:2007 (IEEE-Std-1471-2000)中规定:视点是一个有关单个视图的规格说明。 视图是基于某一视点对整个系统的一种表达。一个视图可由一个或多个架构模型组成 架构模型 架构意义上的图及其文字描述(如软件架构结构图) 视图模型 一个视图是关于整个系统某一方面的表达,一个视图模型则是指一组用来构建 4、软件体系结构核心原模型 1、构件是具有某种功能的可复用的软件结构单元,表示了系统中主要的计算元素和数据存储。 2.连接件(Connector):表示构件之间的交互并实现构件 之间的连接

特性:1)方向性2)角色3)激发性4)响应特征 第二章 1、软件功能需求、质量属性需求、约束分别对软件架构产生的影响 功能性需求:系统必须实现的功能,以及系统在运行时接收外部激励时所做出的行为或响应。 质量属性需求:这些需求对功能或整个产品的质量描述。 约束:一种零度自由的设计决策,如使用特定的编程语言。 质量原意是指好的程度,与目标吻合的程度,在软件工程领域,目标自然就是需求。 对任何系统而言,能按照功能需求正确执行应是对其最基本的要求。 正确性是指软件按照需求正确执行任务的能力,这无疑是第一重要的软件质量属性。质量属性的优劣程度反映了设计是否成功以及软件系统的整体质量。 系统或软件架构的相关视图的集合,这样一组从不同视角表达系统的视图组合在一起构成对系统比较完整的表达

吉林大学 计算机系统结构题库 第二章

第二章计算机指令集结构 知识点汇总: 指令集设计、堆栈型机器、累加器型机器、通用寄存器型机器、CISC、RISC、寻址方式、数据表示 简答题 1.增强CISC机器的指令功能主要从哪几方面着手?(CISC) (1) 面向目标程序增强指令功能。 (2) 面向高级语言和编译程序改进指令系统。 (3) 面向操作系统的优化实现改进指令系统。 2.简述CISC存在的主要问题。(知识点:CISC) 答:(1)CISC结构的指令系统中,各种指令的使用频率相差悬殊。 (2)CISC结构指令系统的复杂性带来了计算机系统结构的复杂性,这不仅增加了研制时间和成本,而且还容易造成设计错误。 (3)CISC结构指令系统的复杂性给VLSI设计增加了很大负担,不利于单片集成。 (4)CISC结构的指令系统中,许多复杂指令需要很复杂的操作,因而运行速度慢。 (5)在CISC结构的指令系统中,由于各条指令的功能不均衡性,不利于采用先进的计算机系统结构技术来提高系统的性能。 3.简述RISC的优缺点及设计RISC机器的一般原则。(知识点:RISC) 答:(1)选取使用频率最高的指令,并补充一些最有用的指令。 (2)每条指令的功能应尽可能简单,并在一个机器周期内完成。 (3)所有指令长度均相同。 (4)只有load和store操作指令才访问存储器,其它指令操作均在寄存器之间进行。 (5)以简单、有效的方式支持高级语言。 4.根据CPU内部存储单元类型,可将指令集结构分为哪几类?(知识点:堆栈型机器、累加器型机器、通用寄存器型机器) 答:堆栈型指令集结构、累加器型指令集结构、通用寄存器型指令集结构。 5.常见的三种通用寄存器型指令集结构是什么?(知识点:通用寄存器型机器) 答:(1)寄存器-寄存器型。 (2)寄存器-存储器型。 (3)存储器-存储器型。

软件体系结构期末大题

软件体系结构-期末大题

————————————————————————————————作者:————————————————————————————————日期: ?

1.基于构件的软件开发的优势是什么? 基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用2.尝试用自己的语言介绍Kruchten的“4+1”模型。 Kruchten 提出了一个"4+1"视图模型,从5个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。每一个视图只关心系统的一个侧面,5个试图结合在一起才能反映系统的软件体系结构的全部内容。

3.在希赛公司的一个财务管理系统,财务部要客户提供………… 4.不同的体系结构风格具有各自的特点、优劣和用途。试对管道-过滤器风格、事件驱动风格、分层系统、C2风格和基于消息总线的风格进行分析比较。P52-56 (1)管道和过滤器 特点: @使得软构件具有良好的隐蔽性和高内聚、低耦合的特点; @允许设计者将整个系统的输入输出行为看成是多个过滤器的行为的简单合成;

@支持软件重用。只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来; @系统维护和增强系统性能简单。新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉; @允许对一些如吞吐量、死锁等属性的分析; @支持并行执行。每个过滤器是作为一个单独的任务完成,因此可与其它任务并行执行?缺点:①通常导致进程成为批处理的结构。 ②不适合处理交互的应用。 ③因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。 (2)

计算机体系结构期末考试知识点与答案

体系结构复习重点.doc 1..诺依蔓计算机的特点 答:·若依曼计算机的主要特点如下: 存储程序方式。指令和数据都是以字的方式存放在同一个存储器中,没有区别,由机器状态来确定从存储器读出的字是指令或数据。 指令串行执行,并由控制器集中加以控制、 单元定长的一维线性空间的存储器 使用低级机器语言,数据以二进制形式表示。 单处理机结构,以运算器作为中心。 其实,他最大的特点就是简单易操作。 2. T(C)=所描述的三个层次(8页) 答:3个层次为控制器、算术逻辑部件、基本逻辑部件 3. 计算机系统结构的分类(5页) 4. 计算机系统中的数据表示(38页) 5. 指令系统设计的原则 答:指令系统的设计原则是,应特别注意如何支持编译系统能高效、简易地将源程序翻译成目标代码。 首先是正交性:又称分离原则或互不相干原则。即指令中各个有不同含义的字段之间,在编码时应互相独立、互不相关。 规整性:对相似的操作数做出相同的规定。 可扩充性:要保留一定余量的操作码空间,为以后的扩展所用。 对称性:为了使编译能更加方便,通常希望操作具有对称性。 6. 流水操作中的相关 答:流水操作过程中会出现一下的3个相关:资源或结构相关、数据相关、和控制相关。 资源相关是指当有多条指令进入流水线后在同一机器周期内争用同一功能部件所发生的冲突。 数据相关:这是由于流水线中的各条指令的重叠操作使得原来对操作数的访问顺序发生了变化,从而导致了数据相关的冲突。 控制相关主要是转移指令引起的,比起数据相关来,他会使流水线丧失更多的性能。 7. 向量机中对向量的各种运算可以采用的加工方式(149页) 答:向量机中对向量的各种运算可以采用不同的加工方式,但比较有效的加工方式

事业单位计算机专业技术知识点归纳

中央处理器(运算器、控制器、寄存器) 存储器(只读存储器、随机存储器、匀速缓冲存储器) 主机总线 输入/输出接口 硬件系统外存储器 1、计算机系统外部设备输入设备 输出设备 软件系统系统软件 应用软件 2、OSI参考模型: 应用层为应用程序提供网络服务。 表示层处理在两个通信系统换信息的表达方式。 会话层负责维护两个节点之间会话连接的建立、管理和终止,以及数据的交换。 传输层向用户提供可靠的端对端服务。 网络层通过路由选择算法为分组通过通信子网选择最适当的路径,以及实现拥塞控制、网络互连等功能。 数据链路层在通信的实体间建立数据链路连接,传输以帧为单位的数据包,并采用差错控制与流量控制方法,使有差错的物理线路变成无差错的数据链路。 物理层利用传输介质为通信的网络结点之间的建立、管理和释放物理连接,实现比特流的透明传输,为数据链路层提供数据传输服务。 3、TCP/IP参考模型: 应用层负责处理特定的应用程序细节,专门为用户提高应用服务。 传输层负责在应用进程之间建立端到端通信。 互联层负责将源主机的报文分组发送到目的主机。 主机—网络层负责通过网络发送和接收IP数据报。 4、网络拓扑结构分为星状拓扑结构、环状拓扑结构、树状拓扑结构、网状拓扑结构和总线形拓扑结构。 5、IP地址分类:A类地址:0.0.0.0~127.255.255.255 B类地址:128.0.0.0~191.255.255.255 C类地址:192.0.0.0~223.255.255.255 D类地址:用于组播。 E类地址:暂时保留。 6、计算机的发展史。

7、简述计算机硬件系统组成的5大部分及其功能。 答:计算机硬件系统由运算器、存储器、控制器、输入设备和输出设备5大部分组成。 运算器:用来完成算术运算和逻辑运算,并将运算的中间结果暂时存储在运算存储器。 存储器:用来存放数据和程序。 控制器:用来控制、指挥程序和数据的输入,运算以及处理运算结果。 输入设备:将人们熟悉的信息形式转化为机器能识别的信息形式。 输出设备:将运算结果转换为人们熟悉的信息形式。 8、简述计算机网络的分类及特点。 答:按通信围和距离可分为:局域网(LAN)、城域网(MAN)和广域网(WAN)。 LAN:最常见、应用最广。连接围窄、用户数少、配置容易、连接速率高。 MAN:可看成是一种大型的LAN。 WAN:传输速率比较低,网络结构复杂,传输线路种类比较少。 1、计算机网络分为:资源子网和通信子网。 2、分组交换技术分为:数据报与虚电路。 3、网络协议3要素:语义、语法、时序。 4、通信服务分为:面向连接服务和无连接服务。 5、面向连接服务与无连接服务对数据传输的可靠性有影响,数据传输的可靠性一般通过确认和重传机制保 证。 6、物理连接分为:点对点连接与多点。 按信道数分:串行通信和并行通信。 7、点对点连接的通信方式按数据传送方向和时间分:全双工、半双工与单工。 按同步类型分位同步(外同步法、同步法) 字符同步(同步式、异步式) 8、网络中常用的传输介质:双绞线、同轴电缆、光纤电缆、无线与卫星通信。 双绞线(STP:屏蔽双绞线,UTP:非屏蔽双绞线) 同轴电缆(基带同轴电缆,宽带同轴电缆) 9、数据编码方法模拟数据编码(振幅键控ASK,移频键控FSK,移相键控PSK) 数字数据编码(非归零编码NRZ,曼彻斯特编码,差分曼彻斯特编码)

软件设计与体系结构期末复习整理解读

1面向对象编程中是如何体现封装性的? 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。 2重载和重写的含义 重载是发生在一个类中,方法名相同,参数不同 重写(覆盖)是子类继承父类,子类可以通过重写的方法隐藏继承的方法 3 什么是接口回调,过程细节是什么? 概念:把可以实现某一接口的类创建的对象的引用赋给该接口声明接口变量,那么该接口变量可以调用被类实现(重写)的接口方法。 4试举例说明什么是组合关系和依赖关系 组合(关联)关系:A类中成员变量是用B类声明的对象。公司--职员 依赖关系:A类中某个方法的参数是用B类声明的对象,或某个方法返回的数据类型是B类的对象 5抽象类和接口,区别是什么?如何应用 抽象类:抽象类中有抽象方法;抽象类中不能用new运算符创建对象;抽象类的对象做商转型对象 接口:(1)接口中只可以有public权限的抽象方法,不能有非抽象方法; (2)接口由类去实现,即一个类如果实现一个接口,那么他必须重写接口中的抽象方法 (3)接口回调 区别:接口中只有常量,不能有变量;抽象类中既可以有常量也可以有变量; 抽象类中也可以有非抽象方法,接口不可以。 应用:定义抽象方法:public abstract void 方法名(); 在子类实现抽象方法:public void 方法名(){} 接口:public interface 接口名{}接口只负责定义规则,不负责任何实现;实现交给实现接口的类 (6)面向对象的六条基本原则包括: 开闭原则,里式代换原则,单一职责,依赖倒转、迪米特法则(接口隔离)。 (7)什么是设计模式? 设计模式是从许多优秀的软件系统中总结出的成功的可复用的设计方案。是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性 (8)什么是框架?框架与模式的区别有哪些? 框架是针对某个领域,提供用于开发应用系统的类的集合。 区别:层次不同、范围不同、相互关系

软件体系结构课后作业及答案

1、就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 答:使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。同时,由于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件的灵活性和标准化程度可得到提高。 2、实际参与/组织一个软件重用项目的开发,然后总结你是如何组织该项目的开发的 答:参加了一个网页管理系统的开发,该项目重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。在过程中使用了代码的复用、设计结果的复用、分析结果的复用、测试信息的复用等。 3、为什么要研究软件体系结构? 答:1.软件体系结构是系统开发中不同参与者进行交流和信息传播的媒介。 2.软件体系结构代表了早期的设计决策成果。 3.软件体系结构可以作为一种可变换的模型。 4、根据软件体系结构的定义,你认为软件体系结构的模型应该由哪些部分组成? 答:构件(component)可以是一组代码,如程序的模块;也可以是一个独立的程序(如数据库的SQL服务器); 连接件(connector)是关系的抽象,用以表示构件之间的相互作用。如过程调用、管道、远程过程调用等; 限制(constrain):用于对构件和连接件的语义说明。 5、在软件体系结构的研究和应用中,你认为还有哪些不足之处? 答:(1)缺乏同意的软件体系结构的概念,导致体系结构的研究范畴模糊。 (2)ADL繁多,缺乏同意的ADL的支持。 (3)软件体系结构研究缺乏统一的理论模型支持。 (4)在体系结构描述方便,尽管出现了多种标准规范或建议标准,但仍很难操作。 (5)有关软件体系结构性质的研究尚不充分,不能明确给出一个良体系结构的属性或判定标准,没有给出良体系结构的设计指导原则,因而对于软件开发实践缺乏有力的促进作用。 (6)缺乏有效的支持环境软件体系结构理论研究与环境支持不同步,缺乏有效的体系结构分析、设计、方针和验证工具支持,导致体系结构应用上的困难。 (7)缺乏有效的体系结构复用方案。 (8)体系结构发现方法研究相对欠缺。 1、选择一个规模合适的系统,为其建立“4+1”模型。 逻辑视图(Logical View),设计的对象模型(使用面向对象的设计方法时)。 过程视图(Process View),捕捉设计的并发和同步特征。 物理视图(Physical View),描述了软件到硬件的映射,反映了分布式特性。 开发视图(Development View),描述了在开发环境中软件的静态组织结构。 架构的描述,即所做的各种决定,可以围绕着这四个视图来组织,然后由一些用例(use cases)或场景(scenarios)来说明,从而形成了第五个视图。

软件体系结构期末复习题概述

《软件体系结构》期末复习题 简答题: 1、软件体系结构建模的种类有: 结构模型、框架模型、动态模型、过程模型、功能模型。 2、“4+1”视图模型从5个不同的视角包括: 逻辑视图、进程视图、物理视图、开发视图和场景视图来描述软件体系结构。 3、构件:是具有某种功能的可重用的软件模板单元,表示了系统中主要的计算元素和数据存储。 连接件:表示构件之间的交互。 配置:表示构件和连接件的拓扑逻辑和约束。 端口:表示构件和外部环境的交互点。 角色:定义了该连接交互的参与者。 4、画出“4+1”视图模型图,分析各部分的原理和功能。 5、软件体系结构风格: 是描述某一特定应用领域中系统组织方式的惯用模式。 6、软件体系结构 (Software Architecture) 软件体系结构以组件和组件交互的方式定义系统,说明需求与成品系统之间的对应关系,描述系统级别的可伸缩性、能力、吞吐量、一致性和兼容性等属性。软件体系结构由组件、连接件和属性组成。 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、DSSA 答案:DSSA就是在一个特定应用领域中为一组应用提供组织结构参考的标准软件体系结构 11、软件体系结构的动态性主要分为: 交互式动态性、结构化动态性、体系结构动态性等三类。 12、请画出基于构件的动态系统结构模型画。 13、软件产品线 产品线是一个产品集合,这些产品共享一个公共的、可管理的特征集,这个特征集能满足选定的市场或任务领域的特定需求。这些系统遵循一个预描述的方式,在公共的核心资源(core assets)基础上开发的 14、SOA 即service-oriented architecture,面向服务架构。它是一个组件模型,它 将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接 口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于 实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的 系统中的服务可以以一种统一和通用的方式进行交互。 14、RIA

软件设计与体系结构知识点

软件设计与体系结构知识点 1.软件设计的特征 (1)软件设计的开端是出现某些新的问题需要软件来解决,这些需要促使设计工作的开始,并成为整个设计工作最初的基础 (2)软件设计的结果是给出一个方案,它能够用来实现所需的、可以解决问题的软件,方案的描述可能是文字、图表,甚至数学符号、公式等组成的文档或模型 (3)软件设计包含一系列的转换过程,即把一种描述或模型转换为另一种描述或模型,转换后的形态可能更加具体,或更接近于实现 (4)产生新的想法或思路对软件设计非常重要,因为设计也是一个创造性的过程,不同的问题或需求总会存在各自的特点,即使同样的问题在不同时期和环境下也会存在区别,因此设计不会是一成不变的 (5)软件设计的过程是不断解决问题和实施决策的过程,因为整个设计是解决一个大的问题,在设计过程中将会分解成众多小问题,涉及真需要一次解决这些小的问题,并在出现多种方案或策略时进行决策,选择其中最合适的 (6)软件设计也是一个满足各种约束的过程,因为软件可能在性能、运行环境、开发时间、成本、人员技术水平等各个方面存在约束,设计必须在满足这些约束的情况下给出最佳的设计方案 (7)大多数的软件实际是一个不断演化的过程,因为需求在一开始很可能是不完整或不精确的,在设计过程中还会不断发生变化并逐步稳定下来,因此设计需要根据需求的变化而不断演化。 2.软件设计的要素 (1)目标描述(2)设计约束(3)产品描述(4)设计原理(5)开发规划(6)使用描述3.软件设计体系的定义 (1)软件设计体系结构是软件系统的结构,包含软件元素、软件元素外部可见的属性以及这些软件元素之间的关系 (2)软件体系结构是软件系统的基本组织,包含构建、构件之间、构件与环境之间的关系,以及相关的设计与演化原则 4.软件设计的主要活动 (1)软件设计计划(2)体系结构设计(3)界面设计(4)模块/子系统设计(5)过程/算法设计(6)数据模型设计 5.体系结构“4+1”多视图建模 (1)逻辑视图:该视图关注功能需求,即系统应该为最终用户提供什么服务,它与应用领域精密相关 (2)进程视图:该视图捕获设计中关于并发和同步的内容,重视一些非功能需求,例如性能、可扩展性等,定义了运行实体和它们的属性。 (3)开发视图:该试图主要描述软件在开发环境中的静态结构,开发人员和项目经理对比都会感兴趣。 (4)物理视图:该视图描述软件到硬件的映射关系,反映了软件的分布特征。 (5)场景:可以使用一组重要场景也就是用例的实例,把上述四种视图紧密的联系起来6.什么是软件产品线方法 软件产品线是软件复用发展的一个更高阶段,它并不仅仅局限于以前人们在软件复用中考虑的对函数、模块、类、体系结构甚至子系统的重用。 软件产品线指一组具有公共的、可管理特征(系统需求)的软件系统,这些系统满足特定的

软件体系结构课后作业及答案

一次 就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 答:使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。同时,由于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件的灵活性和标准化程度可得到提高。 2、实际参与/组织一个软件重用项目的开发,然后总结你是如何组织该项目的开发的 答:参加了一个网页管理系统的开发,该项目重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。在过程中使用了代码的复用、设计结果的复用、分析结果的复用、测试信息的复用等。 3、为什么要研究软件体系结构? 答:1.软件体系结构是系统开发中不同参与者进行交流和信息传播的媒介。 2.软件体系结构代表了早期的设计决策成果。 3.软件体系结构可以作为一种可变换的模型。 4、根据软件体系结构的定义,你认为软件体系结构的模型应该由哪些部分组成? 答:构件()可以是一组代码,如程序的模块;也可以是一个独

立的程序(如数据库的服务器); 连接件()是关系的抽象,用以表示构件之间的相互作用。如过程调用、管道、远程过程调用等; 限制():用于对构件和连接件的语义说明。 5、在软件体系结构的研究和应用中,你认为还有哪些不足之处? 答:(1)缺乏同意的软件体系结构的概念,导致体系结构的研究范畴模糊。 (2)繁多,缺乏同意的的支持。 (3)软件体系结构研究缺乏统一的理论模型支持。 (4)在体系结构描述方便,尽管出现了多种标准规范或建议标准,但仍很难操作。 (5)有关软件体系结构性质的研究尚不充分,不能明确给出一个良体系结构的属性或判定标准,没有给出良体系结构的设计指导原则,因而对于软件开发实践缺乏有力的促进作用。(6)缺乏有效的支持环境软件体系结构理论研究与环境支持不同步,缺乏有效的体系结构分析、设计、方针和验证工具支持,导致体系结构应用上的困难。 (7)缺乏有效的体系结构复用方案。 (8)体系结构发现方法研究相对欠缺。 二次

计算机体系结构知识点

目录 第一章计算机系统结构基本概念 (2) (一) 概念 (2) (二) 定量分析技术 (3) (三) 计算机系统结构发展 (4) (四) 计算机的并行性 (5) 第二章计算机指令集结构 (7) 一. 指令集结构的分类 (7) 二. 寻址方式 (7) 三. 指令集结构的功能设计 (8) 四. 指令格式的设计 (10) 五. MIPS指令集结构 (10) 第三章流水线技术 (14) 一. 流水线的基本概念 (14) 二. 流水线的性能指标 (14) 三. 流水线的相关与冲突 (16) 四. 流水线的实现 (18) 第四章指令集并行 (18) 付志强

第一章计算机系统结构基本概念 (一)概念 什么是计算机系统结构:程序员所看到的计算机属性,即概念性结构与功能特性. 透明性:在计算机技术中,把本来存在的事物或属性,但从某种角度看又好像不存在的概念成为透明性. 常见计算机系统结构分类法 冯氏分类法(冯泽云):按最大并行度对计算机进行分类. Flynn分类法:按指令流和数据流多倍性进行分类 ①单指令流单数据流 ②单指令流多数据流 ③多指令流单数据流(不存在) ④多指令流多数据流 付志强

(二)定量分析技术 Amdahl定律:加快某部件执行速度所能获得的系统性能加速比,受限于该部件的执行时间占系统中总执行时间的百分比. 加速比=系统性能 改进后 系统性能 改进前 = 总执行时间 改进前 总执行时间 改进后 加速比依赖于以下两个因素 ①可改进比例 ②部件加速比 CPU性能公式 CPU时间 CPU时间=执行程序所需时间的时钟周期数x时钟周期时间(系统频率倒数) CPI(Cycles Per Instruction) CPI =执行程序所需时钟周期数/所执行指令条数 ∴CPU时间= IC x CPI x 时钟周期时间 可知CPU性能取决于一下三个方面 ①时钟周期时间:取决于硬件实现技术和计算机组成 付志强

软件体系结构期末考试试题

软件体系结构-设计模式练习题1 1.面向对象分析与设计中的(1)是指一个模块在扩展性方面应该是开放的,而在更改性方面应该是封闭的;而(2)是指子类应当可以替换父类并出现在父类能够出现的任何地方。 (1) A.开闭原则 B.替换原则 C.依赖原则 D.单一职责原则 (2) A.开闭原则 B.替换原则 C.依赖原则 D.单一职责原则 2.(3)限制了创建类的实例数量,而(4)将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 (3) A.命令模式(Command)B.适配器模式(Adapter)C.策略模式(Strategy) D.单例模式(Singleton) (4) A.命令模式(Command) B.适配器模式(Adapter) C.策略模式(Strategy) D.单例模式(Singleton) 3. (5)设计模式允许一个对象在其内部状态改变时改变它的行为。下图为这种设计模式的类图,已知类State 为抽象类,则类(6)的实例代表了Context 对象的状态。 (5) A.单件(Singleton) B.桥接(Bridge) C.组合(Composite) D.状态(State) (6) A. Context B. ConcreteStateA C. Handle D. State

4.某公司欲开发一门户网站,将公司的各个分公司及办事处信息进行整合。现决定采用Composite设计模式来实现公司的组织结构关系,并设计了如下图所示的UML类图。图中与Composite模式中的“Component”角色相对应的类是(7) ,与“Composite”角色相对应的类是(8) 。 (7) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany (8) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany 5.某软件公司正在设计一个通用的嵌入式数据处理平台,需要支持多种数据处理芯片之间的数据传递与交换。该平台的核心功能之一要求能够屏蔽芯片之间的数据交互,使其耦合松散,并且可以独立改变芯片之间的交互过程。针对上述需求,采用(9)最为合适。 (9) A. 抽象工厂模式 B. 策略模式 C. 中介者模式D. 状态模式 6.某软件公司正在设计一个图像处理软件,该软件需要支持用户在图像处理中的撤销和重做等动作,为了实现该功能,采用(10)最为合适。 (10) A. 单例模式B. 命令模式 C. 访问者模式 D. 适配器模式 7.某互联网公司正在设计一套网络聊天系统,为了限制用户在使用该系统时发表不恰当言论,需要对聊天内容进行特定敏感词的过滤。针对上述功能需求,采用(11)能够灵活配置敏感 词的过滤过程。 (11) A. 责任链模式 B. 工厂模式 C. 组合模式 D. 装饰模式

软件体系结构期末复习题

软件体系结构期末 复习题

《软件体系结构》期末复习题 简答题: 1、软件体系结构建模的种类有: 结构模型、框架模型、动态模型、过程模型、功能模型。 2、“4+1”视图模型从5个不同的视角包括: 逻辑视图、进程视图、物理视图、开发视图和场景视图来描述软件体系结构。 3、构件:是具有某种功能的可重用的软件模板单元,表示了系统中主要的计算元素和数据存储。 连接件:表示构件之间的交互。 配置:表示构件和连接件的拓扑逻辑和约束。 端口:表示构件和外部环境的交互点。 角色:定义了该连接交互的参与者。 4、画出“4+1”视图模型图,分析各部分的原理和功能。 5、软件体系结构风格: 是描述某一特定应用领域中系统组织方式的惯用模式。

6、软件体系结构 (Software Architecture) 软件体系结构以组件和组件交互的方式定义系统,说明需求与成品系统之间的对应关系,描述系统级别的可伸缩性、能力、吞吐量、一致性和兼容性等属性。软件体系结构由组件、连接件和属性组成。 7、分层系统的优点有: 1)支持基于抽象程度递增的系统设计,使设计者能够把一个复杂系统按递增的步骤进行分解; 2)支持功能增强,因为每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层; 3)支持重用。只要提供的服务接口定义不变,同一层的不同实现能够交换使用。这样,就能够定义一组标准的接口,而允许各种不同的实现方法。 8、分层系统的缺点有: 1)并不是每个系统都能够很容易地划分为分层的模式,甚至即使一个系统的逻辑结构是层次化的,出于对系统性能的考虑,系统设计师不得不把一些低级或高级的功能综合起来; 2)很难找到一个合适的、正确的层次抽象方法。 9、 B/S体系结构的优点有什么? 答:1)基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的功能,很容易在运行时自动升级。

软件体系结构知识点完整

1、构件是核心和基础,重用是必需的手段。 2、软件重用是指在两次或多次不同的软件软件开发过程中重复使用相同或相近软件元素的过程。 3、软件元素包括程序代码、设计文档、设计过程、需求分析文档甚至领域知识。 4、把可重用的元素称作软构件,简称为软构件。 5、可重用软件元素越大,就说重用的粒度越大。 6、构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和代码实现的复合体。 7、面向对象技术达到类级重用,以类为封装的单位。 8、构件模型是对构件本质特征的抽象描述。三个主要流派,分别是OMG(对象管理组织)的CORBA(通用对象请求代理结构)、Sun的EJB和Microsoft的DOM(分布式构件对象模型)。 9、获取构件的四个途径:(1)从现有构件中获得符合要求的构件,直接使用或作适应性修改,得到可重用构件。(2)通过遗留工程,将具有潜在重用价值的构件提取出来,得到可重用构件。(3)从市场上购买现成的商业构件,即COTS构件。(4)开发符合要求的构件。 10、构件分类方法三大类:关键字分类、刻面分类法、超文本组织方法 11、构件检索方法:基于关键字的检索、刻面检索法、超文本检索法和其他检索方法。 12、减少构件修改的工作量,要求工作人员尽量使构件的功能、行为和接口设计更为抽象画、通用化和参数化。 13、构件组装技术:基于功能的组装技术、基于数据的组装技术和面向对象的组装技术。 14、软件体系结构的定义:软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件体系结构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。 软件体系结构的意义:(1)体系结构是风险承担者进行交流的手段;(2)体系结构是早期设计决策的体现--①软件体系结构明确了对系统实现的约束条件②软件体系结构决定了开发和维护组织的组织结构③软件体系结构制约着系统的质量属性④通过研究软件体系结构可能预测软件的质量⑤软件体系结构使推理和控制更改更简单⑥软件体系结构有助于循序渐进的原型设计⑦软件体系结构可以作为培训的基础;(3)软件体系结构是可传递和可重用的模型。 软件体系结构发展的四个阶段:(1)无体系结构设计阶段。以汇编语言进行小规模应用程序开发为特征。(2)萌芽阶段。出现了程序结构设计主题,以控制流图和数据流图构成软件结构为特征。(3)初期阶段。出现了从不同侧面描述系统的结构模型,以UML为典型代表。(4)高级阶段。以描述系统的高层抽象结构为中心,不关心具体的建模细节,划分了体系结构与传统软件结构的界限,该阶段以Kruchten提出的“4+1”模型为标志。 通用体系结构风格分类 数据流风格:批处理序列、管道与过滤器。 调用/返回风格:主程序与子程序、面向对象风格、层次结构。 独立构件风格:进程通信、事件系统。 虚拟机风格:解释器、基于规则的系统。 仓库风格:黑板系统、传统型数据库。 管道与过滤器 特点:(1)使得软构件具有良好的内聚、耦合的特点。 (2)允许设计师将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成。(3)支持软件重用。 (4)系统维护和增强系统性能简单。 (5)允许对一些如吞吐量、死锁等属性的分析。 (6)支持并行执行。

计算机体系结构知识点汇总

第一章计算机体系结构的基本概念 1.计算机系统结构的经典定义 程序员所看到的计算机属性,即概念性结构与功能特性。 2.透明性 在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。 3.系列机 由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。 4.常见的计算机系统结构分类法有两种:Flynn分类法、冯氏分类法Flynn分类法把计算机系统的结构分为4类: 单指令流单数据流(SISD) 单指令流多数据流(SIMD) 多指令流单数据流(MISD) 多指令流多数据流(MIMD) 5. 改进后程序的总执行时间

系统加速比为改进前与改进后总执行时间之比 6.CPI(Cycles Per Instruction):每条指令执行的平均时钟周期数 CPI = 执行程序所需的时钟周期数/IC 7.存储程序原理的基本点:指令驱动 8.冯·诺依曼结构的主要特点 1.以运算器为中心。 2.在存储器中,指令和数据同等对待。 指令和数据一样可以进行运算,即由指令组成的程序是可以修改的。 3.存储器是按地址访问、按顺序线性编址的一维结构,每个单元的位数是固定的。 4.指令的执行是顺序的 5.指令由操作码和地址码组成。 6.指令和数据均以二进制编码表示,采用二进制运算。 9.软件的可移植性 一个软件可以不经修改或者只需少量修改就可以由一台计算机移植到另一台计算机上正确地运行。差别只是执行时间的不同。我们称这两台计算机是软件兼容的。 实现可移植性的常用方法:采用系列机、模拟与仿真、统一高级语言。 软件兼容: 向上(下)兼容:按某档机器编制的程序,不加修改就能运行于比它高(低)档的机器。 向前(后)兼容:按某个时期投入市场的某种型号机器编制的程序,不加修改地就能运行于在它之前(后)投入市场的机器。 向后兼容是系列机的根本特征。 兼容机:由不同公司厂家生产的具有相同系统结构的计算机。

最新软件体系结构期末试题+答案

1.以下关于系统性能的叙述中,不正确的是(17)。(17)A. 常见的Web服务器性能评估方法有基准测试、压力测试和可靠性测试B. 评价Web服务器的主要性能指标有最大并发连接数、响应延迟和吞吐量C. 对运行系统进行性能评估的主要目的是以更好的性能/价格比更新系统D. 当系统性能降到基本水平时,需要查找影响性能的瓶颈并消除该瓶颈 2某公司欲对其内部的信息系统进行集成,需要实现在系统之间快速传递可定制格式的数据包,并且当有新的数据包到达时,接收系统会自动得到通知。另外还要求支持数据重传,以确保传输的成功。针对这些集成需求,应该采用(21)的集成方式。(21)A. 远程过程调用 B. 共享数据库C. 文件传输 D. 消息传递 3 在RUP中采用“4+1”视图模型来描述软件系统的体系结构。在该模型中,最终用户侧重于(26),系统工程师侧重于(27)。(26)A. 实现视图 B. 进程视图 C. 逻辑视图 D. 部署视图(27)A. 实现视图 B. 进程视图 C. 逻辑视图 D. 部署视图 4.某银行系统采用Factory Method方法描述其不同账户之间的关系,设计出的类图如下所示。其中与Factory Method中的“Creator”角色相对应的类是(33);与“Product” 角色相对应的类是(34)。(33) A. Bank B. Account C. Checking D. Savings(34) A. Bank B. Account C. Checking 5.是一个独立可交付的功能单元,外界通过接口访问其提供的服务。(35)A. 面向对象系统中的对象(Object)B. 模块化程序设计中的子程序(Subroutine)C. 基于构件开发中的构件(Component)D. 系统模型中的包(Package) 6 软件的横向重用是指重用不同应用领域中的软件元素。(31)是一种典型的、原始的横向重用机制。(31)A. 对象 B. 构件 C. 标准函数库 D. 设计模式

相关文档
相关文档 最新文档