CH03-软件需求分析.ppt_第1页
CH03-软件需求分析.ppt_第2页
CH03-软件需求分析.ppt_第3页
CH03-软件需求分析.ppt_第4页
CH03-软件需求分析.ppt_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 第3章软件需求分析 2 3 1需求分析概述3 2需求获取的方法3 3分析建模3 4软件需求说明3 5需求验证 主要内容 3 需求分析的任务与步骤建立分析模型的描述工具及建立过程 重点 4 瀑布模型 软件需求分析是软件生命期中重要的一步 也是决定性的一步 3 1需求分析概述 5 可行性研究的任务 用极少的代价在最短的时间内决定被开发的软件是否能开发成功 经济可行性技术可行性运行可行性 6 在可行性分析的基础上 进一步了解确定用户需求 准确地回答 系统必须做什么 的问题 需求分析 开发人员准确地理解用户的要求 进行细致的调查分析 将用户非形式的需求陈述转化为完整的需求定义 再由需求定义转换到相应的需求规格说明的过程 3 1需求分析概述 7 3 1 1实例分析 开发过程模型实例 8 现行系统 模型系统 抽象 映射 模型应用 模型 model 模型是为了理解事物而对事物做出一种抽象 对事物的无歧义的书面描述 模型由一组图形符号和组成图形的规则组成 构造模型的过程是一个抽象 分析的过程 模型构造的过程应用 目标系统 软件开发过程模型 10 开发过程模型 当前系统 我们将用户正在使用的系统 可能是需要改进的已经使用的数据处理系统 目标系统 要完成的软件系统称为目标系统 当前系统的物理模型 用一个具体化的模型模拟了解当前系统的组织结构 资源利用情况和日常数据处理过程 这一模型称为当前系统的物理模型 11 开发过程模型 当前系统的逻辑模型 在理解当前系统的具体运行过程后 从个体的细节中抽象出本质的过程模型即当前系统的逻辑模型 目标系统的逻辑模型 分析当前系统与目标系统逻辑上的差别 明确目标系统的 做什么 的实质工作 从当前系统的逻辑模型导出目标系统的逻辑模型 目标系统的物理模型 物理模型则是由它的逻辑模型经实例化 具体到某个业务领域 目标系统 描述现行系统是如何实施的 包括技术 描述新系统的主要业务功能和用户新的需求 不管系统应如何实施 描述新系统是如何实施的 包括技术 逻辑模型物理模型 本质模型 概念模型 实施模型 技术模型 描述重要的业务功能 不管系统是如何实施的 现行系统 13 实例3 1 高校学生在每学年的开始都需要交纳学费 书费 住宿费等费用 这些工作往往需要各个部门的人员参与 学生交费过程 先由系办公室秘书审查学生身份并开具交费清单 包括学费 书费 住宿费用等 学生持交费清单找财务科会计开具交费发票 找财务科出纳付款 凭借交费发票去教材科领取教材 到宿舍办理入住手续 到系办公室办理开课手续 14 新需求 尽量简化学生交费过程 提高效率 以下见分析步骤及分析图见图3 2 图3 3 图3 4 15 分析步骤 通过对现实环境的调查研究 获取当前系统的物理模型分析需求 建立系统的逻辑模型整理综合需求 编写需求说明验证需求 完善对目标系统的描述 1 通过对现实环境的调查 获当前系统的物理模型 2 分析需求 建立系统分析模型 包括当前系统的逻辑模型和目标系统的逻辑模型 去掉具体模型中的非本质因素 抽象出当前系统的逻辑模型 分析当前系统与目标系统的差别 建立目标系统的逻辑模型 3 整理需求 编写软件规格说明书 4 验证需求 完善对目标系统的描述 20 需求分析的任务 就是借助于当前系统的逻辑模型导出目标系统的逻辑模型 解决目标系统的 做什么 的问题 最终结果 获得 3 1 2需求分析的任务 认清问题 分析资料 建立分析模型编写软件需求说明书 21 需求分析阶段的具体任务如下 1 确定目标系统的具体要求 3 1 2需求分析的任务 确定系统的运行环境要求 硬件要求 CPU 操作系统等 系统的性能要求 存储容量 安全 可靠性 响应时间 系统功能 系统做什么 系统何时做什么 系统何时及如何修改或升级 22 3 1 2需求分析的任务 2 分析系统的数据要求3 建立目标系统逻辑模型 数据流图 数据字典 处理的算法描述 4 修正系统开发计划 进一步完善 5 建立原型系统 让用户评估并提出意见 6 编写软件需求规格说明书及评审 提交文档及评估 23 3 1 3需求分析的步骤 1 需求获取 2 分析建模 3 文档编写 4 需求验证 24 1 需求获取 需求获取的目的 清楚地理解所要解决的问题完整地获取用户需求 25 需求分析的方法 构造分析模型 需求分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型 解决目标系统的 做什么 的问题 2 分析建模 当前系统 目标系统 物理模型 物理模型 逻辑模型 逻辑模型 做什么 导出 26 3 文档编写 把描述目标系统的逻辑模型的文档称为软件需求说明书 软件需求分析说明书是软件需求分析阶段最主要的文档 4 需求验证 软件需求必须通过需求分析的验证复审 确保需求说明可作为软件设计和最终系统验收的依据 这个环节的参与者有用户 管理部门 软件设计 编码和测试人员 需求验证是软件需求分析任务完成的标志 27 3 2需求获取的方法 需求获取的方式 1 访谈和会议 2 市场调查 3 访问用户和用户领域的专家 4 考察现场 跟踪现场业务流程 5 开发人员和用户共同组成联合小组 28 3 3分析建模 3 3 1结构化分析模型3 3 2分析建模的描述工具 29 3 3 1结构化分析模型 结构化分析模型主要由数据流图 DFD图 表示 该模型核心 DD DataDictionary数据字典 这是系统所涉及的各种数据对象的总和 如下图所示 从数据字典出发主要通过以下三种图来构建该模型的数据模型 功能模型和行为模型 E R图 数据模型 DFD图 功能模型 STD图 行为模型 31 结构化分析模型 系统所涉及的各种数据对象的总和 描述数据对象间的关系 它代表软件的数据模型 图中每个数据对象的属性均可用数据对象说明来描述 指明系统中的数据是如何流动和变换的 以及描述使数据流进行变换的功能 每个功能的描述写在处理说明 PSPEC 中 指明系统在外部事件的作用下将会如何动作 表明系统的各种状态以及各种状态间的变迁 32 E R图 数据建模 使用E R图 实体关系图 用于描述数据对象间的关系 它构建软件的数据模型 在实体 关系中出现的每个数据对象的属性均可用数据对象说明描述 33 DFD图 功能建模 DFD图 DataFlowDiagram 数据流图 其主要作用是描述系统中数据是如何在流动和变换的 在DFD图中出现的每个功能都会写在加工说明 ProcessSpecification PSPEC 中 它们一起构成系统的功能模型 34 STD图 行为建模 STD图 StatusTransferDiagram 状态 变迁图 用于指明系统在外部事件的作用下将如何动作 表明系统的各种状态及各种状态间的变迁 所有软件控制方面的附加信息包含在控制说明 ControlSpecificationCSPEC 中 它们构成系统的行为模型 35 结构化分析建模的描述工具 数据流图 DFD 功能建模 数据字典 DD 处理说明 ProcessSPECification PSPEC 实体 关系图 E R 数据建模 层次方框图 36 数据流图 DFD 功能建模 数据流图 DataFlowDiagram 简称DFD 是用来描绘软件系统逻辑模型的图形工具 用于描绘数据在系统中流动和处理情况 由数据流 处理 文件 源点 终点组成 图3 6所表示的是数据流图的一般形式 其基本组成如图3 7所示 实例见例3 2 38 它所表达的意思是 数据流x从源点s流出被处理P1变换成数据流Y 处理P1执行时要访问文件F 数据流Y又被处理P2变换成数据流Z 一张简单的数据流图 39 各班学生用书表 例 计算机售书系统的数据流图 40 数据字典 DataDictionary DD DD 用来定义数据库流图中的各个成分的具体含义 数据字典对数据流图中所有出现的元素给出定义数据流图和数据字典共同构成系统的逻辑模型只有数据流图和对数据流图中每个元素的定义放在一起 才能构成系统的规格说明以下将介绍主要的字典条目 数据流 文件 数据项 处理 41 数据字典的内容 有四类条目 词条 数据流 数据项 数据存储 基本处理 全体的定义构成了数据字典 数据流条目描述 对数据流定义 数据项条目描述 对数据定义 数据文件 存储 条目描述 对文件定义 加工逻辑条目描述 对加工处理定义 42 实体 关系图 E R 数据建模 为了把用户的数据要求清楚 准确地描述出来 系统分析员在需求分析模型建立过程中 使用实体 关系图 E R图 来建立数据模型 数据模型包含三种相互关联的信息 实体 数据对象 属性及关系 43 实体 E R图中的实体对应于客观世界中的存在的人或物 又称为数据对象 数据对象可以是 外部实体 如产生或使用信息的任何事物 角色 如学生 教师 单位 如计算机系 会计科 结构 如文件 等 44 属性 属性定义了实体的性质实体可以由一个或多个属性定义为 标识符 用来区分不同的实体 如描述学生可以用 学号 姓名 性别 入学日期 所在系别 学生类别 所在班级等属性 45 关系 客观世界中的事物是相互联系的 如 学生与教师存在教与被教系与学生的管理与被管理的关系 关系有三种不同的类型 一对一 如院长与学院的关系 一对多 如系与学生的关系 多对多 学生与课程间的关系 46 E R图 如下图给出三种关系的示意图 E R图的图形表示 48 E R图 E RDiagram 两个实体之间的关系 现实世界中的任何数据集合 均可用E R图表示 49 多个实体间的关系 50 用E R图表示 学生 实体集及其属性 学生 用E R图表示 关系 的类型 一个 班级 有若干名 学生 一个 学生 只属于一个 班级 从属 51 层次方框图 层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构 树形结构的顶层是一个单独的矩形框 它代表完整的数据结构 下面的各层矩形框代表这个数据的子集 最底层的各个框代表组成这个数据的实际数据元素 不能再分割的元素 系统分析员从对顶层信息的分类开始 沿图中每条路径反复细化 直到确定数据结构的全部细节为止 见下图 用层次方框图描述某计算机公司全部产品的数据结构 53 3 4软件需求说明 软件需求说明 SRSSoftwareRequirementSpecification 又称软件规格说明书 是系统分析人员在需求分析阶段需要完成的文档 是软件需求分析的最终结果 它的作用主要是 作为软件人员与用户之间事实上的技术合同说明 作为软件人员下一步进行设计和编码的基础 作为测试和验收的依据 54 3 4软件需求说明 SRS必须用统一格式的文档进行描述 软件需求说明主要内容包括 引言 任务概述 需求规定 运行环境规定 附录等几部分 55 引言 编写目的 阐明编写需求说明书的目的 指出预期的读者范围 项目范围 待开发的项目名称及项目的开发目的 与项目的应用相关的利益目的及最终目标 项目的委托 开发单位和主管部门 该软件系统与其他系统的关系 定义 列出文档中所用到的专门术语的定义和缩写词的原义 参考资料 包括项目经核准的计划任务书 合同或上级机关的批文 项目开发计划 文档所引用的资料 标准和规范 开出这些资料的作者 编号 发表日期 出自单位或资料来源 56 任务概述 产品概述 描述开发意图 应用目标 作用范围 应向读者说明的有关该项目的开发背景 用户特点 列出本软件最终用户的特点 说明操作人员 维护人员的教育水平和技术水平 条件与限制 对设计系统时对开发者的条件与限制 57 需求规定 对功能的规定 包括内部及外部功能的规定 对性能的规定 包括对精度 时间要求 灵活性 适应性等的规定 对输入输出的规定 包括所有输入输出数据 引用接口及接口控制文件 操作员控制的详细描述 数据管理的规定 包括静态数据 动态数据 数据库 数据字典 数据采集的详细描述 其他专门要求 如安全保密性 可使用性 可维护性 可移植性等 58 运行环境规定 用户界面 如屏幕格式 报表格式 菜单格式 输入输出时间等 设备 对系统硬件的要求描述 软件接口 支持软件描述 故障处理 59 附录 实际的需求说明最好有附录 主要可以描述如格式样本 成本分析 用户调查结果 项目解决的问题描述 特殊的要求等相关信息 如果包含附录 必须指明是不是需求要考虑的部分 60 3 5需求验证 软件需要分析阶段的结果是软件开发项目的重要根据 大量统计数字表明 软件系统中约15 的错误起源于错误的需求 为了提高软件质量 确保软件开发成功 降低软件开发成本 对目标系统提出一组要求后 必须严格验证这需求的正确性 这个环节的参与者有用户 管理部门 软件设计 编码和测试人员 一般说来 应该从下述几个方面进行验证 一致性 现实性 完整性与有效性 61 一致性 所有的软件需求都必须是统一的 任何一条需求不能和其他需求矛盾 用自然语言书写的规格说明书是难于验证的 特别是目标规模大 需求说明书较长的时候 人工复审没有更好的方法进行测试 没有保证的 冗余的 遗漏和不一致的问题可能不容易被发现而被保留下来 为以后的软件设计留下后患 为了克服这困难 人们使用形式化的语言书写软件需求说明书 可以用软件工具验证需求的一致性 62 现实性 指定的需求应该是用现有的硬件技术和软件技术的能够基本实现的 如果超出了现有的技术基础 增加了软件实现的难度 提高软件开发成本 甚至导致软件开发的失败 由此 验证时 应该参照以往开发系统的经验 分析现有的软 硬件实现目标系统的可行性 必要的时候应该采用仿真或性能模拟技术 辅助分析软件需求书的现实性 63 完整性与有效性 需求必须是完整的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论