软件体系结构复习资料
- 格式:doc
- 大小:89.50 KB
- 文档页数:10
软件体系结构知识点:
第一章:
1.什么是软件体系结构
答:软件体系结构=构件+连接件+约束软件体系结构是具有一定形式的结构化元素,即构件的集合,包括处理构件、数据构件和连接构件。处理构件负责对数据进行加工,数据构件是被加工的信息,连接构件把体系结构的不同部分组组合连接起来。这一定义注重区分处理构件、数据构件和连接构件,这一方法在其他的定义和方法中基本上得到保持。
2.软件体系结构形式化方法
答:1.根据对目标软件系统进行说明的方式:
(1)面向模型的方法。在这个方法中,对目标软件系统的说明是为其构造一个模型,该模型的构成成分是一些具有特性的数据抽象,如域,
元组等
(2)面向性质的方法。这种方法是直接给出目标软件系统的一组特性来描述目标软件系统。通常是目标软件系统必须满足的形式公理,其形式
化说明仅描述目标软件系统的性质,而不涉及实现方法。
2.根据表达能力的形式方法可分为以下五大类
(1)基于模型的方法
(2)代数方法
(3)过程代数方法
(4)基于逻辑的方法
(5)基于网络的方法
3.软件质量定义、软件质量模型
答:,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。影响软件质量的主要因素,这些因素是从管理角度对软件质量的度量。可划分为三组,分别反应用户在使用软件产品时的三种观点。正确性、健壮性、效率、完整性、可用性、风险(产品运行);可理解性、可维修性、灵活性、可测试性(产品修改);可移植性、可再用性、互运行性(产品转移)。
第二章:
4.Kruchten 4+1模型描述软件体系结构
Kruchten 4+1模型建立在体系结构的Perry&Wolf定义和Berry Boehm定义的基础上,采用多视图模型的方法描述软件体系结构。该模型由5个视图构成,每个视图只关心系统的一个侧面,5个视图结合在一起才能反映系统的软件体系结构的全部内容。
程序员软件管理
集成者信
性能可扩展性
体系结构的概念在每个视图里面都可以独立应用,并不是所有的软件体系结构都需要完整的4+1视图。
●逻辑视图,主要支持功能需求,即系统应当向最终用户提供怎么样的服
务。在逻辑视图中,从问题出发,采用面向对象的方法,按照抽象、封
装、继承的原则,系统分解成一系列的功能抽象,得到代表着系统的关
键抽象表示的峰值。当用面向对象的设计方法时,逻辑视图即是对象模
型。
●过程视图,考虑的是一些非功能性需求,它所要面对的问题有并发、发
布、系统的完整性、容错能力等,强调并发性、发布性、系统集成性和
容错能力,还要考虑怎样把过程视图与逻辑视图的要点相适应。
●开发视图,关注的是软件开发环境中软件模块的实际组织和管理。开发
视图通过具有输入输出关系的模块和子系统图来表示。描述开发视图的
原则是分割、编组、可视。开发视图侧重的是内部需求,这些需求目的
是要使开发相关活动更容易进行。
●物理视图,主要考虑如何把软件映射到硬件上。软件系统在计算机网络
的各个处理节点上运行,各种被确定的元素——网络、过程、任务和对
象——需要映射到各种节点上去。
●场景视图,通过使用一些重要的场景,4个视图中的元素可以协调的共
同工作。它承担着2个任务:
在软件体系结构设计中,将以此视图为驱动来发现体系结构元素
在体系结构设计结束后,此视图承担验证和描述的角色。它不仅用于书面记录,并且是体系结构原型测试的起始点。
第三章:
5.软件生命周期
答:是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。
6.构件
答:构件是系统中实际存在的可更换部分,它实现特定的功能,看、构件可以看成数据单元或是计算单元。符合一套接口标准并实现一组接口。构件代表系统中的一部分物理实施,包括软件代码或其等价物。
7.连接件
答:连接件是软件体系结构的一个组成部分,他通过对构件间的交互规则的建模来实现构件间的连接,连接件不许编译。
8.软件体系结构范式
答:设A=
设A=
设A=
中的构件都为事件依赖,则称A满足可靠性范式,记为RNF。
9.∏演算的定义
答:∏演算是移动、交互、并发系统的理论模型,它提供相关的概念框架和数学工具,用于表达移动、交互系统和推论它们的行为,达到增强对已堕落感系统的理解的目的。
10.化学抽象机模型
答:化学抽象机(chemical abstract machine,CHAM)是一种对动态软件体系结构的分析、测试非常有用的形式化描述技术。
第四章:
11.管道和过滤器风格
答:在管道过滤器模式下,功能模块称作过滤器;功能模块间的连接可以看作输入、输出数据流之间的通路,所以称作管道。
12.客户机——分配器——服务器风格
答:客户机的任务是去执行特殊领域的任务。为了执行处理任务,客户机访问由服务器提供的操作。在发送请求给服务器之前,客户机向分配器请求信道。客户机利用这个和服务器通信。
服务器为客户机提供一组操作。它既可以注册自身,也可以通过其名字和地址向分配器进行注册。一个服务器组件可以与客户机位于同一台计算机,也可以位于网络的某个节点处。
分配器提供在客户机和服务器间建立通信信道的功能。要实现这一点,需要取出服务器组件的名字并将这个名字映射成为服务器组件的物理地址。
13.分层系统风格
答:所谓分层体系结构,是按层次组织软件的一种软件体系结构,其中每一层软件建立在低一层的软件层上。
分层风格的主要特征是第J层的服务只被第J+1层使用-----层之间没有更进一步的自己依赖关系。
分层风格的体系结构的优点:
1)由于对层次的邻接层数目进行glen限制,所以系统易于改进和扩展。2)每一层的软件都易于重用,并可为某一层次提供多种可互换的具体实现。3)分层系统所支持的设计体现了不断增加的抽象层次,这样一个复杂问题的求解就被分解为一系列递增的步骤。
4)标准化支持。清晰定义和接受共同的抽象层能促进标准化任务和接口的开发,同一接口的不同实现可以替换使用。
5)余部依赖性。层之间的标准化接口往往会限制被改动层的改动代码的影响。
6)可替换性。独立层实现不需要太费劲就可以被语义上等价的实现所替换。分层风格的体系结构的缺点有:
1)应当如何界定是层次间的划分是一个比较复杂的问题。
2)更改行为的重叠。层的行为改变时会出现一个严重的问题。
3)降低效率。说起来一个分层体系结构的效率往往要低于整体结构或一个“对象的海洋”。
4)不必要的工作。如果底层执行的某些服务执行了多余或重复的工作,而这些工作并非高层真正需要的,那么这对性能的影响是负面的。
5)难以认可层的正确粒度。层数太少的分层体系结构不能完全发挥这种模