逻辑架构与UML包图详解PPT课件下载推荐.ppt
- 文档编号:15073636
- 上传时间:2022-10-27
- 格式:PPT
- 页数:37
- 大小:390KB
逻辑架构与UML包图详解PPT课件下载推荐.ppt
《逻辑架构与UML包图详解PPT课件下载推荐.ppt》由会员分享,可在线阅读,更多相关《逻辑架构与UML包图详解PPT课件下载推荐.ppt(37页珍藏版)》请在冰豆网上搜索。
因为并未决定如何在不同的操作系统进因为并未决定如何在不同的操作系统进程或网络中物理的计算机上对这些元素程或网络中物理的计算机上对这些元素进行部署(后一种决定是部署架构的一进行部署(后一种决定是部署架构的一部分)。
部分)。
层(层(Layer)nn层是对类、包或子系统的甚为粗粒度的层是对类、包或子系统的甚为粗粒度的分组,具有对系统主要方面加以内聚的分组,具有对系统主要方面加以内聚的职责。
职责。
nn层按照层按照“较高较高”层(例如层(例如UI层)可以调用层)可以调用“较低较低”层的服务层的服务nnOO系统中通常包括的层有:
系统中通常包括的层有:
用户界面用户界面用户界面用户界面应用逻辑和领域对象应用逻辑和领域对象应用逻辑和领域对象应用逻辑和领域对象技术服务(例如数据库接口或错误日志)技术服务(例如数据库接口或错误日志)技术服务(例如数据库接口或错误日志)技术服务(例如数据库接口或错误日志)独立于应用的,也可在多个系统中复用的独立于应用的,也可在多个系统中复用的独立于应用的,也可在多个系统中复用的独立于应用的,也可在多个系统中复用的服务。
服务。
架构分层架构分层nn在严格的分层架构中,层只能调用与其相邻在严格的分层架构中,层只能调用与其相邻在严格的分层架构中,层只能调用与其相邻在严格的分层架构中,层只能调用与其相邻的下层的服务。
这种设计在网络协议栈中比的下层的服务。
这种设计在网络协议栈中比较常见,而在信息系统中不太常见。
在信息较常见,而在信息系统中不太常见。
在信息系统中通常使用宽松的分层架构,其中较高系统中通常使用宽松的分层架构,其中较高系统中通常使用宽松的分层架构,其中较高系统中通常使用宽松的分层架构,其中较高层可以调用其下任何层的服务层可以调用其下任何层的服务层可以调用其下任何层的服务层可以调用其下任何层的服务nn例如,例如,例如,例如,UIUI层可以调用与其相邻的应用逻辑层,层可以调用与其相邻的应用逻辑层,层可以调用与其相邻的应用逻辑层,层可以调用与其相邻的应用逻辑层,也可以调用更下面的技术服务层中的元素,也可以调用更下面的技术服务层中的元素,也可以调用更下面的技术服务层中的元素,也可以调用更下面的技术服务层中的元素,完成日志记录等工作完成日志记录等工作完成日志记录等工作完成日志记录等工作nn逻辑架构并非一定要组织为层。
但这种方式逻辑架构并非一定要组织为层。
但这种方式极为常用极为常用极为常用极为常用案例研究中应该关注的层案例研究中应该关注的层nn尽管OO技术可以用于所有级别,但本课程对OOA/D的介绍着重于核心应用逻辑(或“领域”)层,其次才是对其他层的讨论。
软件架构软件架构nn软件架构(宏观)软件架构(宏观)软件架构(宏观)软件架构(宏观)架构是一种重要决策,其中涉及软件系统的组织架构是一种重要决策,其中涉及软件系统的组织架构是一种重要决策,其中涉及软件系统的组织架构是一种重要决策,其中涉及软件系统的组织对结构元素及其组成系统所籍接口的选择对结构元素及其组成系统所籍接口的选择对结构元素及其组成系统所籍接口的选择对结构元素及其组成系统所籍接口的选择这些元素特定于其相互协作的行为这些元素特定于其相互协作的行为这些元素特定于其相互协作的行为这些元素特定于其相互协作的行为这些结构和行为元素到规模更大的子系统的组成这些结构和行为元素到规模更大的子系统的组成这些结构和行为元素到规模更大的子系统的组成这些结构和行为元素到规模更大的子系统的组成以及指导该组织结构的架构风格以及指导该组织结构的架构风格以及指导该组织结构的架构风格以及指导该组织结构的架构风格这些元素及其接口、协作、和组成这些元素及其接口、协作、和组成这些元素及其接口、协作、和组成这些元素及其接口、协作、和组成软件架构师是做什么的?
软件架构师是做什么的?
nn软件架构师的职责软件架构师的职责软件架构师的职责软件架构师的职责是把需求转换为软件世界的模型。
是把需求转换为软件世界的模型。
4+14+1视图中以视图中以视图中以视图中以usecaseusecase作为核心,其中功能性需作为核心,其中功能性需作为核心,其中功能性需作为核心,其中功能性需求以及部分非功能性需求会被软件架构师通过分析求以及部分非功能性需求会被软件架构师通过分析求以及部分非功能性需求会被软件架构师通过分析求以及部分非功能性需求会被软件架构师通过分析和设计,映射为各种软件设计模型。
从和设计,映射为各种软件设计模型。
从OOA/OODOOA/OOD角度说,角度说,角度说,角度说,usecaseusecase在这个过程中是要转换为各种在这个过程中是要转换为各种在这个过程中是要转换为各种在这个过程中是要转换为各种UMLUML,其中类图,序列图,状态图是最常用到的。
,其中类图,序列图,状态图是最常用到的。
这个转换过程是需要智慧的,这个转换过程是需要智慧的,这个转换过程是需要智慧的,这个转换过程是需要智慧的,usecaseusecase是目的,各是目的,各是目的,各是目的,各种种种种OOOO的原则是指导,设计模式是经验,灵活运用的原则是指导,设计模式是经验,灵活运用的原则是指导,设计模式是经验,灵活运用的原则是指导,设计模式是经验,灵活运用是能力。
里面蕴涵了设计的美感,我觉得这个过程是能力。
里面蕴涵了设计的美感,我觉得这个过程是衡量一个软件架构师的最重要的指标。
这个过程是衡量一个软件架构师的最重要的指标。
这个过程是需要创造力和想象力的。
可能很多人认为这个地是需要创造力和想象力的。
可能很多人认为这个地方正是软件架构师体现能力的地方。
方正是软件架构师体现能力的地方。
UML包图包图nnUML包图通常用于描述系统的逻辑架构包图通常用于描述系统的逻辑架构层层层层子系统子系统子系统子系统包(就包(就包(就包(就JavaJava)而言等)而言等)而言等)而言等nn层可以建模为层可以建模为UML包。
例如,包。
例如,UI层可层可以建模为名为以建模为名为UI的包的包UML包图包图nnUMLUML包图提供了组织元素的方式(类,其他包,包图提供了组织元素的方式(类,其他包,用例,用例,)nn嵌套包十分常见嵌套包十分常见nnUMLUML包是比包是比JavaJava包和包和.NET.NET命名空间更为通用的概命名空间更为通用的概念念nn如果包内部显示了其成员,则在标签上标识包名;
如果包内部显示了其成员,则在标签上标识包名;
否则,可以在包体内标识包名称否则,可以在包体内标识包名称nn人们通常希望显示包之间的依赖性人们通常希望显示包之间的依赖性(耦合),以耦合),以便开发者能够看到系统内大型事物之间的耦合。
便开发者能够看到系统内大型事物之间的耦合。
nnUMLUML的依赖线即可用于此目的,依赖线是有箭头的依赖线即可用于此目的,依赖线是有箭头的虚线,箭头指向被依赖的包的虚线,箭头指向被依赖的包nn完全限定的名称完全限定的名称例如例如Java:
util:
DateJava:
DateUML工具:
从代码逆向工程工具:
从代码逆向工程产生包图产生包图nn开发早期,根据绘制的开发早期,根据绘制的UML包图的草图包图的草图来组织代码;
来组织代码;
nn随着代码库的不断增长,编程上花费的随着代码库的不断增长,编程上花费的时间更多,减少了建模或绘制时间更多,减少了建模或绘制UML图的图的时间,可以利用时间,可以利用UMLCASE工具对源代工具对源代码进行逆向工程,从而自动生成包图。
码进行逆向工程,从而自动生成包图。
准则:
使用层进行设计准则:
使用层进行设计nn使用层时:
使用层时:
将系统的大型逻辑结构组织为独立的、职将系统的大型逻辑结构组织为独立的、职将系统的大型逻辑结构组织为独立的、职将系统的大型逻辑结构组织为独立的、职责相关的离散层,具有清晰、内聚的关注责相关的离散层,具有清晰、内聚的关注责相关的离散层,具有清晰、内聚的关注责相关的离散层,具有清晰、内聚的关注分离。
这样,分离。
这样,“较低较低较低较低”的层是低级别和一的层是低级别和一的层是低级别和一的层是低级别和一般性服务,较高的层则是与应用相关的。
般性服务,较高的层则是与应用相关的。
协作和耦合是从较高层到较低层进行的,协作和耦合是从较高层到较低层进行的,协作和耦合是从较高层到较低层进行的,协作和耦合是从较高层到较低层进行的,要避免从较低层到较高层的耦合。
要避免从较低层到较高层的耦合。
设计问题设计问题nn使用层有助于解决如下问题:
使用层有助于解决如下问题:
源码的变更波及整个系统大部分系统是高度耦源码的变更波及整个系统大部分系统是高度耦源码的变更波及整个系统大部分系统是高度耦源码的变更波及整个系统大部分系统是高度耦合的。
合的。
应用逻辑与用户界面交织在一起,因此无法复用应用逻辑与用户界面交织在一起,因此无法复用应用逻辑与用户界面交织在一起,因此无法复用应用逻辑与用户界面交织在一起,因此无法复用于其他不同界面或分布到其他处理节点之上于其他不同界面或分布到其他处理节点之上于其他不同界面或分布到其他处理节点之上于其他不同界面或分布到其他处理节
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 逻辑 架构 UML 详解