- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
传统软件设计方法 ——面向数据流的设计方法 特点及起源 面向数据流的设计方法,即通常所说的结构设计法(Structure Design,简称SD方法),由Yourdon和Constantine等人于1774年提出的,与结构化分析(SA)相衔接,根据对数据流的分析设计软件结构。 面向数据流的设计方法用于软件的概要设计描述,包括模块、界面和数据结构的定义,这是所有后续开发的基础。 SD方法对那些顺序处理信息且不含层次数据结构的系统最为有效,例如过程控制、复杂的数值分析过程、以及科学与工程方面的应用。当SD方法用于完全的数据处理时,即使系统中使用层次数据也同样行之有效。 SD方法的设计过程和有关概念 SD方法能方便地将数据流图转换为软件结构,其过程分为五步: 1.? 确定信息流的类型; 2.? 划定流界; 3.? 将数据流图映射为程序结构; 4.? 提取层次控制结构; 5.? 通过设计复审和使用启发式策略进 一步精化所得到的结构。 信息流分为变换流和事务流两种类型 1)变换流 变换流 — 在基本系统模型(即顶级数据流图)中信息通常以“外部世界”所具有的形式进入系统,经过处理后又以这种形式离开系统。 变换流的特点是:经过变换B的数据流一部分先经过变换C到达变换E,然后另一部分经过变换D到达E;即C和D是顺序结构。 2)事务流 事务流——单个数据项称为事务(transaction)沿传入路径(也称接受通道)进入系统,由外部形式变换为内部形式后到达事务中心,事务中心根据数据项计值结果从若干动作路径中选定一条继续执行。 可见它是一个选择结构。 根据数据流的类型,软件结构的分析方法有两种: 1.变换分析 2.事物分析 整体步骤如图面向数据流的设计 面向数据流的设计 变换分析 变换分析的各个步骤。 步骤一、复审基本系统模型 步骤二、复审和精化软件数据流图 步骤三、确定DFD的特性,判定它为变换流还是事务流。 步骤四、划定输入流和输出流的边界,孤立变换中心。 步骤五、执行“一级分解”(first level factoring) 一级分解的目标是导出具有三个层次的程序结构,顶层为主控模块;底层模块执行输入、计算和输出功能;中层模块控制、协调底层的工作。 步骤六、执行“二级分解”。 步骤七、采用启发式设计策略,精化所得程序结构雏形,改良软件质量 上述七个设计步骤的目标是给出软件的一个整体描述。 一旦有了这样一个描述,设计人员即可从整体角度评价和精化软件的总体结构,此时修改所需耗费不多,却能大大提高软件质量。 事务分析 当数据流具有明显的事务特征时,即能找到一个事务(亦称触发数据项)和一个事务中心,采用事务分析法更为适宜。 事务分析法可概括为七个步骤: 步骤一、复审基本系统模型; 步骤二、复审并精化软件数据流图; 步骤三、确定数据流图的特征; 步骤四、指出事务中心,确定接收部分和发送部分的流界; 步骤五、映射出系统上层模块结构; 步骤六、分解并精化事务结构以及每条动作路径所对应的结构。这些子结构是根据流经每一动作路径的数据流特征,采用本节或上节所述设计步骤逐一导出的。 步骤七、使用启发式设计策略,精化所得程序结构雏形,改良软件质量。这一步骤与变换分析法相同。 SD设计优化点 1.调整模块的功能和规模,降低耦合度,提高内聚度。 2.调整软件结构的深度、宽度、扇出和扇入数目,改善软件结构性能。 3.改造程序结构,使任一模块的作用域在其控制域之内。 4.分析模块之间的接口信息,降低界面的复杂性和冗余程度,提高协调性。 5.模块功能应该可预言,避免对模块施加过多限制。 6. 改造程序结构,追求单入口单出口的模块。 7. 为满足设计或可移植性的要求,把某些软件用包(package)的形式封装起来。 原则启发式设计策略 此外,程序中那些供选择的或“单调”(one?shot)的模块应单独存在,以便高效地加载。 辅助文档 获得程序结构后,必须开发一系列辅助文档,作为软件总体设计的组成部分。主要工作包括: 1)陈述每个模块的处理过程; 2)描述每个模块的界面; 3)根据数据字典定义数据结构; 4)综述设计中所有限制和约束; 5)对概要设计进行复审; * * *
您可能关注的文档
最近下载
- 中医病证诊断疗效标准.pdf VIP
- 5.1.2生态系统的结构和功能课件-2025-2026学年人教版2024八年级上册生物.pptx VIP
- 小学英语教师年度考核个人总结 .doc VIP
- 一种促进键骨愈合的鹿骨活性多肽及其制备方法.pdf VIP
- 2025至2030中国甲基丙烯酸丁酯单体行业发展趋势分析与未来投资战略咨询研究报告.docx VIP
- 工贸行业小微企业安全风险分级管控和隐患排查治理双重预防机制建设指导手册.docx VIP
- 【课件】生态系统的结构和功能课件人教版生物八年级上册.pptx VIP
- 急性胰腺炎病人的护理演讲ppt.pptx VIP
- CSD-1321智能通信控制单元说明书V1.16.pdf VIP
- 生态系统的结构和功能 课件-2024--2025学年人教版生物八年级上册.pptx VIP
原创力文档


文档评论(0)