软件体系结构复习提纲.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件体系结构复习提纲

软件危机的原因?表现? 表现: 1、软件成本日益增加2、开发进度难以控制3、软件质量差4、软件维护困难 构件?构件库的组织方式?构件重用的四个阶段?(过程) 构件库的组织方式:关键字分类法、刻面分类法、超文本组织方法 构件重用的四个阶段:1、检索与提取构件2、理解与评价构件3、修改构件4、构件组装 软件重用是什么?一般包括哪重用? 1-4+1试图模型? 如图: 逻辑视图:主要支持系统的功能需求,即系统提供给最终用户的服务。逻辑视图设计中要注意的主要问题是要保持一个单一的、内聚的对象模型贯穿整个系统。 开发视图:也称模块视图,主要侧重于软件模块的组织和管理。开发视图通过系统输入输出关系的模型图和子系统图来描述。 在开发视图中,最好采用4~6层子系统,而且每个子系统仅能与同层或更低的子系统通信,这样可以使每个层次的接口既完备又精练,避免了各个模块之间很复杂的依赖关系,设计时要充分考虑,对于各个层次,层次越低,通用性越强,这样,可以保证应用程序的需求发生变化时,所做的改动最小。 进程视图:也称并发视图,侧重于系统的运行特性,主要关注一些非功能性的需求,进程视图强调并发性、分布性、系统集成性和容错能力,以及从逻辑视图中的主要抽象如何适应进程结构。 进程视图可以描述成多层抽象,每个级别分别关注不同的方面。在最高层抽象中,进程结构可以看作是构成一个执行单元的一组任务。它可看成一系列独立的,通过逻辑网络相互通信的程序。它们是分布的,通过总线或局域网、广域网等硬件资源连接起来。 物理视图:主要考虑如何把软件映射到硬件上,它通常要考虑到系统性能、规模、可靠性等。解决系统拓扑结构、系统安装、通讯等问题。当软件运行于不同的节点上时,各视图中的构件都直接或间接地对应于系统的不同节点上。因此,从软件到节点的映射要有较高的灵活性,当环境改变时,对系统其他视图的影响最小 场景:可以看作那些重要系统活动的抽象,它使四个视图有机联系起来,从某种意义上说场景是最重要的需求抽象。在开发体系结构时,它可以帮助设计者找到体系结构的构件和它们之间的作用关系。同时,也可以用场景来分析一个特定的视图,或描述不同视图构件间是如何相互作用的。场景可以用文本表示,也可以用图形表示 软件体系结构核心模型? 构件:具有某种功能的可重用的软件模板单元,表示了系统中主要的计算元素和数据存储。构件分为两种:复合构件和原子构件, 3-软件体系结构生命周期模型? 1-软件体系结构经典风格:管道/过滤器风格,黑板系统,分层系统,面向对象的体系结构风 格和基于事件隐式调用风格,各自组成及优缺点? 组成:每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流。这个过程通常通过对输入流的变换及增量计算来完成,所以在输入被完全消费之前,输出便产生了。 优点: 1、使得软构件具有良好的隐蔽性和高内聚、低耦合的特点; 2、允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成; 3、支持软件重用。只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来; 4、系统维护和增强系统性能简单。新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉; 5、允许对一些如吞吐量、死锁等属性的分析; 6、支持并行执行。每个过滤器是作为一个单独的任务完成,因此可与其它任务并行执行。 缺点: 1.通常导致进程成为批处理的结构2.不适合处理交互的应用3.因为在数据的传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。 黑板系统: 在仓库风格中,有两种不同的构件:中央数据结构说明当前状态,独立构件在中央数据存储上执行,仓库与外构件间的相互作用在系统中会有大的变化。 控制原则的选取产生两个主要的子类。若输入流中某类时间出发进程执行的选择,则仓库是一传统型数据库;另外,若中央数据结构的当前状态出发进程执行的选择,则仓库是一黑板系统。 组成:由三部分组成,包括:知识源、黑板数据结构、控制。 优点: 缺点: 分层系统: 组成:层次系统组织成一个层次结构,每一层为上层服务,并作为下层客户。在一些层次系统中,除了一些精心挑选的输出函数外,内部的层只对相邻的层可见。这样的系统中构件在一些层实现了虚拟机(在另一些层次系统中层是部分不透明的)。连接件通过决定层间如何交互的协议来定义,拓扑约束包括对相邻层间交互的约束。 优点: 支持基于抽象程度递增的系统设计,使设计师可以把一个复杂系统按递增的步骤进行分解 支持功能增强,因为每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层。 3、支持重用。只要提供的服务接口定义不变,同一层的不同实现可以

文档评论(0)

wuyuetian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档