第四章软件体系结构描述.ppt
- 文档编号:2123311
- 上传时间:2022-10-27
- 格式:PPT
- 页数:96
- 大小:771KB
第四章软件体系结构描述.ppt
《第四章软件体系结构描述.ppt》由会员分享,可在线阅读,更多相关《第四章软件体系结构描述.ppt(96页珍藏版)》请在冰豆网上搜索。
软件体系结构软件体系结构软件体系结构描述软件体系结构描述1郑州大学软件学院郑州大学软件学院赵哲赵哲主要内容主要内容n软件体系结构描述方法软件体系结构描述方法n框架标准框架标准n描述语言描述语言n典型的软件体系结构描述语言典型的软件体系结构描述语言n软件体系结构与软件体系结构与UMLn可扩展标记语言可扩展标记语言n基于基于XML的描述语言的描述语言2郑州大学软件学院郑州大学软件学院赵哲赵哲这是什么?
这是什么?
3郑州大学软件学院郑州大学软件学院赵哲赵哲上图的问题上图的问题n很多事情没有说:
很多事情没有说:
n构件的类型构件的类型n连接件的类型连接件的类型n圈是什么圈是什么n箭头是什么箭头是什么n层次的意义层次的意义n为什么为什么CP要放第一层要放第一层n只画出方框和线条不是体系结构,而是体系结只画出方框和线条不是体系结构,而是体系结构的开始构的开始4郑州大学软件学院郑州大学软件学院赵哲赵哲体系结构描述的必要性体系结构描述的必要性n在软件开发中,各种角色交流思想的媒在软件开发中,各种角色交流思想的媒介介n进行上层分析的基础进行上层分析的基础n让别人理解系统的第一手资料让别人理解系统的第一手资料5郑州大学软件学院郑州大学软件学院赵哲赵哲体系结构的描述方法体系结构的描述方法n使用体系结构描述语言使用体系结构描述语言nArchitectureDescriptionLanguagenADLsn专门针对软件体系结构的特点而设定专门针对软件体系结构的特点而设定n目前已经有十几种常见的目前已经有十几种常见的ADL6郑州大学软件学院郑州大学软件学院赵哲赵哲体系结构描述框架标准体系结构描述框架标准n鉴于体系结构描述的概念和实践的不统鉴于体系结构描述的概念和实践的不统一,一,IEEE与与1995年年8越成立了体系结构越成立了体系结构工作组工作组nIEEEP1471体系结构描述框架,并与体系结构描述框架,并与2000年年9月月21日通过日通过IEEE-SA标准委员标准委员会评审。
会评审。
7郑州大学软件学院郑州大学软件学院赵哲赵哲IEEEP1471nIEEEP1471适用于适用于软件密集软件密集的系统,的系统,其目标在于:
其目标在于:
n便于体系结构的表达与交流便于体系结构的表达与交流n奠定质量与成本的基础奠定质量与成本的基础nIEEEP1471介绍了如何大概的描述体系介绍了如何大概的描述体系结构,对详细还有所欠缺结构,对详细还有所欠缺8郑州大学软件学院郑州大学软件学院赵哲赵哲RationalnRational根据根据P1471提出了自己的标准提出了自己的标准n相比之下,该建议标准涉及面较窄,所注重的相比之下,该建议标准涉及面较窄,所注重的层次比较低,因而更具体。
层次比较低,因而更具体。
n该建议标准结合了该建议标准结合了4+1模型提出了模型提出了7个体系结个体系结构视图构视图n将体系结构基于将体系结构基于RUP,用,用UML来描述,具有一来描述,具有一定的局限性,但该建议标准结合了业界已经广定的局限性,但该建议标准结合了业界已经广泛采用的建模语言和开发过程,因而易于推广。
泛采用的建模语言和开发过程,因而易于推广。
9郑州大学软件学院郑州大学软件学院赵哲赵哲软件体系结构描述语言软件体系结构描述语言n软件开发的重点已从程序代码转移到了软件开发的重点已从程序代码转移到了可重用可重用颗粒颗粒(构件和连接件构件和连接件)的的体系结构元素体系结构元素,以及它,以及它们们整体的互连结构整体的互连结构n为了支持体系结构开发,需要建立应用于体系为了支持体系结构开发,需要建立应用于体系结构规格说明的形式化建模符号和分析开发工结构规格说明的形式化建模符号和分析开发工具具nADL(ArchitectureDescriptionLanguage)和对应的工具包就能够解决这一问和对应的工具包就能够解决这一问题。
题。
10郑州大学软件学院郑州大学软件学院赵哲赵哲ADLnADL的三个基本元素是:
的三个基本元素是:
n构件构件n连接件连接件n体系结构配置体系结构配置11郑州大学软件学院郑州大学软件学院赵哲赵哲典型的软件体系结构描述语言典型的软件体系结构描述语言ADL研发组织研发组织UniconCarnegieMellon大学大学WrightCarnegieMellon大学大学C2SouthernCalifornia大学大学RapideStanford大学大学SADLSRIAesopCarnegieMellon大学大学ACMECarnegieMellon大学大学12郑州大学软件学院郑州大学软件学院赵哲赵哲ADLs和其他语言的比较和其他语言的比较n构造能力:
构造能力:
ADL能够使用较小的体系结构元素来建造大能够使用较小的体系结构元素来建造大型软件系统型软件系统n抽象能力:
抽象能力:
ADL使得软件体系结构中的构件和连接件描使得软件体系结构中的构件和连接件描述可以只关注抽象特征,而不管具体实现。
述可以只关注抽象特征,而不管具体实现。
n复用能力:
复用能力:
ADL使得组成软件系统的构件、连接件甚至使得组成软件系统的构件、连接件甚至是软件体系结构都成为软件系统开发和设计的可复用部是软件体系结构都成为软件系统开发和设计的可复用部件;件;n组合能力:
组合能力:
ADL使得其描述每一个系统元素都有自己的使得其描述每一个系统元素都有自己的局部结构,这种特点使得局部结构,这种特点使得ADL支持软件系统的动态变化支持软件系统的动态变化组合;组合;n异构能力:
异构能力:
ADL允许不同的体系结构描述有关联;允许不同的体系结构描述有关联;n分析和推理能力:
分析和推理能力:
ADL允许对体系结构进行多种不同的允许对体系结构进行多种不同的性能和功能上的推理分析。
性能和功能上的推理分析。
13郑州大学软件学院郑州大学软件学院赵哲赵哲典型元素含义比较典型元素含义比较14郑州大学软件学院郑州大学软件学院赵哲赵哲常见的软件体系结构元素常见的软件体系结构元素15郑州大学软件学院郑州大学软件学院赵哲赵哲ADL的构成要素的构成要素-构件构件n在体系结构中,构件可以小到只有一个在体系结构中,构件可以小到只有一个过程、大到整个应用程序。
过程、大到整个应用程序。
n构件中有一些重要的属性构件中有一些重要的属性n构件作为一个封装的实体,只能通过其构件作为一个封装的实体,只能通过其接口接口与外部环境交互与外部环境交互n接口由一组端口组成接口由一组端口组成n构件的构件的演化演化能力能力16郑州大学软件学院郑州大学软件学院赵哲赵哲ADL的构成要素的构成要素-连接件连接件n连接件用来连接构件,它们可以是消息连接件用来连接构件,它们可以是消息器、共享变量、缓冲区、协议、管道、器、共享变量、缓冲区、协议、管道、数据库、应用程序中的数据库、应用程序中的SQL语句等。
语句等。
n连接件同样有连接件同样有接口接口,接口由一组角色组,接口由一组角色组成。
有成。
有2角色,也有多角色。
角色,也有多角色。
17郑州大学软件学院郑州大学软件学院赵哲赵哲ADL的构成元素的构成元素-体系结构配置体系结构配置n体系结构配置提供信息来确定:
体系结构配置提供信息来确定:
n构件是否正确连接构件是否正确连接n接口是否匹配接口是否匹配n连接件构成的通信是否正确连接件构成的通信是否正确n说明语义说明语义n利用配置来支持系统的变化,使不同技利用配置来支持系统的变化,使不同技术人员都能理解并熟悉系统术人员都能理解并熟悉系统18郑州大学软件学院郑州大学软件学院赵哲赵哲典型的软件体系结构描述语言典型的软件体系结构描述语言nUniCon语法语法-描述构件:
描述构件:
component(构件名构件名)(接口接口)(构件实施构件实施)end19郑州大学软件学院郑州大学软件学院赵哲赵哲UniCon语法语法-描述构件描述构件n描述接口描述接口-语法:
语法:
interfaceisntypen(属性属性,用于更进一步的说明用于更进一步的说明)n(参与者参与者,用于更进一步的说明用于更进一步的说明)endinterfacencomponent_type:
Module|Computation|SharedData|SeqFile|Filter|Process|SchedProcess|General20郑州大学软件学院郑州大学软件学院赵哲赵哲UniCon语法语法-描述构件描述构件n描述构件实施描述构件实施-语法:
语法:
implementationisendimplementation21郑州大学软件学院郑州大学软件学院赵哲赵哲UniCon语法语法-描述连接件描述连接件n描述连接件描述连接件-语法:
语法:
connector(连接件名字连接件名字)(协议协议)(连接件的实现连接件的实现)end22郑州大学软件学院郑州大学软件学院赵哲赵哲UniCon语法语法-描述连接件描述连接件n描述协议描述协议-语法:
语法:
protocolistype(角色角色)endprotocoln:
DataAccess|FileIO|Pipe|PLBundler|PocedureCall|RemoteProcCall|RTScheduler23郑州大学软件学院郑州大学软件学院赵哲赵哲UniCon语法语法-描述连接件描述连接件n描述连接件的实现描述连接件的实现-语法语法implementationisbuiltinendimplementation24郑州大学软件学院郑州大学软件学院赵哲赵哲练习练习n用用UniCon语言来描述最简单的管道语言来描述最简单的管道-过过滤器滤器n过滤器名:
过滤器名:
GuoLvQin管道名:
管道名:
GuanDao25郑州大学软件学院郑州大学软件学院赵哲赵哲Wright26郑州大学软件学院郑州大学软件学院赵哲赵哲Wrightn上图介绍了一个简单的客户服务器系统的体系上图介绍了一个简单的客户服务器系统的体系结构结构n分为分为3个部分个部分n第一部分定义构件和连接件类型。
一个构件类第一部分定义构件和连接件类型。
一个构件类型用端口型用端口(ports)和构件规格和构件规格(component-spec)来说明来说明n连接件类型用所定义的角色和粘剂连接件类型用所定义的角色和粘剂(glue)的集的集合来说明。
合来说明。
n粘剂用来说明客户服务和服务器角色是怎样协粘剂用来说明客户服务和服务器角色是怎样协作的。
比如,客户端请求,服务器响应作的。
比如,客户端请求,服务器响应27郑州大学软件学院郑州大学软件学院赵哲赵哲Wrightn第二部分是构件和连接件的实例集合第二部分是构件和连接件的实例集合n有一个服务器有一个服务器s,一个客户端,一个客户端c,一个连,一个连接件接件cs28郑州大学软件学院郑州大学软件学院赵哲赵哲Wrightn第三部分描述端口和连接件的关系。
第三部分描述端口和连接件的关系。
n比如服务器端的比如服务器端的provide端口与连接件中端口与连接件中的的server角色相对应。
角色相对应。
n客户端的客户端的request端口与连接件中的端口与连接件中的client角色相对应。
角色相对应。
29郑州大学软件学院郑州大学软件学院赵哲赵哲Wright-进程符号的说明进程符号的说明n连接件的角色说明了交互方每一方的行连接件的角色说明了交互方每一方的行为,粘剂说明了这些行为是如何结合在为,粘剂说明了这些行为是如何结合在一起的。
一起的。
n但是,如何描述行为特点以及可能发生但是,如何描述行为特点以及可能发生的行为范围?
的行为范围?
n进程代数的方法来描述进程代数的方法来描述30郑州大学软件学院郑州大学软件学院赵哲赵哲Wrightn符号的含义符号的含义n对号表示成功对号表示成功n方框表示确定性选择方框表示确定性选择n箭头表示事件变迁箭头表示事件变迁n。
n优先级问题等优先级问题等n不做重点不做重点31郑州大学软件学院郑州大学软件学院赵哲赵哲C2nC2是一种常见是一种常见(有图形化用户界面有图形化用户界面)的的软软件体系结构风格件体系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 软件 体系结构 描述