文档介绍:面向对象分析与设计逻辑架构分析OOA&OOD12逻辑架构(Logicalarchitecture)逻辑架构是软件类的宏观组织结构它将软件类组织为包(或空间)、子系统和层等不同部署结构,未决定系统部件的物理部署层(layer)对类、包或子系统更为粗粒度的分组“较高”层可以调用“较低”层的服务逻辑架构并非一定组织为层,但这种方式十分普遍面向对象分析重点在应用逻辑层3简单分层结构用户界面应用研究逻辑和领域对象技术服务4UML包图用包图描述系统的逻辑架构层可以建模为包包图可以组织任何事物:类,包,用例等需要显示包间依赖性5分解系统系统都需要降低复杂度,应分解成小模块再进行开发拆分系统->子系统分层子系统子系统所有对象为某一主题服务,相互紧密协作,提供一个明显划定功能单元。尽可能独立于系统其他部分对系统分解为子系统后还需要对子系统进行再分层6准则:使用层进行设计将软件分层可增加软件的健壮性层次化是一种概念,把软件设计组织成类或组件的层次/集合。每一层都依据其下一层来构建,同时为上一层提供实现基础。不同层的对象间存在一定的对应关系,但每一层的对象都互相独立的上层的对象了解其下层的对象,但不了解其上面各层同一层间是否允许协作?7分层优点好的分层体系结构使系统易于扩展和维护做到关系分离、高级服务和低级服务分离、特定于应用的服务与一般性服务分离对某一特定层进行修改而不会影响到任何其他层层是模块化的,可以重写某一层,或是整个替换某一层,只要接口不变,系统其他层次不受影响。这样,某些层能够用新的实现替换在各层之间限制消息流动,减少层次耦合,增加移植性某些层可以分布式实现利于在中间层实施安全特性通过逻辑划分,有助于团队开发8准则:内聚职责同一层的对象职责紧密关联不同层中对象的职责不混淆如UI对象不处理应用逻辑9层、子系统与代码组织Java包将层或子系统的名称作为其名称的一部分//----.//----.//---.//基础层支持多项目的复用,.