软件设计 Zhou Su 第7章 体系结构的设计和实现.pptVIP

软件设计 Zhou Su 第7章 体系结构的设计和实现.ppt

  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文档。上传文档
查看更多
软件体系结构与设计 第7章 体系结构的设计与实现 第7章 体系结构的设计与实现 系统环境的表示 体系结构设计决策 定义原型 将体系结构精化为构件 利用UML进行面向对象设计 设计模式 实现问题 开源开发 第7章 体系结构的设计与实现 一般来说,体系结构设计需要4个步骤来完成。首先,系统必须表示在相应的环境中,也就是说,设计人员应该定义与软件交互的外部实体及其交互性质。第二步,一旦环境得到说明,设计人员应该确定一系列的顶层抽象,称之为原型,该原型可以表示系统行为或者功能的关键元素。第三步,定义完抽象后,设计开始向实现移动。在支持构件的体系结构环境中识别和描述这些构件。最后,开发体系结构的特定实例,在真实世界中验证设计。 第7章 体系结构的设计与实现 体系结构设计关心的是如何组织一个系统和设计系统的整体结构。体系结构设计过程的输出是体系结构模型,它描述系统是如何由一组相互交互的组件组成的。在敏捷过程中,人们普遍接受这样一种观念,即开发过程的早期应当涉及建立整体的系统体系结构。体系结构的增量式开发并不总是成功的。虽然以重构组件来响应变更相对容易,但是重构一个系统体系结构可能是非常昂贵的。 第7章 体系结构的设计与实现 实际开发过程中,在需求工程和体系结构设计之间有很大的重叠。体系结构分解对于结构和组织描述是必要的。因此,作为需求工程过程的一部分,会提供一个抽象的系统体系结构,把许多系统功能和特征集合关联到一些大规模组件或者子系统上,这样就能够使用这种分解来与信息持有者讨论需求和系统特征。 第7章 体系结构的设计与实现 软件设计和实现活动总是交叉进行的。软件设计是创造性活动,可以基于客户的需求识别系统组件及其关系。实现是将设计转变为程序的过程。有时有一个独立的设计阶段来完成设计建模和文档化,有时设计在程序员的脑中完成或者粗略地在白板或草稿纸上绘制草图。 7.1 系统环境的表示 在体系结构设计开始的时候,应该把待开发的软件放在所处的环境中进行考虑,也就是说,设计应该定义与软件交互的外部实体(其他系统、设备、人)和交互的特性。这些信息一般可以从需求模型中获得。一旦建立了软件的环境模型,并且描述出所有的外部软件接口,就可以确定体系结构原型集。 7.1 系统环境的表示 原型(类似于类)是表示系统行为元素的一种抽象。这个原型集提供了一个抽象集,如果要对系统结构化,就必须对这些原型进行结构化建模,但原型本身并不提供足够的实施细节。因此,设计人员通过定义和细化实施每个原型的软件构件来指定系统的结构。这个过程不停地迭代,直到获得一个完善的体系结构。 在体系结构设计层,体系结构设计师用体系结构环境图(Architectural Context Diagram,ACD)对软件与其外围实体的交互方式进行建模。图7-1给出了体系结构环境图的一般结构。 7.1 系统环境的表示 如图所示,与目标系统(为该系统所开发的体系结构设计)交互的系统可以表示为: 上级系统——这些系统把目标系统作为某些高层处理方案的一部分。 下级系统——这些系统被目标系统使用,并为完成目标系统的功能提供必要的数据和处理。 同级系统——这些系统在对等的基础上相互作用(即信息或者由同级系统和目标系统产生,或者被目标系统和同级系统使用)。 参与者——通过产生和消耗必要处理所需的信息,实现与目标系统交互的实体(人、设备)。 7.1 系统环境的表示 每个外部实体都通过某一接口(带阴影的小矩形)与目标系统进行通信。 为了说明ACD的使用,我们来考虑SafeHome产品的住宅安全功能。整个SafeHome产品的控制器和基于因特网的系统对于安全功能来说都处于上一级,图7-2中它们处在上方。 7.1 系统环境的表示 监视功能是一个同级系统,并且在以后的产品版本中还要使用住宅安全功能(或被住宅安全功能使用)。户主和控制面板都是参与者,它们既是安全软件所用信息的生产者,又是安全软件所供信息的使用者。最后,传感器为安全软件所使用,并且在图中显示为下一级。作为体系结构设计的一部分,必须说明图7-2中每个接口的细节。目标系统所有的流入和流出数据必须在这个阶段标识出来。 7.2 体系结构设计决策 可以在两个抽象层次上设计软件体系结构,即小规模体系结构和大规模体系结构: 1)小规模体系结构与单个程序的体系结构相关。在这个层次上主要关注将单个程序分解成许多组成部分的方法。 2)大规模体系结构与复杂企业系统的体系结构相关,包括其他的系统、程序和程序组件。这些企业系统分布在不同的计算机上,这些计算机可能由不同的企业拥有和管理。 7.2 体系结构设计决策 体系结构设计是一个充满创造性的过程,设计一个系统组成来满足功能性和非功能性系统需求,所以工程中的活动很大程度上依赖于所要开发的系统类型、系

文档评论(0)

189****6140 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档