软件体系结构-第3章(设计方法).pptVIP

  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文档。上传文档
查看更多

软件体系结构第三章软件体系设计方法本章要点架构设计概述架构设计过程总体架构规划架构设计分层模式分层模式使用原则案例体系结构设计的目标重用:为了避免重复劳动,为了降低成本,希望能够重用之前的代码、之前的设计。透明:有些时候,为了提高效率,把实现的细节隐藏起来,仅把客户需求的接口呈现给客户。扩展:对扩展的渴求源于需求的易变。简明:一个复杂的架构不论是测试还是维护都是困难的。高效:不论是什么系统,都希望架构是高效的安全:是架构的一个很重要的方面。 架构设计的复杂性架构设计是一种权衡 一个问题总是有多种的解决方案。而我们要确定唯一的架构设计的解决方案,就意味着我们要在不同的矛盾体之间做出一个权衡。在设计的过程中总可以看到很多的矛盾体:开放和整合一致性和特殊化稳定性和延展性??????? 体系结构设计方法架构设计概述架构设计过程总体架构规划架构设计分层模式分层模式使用原则案例架构设计的过程模式 体系结构和循环体系结构设计各阶段各阶段设计的任务业务分析阶段的任务:确定项目的业务目标和阐述实现该目标所必须满足的业务要求。阐述业务要求时,应将可能会对业务目标的实现能力产生影响的所有业务约束考虑在内。在后面的技术要求阶段会用到该文档,并会将其作为以后衡量部署设计是否成功的标准。技术要求阶段的任务以业务分析阶段中形成的业务要求为起点,任务是将这些要求转化为可用来设计部署体系结构的技术规范。各阶段设计的任务逻辑设计阶段始于逻辑设计阶段。此阶段的任务是设计一个逻辑体系结构,它应该体现能够满足技术要求阶段所确定的使用用例和场景。部署设计阶段任务是创建一个反映部署方案与物理环境的映射关系的部署体系结构。物理环境是指部署的网络框架结构,它包括计算节点、每个节点的硬件要求、防火墙以及网络上的其他设备。各阶段设计的任务实现阶段在测试环境中创建和部署试验性和/或原型部署设计和运行功能性测试来衡量与系统要求的符合度设计和运行负载测试来衡量峰值负载下的性能创建生产部署,可能需要分阶段部署到生产中架构设计-架构源自需求为什么要从需求开始?IT界的技术层出不穷,面对着如此之多的技术、平台、框架、函数库,我们如何选择一组适合软件的技术?每一个客户的软件都有自身的特点,如何才能够设计出符合客户利益的架构?软件中往往都充斥着众多的问题,在一开始就把所有的问题都想清楚往往很难做到,但是如果不解决问题,风险又居高不下 架构设计-架构源自需求(举例)例1:城市中自来水管的架设是一项非常的复杂的工程。为了需要满足每家每户的需要,自来水管组成了一个庞大的网络。在这样一个复杂的网络中,如何完成铺设的任务呢。一般的做法是,先找出问题的根源,也就是水的源头。从水源铺设一条管道通至城市,然后根据城市的区域划分,设计出主管道,剩下的就是使用的问题了,每家每户的管道最终都是连到主管道上的。因此,虽然自来水网络庞大复杂。但是真正的主管道的非常简单的。架构设计-架构源自需求(续)需求的划分功能需求:定义了软件能够做些什么?决定业务架构。非功能需求:定义了一些性能、效率上的一些约束、规则,决定技术架构。变化案例:变化案例是对未来可能发生的变化的一个估计,决定架构的范围。架构设计-架构源自需求(举例)举例:我们打算开发一个字处理软件,功能需求可以简单概括为格式化用户输入的文字,非功能需求可能是格式化大小为1000K的一段文字的处理速度不能低于10S,变化案例可能是推出多种语言版本。那么我们在设计业务架构的时候,我们会集中于如何表示文字、图象、媒体等要素,我们该需要有另外的技术架构来处理速度问题,比如缓冲技术,对于变化案例,我们也要考虑相应的架构,比如把字体独立于程序包的设计。架构设计阶段划分架构设计前准备阶段(预备架构阶段)概念架构设计阶段精华架构设计阶段预备架构阶段最大误区:架构师是技术人员不必懂需求实践要点:摒弃“需求列表”方式,建立二维需求观。思维工具:需求矩阵概念架构最大误区:概念架构=理想设计实践要点:重大需求塑造概念架构思维工具:鲁棒图、目标-场景-决策等细化架构最大误区:架构=模块+接口实践要点:贴近实践的五视图法思维工具:包图、包-接口图、灰盒包图、序列图、目标-场景-决策表等什么对架构设计成败非常关键?功能需求、质量属性及约束共同决定了架构,对这三类需求的把握是否到位、设计决策是否对路,是架构设计成败的关键所在!架构设计前准备阶段主要工作理解需求建立需求大局观确定架构设计方向在预备架构总体工作内容在

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档