




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、特别鸣谢以下同学:魏任恩 吴亮晏伟平,感谢他们的鼎力支持与参与!1特别鸣谢以下同学:魏任恩 吴亮晏伟平,感谢他们的鼎力支持与参与!软件体系结构知识点:第一章:1. 什么是软件体系结构答:软件体系结构=构件+连接件+约束软件体系结构是具有一定形式的结构化元 素,即构件的集合,包括处理构件、数据构件和连接构件。处理构件负责对数据 进行加工,数据构件是被加工的信息,连接构件把体系结构的不同部分组组合连 接起来。这一定义注重区分处理构件、数据构件和连接构件,这一方法在其他的 定义和方法中基本上得到保持。2. 软件体系结构形式化方法答:1.根据对目标软件系统进行说明的方式:(1)面向模型的方法。在这个方
2、法中,对目标软件系统的说明是为其构造一个模型,该模型的构成成分是一些具有特性的数据抽象,如域,元组等(2)面向性质的方法。这种方法是直接给出目标软件系统的一组特性来描 述目标软件系统。通常是目标软件系统必须满足的形式公理,其形式 化说明仅描述目标软件系统的性质,而不涉及实现方法。2.根据表达能力的形式方法可分为以下五大类(1)基于模型的方法(2)代数方法(3)过程代数方法(4)基于逻辑的方法(5)基于网络的方法软件质量定义、软件质量模型答:,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发 标准、以及所有专业开发的软件都应具有的隐含特征的程度。影响软件质量的主要因素,这些因素是
3、从管理角度对软件质量的度量。可划分为三组,分别反应 用户在使用软件产品时的三种观点。正确性、健壮性、效率、完整性、可用性、 风险(产品运行);可理解性、可维修性、灵活性、可测试性(产品修改);可移 植性、可再用性、互运行性(产品转移)。第二章:4. Kruchten 4+1模型描述软件体系结构Kruchten 4+1模型建立在体系结构的 Perry&Wolf定义和Berry Boehm定义的基础 上,采用多视图模型的方法描述软件体系结构。该模型由5个视图构成,每个视图只关心系统的一个侧面,5个视图结合在一起才能反映系统的软件体系结构的 全部内容。集成者 性能可扩展性最终用户功能程序员软
4、件管理系统工程师拓扑通信体系结构的概念在每个视图里面都可以独立应用,并不是所有的软件体系结 构都需要完整的4+1视图。逻辑视图,主要支持功能需求,即系统应当向最终用户提供怎么样的服 务。在逻辑视图中,从问题出发,采用面向对象的方法,按照抽象、封 装、继承的原则,系统分解成一系列的功能抽象,得到代表着系统的关 键抽象表示的峰值。当用面向对象的设计方法时,逻辑视图即是对象模 型。过程视图,考虑的是一些非功能性需求,它所要面对的问题有并发、发 布、系统的完整性、容错能力等,强调并发性、发布性、系统集成性和 容错能力,还要考虑怎样把过程视图与逻辑视图的要点相适应。开发视图,关注的是软件开发环境中软件模
5、块的实际组织和管理。开发 视图通过具有输入输出关系的模块和子系统图来表示。描述开发视图的 原则是分割、编组、可视。开发视图侧重的是内部需求,这些需求目的 是要使开发相关活动更容易进行。物理视图,主要考虑如何把软件映射到硬件上。软件系统在计算机网络 的各个处理节点上运行,各种被确定的元素网络、过程、任务和对 象一一需要映射到各种节点上去。场景视图,通过使用一些重要的场景,4个视图中的元素可以协调的共 同工作。它承担着2个任务:在软件体系结构设计中,将以此视图为驱动来发现体系结构元素 在体系结构设计结束后,此视图承担验证和描述的角色。它不仅用 于书面记录,并且是体系结构原型测试的起始点。第三章:5
6、. 软件生命周期答:是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体 描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这 种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质 量。6. 构件答:构件是系统中实际存在的可更换部分,它实现特定的功能,看、构件可以看 成数据单元或是计算单元。符合一套接口标准并实现一组接口。构件代表系统中 的一部分物理实施,包括软件代码或其等价物。7.连接件答:连接件是软件体系结构的一个组成部分,他通过对构件间的交互规则的 建模来实现构件间的
7、连接,连接件不许编译。&软件体系结构范式答:设A=<C 0>是一个软件体系结构,若任意一个构件都至少与另一个构件依赖, 则称A满足第一范式,记为1NF。设A=<C, 0>是一个软件体系结构,若 A中存在码,则称A满足第二范式,记为 2NF。设A=<C, 0>是一个软件体系结构,若 A中存在码,若A满足第一范式,并且C 中的构件都为事件依赖,则称 A满足可靠性范式,记为RNF9. n演算的定义答:n演算是移动、交互、并发系统的理论模型,它提供相关的概念框架和数学 工具,用于表达移动、交互系统和推论它们的行为,达到增强对已堕落感系统的 理解的目的。10.
8、 化学抽象机模型答:化学抽象机(chemical abstract machine,CHAM)是一种对动态软件体系结 构的分析、测试非常有用的形式化描述技术。第四章:11. 管道和过滤器风格答:在管道过滤器模式下,功能模块称作过滤器;功能模块间的连接可以看作输 入、输出数据流之间的通路,所以称作管道。12. 客户机一一分配器一一服务器风格答:客户机的任务是去执行特殊领域的任务。 为了执行处理任务,客户机访问由 服务器提供的操作。在发送请求给服务器之前,客户机向分配器请求信道。客户 机利用这个和服务器通信。服务器为客户机提供一组操作。它既可以注册自身,也可以通过其名字和地址向 分配器进行注册。一
9、个服务器组件可以与客户机位于同一台计算机, 也可以位于 网络的某个节点处。分配器提供在客户机和服务器间建立通信信道的功能。要实现这一点,需要取出服务器组件的名字并将这个名字映射成为服务器组件的物理地址。13. 分层系统风格答:所谓分层体系结构,是按层次组织软件的一种软件体系结构, 其中每一层软 件建立在低一层的软件层上。分层风格的主要特征是第J层的服务只被第J+1层使用-层之间没有更进一步 的自己依赖关系。分层风格的体系结构的优点:1) 由于对层次的邻接层数目进行glen限制,所以系统易于改进和扩展。2) 每一层的软件都易于重用,并可为某一层次提供多种可互换的具体实现。3) 分层系统所支持的设
10、计体现了不断增加的抽象层次,这样一个复杂问题 的求解就被分解为一系列递增的步骤。4) 标准化支持。清晰定义和接受共同的抽象层能促进标准化任务和接口的 开发,同一接口的不同实现可以替换使用。5) 余部依赖性。层之间的标准化接口往往会限制被改动层的改动代码的影 响。6) 可替换性。独立层实现不需要太费劲就可以被语义上等价的实现所替换。 分层风格的体系结构的缺点有:1) 应当如何界定是层次间的划分是一个比较复杂的问题。2) 更改行为的重叠。层的行为改变时会出现一个严重的问题。3) 降低效率。说起来一个分层体系结构的效率往往要低于整体结构或一个 “对象的海洋”。4) 不必要的工作。如果底层执行的某些服
11、务执行了多余或重复的工作,而 这些工作并非高层真正需要的,那么这对性能的影响是负面的。5) 难以认可层的正确粒度。层数太少的分层体系结构不能完全发挥这种模式在可重用性、可更改性和可移植性上的潜力。14. 面向服务的体系结构答:面向服务的体系结构是一个组件模型。 面向服务的体系结构将应用程序中的 不同功能单元称为服务,并通过对这些服务之间定义良好的接口而将其联系起 来。这种具有中立的接口定义的特征称为服务之间的松耦合。松耦合系统的好处有两 点:一点是它的灵活性;另一点是,当组成整个应用程序的每个服务的内部结构 和实现逐渐发生改变时,它能够继续存在。然而,紧耦合意味着应用程序的不同 组件之间的接口
12、与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,系统就显得非常脆弱。一个SOA系统中的各个组成元素:1、其功能部分包括以下元素:1)通信。表示了服务提供者和服务使用者之间的消息传输所采用的协议。如 HTTP FTP等。2)服务通信协议。表示了服务之间通信所采用的协议,即服务气功这和使用者之间如何理解双方互相发送的消息。这种协议如SOAP等03)服务描述。表示了如何对服务本身进行描述,即描述了服务所需的入口参数、返回值、服务所在位置等信息。这样的描述有WSDL等。4)服务。表示了可被调用的服务本身。5)业务流程。表示了为达到业务需求目的而按照规则和一定序列调用的一
13、组服 务集合,它可以将细粒度的服务组合为粗粒度的服务。浙西饿业务流程描述 通常有 BPM、WSFL BPEL等o6)服务登记。保存有服务数据和描述信息。服务提供者可以将其服务信息发布 在此,服务使用者可以在这里查找服务。2、服务质量包括了下列部分:规则。表示了一组可以是服务使用者得到服务提供者所提供服务的规则。安全。表示了一组服务在服务使用者的认证、授权、访问控制等方面的规则。交互。表示了一组服务在共同完成一项了俩书时所要遵循的属性。管理。表示了用以管理服务提供者和服务使用者的一组属性。第五章:15. 什么是ADL体系结构描述语言(ADL)是软件体系结构研究的核心问题之一,ADL使用符号标记把
14、系统分解成构件和连接件,并且说明了这些元素如何连接在一起构成 一个配置。它不但是形式化描述软件体系结构的基本工具,而且也是对软件体系 结构进行求精、验证、演化和分析的前提和基础。16. 典型的ADL1)C2, C2是一种基于构件和消息的 ADL,适用于大型频繁交互的层次型图形用户界面的软件体系结构描述。C2构件包含4个内部部分:内部对象、包 装器、对话和域转换器,内部对象存储构件状态并实现构件所提供的操作; 包装器监控所有操作请求,并通过底端接口发送通知;对话负责把接收到 的外部消息映射成内部对象上的操作;域转换器是可选的,它可以修改一 些消息使其能被其他构件理解,这样一个构件就能在特定的体系
15、结构中适 用。2)Darwin与 Wright,Darwin与 Wright分别将n演算和 CSP作为其数学基础,适用于分布式并发类型的体系结构描述。Darwin和其他ADL类似,把构件 这个概念作为系统的基本构成元素,在 Darwin中,对于构件,主要关心的 是它为其他构件提供了哪些服务,他们需要其他构件的哪些服务。Wright的关键思想是把体系结构连接件定义为明确的语义实体,Wright的主要特点是对体系结构和抽象行为的精确描述。定义体系结构风格的能力和一组 对体系结构描述进行一致性和完善性的检查。3) ACME是一种体系结构交互语言,支持从一种 ADL向另一种ADL规格说明的转换,ACM
16、E的核心概念以7种类型的实体为基础:构件、连接件、系 统、端口、角色、表述和表述图,支持系统结构的分级描述,特别是每个 构件或连接件都能用一个或多个更详细更低层的描述来表示。ACME主要考 虑的是体系结构的构造,因此并不包含体系结构的计算语义,而依靠一个 开放的语义框架。因此严格来说,ACME并不是一种真正意义上的AD L,而是一种体系结构变换语言,它提供了一种在不同ADL的体系结构 规范描述之间实现变换的机制°ACME从4个不同的方面对软件体系结 构进行描述,分别是结构、属性、约束、类型和风格。4) UniCo n是一种围绕着构件和连接件这2个基本概念组织的体系结构描述语言。Uni
17、Co n的主要目的在于支持对体系结构的描述,对构件 交互模式进行定位和编码,并且对需要不同交互模式的构件的打包加以区 分。具体来说UniCo n及其支持工具的主要目的有:提供对大量构件和连接件的统一的访问。 区分不同类型的构件和连接件以便对体系结构配置进行检查。 支持不同的表示方式和不同的开发人员的分析工具。支持对现有构件的使用5) Aesop是一个软件体系结构设计环境生成器,它的最初目标就是要提供一个用于构造开放的、最初体系结构风格的体系结构设计环境开发工具包。 它的基本思路是:要使定义新的风格变的容易,从而让设计者能够利用这 些风格进行体系结构设计。每个这样的环境度支持以下5个方面: 与风
18、格词汇表相对应的一系列设计元素类型,即特定风格的构件和 连接件 检查设计元素的成分,满足风格的配置约束 优化设计元素的语义描述 一个允许外部工具进行分析和操作体系结构描述的接口 多风格特定的体系结构的可视化,以及操作它们的图形编辑工具6) Rapide是一种基于事件的、 用于定义并执行系统体系结构模型的计算机语言,还包括与这个语言相关的模仿工具集,是一种可执行的ADL, 其目的在于通过定义并模拟基于事件的行为对分布式并发系统建模°Ra pide由5种子语言构成:类型语言,定义接口类型和函数类型,支持通过继承已有的接口来 构造新的接口类型模式语言,定义具有因果、独立、时序等关系的事件所
19、构成的事物 模型可执行语言,包含描述构件行为的控制结构约束语言,定义构件行为和体系结构所满足的形式化约束,其中约 束为需要的或禁止的偏序集模式Rapide的优点在于能够提供多种分析工具,它所支持的分析都基于检测在某个模拟过程中的事件是否违法了某种次序关系7)MetaH的目的是支持实时、容错、安全、多处理、嵌入式的软件体系系统的分析、验证和生产。MetaH提供了集成的、可跟踪的体系结构规 格说明、分析和实现,能够进一步保证系统行为与模型一致,降低建模、 实现、调试和验证的难度,能通过更精确、快速的设计评估改善系统设计 质量。MetaH语言不仅有文本方式的语法描述,又能以图形方式描述。8)SADL
20、语言提供了对软件体系结构的精确文本表示,同时保留了直观的框线图模型,明确区分了多种体系结构对象°SADL不仅提供了定义体系 结构的功能,而且能够定义对体系结构的特定类约束°SADL的一个独 特方面是对体系结构层次体系的表示和推理。SADL模式支持结构改进,即把一个体系结构系统地转化成另一个包含不同体系结构概念的体系结构。第六章:17什么是风险分析?分析方法有哪些?风险分析是系统安全性工程中一种系统分析方法。主要有以下分析方法:1)失效模式和后果模式分析,是一种非常有用的方法,主要用于预防失效。2)失效模式、后果与严重度分析,是失效模式和后果分析的一个扩展,应 用于考虑每个组
21、件失效的重要性3)风险和可操作性研究,使用一系列的向导词调查来自系统操作每个阶段 正规状况下的后果4)事件树分析,又称决策树分析,是在给定系统起始事件的情况下,分析 此事件可能导致的各种事件的一系列结果,从而定性与定量的评价系统 的特性,并帮助人们做出处理或防范的决策5)失效树分析,又称因果树分析,在产品设计阶段,失效树分析可帮助判 明潜在危险的模式和灾难性危险因素,发现系统或装置的薄弱环节,以 便改进设计,也可以作为事故发生后的调查手段。6)改进的风险分析方法,用来确定系统中的组件及可能存在的错误模式。第七章:18.什么是设计模式?模式分类设计模式是利用面向对象技术来解决特定环境中问题的方法
22、,是整个软件行业不断积累的集体智慧的结晶。按照其目的可分为3类:1)创建模式:Factory(工厂模式)、Prototype(原型模式)、Builder(建造模式)、Singleton (单利模式)和Adapter (适配器模式)2)结构模式:Fa?ad(门面模式)、Proxy(代理模式)、Composite (组合模式)、Decorator (装饰模式)、Bridge (桥接模式)和Flyweight (享元模式)3)行为模式:Template(模板模式)、Memento (备忘录模式)、Observe"观察者模式)、 Cha in of Respo nsibility (反映链)
23、、Comma nd (命令模式)、State (状态模 式)、Strategy (策略模式)、Mediator (中介者模式)、Interpreter(解释器 模式定义)、Visitor (迭代器模式)第十章:19. 软件复用定义软件复用是一种由预先构造好的、为复用目的而设计的软件构件来建立或者 组装软件系统的过程第十一章:20. 构件的特点1)以二进制形式存在,软件构件一般不再以源代码方式实现复用2)可与其他独立开发的软件构件协同工作3)软件构件具有相对独立的功能4)与程序设计语言无关5)成为其他软件构件的生成模块6)存储在构件库中的长久实体7)有提供和请求服务的插件8)有良好定义的接口9)
24、属于某种构件模型10)有充分的自容性21.构件的分类1)根据构件复用的方式,分为黑盒构件和百盒构件。黑盒构件不需要了解 内部结构,能通过接口从外部调用,能达到即插即用的构件,白盒构件 是必须经过修改才能复用的构件。2)根据功能用途,可分为系统构件、支撑构件和领域构件。系统构件在整 个构件集成环境和运行环境中都可以使用的构件,支撑构件是在构件集 成环境和构件管理系统中使用的构件,领域顾客是为专门应用领域制作 的构件。3)根据粒度大小可分为基本数据结构类构件、功能构件和子系统构件4)根据构件复用时的形态,分为动态构件和静态构件,动态构件是运行时 刻动态嵌入、链接的构件,静态构件如源代码构件系统分析
25、构件设计构 件等。5)根据构件的外部形态,可分为独立而成熟的构件、有限制的构件、适应 性构件、装配的构件和可修改的构件。6)根据构件的结构,分为原子构件和组合构件7)根据构件的来源,分为自开发构件和第三方构件22. 3C模型模型是由Tracz提出的构件描述模型,3C分别代表概念、内容和语境,概念 是对构件做什么的描述,内容描述了构件被如何实现,语境将可复用构件放置到 其可应用的领域中,也就是说,通过刻画概念的、操作的和实现的特征,让软件 开发人员能够搜索到适当的构件以满足应用需求。第十三章:23. 软件过程管理软件过程管理是能够在可控制、可预测的前提下,不断优化和提高软件开发 的品质和降低成本
26、,保证一个软件高品质和低成本是进行软件过程管理的最终目 的。24. 软件规模度量软件规模度量可分为初步度量和详细度量。初步度量是在需求分析和详细设 计未完成之前,通过对软件功能分析得出结果。详细度量是在需求分析和详细设 计以后所进行的度量,通过参考开发过程中的详细度量结果, 可以对根据初步度 量做出的计划安排进行调整,以达到更好的资源配置。软件规模度量的方法有:FPA方法、MarkU Method方法、特征点方法、3D 功能点方法、构造性成本模型和 COSMIC-FF方法。第十四章:25. FPA方法FPA方法是一种将系统分解成更小的单位来度量的方法,这样就更容易理解 和分析。利用FPA来度量
27、一个系统规模的步骤如下:工程类型判定确定系统边界和计测范围计算数据功能点计算事物功能点 计算调整系数 计算调整后的功能点 确定功能点数据功能点是为了实现计测对象应用系统的机能所必须的数据的规模衡量。 构成数据功能点的数据种类包括内部逻辑文件(Internal Logical File ILF)和外部 接口文件(External In terface File EIF。ILF是一组用户可以确认的在逻辑上有联系的数据,它们属于系统内部,并 通过El (External In put外部输入)来维护。EIF是一组用户可以确认的在逻辑上 有联系的数据,但它只作为参考的目的。这些数据保存在应用系统边界的外部, 通过另一个系统的EI来维护。对于一个系统的EIF,也是另一个系统的ILF 数据功能点计算流程如下数据的抽出数据种类的识别(一ILF/EIFRET(记录元素类型)的 识别和计数DET(数据元素类型)的 识别和计数数据复杂性判定计算出数据功能点事物功能点(Transaction Function Point TFP是网络实现计测对象应用系统 的机能所必须的事物处理的规模的度量,是用户和开发者共同认识的、可以被定义的、不可分割的业务处理的最小单位。TFP的种类包括外部输入(EI)、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit 1 What's he like Part B Read and write大单元整体教学设计表格式-2024-2025学年人教PEP版英语五年级上册
- 第16课《最苦与最乐》教学设计2023-2024学年统编版语文七年级下册
- Module 1 wonders of the world unit 2 The Grand Canyon was not just big 英文版教学设计 2024-2025学年外研版九年级英语上册
- 2025年黑龙江省大庆市单招职业倾向性测试题库参考答案
- 《家乡文化生活现状调查》教学设计 2024-2025学年统编版高中语文必修上册
- 2025年广东环境保护工程职业学院单招职业技能测试题库1套
- 第14课《诗词三首》教学设计-2024-2025学年统编版语文九年级上册
- 2025年湖南铁道职业技术学院单招职业适应性测试题库含答案
- 2025至2030年中国智能柔巾机数据监测研究报告
- 湖北省武汉市问津教育联合体2024-2025学年高一上学期12月月考地理试题(解析版)
- 吉利围墙施工组织设计样本
- 人教版三年级上册数学应用题100题及答案
- 第6课《飞向蓝天的恐龙》两课时学习任务单部编版四年级语文下册
- 语文新课标背景下单元整体教学:六下第4单元大单元设计
- 福州地铁公司招聘考试题目
- 小学语文期末质量分析报告
- 口腔医院客服培训课件
- 驾照体检表完整版本
- 04G325吊车轨道联结及车挡
- 华为公司员工培训与绩效管理
- 混凝土搅拌站有限空间作业管理制度模版
评论
0/150
提交评论