您好,欢迎访问三七文档
构件:构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通讯接口和实现代码的复合体。构件管理:1构件描述2构件分类与构件库组织:关键字分类法刻面分类法(青鸟)超文本组织方法(基本单位是结点)3人员及权限管理构件重用步骤:检索与提取构件(检索方法同上3种加其他)理解与评价构件修改构件(实参)构件组装(功能数据面向对象)软件体系结构:软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件体系结构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。软件体系结构的意义:体系结构是风险承担者进行交流的手段体系结构是早期设计决策的体现软件体系结构是可传递和可重用的模型软件体系结构建模的种类:结构模型框架模型动态模型过程模型功能模型4+1”视图模型从5个不同的视角包括逻辑视图、进程视图、物理视图、开发视图和场景视图来描述软件体系结构。逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务。开发视图也称模块视图,主要侧重于软件模块的组织和管理。进程视图侧重于系统的运行特性,主要关注一些非功能性的需求。物理视图主要考虑如何把软件映射到硬件上,它通常要考虑到系统性能、规模、可靠性等。场景可以看作是那些重要系统活动的抽象,它使四个视图有机联系起来,从某种意义上说场景是最重要的需求抽象。软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。体系结构风格反映了领域中众多系统所共有的结构和语义特性经典的体系结构风格数据流风格:批处理序列;管道/过滤器。调用/返回风格:主程序/子程序;面向对象风格;层次结构。独立构件风格:进程通讯;事件系统。虚拟机风格:解释器;基于规则的系统。仓库风格:数据库系统;超文本系统;黑板系统。分层系统的优点支持基于抽象程度递增的系统设计支持功能增强支持重用分层系统的缺点并不是每个系统都可以很容易地划分为分层的模式很难找到一个合适的、正确的层次抽象方法。C/S软件体系结构是基于资源不对等,且为实现共享而提出来的,C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分布到多个处理机上.C/S体系结构有三个主要组成部分:数据库服务器、客户应用程序和网络。C/S体系结构优点1C/S体系结构具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受。2对于硬件和软件的变化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小。3将大的应用处理任务分布到许多通过网络连接的低成本计算机上,以节约大量费用。C/S缺点:开发成本较高;客户端程序设计复杂;信息内容和形式单一;用户界面风格不一,使用繁杂,不利于推广使用;软件移植困难;软件维护和升级困难;新技术不能轻易应用三层C/S体系结构优点1在逻辑上保持相对独立性,能提高系统和软件的可维护性和可扩展性。2允许更灵活有效地选用相应的平台和硬件系统,并且具有良好的可升级性和开放性。3应用的各层可以并行开发,可以选择各自最适合的开发语言。4利用功能层有效地隔离开表示层与数据层,为严格的安全管理奠定了坚实的基础。三层C/S缺点:三层C/S结构各层间的通信效率若不高,即使分配给各层的硬件能力很强,其作为整体来说也达不到所要求的性能。设计时必须慎重考虑三层间的通信方法、通信频度及数据量。这和提高各层的独立性一样是三层C/S结构的关键问题。HBM基于层次消息总线的体系结构风格运行时刻的系统演化:动态增加或删除构件动态改变构件响应的消息类型消息过滤软件体系结构描述方法:图形表达工具模块内连接语言基于软构件的系统描述语言软件体系结构描述语言工具IEEEP1471RationalADL是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架。基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持。其三个基本元素是:构件、连接件、体系结构配置。ADL优缺点构造能力:ADL能够使用较小的独立体系结构元素来建造大型软件系统;抽象能力:ADL使得软件体系结构中的构件和连接件描述可以只关注它们的抽象特性重用能力:ADL使得组成软件系统的构件、连接件,软件体系结构都成为可重用部件;组合能力:ADL支持软件系统的动态变化组合;异构能力:ADL允许多个不同的体系结构描述关联存在;分析和推理能力:ADL允许对其描述的体系结构进行多种推理分析软件体系结构动态性:交互式动态性结构化动态性体系结构动态性软件体系结构动态模型:基于构件的动态系统结构模型(应用层中间层体系结构层),πADL动态体系结构简单对象访问协议:SOAP信封,SOAP编码规则,SOAPRPC表示,SOAP绑定软件体系结构风险分析方法步骤采用体系结构描述语言ADL对体系结构进行建模;通过模拟方法执行复杂性分析;通过FMEA和模拟运行执行严重性分析;为构件和连接件开发其启发式风险因子;建立用于风险评估的CDG;通过图论中的算法执行风险评估和分析软件体系结构评估9个质量属性:性能,可靠性,可用性,安全性,可修改性,功能性,可变性,集成性,互操作性3种评估方式:基于调查问卷或检查表的评估方式基于场景的评估方式基于度量的评估方ATAM评估过程九个步骤:描述ATAM方法、描述商业动机、描述体系结构、确定体系结构方法、生成质量属性效用树、分析体系结构方法、讨论和分级场景、分析体系结构方法(是第六步的重复)、描述评估结果。软件产品线:产品线是一个产品集合,这些产品共享一个公共的、可管理的特征集,这个特征集能满足选定的市场或任务领域的特定需求。这些系统遵循一个预描述的方式,在公共的核心资源(coreassets)基础上开发的。直接场景:按照现有体系结构开发出来的系统能够直接实现的场景间接场景:需要对现有体系结构做些修改才能支持的场景敏感点和权衡点:敏感点是一个或多个构件的特性。权衡点是影响多个质量属性的特征,是多个质量属性的敏感点软件体系结构测试的概念:检查软件的适用性,不考虑软件的实现代码测试准则:测试应覆盖所有的构件和各个构件的接口、各个连接件的接口、构件之间的直接连接、构件之间的间接连接。什么是web服务:Web服务作为一种新兴的Web应用模式,是一种崭新的分布式计算模型,是Web上数据和信息集成的有效机制。数据层数据访问层业务层业务面监听者(最近)Web服务特点:用标准协议规范使用协约的规范性高度集成能力完好的封装性松散耦合Web服务的不同描述(共同特征):应用的分布式应用到应用的交互平台无关性Web服务开发生命周期:构建部署运行管理Web服务栈:发现服务层,描述服务层,消息格式层,编码格式层,传输协议层Web服务体系优势:高度的通用性和易用性完全的平台、语言独立性高度的集成性容易部署和发布C2风格中的系统组织规则如下:系统中的构件和连接件都有一个顶部和一个底部;构件的顶部应连接到某连接件的底部,构件的底部则应连接到某连接件的顶部,而构件与构件之间的直接连接是不允许的;一个连接件可以和任意数目的其它构件和连接件连接;当两个连接件进行直接连接时,必须由其中一个的底部到另一个的顶部。白盒测试覆盖准则语句覆盖:每条可执行语句至少执行一次,是最弱的覆盖准则分支覆盖或判定覆盖:所有判断的分支至少执行一次条件覆盖:判断式中含有多个条件时,每个条件的取值至少一次为真,一次为假判定/条件覆盖:判定中每个条件的所有可能结果至少出现一次,每个判定本身所有可能结果也至少出现一次路径覆盖:覆盖程序中所有可行路径条件组合覆盖:每个判定条件结果的所有可能组合至少出现一次
本文标题:软件体系结构知识点
链接地址:https://www.777doc.com/doc-1990562 .html