- 1、本文档共74页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[小学教育]软件工程 第7章 面向对象设计 CUMT 09-11-09
张 磊 博士,副教授zhanglei@cumt.edu.cn Coad与Yourdon在设计阶段中采用分析阶段中提到的五个层次。 不同的是,在设计阶段中,这五个层次是用于建立系统的四个组成成份: 问题论域 用户界面 任务管理 数据管理 7.1 面向对象设计的设计准则 设计结果应该清晰易懂 用词一致 使用已有的协议 减少消息模式的数目 避免模糊的定义 一般——特殊结构的深度应适当 应该使类等级中包含的层次数适当。 一般说来,在一个中等规模(大约包含100个类)的系统中,类等级层次数应保持为7±2。 不应该仅仅从方便编码的角度出发随意创建派生类,应该使一般——特殊结构与领域知识或常识保持一致。 设计简单的类 避免包含过多的属性 有明确的定义 尽量简化对象之间的合作关系 不要提供太多服务 使用简单的协议 一般说来,消息中的参数不要超过3个。 经验表明,通过复杂消息相互关联的对象是紧耦合的,对一个对象的修改往往导致其他对象的修改。 使用简单的服务 一般说,应该尽量避免使用复杂的服务。 如果一个服务中包含了过多的源程序语句,或者语句嵌套层次太多,或者使用了复杂的CASE语句,则应该仔细检查这个服务,设法分解或简化它。 如果需要在服务中使用CASE语句,通常应该考虑用一般——特殊结构代替这个类的可能性。 把设计变动减至最小 通常,设计的质量越高,设计结果保持不变的时间也越长。 即使出现必须修改设计的情况,也应该使修改的范围尽可能小 7.2 面向对象设计模型 采用面向对象方法设计软件系统时,面向对象的设计模型(即求解域的对象模型)由五个层次组成: 主题 类--对象 结构 属性 服务 面向对象的设计模型对应四个子系统: 问题域子系统 人-机交互子系统 任务管理子系统 数据管理子系统。 7.3 面向对象设计的任务 划分子系统 划分原则 模块化、功能独立、信息隐藏 同一个子系统的类拥有共同特性 同一个子系统的类具有共同目的 同一个子系统的类提供相似服务 同一个子系统的类间相对高耦合 子系统标准 有明确的借口,与其他子系统通信 一般类只和子系统内部的其它类协作 处理并发操作 并发的对象(子系统) 同时 异步 作用于同一事件 处理 将并发子系统分配到不同处理器 将并发子系统分配到同一处理器 系统提供同步控制 描述子系统间的通信 子系统协作模型 客户/服务器 端对端 人机交互设计 分类分析用户特点,设计不同界面 增加用户界面专用的类和对象 利用快速原型演示,改进界面设计 任务管理设计 策略 确定任务的特征 定义一个协调者任务和与之关联的对象 集成其它任务和协调者 步骤 识别由事件驱动和时间驱动的任务 识别关键性任务、任务优先级和任务管理类 定义任务 必要时扩充有关任务的类和对象 数据管理设计 解决对象数据的存储和检索 数据管理设计 定义数据格式 与所使用的数据存储管理模式相关 设计相应的操作 说明对象及所属类和对象如何存储自己 7.4 系统架构设计 高层设计模型 客户服务器模型 导出的系统即适合于过程设计也适合于面向对象的设计。 客户-服务器模型将系统分为2个部分:客户子系统和服务器子系统。 请求服务的对象都归于客户子系统;服务器接受请求并提供服务。即:客户是服务的驱动者。所以,客户必须了解服务者的接口,而服务器没有必要知道客户的接口。 Model/View/Controller(MVC)设计模型 Caod Yourdon的设计模型 应用框架结构 根据应用领域系统的特有结构划分子系统(模板、主题、抽象类的集合)。 然后设计细化每个子系统的对象模型、动态模型和功能模型。 如专家系统的典型结构: 设计工作的一项重要内容就是,确定哪些是必须同时动作的对象,哪些是相互排斥的对象。然后进一步设计任务管理子系统。 分析并发性 设计任务管理子系统 分析并发性 如果二个对象彼此间不存在交互,或者它们同时接受事件,则这二个对象在本质上是并发的。 面向对象分析建立起来的动态模型,是分析并发性的主要依据。 设计任务管理子系统 设计任务管理子系统就是确定各类任务并把任务分配给适当的硬件或软件去执行。 确定事件驱动型任务 确定时钟驱动型任务 确定优先任务 确定关键任务 确定协调任务 尽量减少任务数 确定资源需求 事件驱动型任务 某些任务是由事件驱动的,这类任务可能主要完成通信工作。 系统运行时,这类任务的工作过程如下: 任务处于睡眠状态,等待来自数据线或其他数据源的中断; 接收到中断就唤醒该任务,接收数据并把数据放入内存缓冲区或其他目的地,通知需要知道这件事的对象,然后又回到睡眠状态。 时钟驱动型任务 某些任务每隔一定时间间隔就被触发以执行某些处理。 时
您可能关注的文档
- [小学教育]积极心理学1 信念.pdf
- [小学教育]第2章 网络营销的常用工具和方法.ppt
- [小学教育]第1章 金属的晶体结构.ppt
- [小学教育]第1章初步认识ProE20.ppt
- [小学教育]第4章 单片机的扩展及应用.ppt
- [小学教育]第4章公共关系人员与组织机构.ppt
- [小学教育]第4章 语句.ppt
- [小学教育]第6章 建筑内部排水系统.ppt
- [小学教育]第7章 能力需求计划三大.ppt
- [小学教育]第9章 MATLAB的仿真集成环境-Simulink.ppt
- 从银行承销视角看城投债发行有哪些变化.pdf
- 德福科技锂电PCB铜箔双龙头,高端化勇攀高峰.pdf
- 电力设备行业新型电力系统报告之四:电网发展回顾及后续展望,特高压稳步推进隐忧仍在,配网低于预期改革初见端倪.pdf
- 电力设备与新能源行业AIDC系列深度:海外大厂引领高压直流革命,800V产业化进程有望加速.pdf
- 电力行业5月月报:风光装机抢装进入高潮,火电电量增速由负转正.pdf
- 电子行业动态:Oracle签300亿美元大单,英伟达算力需求旺盛.pdf
- 豆神教育教育转型焕锋芒,AI教育拓疆界.pdf
- 多元金融行业寰宇通汇系列五:互联网券商Robinhood,一揽子交易提供商.pdf
- 非银金融行业深度研究报告:稳定币系列报告之一,从铸币到流通,稳定币生态拆解.pdf
- 分众传媒公司深度研究:收购扩渠道,携手支付宝打通转化链路,看好后续增长.pdf
文档评论(0)