欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    第6讲面向数据流的软件设计方法.ppt

    • 资源ID:2551611       资源大小:789.51KB        全文页数:42页
    • 资源格式: PPT        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第6讲面向数据流的软件设计方法.ppt

    第6讲 面向数据流的软件设计方法,毛新军 教授 xjmaonudt.edu.cn 计算机科学与技术系602教研室 0731-(45)73649,软件工程导论 之,用工程化的方法来开发软件,©Copyright Xinjun Mao,面向数据流的软件设计方法,2,前言,软件设计基础知识 软件的需求分析及其需求规格说明书(SRS) 软件的SRS - 软件设计信息 面向数据流的设计方法:提供了方法和策略,©Copyright Xinjun Mao,面向数据流的软件设计方法,3,本讲内容,基本概念和软件设计过程 变换分析方法 事务分析方法 启发式设计策略 设计优化原则,©Copyright Xinjun Mao,面向数据流的软件设计方法,4,面向数据流设计基本概念和过程,前提 经过评审后的需求模型 - 数据流图,©Copyright Xinjun Mao,面向数据流的软件设计方法,5,数据流的类型,变换流 信息通常以“外部世界”所具有的形式进入系统,经过处理后,又以这种形式离开系统,©Copyright Xinjun Mao,面向数据流的软件设计方法,6,事务型的数据流图,数据沿输入通道到达一个转换,该转换根据输入流类型和特征在若干动作序列中选择一条来执行 输入数据(事务) 具有一个转换(事务中心) 一组动作执行路径,©Copyright Xinjun Mao,面向数据流的软件设计方法,7,数据流图类型的特点,实际上所有的数据流图都是变换流,事务流是变换流的一种特殊形式 为什么要将事务型的数据流图独立出来考虑? 大多数系统的数据流途中,事务流和变换流往往交织在一起,©Copyright Xinjun Mao,面向数据流的软件设计方法,8,混合型数据流图,©Copyright Xinjun Mao,面向数据流的软件设计方法,9,面向数据流的软件设计过程,面向数据流的设计方法的主要过程 确定数据流的类型:变换流还是事务流 划定流界 将数据流图转换为软件结构 通过设计复审和启发式策略精化所得到软件结构,©Copyright Xinjun Mao,面向数据流的软件设计方法,10,©Copyright Xinjun Mao,面向数据流的软件设计方法,11,本讲内容,基本概念和软件设计过程 变换分析方法 事务分析方法 启发式设计策略 设计优化原则,©Copyright Xinjun Mao,面向数据流的软件设计方法,12,变换分析方法,基本思想 通过一系列的设计步骤,将变换型的数据流图映射为软件结构 输入:SRS(数据流图、数据字典、小说明) 输出:软件总体结构,©Copyright Xinjun Mao,面向数据流的软件设计方法,13,步骤1. 复审基本系统模型,什么是基本系统模型 基本系统模型即SRS中的顶级数据流图 为什么需要对基本系统模型进行复审 对系统规格说明书和SRS进行评估,以确保系统的输入和输出数据符合实际,©Copyright Xinjun Mao,面向数据流的软件设计方法,14,步骤2. 复审和精化数据流图,为什么需要复审和精化数据流图 确保DFD给出目标系统正确的逻辑模型 以获得足够详细的DFD 确保DFD中每个转换代表一个规模适中、相对独立的子功能,©Copyright Xinjun Mao,面向数据流的软件设计方法,15,步骤3. 确定数据流图的类型,信息流都可用变换流表示,但是如果有明显的事务流特征,则还应采用事务流的映射方法 设计人员负责判定在数据流图中占主导地位的信息流是变换流还是事务流,©Copyright Xinjun Mao,面向数据流的软件设计方法,16,划分因人而异,在一般情况下有点出入对整个目标软件系统的影响不是很大,步骤4. 划分输入流、输出流边界,输入流处理部分 变换中心 输出流处理部分,©Copyright Xinjun Mao,面向数据流的软件设计方法,17,划分流界例子,©Copyright Xinjun Mao,面向数据流的软件设计方法,18,步骤5. 执行一级分解,任务: 导出三个层次结构的软件结构 底层模块:用于输入、输出和计算等基本功能 中间层模块:协调、控制底层模块的工作 高层模块:用于协调和控制所有的从属模块 原则 在确保完成系统功能并保持低耦合度、高内聚度的情况下尽可能的减少模块数目 一级分解的结果可以用层次图、结构图等来表示,©Copyright Xinjun Mao,面向数据流的软件设计方法,19,一级分解例子,©Copyright Xinjun Mao,面向数据流的软件设计方法,20,步骤6. 执行二级分解,任务 把DFD中每个转换映射为软件结构中的模块 方法 从变换中心边界开始沿输入、输出通道向外移动,把输入、输出通道中的每个转换映射为软件结构中的 一个模块 沿着输入流到输出流的方向移动,将每个转换映射为 相应的模块 有必要为每一模块写简要的处理说明,包括:进出模块的信息,模块处理功能的陈述,有关的限制和约束,©Copyright Xinjun Mao,面向数据流的软件设计方法,22,步骤7. 精化软件结构改良软件质量,以“模块化”的思想,对软件结构中的模块进行拆并,以追求高内聚、低耦合、易实现、易测试、易维护的软件结构,©Copyright Xinjun Mao,面向数据流的软件设计方法,25,本讲内容,基本概念和软件设计过程 变换分析方法 事务分析方法 启发式设计策略 设计优化原则,©Copyright Xinjun Mao,面向数据流的软件设计方法,26,事务分析方法,当数据流具有明显的事务特征时,应该采用事务流的分析方法 基本步骤 步骤1. 复审基本系统模型 步骤2. 复审和精化数据流图 步骤3. 确定数据流图的类型:变换流还是事务流,©Copyright Xinjun Mao,面向数据流的软件设计方法,27,步骤4.识别事务流各个组成部分,把整个事务型DFD划分为以下三个部分 接受路径部分:接受事务的输入 事务处理中心 动作路径部分 判定在每一条动作路径上数据流的特征:变换流或者事务流,©Copyright Xinjun Mao,面向数据流的软件设计方法,28,事务型DFD划分例子,©Copyright Xinjun Mao,面向数据流的软件设计方法,29,步骤5.把事务型DFD映射为软件结构,©Copyright Xinjun Mao,面向数据流的软件设计方法,30,步骤6.分解精化事务结构以及每个动作路径,©Copyright Xinjun Mao,面向数据流的软件设计方法,31,步骤7. 精化初步软件结构,©Copyright Xinjun Mao,面向数据流的软件设计方法,32,©Copyright Xinjun Mao,面向数据流的软件设计方法,33,本讲内容,基本概念和软件设计过程 变换分析方法 事务分析方法 启发式设计策略 设计优化原则,©Copyright Xinjun Mao,面向数据流的软件设计方法,34,启发式设计策略,改造软件结构,降低耦合度,提高内聚度 如果在几个模块中发现共有的子功能,一般应该将该子功能独立出来作为一个模块,以提高模块的独立性 合并那些具有较多的控制信息传递的模块以降低模块之间的耦合度,©Copyright Xinjun Mao,面向数据流的软件设计方法,35,减少扇出,追求高扇入,一个好的软件结构通常顶层扇出较高,中间层扇出较低,底层又高扇入到公共模块中去,©Copyright Xinjun Mao,面向数据流的软件设计方法,36,使任一模块的作用域在其控制域内,作用域是指受模块内部判定影响的所有模块 控制域是指其所有的下属模块,©Copyright Xinjun Mao,面向数据流的软件设计方法,37,其他启发式设计策略,降低模块接口复杂度和冗余度,提高协调性 模块接口应尽可能简单并与模块功能相一致如: Sort(Data; Number) -Sort(Data) 模块功能可预测,避免对模块施加过多限制 模块的功能可预测是指输入恒定,则输出恒定 追求单入口、单出口的模块 为满足设计和可移植性要求,把某些软件用包 封装起来,©Copyright Xinjun Mao,面向数据流的软件设计方法,38,本讲内容,基本概念和软件设计过程 变换分析方法 事务分析方法 启发式设计策略 设计优化原则,©Copyright Xinjun Mao,面向数据流的软件设计方法,39,设计优化原则,在先不考虑时间复杂度的情况下设计并精化软件结构 借用CASE工具模拟分析运行性能,定位低效率的部分 详细设计时对耗时的模块进行仔细的推敲,以减少模块的运行开销 用高级语言编写 对大量占用CPU资源的模块必要时用低级语言重新进行编码,以提高效率,©Copyright Xinjun Mao,面向数据流的软件设计方法,40,本讲小结,基本概念和软件设计过程 变换分析方法 事务分析方法 启发式设计策略 设计优化原则,©Copyright Xinjun Mao,面向数据流的软件设计方法,41,思考题,你觉得在进行软件设计时,除了上述启发式设计策略和优化原则之外,还应考虑那些问题?,©Copyright Xinjun Mao,面向数据流的软件设计方法,42,Q & A,An Introduction to Software Engineering,Practice, Practice, and Practice,

    注意事项

    本文(第6讲面向数据流的软件设计方法.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开