软件工程第11章 软件体系结构.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文档。上传文档
查看更多
客户层:用户通过客户层与系统交互。该层可以是各种类型的客户端。例如,可编程客户端(如基于Java Swing的客户端或applet),纯Web浏览器客户端,WML移动客户端等。 资源层:资源层可以是企业数据库,电子商务解决方案中的外部企业系统,或者是外部SOA服务。数据可以分布在多个服务器上。 从上图可看出,J2EE模型是分层结构,中间的3层(表示层,业务层,集成层)包含应用程序构件,客户层和资源层处于应用程序的外围。 11.5 体系结构框架 表示层:也称为Web层或服务器端表示层,用户通过表示层来访问应用程序。在基于Web的应用系统中,表示层由用户界面代码和运行于Web服务器或应用服务器上的过程组成。参考MVC框架,表示层包括视图构件和控制器构件。 业务层:业务层包含表示层中的控制器构件没有实现的一部分应用逻辑。它负责确认和执行企业范围内的业务规则和事务,并管理从资源层加载到应用程序高速缓存中的业务对象。 集成层:集成层负责建立和维护与数据源的连接。例如,通过JDBC与数据库进行通信,利用Java消息服务(JMS)与外部系统联合。 11.5 体系结构框架 1.PCMEF框架 表示—控制—中介者—实体—基础(presentation-control-mediator-entity-foundation,PCMEF)是一个垂直层次的分层体系结构框架。每一层是可以包含其他包的包。PCMEF框架包含4层:表示层、控制层、领域层和基础层。领域层包含两个预定义包:实体(entity)包和中介者(mediator)包。 PCMEF框架中包的依赖性主要是向下依赖性。表示层依赖于控制层,控制层依赖于领域层,中介者包依赖于实体包和基础层, 如下图所示。 PCMEF与PCBMER框架 11.5 体系结构框架 表示层:包含定义GUI对象的类。 控制层:处理表示层的请求,负责大多数程序逻辑、算法、主要计算以及为每个用户维持会话状态。 领域层:其实体包处理控制请求,中介者包用于创建一个协调实体类和基础类的通信通道。 基础层:负责与数据库和Web服务的所有通信。 11.5 体系结构框架 PCMEF框架 2. PCBMER框架 PCBMER 框架由PCMEF框架扩展而成, 代表着表示—控制器—Bean—中介者—实体—资源(presentation-control-bean-mediator-entity-resource,PCBMER)。其核心体系结构框架如右图所示。 11.5 体系结构框架 PCBMER的核心框架 在上图中,把层表示为UML包(子系统,层),带箭头的 虚线表示依赖关系。例如,表示层依赖控制器层和bean层,控 制器层依赖bean层。PCBMER的层次不是严格线性的,上层可 以依赖多个相邻下层。 bean层:表示那些预先确定要呈现在用户界面上的数据类和值对象。除了用户输入外,bean数据由实体对象(实体层)创建。 表示层:表示屏幕以及呈现bean对象的UI对象。 控制器层:表示应用逻辑。 实体层:响应控制器和中介者。 中介者层:建立了充当实体类和资源类媒介的通信管道。 资源层:负责所有与外部持久数据资源(数据库、Web服务等)的通信。 11.5 体系结构框架 在UML中,体系结构建模是以结点、构件、包、子系统 等概念为中心的。另外,UML还可以通过给类图增加设计约 束支持体系结构建模。所采用的主要形式是在类及其他模型 中增加依赖关系。依赖是体系结构框架的基础,它还决定体 系结构的复杂性。 体系结构设计描述了建立计算机系统所需的数据结构和程 序构件。一个好的体系结构设计要求软件模块的分层及编程 标准的执行。在面向对象软件中,常见的软件模块有类、接 口、包和构件。在设计阶段我们往往关注类、接口和包,而 在实现阶段则关注构件,而在部署阶段则关注构件的部署, 也就是将构件部署在哪些结点上。 11.6 体系结构建模 1. 类 在面向对象的程序设计中,类和接口是程序的基本组成单元。一个典型程序需要界面类专门负责表示用户界面信息,需要数据库类负责与数据库进行交互,需要有业务逻辑类负责算法计算等。在计算机程序中,要设计和实现的所有类都具有唯一的名字,在不同的阶段或从不同的角度可以将它们称为设计类、实现类、系统类、应用类等。 11.6 体系结构建模 类及其依赖性 2.继承依赖性 依赖性管理中最棘手的问题是由于继承所引起的依赖 性。继承是一种在父类和子类之间共享属性和行为的方式, 所以运行时可以用一个子类对象代替其父类对象。程序中凡 是使用父类对象的地方,都可以用子类对象来代替。一个子 类对象是一种特殊的父类对象,它继承父类的

文档评论(0)

132****9295 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档