《软件工程-第13章第5节.pptx

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

13.5构架

13.5.1构架概述1.构架的含义在建造具有框架结构的楼房时,首先用钢筋水泥建造柱和梁构成的框架,然后再建造楼板、墙体、墙面,铺设管道等,直至完成整个楼房的建造。楼房的框架就是该楼房的骨架。开发一个软件系统也与此相似,首先应构造系统的构架。

13.5.1构架概述具体来说,软件系统的构架是对以下问题决策的总和:软件系统的组织;对组成系统的结构元素、接口以及这些元素在协作中的行为的选择;由这些结构元素与行为元素组合成更大子系统的方式;用来指导这些元素、接口、它们之间的协作以及组合起来的构架风格。软件构架不仅涉及到静态结构与动态行为,而且涉及使用、功能、性能、适应性、重用和可理解性等。

13.5.1构架概述可以把系统的构架看成是所有人员能够接受的共同目标。构架提供了整个系统的清晰的视角,这对控制系统的开发是必要的。构架描述了系统的重要模型元素,它们是系统中的基础部分,能够指导系统的开发工作,可以有效地理解、开发并改进这个系统。

13.5.1构架概述2.构架基线在细化阶段结束时,从构架角度来看,已开发出了代表最重要的用例及其实现的系统模型,获得了用例模型、分析模型、设计模型以及其他模型的早期版本。这些模型的集合就是构架基线,它是小的、皮包骨架的系统。对构架来说,重要的用例以及其他一些输入可用来实现构架基线。构架基线不仅仅靠模型制品来表示,它还包括构架描述,这个描述实际上是同时建立的。

13.5.1构架概述3.构架描述构架描述可以有不同的形式,可以是对组成构架基线的模型的抽取,也可以是以一种便于阅读的形式对这些抽取的重写。构架描述的作用是在系统的整个生命周期内指导整个开发组的开发工作,它是开发人员目前和将来都要遵循的标准。

13.5.1构架概述4.用例和构架用例和构架之间存在着某些相互作用。用例驱动构架的开发,在最初的迭代中选择几个重要用例来设计、开发构架,它们是用户最需要的用例。因此,构架受用例的影响。同时,构架还会受到其他因素的影响,如软件产品构造在哪些系统上,希望使用哪些中间件,需要适应哪些政策和公司标准等。在捕获新的用例时,可以利用已存在的构架的知识更好地完成捕获工作,根据现存的构架来评估每个所选用例的价值和成本,也可以知道哪些用例很容易实现,哪些用例实现较为困难。所以,构架可以指导用例的实现。

13.5.2构架的重要性1.有利于理解系统要使现代的系统为人们所理解是非常困难的,因为大系统包含复杂的行为,要在复杂的环境中运作,使用的技术也很复杂。以构架为中心进行开发,可以防止出现这种无法理解的现象。构架采用模型视图来描述,容易理解。

13.5.2构架的重要性2.有利于组织开发软件项目组织越庞大,协调开发人员之间工作的代价也越大。当项目分散在不同地方开发时,这种交流的开销也很大。构架将系统划分为带有明确定义接口的子系统,可以减少子系统之间的通信,可以有效地向双方的开发人员提供对方小组正在进行的工作。

13.5.2构架的重要性3.有利于软件重用软件产业要达到其他行业那样高的标准化水平,好的构架和明确的接口是实现这一目标的关键步骤。好的构架为开发人员提供在其上工作的稳定骨架,也有助于开发人员知道在哪里能找到可重用的元素以及发现可重用的构件。构架设计师的任务就是定义这个骨架和可重用子系统,通过精心设计可以得到可重用子系统,并可以装配起来使用。

13.5.2构架的重要性4.有利于进化系统任何大系统都需要不断进化,开发过程本身就需要这种进化,在投入使用后,由于环境的变化也需要对系统进一步完善。一个好的构架能适应这种进化,在大多数情况下,可以在系统中实现新的功能,而不会对现有的设计和实现造成太大的影响。相反,一个构架设计较差的系统,随着时间的推移以及使用很多补丁程序而出现功能退化,以至于无法有效地进行更新。

13.5.3建立构架1.构架设计师构架是由构架设计师和其他开发人员共同创建的。他们致力于实现一个高性能、高质量的系统。构架设计师要选择构架模式和现存产品,安排子系统的依赖,即系统的元件如何划分、元件之间如何相互作用,在创建一种设计方案时,某个子系统发生变化时不会对其他子系统造成影响。

13.5.3建立构架软件架构师(即构架设计师)是软件设计师中一些技术水平较高、经验较为丰富的人,他需要承担软件系统的架构设计,需要设计系统的元件如何划分、元件之间如何发生相互作用,以及系统中逻辑的、物理的、系统的重要决定的作出。在很多公司中,架构师不是一个专门的和正式的职务。通常在一个开发小组中,最有经验的程序员会负责一些架构方面的工作。在一个部门中,最有经验的项目经理也会负责一些架构方面的工作。

13.5.3建立构架2.选择构架模式构架模式定义了某种结构或行为的

文档评论(0)

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

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

1亿VIP精品文档

相关文档