结构化的需求分析与建模.ppt_第1页
结构化的需求分析与建模.ppt_第2页
结构化的需求分析与建模.ppt_第3页
结构化的需求分析与建模.ppt_第4页
结构化的需求分析与建模.ppt_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

第四章结构化分析与建模 一 4 1需求建模概述与结构化建模 4 2数据模型与ER图 本章结构 4 3功能模型 数据流图 4 4行为模型 状态转换图 4 5数据字典 4 6判定表和判定树 化学制品跟踪系统 的项目开发组正在进行第一次软件需求规格说明的评审 参加者有Dave 项目经理 Lori 需求分析者 Helen 高级程序员 Ramesh 测试专家 Tim 化学制品的产品代表者 还有Roxanne 化学制品仓库的产品代表者 Tim开始说 我阅读过整个软件需求规格说明 大部分都符合我的需求 但是有几个部分我很难同意 我不能确信在化学制品请求过程中 我们是否确定了这些步骤 Ramesh又补充说 当一个请求通过系统时 我很难想象用于覆盖该请求状态变化的所有测试用例 我发现许多关于状态变化的需求散布在整个软件需求规格说明中 但我无法确定是否有一些需求遗漏了或存在不一致性 引言与要点 Roxanne有一个类似的问题 当我阅读了如何真正请求一种化学药品时 我感到困惑 她说 单个需求是能感觉到的 但我难以想像我所要完成的步骤顺序 在各评审员提出其它相关的问题后 Lori做出了总结 看来软件需求规格说明似乎没有完全告诉我们对于理解系统所需的各个方面 也不能确保我们没有错过一个需求或不犯任何错误 我将画一些图来帮助我们想像这些需求 并看一下能否澄清这些问题域 谢谢你们的反馈意见 引言与要点 相关基础概念 所谓模型 就是为了理解事物而对该事物做出的一种抽象 在软件工程中的模型由一组图形符号和组织这些符号的规则组成 经过对需求获取的资料进行分析 并以此建立起来的模型称之为需求分析模型 引言与要点 需求分析模型主要描述软件目标系统的数据信息 处理功能 用户界面及运行的外部行为 它并不涉及软件的具体实现细节 模型帮助分析员理解系统的信息 功能和行为 模型成为评审焦点 模型也是设计基础 建模充分体现了 分而治之 这一古老而有效的概念 把复杂而困难的问题分解细化后 逐个解决它们 建模能有效地将需求映射到软件结构中 BK 第四章结构化分析与建模 一 4 1需求建模概述与结构化建模 4 2数据模型与ER图 本章结构 4 3功能模型 数据流图 4 4行为模型 状态转换图 4 5数据字典 4 6判定表和判定树 需求分析阶段模型的作用 帮助系统分析员理解系统的信息 功能和行为 使得需求分析任务更加容易实现 结果更加系统化 它是评审焦点 是确定SRS完整性 一致性和精确性的重要依据 它是设计的基础 是软件要素的表示视图 从客户需求到分析模型 认真听取客户陈述他们的需求之后 分析人员就可以挑选出关键字 将这些关键字转换成特定的模型元素 表4 1列出了一些可能的映射 表4 1映射示例 一位化学家或化学品仓库保管人员可以提出获得一种或多种化学制品的请求 一是提供一个存在于化学制品仓库清单上的化学品容器 二是向外界供应商提交一份订购新的化学品的订单 提出请求的人在准备其请求时 必须能够通过在线查找供应商目录表找到特定的化学品 从准备请求直到执行请求或取消请求期间 系统必须跟踪每一个化学品请求的状态 系统还必须跟踪每个化学品的历史记录 从公司收到化学品直到它完全被用尽或丢弃为止 化学制品跟踪系统示例 结构化分析的模型 结构化分析是一种建立模型的活动 创建描述信息内容和信息流的模型 依据功能和行为对系统进行划分 建模时 需要关注系统最复杂和风险最大的部分 以及最容易产生歧义和不确定性的部分 结构化分析的模型 结构化分析模型图 4 2数据模型与ER图 数据模型包括三种互相关联的信息 数据对象 描述数据对象的属性和数据对象相互连接的关系 1 数据对象是一个外部实体 一个事物 如报告 一次行为 如电话呼叫 或事件 一个警报 一个角色 如销售人员 一个组织单元 如销售部门 人事部门 一个地点 如仓库 或一个结构 如文件 4 2数据模型与ER图 如 人或车可以被认为是数据对象 因为它们可以用一组属性来定义 数据对象描述 包括了数据对象及其所有的属性 数据模型只封装了数据 没有对数据的操作 2 属性属性定义了数据对象的性质 数据对象有许多属性 应选择一组本质的属性 例如 教师的属性有教工号 姓名 性别 职称 专业 研究方向 担任课程 住址 电话等 如果设计 教学管理系统 关心与教学有关的属性 排除与教学无关的属性 3 关系数据对象是相互关联的 如人可以 拥有 车 拥有即它们间的一种关系 实体和实体之间的关系被抽象为联系 联系分为 1 一对一 1 1 一个丈夫只能有一个妻子 2 一对多 1 N 一个母亲有多个孩子 3 多对多 M N 侄子与叔叔 实体 关系图概念 最常使用的数据模型是实体 关系图 Entity RelationshipDiagram ERD 实体用单名词来命名 在实体 关系图中用矩形框来表示实体 实体 关系图中的菱形框代表关系 它确定了一对实体之间在逻辑上和数量上的连接 关系的命名要能描述关系的本质 主键 能唯一地标识该实体的属性或属性组 ERD的图例 ERD的实例 图4 2 1 某校课程管理系统 的实体联系图 某一学校拟开发一课程管理系统 假设系统主要由老师 课程 学生和教室等实体组成 各实体的属性组成如下 学生 学号 姓名 性别 系别 专业 课程 课程编号 课名 学时 学分 教师 编号 姓名 职称 性别 系别 教室 代号 名称 楼号 房号 地点 请将实体教室和老师 课程 学生的属性补充进上页ER图 课程管理系统ER图编制说明 图4 2 2 化学制品跟踪系统 的实体联系图 4 3功能模型 数据流图 数据流模型把功能分解方法运用到系统分析上 把复杂的问题进一步分解到更详细的层次 数据流模型很适用于事务处理系统和其他功能密集型应用程序 数据流图四种基本图形符号 数据流图有四种基本图形符号 画数据流程图的原则 数据流程图上所有图形符号必须是前面所述的四种基本元素 数据流程图的主图必须含有前面所述的四种基本元素 缺一不可 数据流程图上的数据流必须封闭在外部实体之间 外部实体可以是一个 也可以是多个 4 3功能模型 数据流图 画数据流程图的原则 处理过程至少有一个输入数据流和一个输出数据流 任何一个数据流子图必须与它的父图上的一个处理过程对应 两者的输入数据流和输出数据流必须一致 即所谓 平衡 数据流程图上的每个元素都必须有名字 4 3功能模型 数据流图 为方便储户 某银行拟开发计算机储蓄系统 储户携带存折前去银行办理取款手续 他应把存折和填好的取款单一并交给银行工作人员检验 工作人员需核对账目 发现存折有效性问题 取款单填写问题或是存折 账卡与取款单不符等问题时均应报告储户 在检验通过的情形下 银行则应将取款信息登记在存折和账卡上 并通知付款 根据付款通知给储户付款 飞机机票预订系统DFD图 下图是一个飞机机票预订系统的数据流图 它反映的功能是 旅行社把预订机票的旅客信息 姓名 年龄 单位 身份证号码 旅行时间 目的地等 输入机票预订系统 系统为旅客安排航班 打印出取票通知单 附有应交的账款 旅客在飞机起飞的前一天凭取票通知单交款取票 系统检验无误 输出机票给旅客 画数据流程图的基本步骤 把一个系统看成一个整体功能 明确信息的输入和输出 找到系统的外部实体 一旦找到外部实体 则系统与外部世界的界面就可以确定下来 系统的数据流的源点和终点也就找到了 找出外部实体的输入数据流和输出数据流 在图的边上画出系统的外部实体 画数据流程图的基本步骤 从外部实体的输入流 源 出发 按照系统的逻辑需要 逐步画出一系列逻辑处理过程 直至找到外部实体处理所需的输出流 形成数据流的封闭 将系统内部数据处理又分别看做整体功能 其内部又有信息的处理 传递 存储过程 如此一级一级地剖析 直到所有处理步骤都很具体为止 数据流图的层次结构 为了表达数据处理过程的数据加工情况 需要采用层次结构的数据流图 按照系统的层次结构进行逐步分解 并以分层的数据流图反映这种结构关系 能清楚地表达和容易理解整个系统 分层的数据流图 数据流图的层次结构 在多层数据流图中 顶层流图仅包含一个加工 它代表被开发系统 它的输入流是该系统的输入数据 输出流是系统所输出数据 底层流图是指其加工不需再做分解的数据流图 它处在最底层 中间层流图则表示对其上层父图的细化 它的每一加工可能继续细化 形成子图 数据流图的层次结构 经过初步的需求分析 得到系统功能要求 1 监视病员的病症 血压 体温 脉搏等 2 定时更新病历 3 病员出现异常情况时报警 4 随机地产生某一病员的病情报告 医院病房监护系统 监视病情 更新病历 系统功能要求 1 监视病员的病症 血压 体温 脉搏等 2 定时更新病历3 病员出现异常情况时报警 4 随机地产生某一病员的病情报告 顶层 医院病房监护系统 病员日志 医院病房监护系统顶层DFD图 第二层 加工 中央监视 分解 医院病房监

温馨提示

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

评论

0/150

提交评论