- 1、本文档共72页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * (1)消除重复的功能 同一功能的程序多次出现会浪费编码时间,并不易调试和维护,应予以合并。 Y X Q Q Q1 Q2 Y X Q Q Q1 Q2 Y X Q Y X Q Q1* Q2* Q X* Y* 正确的合并 错误的合并 (2)减少高扇出,争取高扇入 模块调用的直接下层模块的个数,称为扇出(Fan out) 模块被其他各模块调用的个数,称为扇入(Fan in) 原则:扇出不宜过大,=7;扇入尽可能大些。但CASE(分类)型模块扇出可7 ,因为属自然分类情况,易理解 (5,1) (4,0) (3,1) (0,2) 符号: (扇出,扇入) 扇入表明有多少个上级模块直接调用该模块,扇入越大,则共享该模块的上级模块数目越多,这是有好处的。 扇出是指某模块直接控制或调用的模块数目,扇出过大意味着模块过分复杂,需要控制和协调过多的下级模块,这时应适当增加中间层次的控制模块。扇出太小时应把下级模块进一步分解成若干个子功能模块或合并到上级模块。 如果一个规模很小的底层模块的扇入数为1,则可把它合并到它的上层模块中,但扇入数较大时则不能向上合并(否则将导致对该模块做多次编码和排错)。如果一个模块具有多种功能(扇出数较大),应当考虑做进一步分解,使模块的扇出数控制在7以内。 设计的较好的系统结构通常是顶层扇出较高,中层扇出较小,底层扇入较大。 清真寺型 不够好,底层模块复用度低 金字塔型 相关技巧: 良好的结构图往往呈“清真状”,即“顶为尖—下层逐渐加宽—底层收窄” 结构图的形态应该均衡,即从顶到底层的路径长短不该过于悬殊 (3) 模块大小适中 模块过大:可理解程度下降 考虑对该模块分解 模块过小:开销大于有效操作, 系统接口复杂 考虑是否同它的调用模块合并 几种情况下的小模块不合并: 模块具有独立的功能 模块功能可能会发生变化 模块的复用性好,或者其调用模块很复杂 (4)降低模块接口的复杂性 接口传递信息应简单且和模块功能一致。 例:求一元二次方程的根 设求根模块调用形式为: (1) QUAD-ROOT(TBL,X) TBL传递系数的数组 X存放根的数组 (2) QUAD-ROOT(A,B,C,ROOT1, ROOT2) A,B,C为方程系数 ROOT1,ROOT2是两个根 (5) 模块功能可预测 可将模块看成黑盒子,相同输入可产生相同输出,称其功能为可预测的。 模块带有内部状态,其功能可能是不可预测的。这样的模块难理解、难测试、难维护。 * * * * * * * * * * * * * * * * * * * * 公共耦合的缺点是:在使用同一全局数据域的模块中,如果其中一个模块出现错误,则很可能该错误也出现在使用该数据域的其它模块中;如果要修改一个模块,则很难确定哪些数据必须进行相应的修改;同样,如果要修改某一个数据,也很难确定哪些模块必须予以修改。 * * 公共耦合举例 A 公共数据区 C B 模块A、B、C间存在错综复杂的联系 公共耦合举例 所有的公共 耦合关系 A E B C D 6个模块共享一 个公共数据区 F (1)系统可理解性降低 (模块间存在错综复杂的连系) (2)系统可维护性差 (修改变量名或属性困难) (3)系统可靠性差 (公共数据区及全程变量无保护措施) 慎用公共数据区和全程变量!!! 公共耦合存在的问题: (6) 内容耦合 如果两个模块之一和另一个模块的内部属性有关(一个模块直接调用另一个模块的内容),则称这两个模块为内容耦合,也称之为病态耦合(pathological coupling),这是一种最高程度的耦合,应避免使用。 最不好内容耦合形式 !!! 发生内容耦合的情形: (1)一模块直接访问另一模块的内部数据 (2)一模块不通过正常入口转到另一模块内 (3)两模块有一部分代码重叠 (4)一模块有多个入口 模块化设计对耦合度的要求: 耦合是影响系统复杂程度和设计质量的重要因素 目标:建立模块间耦合度尽可能松散的系统 如何降低模块间耦合度: (1) 如模块必须存在耦合,选择适当的耦合类型 原则:尽量使用数据耦合 少用控制耦合 限制公共耦合的范围 坚决避免使用内容耦合 (2) 降低模块间接口的复杂性 接口复杂性与耦合类型的关系: 接 口 复 杂 性 接口方式 接口数据 的复杂性 无接口关系 直接引用 过程调用语句 数据项作参数 数据结构,变 量名作参数 内容耦合 其它耦合 开关量,起 控制变量作用 公用数据区 全程变量 数据耦合 标记耦合 控制耦合 公共耦合 非直接
您可能关注的文档
- 2012高考语文复习之图文转换2015.ppt
- 2012高速公路安全培训教材.ppt
- 5.2勿以恶小而为之.ppt
- 2012版天津市滨海新区塘沽第二中学七年级上英语课件M6-Unit3.2.ppt
- 5.2文化创新的途径.ppt
- 中国客源国概况之新西兰.ppt
- 5.3从电路元件到家用电器.ppt
- 2013(教材版)医患沟通.ppt
- 2013-2014-1统计学第四章.ppt
- 2013-2014学年第二学期必修4词汇复习units1-5.ppt
- 第12课 大一统王朝的巩固 课件(20张ppt).pptx
- 第17课 君主立宪制的英国 课件.pptx
- 第6课 戊戌变法 课件(22张ppt).pptx
- 第三章 物态变化 第2节_熔化和凝固_课件 (共46张ppt) 人教版(2024) 八年级上册.pptx
- 第三章 物态变化 第5节_跨学科实践:探索厨房中的物态变化问题_课件 (共28张ppt) 人教版(2024) 八年级上册.pptx
- 2025年山东省中考英语一轮复习外研版九年级上册.教材核心考点精讲精练(61页,含答案).docx
- 2025年山东省中考英语一轮复习(鲁教版)教材核心讲练六年级上册(24页,含答案).docx
- 第12课近代战争与西方文化的扩张 课件(共48张ppt)1.pptx
- 第11课 西汉建立和“文景之治” 课件(共17张ppt)1.pptx
- 唱歌 跳绳课件(共15张ppt内嵌音频)人音版(简谱)(2024)音乐一年级上册第三单元 快乐的一天1.pptx
最近下载
- 萝卜回来了:小班语言课(课堂PPT).pptx
- 钢结构厂房施工方案技术标.pdf VIP
- 2024八年级英语下册 Unit 9 Have you ever been to a museum说课稿(新版)人教新目标版.docx
- 太峪隧道斜井交叉口挤压变形段涌水处理技术.pdf VIP
- 《儿童腺样体肥大中医诊疗指南》.pdf VIP
- 钢结构厂房冬季施工方案.docx VIP
- 麦积山隧道2#斜井涌水处理及反坡排水方案浅谈.pdf VIP
- 狼和鸭子儿童故事PPT课件.ppt VIP
- 国际版抖音TikTok短视频直播电商培训教程(一)Tiktok下载与注册.pptx
- 战争与和平——美术作品反映战争 课件-2023-2024学年高中美术湘美版(2019)美术鉴赏.pptx VIP
文档评论(0)