高级软件工程(全套课件).pdf

  1. 1、本文档共826页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件体系结构概述 什么是软件体系结构  软件体系结构的产生  软件体系结构日益作为软件工程师所遵循的重要原则浮 现(emerging)  与传统的学科不同,作为软件系统的新概念,它并非成 型的、有精确定义的  而是在软件工程师们  面对日益复杂的系统的设计与构造问题  寻求理解软件系统的更好的方法  寻求构造更大更复杂的软件系统的更有效的方法  的过程中,作为设计抽象的自然演化而出现的。 什么是软件体系结构 软件功能要求 简单复杂 个人英雄时代已经结束 结构性 VS 算法与数据结构 再好的手工艺品也比不上机械化大生产 软件体系结构概念的提出与应用 挑战与机遇 什么是软件体系结构 软件体系结构的重要性  传统软件系统构造的着眼点  算法的选择  数据结构的设计  数据库的构造  当软件系统的规模与复杂度不断增大时,整个 系统的设计与描述变得更加重要 什么是软件体系结构  软件体系结构层的设计目标:系统的结构  将系统划分为若干组件  全局控制结构  通信、同步与数据交换协议  设计元素之间的功能分配与合成  物理分布  …  这些都面临一系列不同的选择,需要在考虑可扩展性与性能等 问题的基础上作出选择,这就是设计问题。  一般意义上,设计问题总是在一些矛盾的要求之间寻找折衷 点,这个过程不仅仅是软件设计的问题,同时涉及用户交流。 什么是软件体系结构  SA的描述包含  构成系统的各个部件的描述  部件间的交互(interactions)  部件构成与部件合成的模式(pattern)以及在这些模式上的 约束  注:前两部分的描述,对于任意由不同部分构成的系统而言都 是需要的,软件体系结构作为一门学科,是将此提升到设计层 原则的高度;同时,用通过实践过程总结的模式(Pattern) 作为设计的指导。  Component的集合 + Component间的交互 什么是软件体系结构 SA描述的现状:非正式、抽象  通常用在长期的实践中非正式的浮现【即:没 有通过理论抽象与统一的形式化描述】的特殊 模型来描述  通常用线/框图与一些文字描述  线框体现出形象的结构,文字则描述符号的含 义并提供在部件与其间的交互中所做的特定选 择的理由 什么是软件体系结构 不规范的体系结构描述  We have chosen a distributed, object- oriented approach to managing information  The easiest way to make the canonical sequential complier into concurrent complier is to pipeline the execution of the compiler phases over number of processors...  基于自然语言的描述,有效但是不正式不严格。 什么是软件体系结构  问题  为什么为产生这样非正式、抽象的描述?  这样的体系结构的描述对软件工程是否有用? 什么是软件体系结构  【关于非正式】:对软件系统的组织而言, 经过长期的积累,已有一系列习惯用语、模 式、风格,构成共享的、语义丰富的(体系 结构用)词汇  例如,说一个系统是pipe-filter结构的风格,即 该系统主要涉及流,且系统的功能可由构成系 统的过滤器构成,系统延迟与吞吐量可相对直

文档评论(0)

lifang365 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档