软件体系结构课程设计_第1页
软件体系结构课程设计_第2页
软件体系结构课程设计_第3页
软件体系结构课程设计_第4页
软件体系结构课程设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一局部一.概述一般认为,一个软件系统的体系构造定义了组成该系统的计算构件和构件之间的相互作用关系。可以用一个三元组来描述软件系统构造:SA={构件(components)},连接件(connectors),约束(constraints)}。其中,components是组件的集合,它们供给了一个系统所需的根本功能和操作,构成了一个系统的根本框架;connectors间的交互方式,定义了组件交互的规章并且也给出了一些实现机制,如协议〔连接的交互特性、数据模式〔通信过程中交换的数据类型constraints包括了组件和连接件的使用、选择及其互连的限制等。连接件是比较抽象的,往往表达为组件与组件之间的接口标准,可能最终是由相互连接的组件各自实现一局部。在一个大规模软件系统的开发中,必需从一个较高的层次来考虑组成系统的构件、构件之间的交互方式〔连接件,以及由构件与构件交互形成的拓扑构造。这些要素应当满足肯定的限制,遵循肯定的设计规章,能够在肯定的环境下进展演化。而且,软件体系构造能反映系统开发中具有重要影响的设计决策,便于各种人员的沟通,反映多种关注,并据此开发的系统能够完成既定的功能和性能需求。化过程。二.软件体系构造的构建风格①管道-过滤器风格在管道-过滤器风格下,每个功能模块都有一组输入和输出。功能模块称作过滤器〔filter管道pipe。能,相互之间无需进展状态交互。过滤器是独立运行的构件,非接近的过滤器之间不共享状态,过滤器自身无状态过滤器对其处理上下连接的过滤器“无知结果的正确性不依靠于各个过滤器运行的先后次序,各过滤器在输入具备后完成自己的计算,完整的计算包含在过滤器的拓扑构造中。一个管道-过滤器风格的示意图如以下图所示:PipesFiltersPipesFiltersSystemSystemSimple:PipeFilterGrepSplitterMergeAndSortMergeAndSortMergeSort管道-过滤器风格优点:员将整个系统的输入输出行为理解为单个过滤器行为的叠加与组合化繁为简。将系统抽象成一个“黑箱系统中最终一个过滤器的输出管道,而其内部各功能模块的具体实现对用户完全透亮。的数据遵守其规约,只要用管道将它们连接就可以正常工作。基于管道-过滤器风格的系统具有较强的可维护性和可扩展性的过滤器可以添加到已有的系统上标之一,在管道-过滤器模型中,只要遵守输入输出数据规约,任何一个过滤器都可以被另和可升级性得到了保证。锁检测方法就可以分析出系统目前所处的状态,是否存在死锁可能及如何消退死锁等问题。管道-过滤器风格具有并发性每个过滤器作为一个单独的执行任务理速度管道-过滤器风格缺乏:交互式处理力量弱。管道-过滤器模型适于数据流的处理和变换,不适合为与用户交互频繁的系统建模。在这种模型中,每个过滤器都有自己的数据,这些数据或者是从磁盘存储器中读取来,或者是由另一个过滤器的输出导入进来,整个系统没有一个共享的数据区。这样,当用户要操作某一项数据时,要涉及到多个过滤器对相应数据的操作,其实现较为简单。由以上的缺点,可以对每个过滤器增加相应的用户掌握接口,使得外部可以对过滤器的执行进展掌握。管道-过滤器风格往往导致系统处理过程的成批操作。设计者或许不得不花费精力协调两个相对独立但又存在某种关系的数据流之间〔如为了防止数据泄漏而实行加密等手段导致过滤器必需对输入、输出管道中的数据流进展解析或反解析,增加了过滤器具体实现的简单性面对对象风格特征概述应用场合

面相对象模式集数据抽象、抽象数据类型、类继承为一体,使软件工程公认的系统也常常应用了面对对象风格。面对对象风格的体系构造图面对对象风格优点:高度模块性,封装功能,代码共享,敏捷性,易维护性,可扩大性面对对象风格缺乏:面对对象风格最大的缺乏在于假设一个对象需要调用另一个对象,它就必需知道那个对象的标识〔对象名或对象引用,这样就无形之中增加了对象之间的依靠关系。假设一个对运行。层次系统风格些层实现了虚拟机(在另一些层次系统中层是局部不透亮的)。连接件通过打算层间如何交互的协议来定义,拓扑约束包括对相邻层间交互的约束。用不同的方法实现,同样为软件重用供给了强大的支持。一个概念上的分层模型如以下图所示:功能层功能层〕核心层〕应用层〕分层风格具有一些系统设计者无法抗拒的优势:分层风格支持系统设计过程中的逐级抽象,基于分层风格的系统具有较好的可扩展性,分层风格支持软件复用分层风格缺乏:并不是全部的系统都适合用分层风格来描述的,对于抽象出来的功能具体应当放在哪个层次上也是设计者头疼的一个问题解释器风格基于解释器风格的系统核心在于虚拟机。一个基于解释器风格的系统通常包括:正在被解释执行的伪码和解释引擎;伪码:由需要被解释执行的源代码和解释引擎分析所得的中间代码组成;解释引擎包括:语法解释器和解释器当前的运行状态解释器风格示意图如以下图所示:存储区存储区input待解释的源代码解释后的代码解释工作output解释引擎解释引擎内部状态数据访问工作解释器风格优点:解释器风格使用类来表示文法规章,用户可以使用继承来转变和扩展文法。已有的表达式可以承受增量的方式渐渐扩大,而的表达式可以定义为旧表达式的变体;易于实现文法。可以用多种操作来“解释”一个句子。解释器风格缺点:无法解释简单的文法规章:对于比较简洁的文法规章,解释器风格工作的很好,而对于简单的文法规章,则由于文法层次的浩大而难于治理;应用范围比较狭窄;在文法规章比较简单,则文法的层次变得无法治理,系统中需要包含很多表示文法规章的类。⑤反响掌握环风格掌握工程是一个格外强调方法论的专业领域应用领域的。为了将过程掌握方法从单纯的掌握领域中抽象出来,我们引入了动态系统的概念。动态系统表示信号处理和传输的一个功能单元〔例如:信号可以是能量、材料、输入量和输出量来考虑。N.Wiener概念来总结。掌握论也可以应用于软件体系构造的创立。依据上述的动态系统的定义,在系统中必定存在信号的处理和传输。这时系统的箭头方向给出。单变量系统如以下图所示:输入量输入量动态系统输出量输入量1输出量1输入量1输出量1输入量2动态系统输出量2输入量3输出量3除了用方框图来表达动态系统以外,还可以用信号流图,如以下图所示:UUGYUYG节点支路节点WEGUWEU1G--G2GZZWEGUWE1G-U-G2G一般的动态系统描述框图可以分为开环掌握和闭环掌握系统,但在实际应用中这两种不同的动态系统往往很简洁混淆在一起,对它们之间的区分强调的不够。现在通过一个市内暖气系统来指出这两者之间的不同和一样之处。开环掌握图如以下图所示:干扰量干扰量1输入量2++输出量- +开环掌握装置3房间闭环掌握图如以下图所示:房间房间干扰量11干扰量22+++输出量输入量+调整器3-负反响开环掌握和闭环掌握的差异:闭环掌握:表示一个闭合的作用过程〔掌握回环;依据闭环作用原理可增加抗干扰性〔负反响;可能不稳定,也即被控量不再衰减,而是增长到无穷大〔理论上。开环掌握表示一个开放的作用过程〔掌握序列;只能对抗指定由其处理的干扰,对于其他一些干扰因素无法消退;只要被掌握对象自己保持稳定,整个开环掌握系统也就保持稳定。反响掌握环风格根本构造以闭环掌握系统为例分析过程掌握环的根本构造;一个自动掌握系统包括如下4个主要组成局部:被控对象、测量环节、调整器和执行环节,如以下图所示:干扰量干扰量干扰特性给定值+掌握误差-调整器执行环节掌握量调整特性测量环节被控量被控对象负反响参考模型+参考模型+输入量-调整器被控系统-+自适应模块间接法模型如以下图所示:输入量输入量-调整器被控系统++可调模型-自适应模块⑥仓库风格数据构造据存贮上执行,仓库与外构件间的相互作用在系统中会有大的变化。仓库是一传统型数据库;另一方面,假设中心数据构造的当前状态触发进程执行的选择,则仓库是一黑板系统。黑板系统的组成:学问源。学问源中包含独立的、与应用程序相关的学问,学问源之间不直接进展通讯,它们之间的交互只通过黑板来完成。黑板数据构造。黑板数据是依据与应用程序相关的层次来组织的解决问题的数据,学问源通过不断地转变黑板数据来解决问题。掌握。掌握完全由黑板的状态驱动,黑板状态的转变打算使用的特定学问。三.总结软件体系构造风格为大粒度的软件重用供给了可能。然而,对于应用体系构造风格来说,由于视点的不同,系统设计师有很大的选择空间。要为系统选择或设计某一个体系构造风格,必需依据特定工程的具体特点,进展分析比较后再确定,体系构造风格的使用几乎完全是特化的。在本文中,我们只表达了“纯”的体系构造。但是,从上面的介绍中,我们知道,不同的构造有不同的处理力量的强项和弱点,一个系统的体系构造应当依据实际需要进展选择,以解决实际问题。其次局部分层风格实例:计算机网络的设计网络协议设计者将计算机网络中的各个局部按其功能划分为假设干个层次Laye,的外部特性,只需要定义每一层的输入、数据处理和输出等外部特性。ISO/OSIISO/OSI承受了7层体系构造,从高到低分别是:应用层、表示层、会话层、传输层、7层应用层,用于同应用效劳之间1对等层的协议来进展虚拟通信。应用层应用层应用层应用掌握项〔资源子网〕表示层表示层会话层会话层传输层传输层传输层传输层网络层网络层网络层通讯掌握项〔通讯子网〕链路层链路层物理层物理层物理传输介质第1层是物理层PhysicalLaye,它负责在物理信道上传输原始的数据bit流。它应当供给为建立、维护和撤除物理链路连接所需的机械的、电气的、功能和规程的特性,第2层是数据链路层DataLinkLaye,它的主要功能是纠错和流量掌握,负责结点之间的数据链路,通过过失掌握供给数据帧〔Frame〕的无过失传输,并进展数据流量掌握。第3层是网络层NetworkLaye,它的主要功能是路由掌握〔找路、拥塞掌握和〔Packet,也叫报文分组在结点之间进展交换传送,并且负责路由掌握和拥塞掌握。第4层是传输层TransportLaye,它的主要功能是在上层和下层之间起到一种接口的功能。它应当为上层供给端到端〔最终用户到最终用户、的透亮的、牢靠的数据传传输层对上层屏蔽了传输系统的具体细节。第5层是会话层SessionLaye务。第6层是表示层Pre

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论