软件结构设计..pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
步骤(续) (2)第一级分解(建立初始SC框架) 设计顶层和第一层模块; 例子图上部 步骤(续) (3)第二级分解(分解SC各分支) 自顶向下分解,设计出每个分支的中、下层模块。 例子图下部 B C A D E Q P R W U V a b c e d r p u w v 变换中心 传入部分 传出部分 第一级分解的方法 MC MT MA ME 第一级分解后的SC MC MT MA ME 第一层 顶层 c,e c,e u,w u,w 传入模块 传出模块 中心变 换模块 传入分支的分解 (1) MA C B A b a c E D d e c,e 传入分支的分解 (2) MA Get C b a c Read D d e c,e B to C b c d e a b Get E Get B D to E A to B Read A 传出分支的分解 ME Write V u u w,u v v Put U U to V Write W w W v ME U w u w,u V (1) (2) 中心加工分支的分解 MT P Q R e c,p r u,w p r 第一级分解后的SC(另一种画法) MC MA1 c e u,w c,p Q P R e p r r w,u w 传入分 支模块 中心加工分支模块 传出分 支模块 MA2 ME1 ME2 任何情况下都可使用变换分析方法设计软件结构,但如数据流具有明显的事务特点时 (有一个明显的事务中心),以采用事务分析方法为宜。 2.事务分析设计方法 步骤: (1)在DFD上确定事务中心、接收部 分和发送部分; (2)画出SC框架,把DFD上的三部分 分别映射为事务控制模块、接收 模块和动作发送模块; (3)分解细化接收分支和发送分支, 完成初始SC。 事务控制模块 接受模块 动作发送模块 动作1模块 动作2模块 动作3模块 由事务分析产生 事务分析的映射方法 总控 调度 C路径 B路径 A路径 A路径 B路径 C路径 接收 路径 事务流设计举例 I M L N A B C D F E G 事务中心 事务流设计举例(另一种画法) 取 A 总控 A L M N G D B C F E 动作1 动作n …. 细节模块1 细节模块2 …. (操作模块) (细节模块) 动作分支的典型结构 P T 2 T 1 T i A 2 D 2 A 1 D 1 A 3 A j D k 事务层 操作层 细节层 处理层 主模块 事务加 工模块 操作 模块 细节 模块 3.混合流设计 举例 T 事务 中心 传入 变换 传出 接收部分 发送 部 分 AB T1 变换中心 传入 传出 T2 T3 a b b1 b2 b3 c1 c2 c3 d e g f j L m 事务流子系统 BC CD DE EH HK FJ KL LM h 混合流设计举例 k 混合流设计举例 输入D XX系统 变换控制 输出K 输入C d c 输出L CD DE FJ EH HK KL c d d k k k L L 输出M LM m m L 事务子系统 4.结构设计优化 将初始SC根据模块独立性原 则进行精化,对模块进行合并、分 解修改、调整,得到高内聚、低 耦合模块,以及易于实现、易于 测试和易于维护的软件结构,产 生设计文档的最终SC。 改进软件结构设计的指导原则 (软件结构设计的启发式规则) (1)模块功能的完善化 (2)消除重复功能 (3)将模块的影响限制在模块的控制范围内 (4)深度、宽度、扇出和扇入适中 (5)模块大小适中 (6)降低模块接口的复杂性 (7)模块功能可预测 (8)避免模块的病态连接 (9)根据设计约束和可移植性要对软件打包 (1) 模块功能的完善化 完整的模块应包括三部分: 1)执行规定功能部分 2)出错处理部分 3)需返回给调用者数据时, 返回是否正确结束标志。 (2)消除重复功能 Q1 C Q2 C Q1 Q2 C 改进前 Q1、Q2功能相似 X Y Q’ X Y X Y 重复部分 改进方法1: 将Q1、Q2 合并为Q’ 不可取 改进方法2: 将Q1、Q2的公共 部分分离出来 C H D E G X F (3)将模块的影响限制在模块的控制范围内 A I L J K B 模块C的控制范围: C、D、E、F、G、H 如果模块 C 作出的决策影响了模块L,L超出了C 的控制范围 (4) 减少模块高扇出,争取模块高扇入 高扇出的模块结构举例: 编外 人员 工资 取得 工资 数据 计时 制工 资额 薪金 制工 资额 编外 人员 税款 编外 人员 扣款 常规 扣款 税收 扣款 计算实发工资 避免平铺结构 增加中间层降低扇出 编外 人员 工资 取得

文档评论(0)

叮当文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档