一、
1.软件体系结构的核心模型的组成包括哪些内容?以及约束和质量性能等
构件、连接件、物理分布
2.软件体系结构风格具有已经被熟知的特性,并且可以复用
3.4+1视图模型从五个不同的视角采用五种不同的视图来描述软件体系结构,这些视图有逻辑视图、进程视图、物理视图、开发视图和场景视图
4.在层次系统中,两种通用的分层方法分别是严格分层、松散分层
5.在三层C/S结构中,中间层可能为哪些类型的服务器?
事务处理监控服务器、消息服务器、应用服务器等
6.解释器风格的三种策略。
传统解释器、基于字节码的解释器、(JIT)编译器
7.构件作为一个封装的实体,只能通过接口和外部环境交互,构件内部所实现的功能以服务形式体现出来。
8.在数据流风格中,用连接件定义了相应的数据流图表达拓扑结构
9.在分层系统中,由上而下的信息控制通常被描述为请求,由下而上被描述为通知。
10.分层系统的设计过程中,需要定义每层之间的接口,接口的类型包括黑盒接口、白盒接口。
11.三层C/S体系结构风格是由表示层、功能层、数据层构成的。
二、
1.要表示业务逻辑和工作流,应采用哪种UML图?活动图
2.对象或子程序,或构件或是包中,哪一个是独立可交互的功能单元?构件
3.同步调用消息和异步调用消息
同步调用消息表示一个对象实体发送的消息是对另外一个对象实体的一个操作的同步调用。发送消息的对象在发出消息之后,将一直等待接收对象给予应答,在未接收到应答之前,发送对象将-直等待。同步调用消息用带实心箭头的直线表示。
异步调用消息表示一个对象实体发送的消息是对另一个对象实体的一个操作的异步调用。发送消息的对象在发出消息之后,无需等待接收对象的应答,继续下面的操作。异步调用消息用直线开箭头表示。

4.某游戏公司预开发一个大型多人,即时战略的游戏,游戏设计的目标之一是能够支持玩家自行创建战役图,定义游戏对象的行为和之间的关系,应该采用解释器的架构风格最合适。
5.在三层C/S体系结构中中间件是最重要的构件。
6.在UML提供的图中,用例图用于描述系统与外部系统及用户之间的交互。
7.C/S系统中,数据库服务器的任务是存储和处理数据。
8.与C/S体系结构相比, B/S体系结构的不足?
客户端浏览器以同步的请求/响应模式交换数据,每请求一次服务器就要刷新一次页面;
受HTTP协议“基于文本的数据交换”的限制,在数据查询等响应速度上,要远远低于C/S体系结构;
数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用;
受限于HTML的表达能力,难以支持复杂GUI (如报表等)。

9.在RUP中采用4+1视图模型软件体系结构,在该模型中最终用户侧重于逻辑视图,那么系统工程师侧重于部署视图
10.如果对银行ATM的常用功能进行建模,包括存款,取款,转账,查询,这个时候, 用用例图来表示该系统的功能需求。
三、
1.软件体系结构风格
描述特定领域中软件系统家族的组织方式的惯用模式。反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。

2.需求
用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。

3.受客户端
客户端具有很少或没有业务逻辑。

4.构件重用
即为软件重用,两次或多次不同的软件开发过程中重复使用相同或相 近软件元素的过程。

5.集群
将多个计算机系统通过网络连接起来如同一个系统一样提供服务,可以获得高并行处理能力、高可用性、负载均衡和管理便携性。
或集群就是一组相互独立的计算机,通过高速的网络组成一个计算机系统,每个集群节点都是运行其自己进程的一个独立服务器。对网络用户来讲,网站后端就是一个单一的系统,协同起来向用户提供系统资源,系统服务。通过网络连接组合成一个组合来共同完一个任务。

6.构件
构件是具有某种功能的可复用的软件结构单元,是为组装服务的,表示了系统中主要的计算元素和数据存储。

7.计算机聚合
多台计算机聚合在一起,形成一台虚拟的计算机。软件系统的运行环境将横跨多台计算机,但终端用户看到的只是一台虚拟的计算机。大型计算问题可以借用多台计算的资源来并行的加以解决。

8.解释器
又译为直译器,是一种电脑程序,能够把高级编程语言一行一行直接转译运行。
解释器通常用来在程序语言定义的计算和有效硬件操作确定的计算之间建立对应和联系。简单和小规模的解释器只完成基本的信息识别和转换。复杂的解释器需要从词法到句法、到语法的复杂识别和处理。

9.ADL
是一种形式化描述语言,它在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架。

10.松散分层
松散的分层应用程序放宽了此限制,它允许构件与位于它下面的任意层中的组件进行交互。

四、
1.软件体系结构的意义
1.SA是软件开发过程初期的产品,在开发的早期阶段就考虑系统的正确设计与方案选择,为以后开发、测试、维护各个阶段提供了保证;
2.与其他后期的设计活动相比,SA设计的成本和代价要低得多;
3.正确有效的SA设计会给软件开发带来极大的便利。
4.在大型软件系统中,质量属性更多的是由系统结构和功能划分来实现的,而不再仅仅依靠所选择的算法或数据结构。

2.接口对于构件的意义

构件作为一个封装的实体,只能通过其接口与外部环境交互,表示了构件和外部环境的交互点;
内部结构则被隐藏起来;
一个构件至少有一个接口;
一个构件可以提供多重接口;
构件接口与其内部实现应严格分开。
构件内部所实现的功能以服务(Service)的形式体现出来,并通过接口向外发布,进而产生与其它构件之间的关联。

3.批处理和管道过滤器风格的不同
相似点 :
1.把任务分解成为一系列固定顺序的计算单元;
2.彼此间只通过数据传递交互
不同点 :
批处理:整体传递数据、构建粒度较大、延迟高、实时性差
管道过滤器:增量、构建粒度较小、实时性好、可并发

4.与C/S体系结构相比, B/S体系结构的不同之处
1.b/s体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能。
2.b/s体系结构的系统扩展能力差,安全性难以控制。
3.采用b/s体系结构的应用系统,在数据查询等响应速度上,要远远地低于c/s体系结构。
4.b/s体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用。

5.C/S风格中, C和S分别提供的功能
客户机:业务逻辑、与服务器通讯的接口;
服务器:与客户机通讯的接口、业务逻辑、数据管理。

6.软件体系结构风格的分类
数据流风格:批处理;管道/过滤器;
调用/返回风格:层次结构;
层次结构风格的典型实例:C/S结构;B/S结构;
虚拟机风格:解释器;基于规则的系统;
以数据为中心的风格:仓库;黑板。

7.分层系统的特点及优点
优点:
1)支持基于抽象程度递增的系统设计,使设计者可以把一个复杂系统按递增的步骤进行分解;
2)支持功能增强,因为每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层;
3)支持重用。只要提供的服务接口定义不变,同一层的不同实现可以交换使用。这样,就可以定义一组标准的接口,而允许各种不同的实现方法。
缺点:
1)并不是每个系统都可以很容易地划分为分层的模式,甚至即使一个系统的逻辑结构是层次化的,出于对系统性能的考虑,系统设计师不得不把一些低级或高级的功能综合起来;
2)很难找到一个合适的、正确的层次抽象方法。

8.C/S系统中客户端应用程序的主要任务

9.系统级虚拟机和进程级虚拟机的区别
系统级的虚拟机:对OS的虚拟,把一台物理上独立的机器虚拟为多个不同的虚拟机,每个虚拟机可支持运行各自的操作系统,本质:在OS与硬件之间建立隔离。
进程级的虚拟机:对单一程序的虚拟,其本质是在应用程序与OS之间建立隔离。

10.管道过滤器的优缺点有哪些?
优点:
(1)使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;
(2)允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成;
(3)支持软件重用。
(4)系统维护和增强系统性能简单。
(5)允许对一些如吞吐量、死锁等属性的分析;
(6)支持并行执行。
缺点:
(1)通常导致进程成为批处理的结构。这是因为虽然过滤器可增量式地处理数据,但它们是独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换。
(2)不适合处理交互的应用。当需要增量地显示改变时,这个问题尤为严重。
(3)因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。
五、
已知ATM的软件功能有客户可以存款、取款、查询、结余、修改密码和使用信用卡付账,画出系统的用例图,类图,协助图,顺序图。

用例图和类图

协助图

系统顺序图

软件体系结构 复习题相关推荐

  1. 软件体系结构测试定义,软件体系结构复习题.doc

    PAGE \* MERGEFORMAT 2 判断题 软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的. 对 开发视图主要支持系统的功能需求 ...

  2. 软件体系结构期末考试复习题(题中页码 与软件体系结构原理、方法与实践第2版 张友生编著 匹配)

    软件体系结构期末考试复习题(题中页码 与软件体系结构原理.方法与实践第2版 张友生编著 匹配) 一.选择题← 不属于软件体系结构的核心模型的最基本的元素是 A构件   B连接件   C配置   D角色 ...

  3. 软件体系结构风格之C/S,三层C/S,与BS

    C/S的物理结构,其发展历程为(1)->(3)->(2),本文接下来要介绍的C/S为(3),即胖客户端瘦服务器,服务器只管数据库,接下来要介绍的三层C/S为(2),即客户端不胖不瘦. C/ ...

  4. 软件体系结构风格(第5-8课时)

    摘要:本文给出软件体系结构风格的定义,并介绍几种常用风格:管道过滤器.数据抽象和面向对象组织,基于事件的隐式调用,分层系统,仓库系统,过程控制环路 软件体系结构风格是什么 描述特定系统组织方式的惯用范 ...

  5. 初识软件体系结构(1-4课时)

    前四个课时的内容是"软件体系结构概述". LW老师的讲课带劲,逻辑性强,也接地气,节奏不快不慢,很nice- 软件架构师 这门课最对口的职业是软件架构师,软件架构师是工作在项目经理 ...

  6. 《软件建模与设计: UML、用例、模式和软件体系结构》一一2.10 UML扩展机制

    本节书摘来自华章计算机<软件建模与设计: UML.用例.模式和软件体系结构>一书中的第2章,第2.10节,作者:(美)Hassan Gomaa,更多章节内容可以访问云栖社区"华章 ...

  7. 《软件建模与设计: UML、用例、模式和软件体系结构》一一

    本节书摘来自华章计算机<软件建模与设计: UML.用例.模式和软件体系结构>一书中的第3章,第3.5节,作者:(美)Hassan Gomaa,更多章节内容可以访问云栖社区"华章计 ...

  8. 软件体系结构的风格(转载)

    在上两篇文章中,我们介绍了软件体系结构的概念.现状及发展方向,读者可能会觉得"软件体系结构太抽象.太理论化,没有什么实际的东西".然而,任何实践都必须接受理论的指导,如果抛弃理论基 ...

  9. 对软件体系结构的认识

    一 . 软件体系结构(架构) 软件体系结构的定义 通常,软件体系结构通常被称为架构,指能够预制和可重构的软件框架结构.架构尚处在发展期,对于其定义,学术界尚未形成一个统一的意见,而不同角度 的视点也会 ...

  10. 笔记-信息系统开发基础-架构设计-软件体系结构评估方式

    软件体系结构评估方式主要有以下三种: 1.基于调查问卷或检查表的评估方式 调查问卷是一系列可以应用到各种体系结构评估的相关问题,其中有些问题可能涉及到体系结构的设计决策:有些问题涉及到体系结构的文档, ...

最新文章

  1. DPDK vhost-user研究(十二)
  2. 电脑的cpu是怎么制作的?
  3. 【活动】HoloLens 黑科技等你来探秘
  4. Windows 8/8.1 系统备份
  5. c++程序设计(第三版) pdf_【好课传送】C++语言程序设计基础入门视频
  6. Bootstrap 表单控件的尺寸
  7. Kotlin 1.5 新特性:密封接口有啥用?
  8. SQL Server Update:使用 TOP 限制更新的数据
  9. Yahoo! Screwdriver:可扩展的持续集成工具
  10. c语言作业班级管理系统,班级信息管理系统(C语言)
  11. 计算机毕业设计进度计划表,毕业设计 进度计划表
  12. Qt实现提示音以及QSound的使用说明
  13. 前端 DFA 敏感词过滤
  14. PS 制作ICO图标和图片背景透明化
  15. C语言调用pow( )函数实现幂运算
  16. MyBatis Plus逆向生成
  17. 考拉兹猜想(Python版)
  18. JAVA-初步认识-第五章-数组-常见操作-进制转换(查表法)
  19. 华为od统一考试B卷【连续出牌数量】C++ 实现
  20. 通俗易懂的解释深藏在傅里叶变换背后的奥秘,傅立叶变换的几何意义

热门文章

  1. php使用redis实例,php中使用redis队列操作实例代码
  2. jquery-weui的学习与使用
  3. fft matlab代码,FFT的matlab程序代码
  4. 软件需求分析模板2020-11-04
  5. 反编译工具Reflector下载(集成两个常用.net插件,FileGenerator和FileDisassembler)
  6. 网维大师icafe网吧管理软件 v6.0.3.3 官方
  7. BackTrack 4 R2安装VMware tools
  8. python解题工程力学_工程力学学习指导与解题指南(普通高等教育十三五规划教材)...
  9. css半透明渐变过渡效果
  10. 使用google analytics(分析)监测百度竞价关键词效果(网址构建工具)