




已阅读5页,还剩91页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章软件需求分析 3 1需求分析的任务3 2与用户沟通获取需求的方法3 3分析建模与规格说明3 4实体 联系图3 5数据规范化3 6状态转换图3 7其他图形工具3 8验证软件需求3 9小结习题 教学要求 教学目的 了解需求分析的任务和步骤 评审标准和过程 掌握基本技术 理解需求规格说明书的作用与组成 教学重点 基本技术 需求规格说明书的作用与组成 教学难点 基本技术 需求分析简介 软件需求指用户对所开发的软件在功能 性能 环境 可靠性等各方面的要求 需求分析主要回答待开发的系统必须 做什么 并用 需求规格说明书 的形式准确 详细 规范地表达出来 注意 需求分析阶段 系统分析员的主要关注点是 做什么 what 不是 怎样做 how 需求分析阶段 系统分析员应该给出软件需求规格说明书 3 1需求分析的任务 四项主要任务 1 确定对系统的综合要求2 分析系统的数据要求3 导出系统的逻辑模型4 修正系统开发计划 提问并思考 如果你是一个用户 你会对将要开发的软件有哪些要求 3 1 1确定对系统的综合要求 功能需求 指定系统必须提供的服务 性能需求 指定系统必须满足的定时约束或容量约束等 可靠性和可用性需求 应定量指定 出错处理需求 指环境错误 非系统本身的错误 接口需求 常见的接口需求 用户接口需求 硬件接口需求 软件接口需求 通信接口需求 约束 常见的约束 精度 工具和语言约束 设计约束 应该使用的标准 应该使用的硬件平台 逆向需求 指定系统不应该做什么 将来可能提出的要求 3 1 2分析系统的数据要求 提问并思考 如果你是设计者 除了上述需求以外 你觉得还需要得到哪些要求 答 软件系统本质上是信息处理系统 要考虑数据和数据处理的问题 对系统数据的分析 建立数据 3 4节实体 联系图 描绘数据结构 3 7节其他图形工具 数据结构规范化 3 5节 3 1 3导出系统的逻辑模型 用数据流图 实体一联系图 状态转换图 数据字典和主要的处理算法描述这个逻辑模型 3 1 4修正系统开发计划根据在分析过程中获得的对系统的更深入更具体的了解 可以比较准确地估计系统的成本和进度 修正以前制定的开发计划 图 软件需求分析的通信途径 分析小组成员主要包括领域专家 系统分析员 客户访谈问题分析与确认 3 2与用户沟通获取需求的方法 1 访谈2 面向数据流自顶向下求精3 简易的应用规格说明技术4 快速建立软件原型 3 2 1访谈 分正式和非正式访谈 可采用调查表形式可使用情景分析技术 例 某出版社系统调查表 3 2 2面向数据流自顶向下求精 结构化分析方法的实质 进一步细化可行性研究阶段获得到高层数据流图 包括建立 详细的数据流图 描绘数据在软件系统内从输入移动到输出的过程中所经受到变换 数据字典 定义数据流图中包含的元素 实体关系 ER 图 从用户角度描述数据 IPO图 描述数据流图中处理框的功能和算法 面向数据流自顶向下求精过程 3 2 3简易的应用规格说明技术 一种面向团队的需求收集法 提倡用户与开发者密切合作 共同标识问题 提出解决方案要素 商讨不同方案并指定基本需求 具体过程见教材P60面提问 此方法将产生什么样的产品 3 2 4快速建立软件原型 快速原形就是快速建立起来的旨在演示目标系统主要功能的可运行的程序 要点 实现用户看得见的功能 省略目标系统 隐含 功能 具有 快速 和 容易修改 两大特性 3 2 4快速建立软件原型 建立和修改原型的方法和工具 1 第四代技术 包括众多数据库查询和报表语言 程序和应用系统生成器以及其他非常高级的非过程语言 能快速生成可执行的代码 2 可重用的软件构件 使用一组已有的软件构件 也称为组件 来装配 而不是从头构造 原型 3 形式化规格说明和原型环境 在交互式环境下 用自动工具把基于形式语言的规格说明翻译成可执行的程序代码 3 3分析建模与规格说明 3 3 1分析建模什么是模型 为了理解事物而对事物做出的一种抽象 是对事物的一种无歧义的书面描述 模型通常由一组图形符号和组织这些符号的规则组成 模型的作用 在建模过程中了解系统 通过抽象降低复杂性 有助于回忆所有的细节 有助于开发小组间的交流 有助于与用户的交流 为系统的维护提供文档 例 结构化分析方法建立的需求模型 结构化分析 StructuredAnalysis SA 是面向数据流进行分析的方法 主要建立以下几种模型 实体关系图 Entity RelationshipDiagram E R图 来创建数据模型 描述系统中所有重要的数据对象 数据流图 DataFlowDiagram DFD 用来创建功能模型 描述了信息流和数据转换 状态转换图 State TransitionDiagram STD 用来创建行为模型 描述系统状态如何响应外部事件 而进行转换 教材p56 例 面向对象分祈方法 OOA 所建立的摸型 对象模型 Objectmodel 定义实体 描述系统的静态结构 定义 对谁做 动态模型 Dynamicmodel 描述对象之间的交互过程 规定 何时做 功能模型作 Functionalmodel 描述内部数据的处理 指明系统应 做什么 软件需求规格说明 软件需求规格说明书 是需求分析阶段最主要的文档 对目标进行完善和补充 并写出完整的需求说明 为消除自然语言中可能存在的不一致 歧义 含糊 不完整及抽象层次混乱等问题 有主张用形式化方法描述用户对软件系统的需求 例 GB8567 88计算机软件产品开发文件编制指南 结构化分析方法 StructuredAnalysis SA 面向数据流进行需求分析的方法适合于数据处理类型软件的需求分析 结构化分折模型的组成结构 3 4实体 联系图 实体 联系图 E R图 描绘系统的数据关系 分析实体 联系有助于对业务或系统数据组成的理解和交互 一 基本概念 1 实体 客观世界中存在的 可区分的事物 数据对象 实体在数据模型中的体现 能由一组属性来定义的实体都可以被认为是数据对象 属性 实体或数据对象所具有的性质 联系 客观事物之间的联系 联系分为三种 一对一 1 1 一对多联系 1 N 多对多联系 M N 二 E R图的结构三种基本元素 例 教学E R图 三 如何建立实体一联系图 1 在需求收集的过程中 列出应用软件或业务过程涉及到的所有 事物 将其演化成数据对象 2 一次考虑一个对象 定义这个对象和其他对象之间是否存在连接 3 如果存在连接 应创建一个或多个关系 4 对每一个关系 确定其关联类型 5 重复步骤 2 到步骤 4 直到定义了所有关系 6 定义每个实体的属性 7 形式化并复审实体关系图 8 重复步骤 1 到 7 直到数据建模完成 2 4数据流图 DFD DataFlowDiagram 描述数据处理过程的工具 通过图形的方法 从数据传递和数据处理的角度 刻画数据流从输入到输出的移动变换过程 数据流三个重要属性 数据流名字 数据组成 流向 2 4 1符号 1 说明 用图形符号以黑盒子形式描绘组成系统的每个部件 程序 文档 数据库 人工过程等 表达数据在系统各部件之间流动的情况 符号 2 例1 描述银行取款过程的数据流图 应该注意的几个问题 适当地命名 详见教材p45 数据存储 代表数据静止状态 数据流 代表数据的运动状态 注意数据流与控制流的区别 通常数据流图中忽略出错处理 打开或关闭文件之类的内务处理 若数据的源点和终点相同 则应该有两个箭头和这个数据源 终 点相连 或重复画一个源 终 点 数据流图的层次结构 对于大型系统 往往采用自顶向下逐层分解的方法 用分层数据流图表示所有数据流和加工 对任何一个数据流图来说 它的上层图为父图 在它的下一层的图为子图 分层数据流图 说明 在多层数据流图中 顶层流图仅包含一个数据处理 它代表被开发系统 它的输入流是该系统的输入数据 输出流是系统所输出数据底层流图是指其数据处理不需再做分解的数据流图 它处在最底层中间层流图则表示对其上层父图的细化 它的每一数据处理可能继续细化 形成子图 注意的原则 1 数据流图上所有图形符号只限于前述四种基本图形元素 数据流图的主图必须包括前述四种基本元素 缺一不可 数据流图的主图上的数据流必须封闭在外部实体之间 外部实体可以是一个也可以是多个 每个数据处理至少有一个输入数据流和一个输出数据流 在数据流图中 需按层给数据处理框编号 编号表明该处理所处层次及上下层的亲子关系 注意的原则 2 规定任何一个数据流子图必须与它上一层的一个数据加工对应 两者的输入数据流和输出数据流必须一致 此即父图与子图的平衡 可以在数据流图中加入物质流 帮助用户理解数据流图 图上每个元素都必须有名字 数据流图中不可夹带控制流 初画时可以忽略琐碎的细节 以集中精力于主要数据流 例2 结构化分析方法步骤示例 商场业务处理系统假设某商场的经营业务 商场进货时 先发订货单给供应商 供应商收到订货单 将商品发给商场 商场货到付款 供应商收款后 将收据发给商场 当顾客到商场采购商品时 先下购物订单 商场查询库存中是否有此种商品 若有则发货给顾客 若没有 则向供应商订货 货到之后再销售给顾客 顾客收到货物之后付款 商场开收据给顾客 商场对货物的管理方面要求知道每种货物详细的销售情况 分析业务流程 订货过程 分析业务流程 采购过程 第一步 绘制顶层数据流图 1 基本思想 任何计算机系统都是有若干个数据源 终 点加上一个事务处理组成 首先从问题的描述中提取数据流图中的源 终 点 数据处理 数据流和数据存储四种成份 分析源 终 点 分析数据处理 分析数据流和数据存储 分析数据源点和终点 如果将商场的购 销业务系统看成一个整体 则外部的与这个系统有交往的对象 机构 人员 或外部系统 是 供应商 和 顾客 二者是商场购销系统源点和终点 分析源点 终点与商场之间的数据流 数据流方向分别是 供应商方给商场 发货单 货款收据顾客给商场 订单 货款商场给供货商 订货单 货款商场给顾客 货物 收据 分析数据存储 需要存储的数据分别是库存信息暂存订单 缺货订单 采购订单商品销售历史资金帐目 第一步 绘制顶层数据流图 2 第一步 绘制顶层数据流图 3 第一步 绘制顶层数据流图 3 第二步 将顶层数据流图细化 经过分析 商店业务处理的主要数据处理是销售 采购 会计三大数据处理 三者之间的数据流 需要存储的数据有 DFD L2 2 采购细化 DFD L2 1 销售细化 2 5数据词典 DD datadictionary DD是对数据流图中包含的所有元素的定义的集合 使得每个图形元素的名字都有一个精确的 严格的定义 数据流图和词典结合在一起 能清楚地表达数据处理的要求 构成了 需求说明书 2 5 1数据字典的内容 主要描述数据流数据元素数据存储数据处理 2 5 2定义数据的方法 1 定义数据流 数据流名 说明 简要介绍作用即它产生的原因和结果 数据流来源 来自何方 数据流去向 去向何处 数据流组成 数据结构 数据量流通量 数据量 流通量 举例 数据流定义 2 定义数据元素 数据元素 数据项 指数据处理中最小的 不可再分的单位 描述包括 数据元素名 类型 数字 离散值 连续值 文字 编码类型 长度 取值范围 相关的数据元素及数据结构 数据元素定义举例 1 数据元素定义举例 2 数据元素定义举例 3 数据元素定义举例 4 3 定义数据存储 数据文件名 简述 存放的是什么数据输入数据 输出数据 数据文件组成 数据结构存储方式 顺序 直接 关键码存取频率 数据存储定义举例 1 4 定义数据处理 数据处理定义举例 1 数据处理定义举例 2 加工逻辑词条说明举例 3 源点及汇 终 点词条描述 名称 外部实体名简要描述 什么外部实体有关数据流 数目 3 5数据规范化 1 第一范式每个属性值都必须是原子值 2 第二范式满足第一范式条件 而且每个非关键字属性都由整个关键字决定 3 第三范式符合第二范式的条件 每个非关键字属性都仅由关键字决定 而且一个非关键字属性不能仅仅是对另一个非关键字属性的进一步描述 范式低 冗余大 范式高 分解得细 冗余小 但处理过程复杂 3 6状态转换图 STD 为了直观地分析系统的动作 从特定的视点出发描述系统的行为 需要采用动态分析的方法 状态转换图是一种常用的动态分析方法 是描述系统的状态如何响应外部信号 而进行转换的一种图形表示 3 6 1状态 指任何可以被观察到的系统行为模式 一个状态代表系统的一种行为模式 主要有 初态 终态和中间状态 一个状态图中 只能有一个初态 但可以有0 多个终态 3 6 2事件 某个特定时刻发生的事情 它是对引起系统做动作或 和 从一个状态转换到另一个状态的外界事情的抽象 3 6 3状态转换图符号 活动表语法 事件名 参数表 动作表达式常用事件名 Entry Exit Do动作表达式 应做的具体动作事件表达式 触发状态转换的事件 语法 事件说明 守卫条件 动作表达式 其中 事件说明的语法 事件名 参数表 电话系统的状态图 电话系统的状态图 电话系统的状态图 3 7其他图形工具 3 7 1层次方框图 3 7 2Warnier图 3 7 3IPO图 3 8验证软件需求 问 从哪些方面验证软件需求的正确性 如何验证 1 一致性自然语言书写的需求说明 只能用人工方法验证 形式化方法定义的可以借助验证工具 3 8 3节 2 完整性需要用户参与 合作 建立快速原型 3 现实性参照以往类似系统 进行仿真或性能模拟4 有效性 用于需求分析的软件工具 对采用形式化方法定义的需求进行验证的工具 应该满足下列要求 1 必须有形式化的语法 或表 因此可以用计算机自动处理使用这种语法说明的内容 2 使用这个软件工具能够导出详细的文档 3 必须提供分析 测试 规格说明书的不一致性和冗余性的手段 并且应该能够产生一组报告指明对完整性分析的结果 4 使用这个软件工具之后 应该能够改进通信状况 如 在1977年设计完成的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工程测量考试题型及答案
- 2025年湖南企业面试真题及答案
- 亲情的力量记事作文(5篇)
- 高电压理论考试题及答案
- 2025年福建省莆田华侨职业中专学校校聘教师招聘1人考前自测高频考点模拟试题及答案详解一套
- 红旗汽车模拟测试题及答案
- 全面绩效考核指标体系模板
- 跨平台协作标准化工具及其功能覆盖场景
- 2025杭州青少年活动中心招聘工勤岗位工作人员20人考前自测高频考点模拟试题及完整答案详解
- 销售合同管理工具合同要素审核清单版
- 网络安全教育主题班会通用课件
- DB4405-T 303-2023 狮头鹅屠宰操作规程
- 经合组织成员国
- 浅谈如何做好危化品安全管控工作
- 人工智能技术及应用习题答案题库
- 县中医院妇科重点专科建设汇报
- 坚持人民至上 工会研讨发言
- 美学原理全套教学课件
- 期末复习(课件)新思维英语四年级上册
- 子宫脱垂试题及答案
- GB/T 90.1-2023紧固件验收检查
评论
0/150
提交评论