- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * 若一个模块完成的任务在逻辑上相同或相似,如X,Y,Z,W分别调用A,B,C,D,而模块 A,B,C,D确完成的任务相似(如产生各种类型的全部输出),则我们把A,B,C,D 合并成一个模块ABCD,那么我们称模块ABCD就是逻辑模块 * * 组合关系、依赖关系 网上购物系统的架构设计 各层分析 数据访问层 业务逻辑层 表现层 架构模式 MVC模式 网上购物系统的类/对象设计 --注册 网上购物系统的类/对象设计 --维护个人信息 网上购物系统的类/对象设计 --维护购物车 网上购物系统的类/对象设计 --生成订单 网上购物系统的类/对象设计 --管理订单 小结 软件设计的任务,是将分析阶段建立的分析模型转变为软件设计模型,确保最终能平滑地过渡到程序代码。 OOD的软件设计也分为两个层次:系统架构设计和系统元素设计。 系统架构设计是指确定系统主要组成元素的组织或结构,组成元素之间通过接口进行交互,以及其它全局性决策;系统元素设计是对每一个设计元素进行详细的设计,系统元素包括组成系统的类、子系统与接口、分包等。 * * * * * * * * * * * 控制耦合增加了理解和编程的复杂性,调用模块必须知道被调模块的内部逻辑,增加了相互依赖。 去除模块间控制耦合的方法: (1)将被调用模块内的判定上移到调用模块中进行 (2)被调用模块分解成若干单一功能模块 * * * * * * * * * * * (4) 过程内聚(Procedural Cohesion) 模块内各处理成分相关,且必须以特定次序执行 读入 成绩单 审查 成绩单 统计 成绩 打印 成绩 读入并审查成绩单 统计并打印成绩单 (5) 时间内聚(Classical Cohesion) 时间内聚又称为经典内聚。这种模块大多为多功能模块,但模块的各个功能的执行与时间有关,通常要求所有功能必须在同一时间段内执行。 例如初始化模块和终止模块,系统结束模块、紧急故障处理模块等均是时间性聚合模块 。 (6) 逻辑内聚(Logical Cohesion) 把几种相关功能(逻辑上相似的功能)组合在一模块内,每次调用由传给模块的参数确定执行哪种功能。 S X Y Z W A B C D S X Y Z W ABCD (7) 巧合内聚(Coincidental Cohesion) 当模块内各部分之间没有联系,或者即使有联系,这种联也很松散,则称这种模块为巧合内聚模块,它是内聚程度最低的模块。 模块M中的三个语句没有任何联系 缺点:可理解性差, 可修改性差 内聚与耦合密切相关,同其它模块强耦合的模块意味者弱内聚,强内聚模块意味着与其它模块间松散耦合。 设计目标: 力争强内聚、弱耦合 耦合、内聚与模块独立性关系: 耦合与内聚都是模块独立性的定性标准,都反映模块独立性的良好程度。但耦合是直接的主导因素,内聚则辅助耦合共同对模块独立性进行衡量。 2. 面向对象设计建模 面向对象设计模型 系统架构层(系统架构层描述了整个系统的总体结构) 类和对象层 消息层(对象间的消息模型,建立了系统的内部和外部接口) 责任层 (每个对象的所有属性和操作的数据结构和算法) 面向对象设计的任务 系统架构设计 系统元素设计 模式的应用 模式是解决某一类问题的方法论,也是对通用问题的通用解决方案 软件模式可以分为架构模式、设计模式和习惯用法三种 OOA模型转换到OOD模型 责任设计 消息设计 类及对象设计 系统架构设计 属性、操作、协作者 对象-行为模型 对象- 关系模型 类/对象 模型 用例 模型 7.3. 系统架构设计 系统高层结构设计 确定设计元素 任务管理策略 分布式实现机制 数据存储设计 人机交互设计 7.3.1系统高层结构设计 应用架构模式 层次架构(Layers) 模型-视图-控制架构(Model-View-Control) 管道与过滤器架构(Pipes and Filters) 黑板架构(Blackboard) 典型的分层方法 层 次 功 能 特殊 一般 应用子系统层 组成所开发应用的独特应用子系统 业务专用层 该应用所属业务类型专用的一些可复用子系统 中间件层 提供实用程序的子系统,和为异构环境中分布式对象计算提供独立于平台的服务等 系统软件层 构成实际基础设施的软件,如操作系统、特定硬件的接口、设备驱动程序等 Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的M
文档评论(0)