- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
?Copyright Xinjun Mao 面向数据流的需求分析方法 第4讲 面向数据流的需求分析方法 毛新军 教授 xjmao@nudt.edu.cn 计算机科学与技术系602教研室 0731-(45)73649 序言 需求分析的任务 建模是实现需求分析任务的一种好的方法 有助于全面、系统地了解和分析用户的需求 有助于发现需求描述中不一致、错误和模糊性 确保软件SRS一致化、全面化、准确化 如何建立用户需求的模型? 主讲内容 基本思想和原理 建模语言 建模过程 CASE工具 基本原理和思想 提出一种建模方法时需考虑的问题 用户需求的本质是什么? (原理) 表示机制以刻画和描述用户的需求? (语言) 建模的过程和步骤? (方法) 面向数据流需求分析方法的产生 结构化软件开发方法 70年代Edward Yourdon, Tom DeMarco等人提出 基本思想: “自顶向下,逐步求精” ,“抽象和分解” 结构化软件开发方法 结构化需求分析 + 结构化软件设计 + 结构化程序设计 面向数据流分析方法(DFD)是结构化软件开发方法一员 基本原理 用户需求:功能和行为, 性能, 设计约束 从信息处理的角度上看,应用系统的功能本质上对各种数据的加工和处理 如何表示各种数据的加工和处理? 怎样进行需求分析? 主讲内容 基本思想和原理 建模语言 建模过程 CASE工具 模型表示工具(语言) 数据流图 数据字典 小说明 数据流图 数据流图是一种描述数据以及对数据进行加工转换的图形工具 一个数据流图主要由以下四个部分组成: 数据流图例子 数据字典 数据字典 面向数据流分析需要引进数据字典 数据字典以一种准确、简洁的方式对数据流图中数据流、外部实体、数据存储作说明 数据字典中的每个数据条目有以下内容: 名字(别名) 数据类型 使用该数据条目的简要说明 数据条目的解释性说明 其他补充说明:取值范围、缺省值、设计约束等 以它作为输入流或输出流的转换的列表 数据字典例子 订票单 名字: 订票单 数据类型: 航班日期 + 目的地 + 出发地 + 航班号 作为输出流的转换列表: 作为输入流的转换列表: 预定机票 使用说明: 必须给出各个数据项 解释性说明: 无 缺省值: 出发地 = 填写本地 …… 小说明 小说明 小说明准确、详细对数据流图中的各个转换的功能、性能和设计约束等作进一步的解释和说明; 需求分析人员通常用结构化的自然语言、判定树和判定表来书写小说明 小说明应该尽可能的简洁、清晰、易于理解 小说明例子 记帐 (1) 将本次业务记录到中心数据库中 (2) 产生帐单 (3) 打印账单 主讲内容 基本思想和原理 建模语言 建模过程 CASE工具 面向数据流的建模过程 DFD是系统中各处理子功能以及它们之间数据流动的图形表示 -- 刻划系统功能和行为 DFD为描述和建模的工具和手段 如何利用DFD进行需求分析,描述用户需求? 面向数据流的分析方法 面向数据流分析方法运用了抽象和分解的技术.提供一些经验知识和规则以指导需求分析 步骤1: 建立顶级DFD(1/2) 根据问题域与外部环境之间的相互关系定义问题 域的边界,即问题域与外界环境之间的输入输出关系 -- 得到最高抽象层次 顶级数据流图仅仅描述待开发的软件系统与外部环境之间的关系,因此在此DFD中,待开发的软件系统被抽象描述为一个转换 步骤1: 建立顶级DFD(2/2) 步骤2:自顶向下,功能分解 自顶向下、逐步求精对顶级数据流图进行精化,生成下一级数据流图 对用户的需求描述进行语法分析 名词或名词短语构成潜在数据流、数据存储和外部实体 动词构成潜在的处理功能 案例分析:顶级(0)DFD 案例分析:精化生成一级(0.1)DFD 案例分析: 精化生成二级(0.1.1)DFD 案例分析: 精化生成三级(0.1.1.1)DFD 步骤2:自顶向下,功能分解(续) 在分解、精化过程中,把生成的数据流、数据存储、外部实体在数据字典中加以定义, 对底层转换在小说明中作出描述 什么是底层转换? 是一个转换 没有被进一步精化和分解 案例分析: 三级DFD 数据字典 读者基本信息 名字和别名:读者基本信息 数据类型:名字+读者类别+出生日期+系别+ 照片 限制: 必须提供所有的信息 相关的转换列表:…… 读者类别 名字和别名:读者类别 数据类型:教师 | 本科生 | 硕士研究生 | 博士研究生 限制: 无 相关的转换列表:…… 案例分析: 三级DFD 小说明 判断读者是否存在 判断读者信息的合法性和有效性 查询读者信息库,判断该读者是否已经注册 需求分析原则 正确使用数据流图中的各个图形要素;如一个转换既有输入,又有输出 每个数据流、数据存储、外部实体在数据字典中
文档评论(0)