好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

软件工程基础(胡思康)第4章课件.pptx

77页
  • 卖家[上传人]:宝路
  • 文档编号:48027869
  • 上传时间:2018-07-08
  • 文档格式:PPTX
  • 文档大小:11.68MB
  • / 77 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • SEY结构化设计方法Chapter 4SEY结构化设计方法概述1面向数据流的设计方法2面向数据的设计方法3结构化详细设计的工具4Ø 结构化设计(SD)的基础是模块,结构化设计的基本思想是:基于模块独立性和信息隐藏性原则,自顶向下,逐步求精,分解与抽象相结合,并应用结构化程序设计技术而进行的软件设计结构化设计方法结构化设计方法Ø 结构化设计分为面向数据流的设计方法和面向数据的设计方法Ø 面向数据流的设计方法根据对数据流图理解的不同,对数据流图自动化边界划分的不同,分为变换分析法、事务分析法和混合分析法Ø 面向数据的设计方法在基于系统数据结构的基础上,分析系统输入、输出的数据间的映射关系,进而得到系统结构的设计方法 结构化设计方法概述结构化设计方法概述SEY结构化设计方法概述1面向数据流的设计方法2面向数据的设计方法3结构化详细设计的工具4Ø 面向数据流的设计(DOFD)是基于数据流图自顶向下,逐层分解的过程它将各级数据流图映射为软件结构图中对应的各层次模块,体现了结构化设计与结构化分析的相互衔接,也体现了自顶向下的模块化设计思想面向数据流的设计方法面向数据流的设计方法Ø 表示软件系统结构设计的图形工具:层次图和结构图。

      Ø 层次图(Hierarchy Diagram,HD)用于描绘软件系统的层次结构Ø 层次图中的编号,清楚的反映了上下层间的调用隶属关系,这与数据流图的分层编号一致Ø 层次图只反映上下层间的调用关系,不反映系统的组成关系,也不反映系统执行过程 面向数据流的设计方法面向数据流的设计方法面向数据流的设计方法面向数据流的设计方法论文格式论文格式1 .01 .0打开论文文件打开论文文件2.02.0关闭论文文件关闭论文文件3.03.0编辑编辑3.13.1章节标题章节标题3.23.2段落段落3.33.3文字文字3.43.4节节4.04.0目录目录5.05.0检索检索Ø 另一个表示软件系统结构的图形工具:结构图Ø 结构图与层次图类似,也是以方框表示模块,方框间的连线表示调用关系 与层次结构图不同的是,它增加了对连线的数据流描述面向数据流的设计方法面向数据流的设计方法结构图结构图——数据流数据流不加区分的数据数据信息控制信息编辑编辑编辑编辑 学生学生记录记录记录记录读学生记录读学生记录学生数据无此学生学号结构图结构图——调用关系调用关系系统统控制MNA AB BC Ca,bcca,b,c为模块间传递的数据或控制信号结构图结构图——调用关系调用关系Ø 系统控制模块可以细分为传入模块、传出模块、变换模块和协调模块。

      传传传传入模入模块块块块AA传传传传出模出模块块块块BB变换变换变换变换 模模块块块块BA 协调协调协调协调 模模块块块块BAABØ 变换分析法是以数据流图为基础,并根据数据流的特征进行软件系统结构设计的方法无论是变换分析法还是事务分析法,它们的设计过程都如下图所示:变换分析法变换分析法复审审的目的是再次强调调数据流图图的各注意事项项 (1)命名时时尽量使用有明确含义义的词词、短 语语、术语术语 和领领域词汇词汇 ,减少数据流图图的歧义义 (2)上下层图层图 (父子图图)输输入、输输出,以及 访问访问 数据流的平衡 (3)上下层图层图 (父子图图)的层层次编编号要一致 ,正确反应应数据流图图的分解过过程 (4)对对于每层层数据流的分解,可以用逻辑逻辑 运 算符*(与)、+(或)和⊕(异或)怎加数据 流图图中个变换变换 部分间间的语义语义 (5)精化数据流图图,使其能正确、完整地描述 用户户需求,因为这为这 将决定系统结统结 构图图的逻辑逻辑 框 架正确与否变换分析法变换分析法Ø 划分自动动化边边界,确定数据流特征,判断 数据流是变换变换 流还还是事物流 Ø 变换变换 流的特征是有明显输显输 入、处处理和输输 出过过程,在处处理部分没有过过多的控制和判 断。

      这这里的输输入和输输出是指对应对应 子系统统或 模块块数据的输输入、输输出部分,并非一定对对 应应系统统外部的直接输输入和输输出 Ø 事物流的特征是在数据的输输入、处处理和 输输出过过程中,处处理部分有明显显的控制或判 断中心,后续续的数据流有较较多活动动路径变换分析法变换分析法Ø 数据输输入输输出边边界的划分与系 统结统结 构的处处理无关,仅仅表示系 统统与外部数据的交换换Ø 执执行一级级分解,导导出系统逻辑结统逻辑结 构的最上两 层层关系顶层为顶层为 关系主控模块块,第二层层根据 边边界的划分,分为为三个模块块(子系统统) Ø 输输入模块块:包括所有输输入部分,以及经过简经过简 单变换单变换 的数据和信息;输输出模块块:包括所有 输输出部分,以及经过简单变换经过简单变换 的数据和信息 ;控制模块块:除输输入输输出部分以外的变换变换 操作变换分析法变换分析法Ø 二级级分解把一层层分解得到的各子系统统模块块按 照各层层数据流图图逐层细层细 分,得到系统结统结 构图图 的原型 Ø 为为了明确说说明各模块间块间 的调调用关系,形成接 口设计说设计说 明书书的部分内容,还还需要为为每个模 块编块编 写一个简简要说说明: l模块块的输输入、输输出数据接口定义义 l模块块内部结结构信息 l模块块功能的主要流程描述,特别别是主要的 判断、异常处处理 l对对模块调块调 用时时的相关约约束关系,以及特别别 的说说明(如I/O操作,共享约约束等)变换分析法变换分析法Ø 采用启发发式规则规则 ,精化所得到的初步软软件结结 构,以模块块独立性为为原则则,合并、分解、抽取 各模块块,得到一个高内聚、低耦合、易实现实现 、 易测试测试 、易维护维护 的软软件系统结统结 构图图变换分析法变换分析法——实例实例ABCDEFGHJKMabdcejk mf示意性数据流图hMCMIMTMO主控模块块:完成对对整个 系统统的调调用、数据传传 递递、I/O操作等功能。

      输输入流模块块:接受并初 步转换转换 所有输输入数据输输出流模块块:产产生符合 用户户需求的输输出数据变换变换 流模块块:对对系统统内部 形式的数据进进行加工、处处 理变换分析法变换分析法——实例实例ABCDEabdceMIEc,eDdeAbB aCc变换分析法变换分析法——实例实例JKMjk mMOKMkjJmkj变换分析法变换分析法——实例实例FGHcejkf示意性数据流图MTGFHc,ej,kefhc,fj,khh变换分析法变换分析法——实例实例MTGFHc,ej,kcfhc,fj,khMC(主控模块块)MIEc,eDdeAbB aCcMOKMkjJmkj变换分析法变换分析法——实例实例MTGFHc,ej,kec,ehfj,khMC(主控模块块)MIEc,eDdeAbB aCcMOKMkjJmkj事物分析事物分析法法Ø 如果数据例图中具有事物特征,即能找到事物中心和对应的多条活动路径,则用事物分析法更能体现以事物为主的处理过程事物分析事物分析法法TMC(事物分析)MIT(调度事物中心)路径1路径2路径3MIMTMO事物层层:各事物控制中心事物分析法事物分析法事物分析法事物分析法MCMIH(调调度 )ABCDEFGHJKMabdcejk mf事物中心hhh事物分析法事物分析法MCMIH(调调度 )hhFhCGBEADcbafedJKFckmØ 第一步求精:1层DFD图部门门用户户部门门用户户 F1 原始简历简历 库库F2 简历库简历库简历简历 文件简历简历查询查询 信息登录录信息简历简历1登录录F3 用户户信息库库权权限2 自动动 获获取 简历简历 信息权权限3查询查询查询查询 信息简历简历变换分析法案例变换分析法案例——简历自动获取和查询系统简历自动获取和查询系统Ø 逐步求精:对各系统进一步精化F1 原始简历简历 库库F2 简历库简历库简历简历 文件2.1 电电子收 集电电子 简历简历2.2 读读取 电电子 简历简历权权限2.3分析 关键键 词词简历简历简历简历 文件简历简历 文件2.4 自动动 获获取 简历简历 信息关键键 词词变换分析法案例变换分析法案例——简历自动获取和查询系统简历自动获取和查询系统Ø 逐步求精:对各系统进一步精化F2 简历库简历库3.1 分析查查 询询信息3.2查询查询查询查询信息3.3生成查查 询结询结 果简历简历关键词键词权权限关键词键词简历简历变换分析法案例变换分析法案例——简历自动获取和查询系统简历自动获取和查询系统变换分析法案例变换分析法案例——简历自动获取和查询系统简历自动获取和查询系统Ø 划分数据输入输出边界,分离出处理部分变换分析法案例变换分析法案例——简历自动获取和查询系统简历自动获取和查询系统Ø 执行一级分解变换分析法案例变换分析法案例——简历自动获取和查询系统简历自动获取和查询系统Ø 执行二级分解H变换分析法案例变换分析法案例——简历自动获取和查询系统简历自动获取和查询系统Ø 精化所得到的初步软件结构HH事物分析法事物分析法案例案例——简历自动获取和查询系统简历自动获取和查询系统Ø 划分数据输入、输出边界,分离出事物中心事物分析法事物分析法案例案例——简历自动获取和查询系统简历自动获取和查询系统Ø 一级分解H事物分析法事物分析法案例案例——简历自动获取和查询系统简历自动获取和查询系统Ø 二级分解两种方法的比较两种方法的比较Ø 从组织结构上分析,变换分析法符合一般意义上对软件的理解,即输入、输出和变换。

      Ø 事物分析法符合系统用户的操作过程,由用户操作选项(事物中心)决定各活动路径两种方法的比较两种方法的比较Ø 从模块独立性,特别是耦合度上分析,案例中变换分析法的控制模块将第二部分第三部分的模块都混合在控制模块中Ø 而事物分析法,不同的活动路径通过事物中心各自独立,没有耦合关系,更符合模块独立性原则两种方法的比较两种方法的比较Ø 从符合用户需求的角度上分析,事物分析法更接近于用户需求的描述活动路径和需求有较好的对应关系Ø 因此建议采用事物分析法所得到的二级分解图作为软件系统结构图混合分析法混合分析法Ø 在大规模和复杂系统的数据流图中,常常需要将变换分析法和事物分析法结合使用,共同构建软件系统结构图ABCDEFGHJKMabdcejk mfh 输入流变换流事物中心活动路径混合分析法混合分析法ABCDEFGHJKMabdcejk mfh 输入流变换流事物中心活动路径选择何种方法选择何种方法Ø 如果模块A、B、C、D、E是顶层数据流图的外部数据交换部分,则变化分析法的设计方案好Ø 如果模块A、B、C、D、E是系统内部数据的转换部分,其与模块F和G耦合度高,则事物分析法设计方案较好Ø 如果模块J、K、M仍是系统内部转换模块,而非顶层数据流图的外部接口,则事物分析法和混合分析法较好。

      SEY结构化设计方法概述1面向数据流的设计方法2面向数据的设计方法3结构化详细设计的工具4面向数据的设计方法面向数据的设计方法Ø 面向数据的设计方法就是以数据结构作为软件设计的基础,并设计软件结构和软件处理过程的关系Ø 这一方法淡化了数据流图向软件结构映射的过程,而主要集中于某个子系统或模块数据输入、输出前后结构的对比,找出数据间映射关系,从而分析出子系统或模块的操作过程面向数据的设计方法面向数据的设计方法Ø 面向数据的经典设计方法是英国人M.A.Jachson提出的Jackson系统开发(Jackson System Development, JSD)方法Ø 用Jackson图表示的数据结构能够和结构化程序语言相结合,因为它也用顺序、选择和重复等控制结构表示数据结构或对数据结构的操作顺序面向数据的设计方法面向数据的设计方法ABCØ 顺序结构,表示自上而下,自左向右的执行AB0C0S(i)Ø 选择结构,根据S(i),选择执行模块B或CAB0…0S(i)Ø 选择结构,根据S(i),选择执行模块B或不执行任何操作AB*I(i)Ø 循环结构,根据条件I(i)的判断,循环执行模块B面向数据的设计方法面向数据的设计。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.