L-第三章 软件工程课件需求分析

上传人:飞****9 文档编号:132217041 上传时间:2020-05-13 格式:PPT 页数:124 大小:2.09MB
返回 下载 相关 举报
L-第三章 软件工程课件需求分析_第1页
第1页 / 共124页
L-第三章 软件工程课件需求分析_第2页
第2页 / 共124页
L-第三章 软件工程课件需求分析_第3页
第3页 / 共124页
L-第三章 软件工程课件需求分析_第4页
第4页 / 共124页
L-第三章 软件工程课件需求分析_第5页
第5页 / 共124页
点击查看更多>>
资源描述

《L-第三章 软件工程课件需求分析》由会员分享,可在线阅读,更多相关《L-第三章 软件工程课件需求分析(124页珍藏版)》请在金锄头文库上搜索。

1、软件工程 03章需求分析 2 引言1用户描述的可能不是他想要的 对用户的描述每个人有不同的理解 3 引言2 开发人员和用户之间的鸿沟 从前有一家汽车厂 想为年轻人设计一款新车型 企划及设计部讨论了许久始终找不到感觉 于是对25 35岁的年轻人进行问券调查 大伙辛苦了三个月 完成了一万份的调查记录 市场部门摘要了调查内容反映给设计部门 重点 省油 外型酷 颜色鲜艳 马力足等 设计部门有了灵感开始设计 半年过去了 设计部门很得意的把雏型车展示给大伙看 这个时候 CEO 市场部 企划部 都傻眼了 CEO开口说 为什么这车没有 轮子 设计部回答 市场部给的调查报告里 没说要有轮子市场部回说 问卷调查中

2、 顾客没有提到要有轮子企划部生气的说 你们都是白痴啊 汽车要有轮子是基本常识 你们都不知道吗 就这样现场吵翻天了 注 原文地址 4 引言3 做需求要很细 很专业 很有经验 男孩反问 是无声枪么 不是 枪声有多大 80 100分贝 那就是说会震的耳朵疼 是 您确定那只鸟真的被打死啦 确定 鸟里有没有聋子 没有 没有关在笼子里的 没有 旁边树上还有其他鸟 没有 有残疾或饿的飞不动的鸟 没有 算不算怀孕肚子里的小鸟 都是公的 打鸟的人眼里有没有花 没有 有没有傻的不怕死的 都怕死 会不会一枪打死两只以上 不会 所有的鸟都可以自由活动么 完全可以 它们受到惊吓时不会互相撞上 不会 学生满怀信心的回答

3、打死的鸟要是挂在树上没掉下来 那么就剩一只 如果掉下来 就一只不剩 某日老师在课堂上想考考学生们的智商 就问一个男孩 树上有十只鸟 开枪打死一只 还剩几只 5 结论 需求具有主观性 二义性 多变性 模糊性 需求分析要求很专业 很仔细 很有经验 需求分析是确定系统应具备的功能 是其他所有工作的基础 因此非常重要 需求导致整个项目失败占的比例非常大 6 第三章软件需求分析 需求分析的任务与用户沟通获取需求的方法分析建模与规格说明实体一联系图数据规范化状态转换图其他图形工具验证软件需求小结习题 7 教学要求 教学目的 了解需求分析的任务和步骤 评审标准和过程 掌握基本技术 理解需求规格说明书的作用与

4、组成 教学重点 基本技术 需求规格说明书的作用与组成 教学难点 基本技术 8 需求分折简介 软件需求指用户对所开发的软件在功能 性能 环境 可靠性等各方面的要求 需求分析主要回答待开发的系统必须 做什么 并用 需求规格说明书 的形式准确 详细 规范地表达出来 9 注意 需求分析阶段 系统分析员的主要关注点是 做什么 what 不是 怎样做 how 需求分析阶段 系统分析员应该给出软件求规格书 10 3 1需求分析的任务 四项主要任务 1 确定对系统的综合要求2 分析系统的数据要求3 导出系统的逻辑模型4 修正系统开发计划 11 提问并思考 如果你是一个用户 你会对将要开发的软件有哪些要求 12

5、 3 1 1确定对系统的综合要求 功能需求 指定系统必须提供的服务 性能需求 指定系统必须满足的定时约束或容量约束等 可靠性和可用性需求 应定量指定 出错处理需求 指环境错误 非系统本身的错误 接口需求 常见的接口需求 用户接口需求 硬件接口需求 软件接口需求 通信接口需求 13 约束 常见的约束 精度 工具和语言约束 设计约束 应该使用的标准 应该使用的硬件平台 逆向需求 指定系统不应该做什么 将来可能提出的要求 14 3 1 2分析系统的数据要求 提问并思考 如果你是设计者 除了上述需求以外 你觉得还需要得到哪些要求 答 软件系统本质上是信息处理系统 要考虑数据和数据处理的问题 15 对系

6、统数据的分析 建立数据 3 4节 描绘数据结构 3 7节 规范化 3 5节 16 3 1 3导出系统的逻辑模型 用数据流图 实体一联系图 状态转换图 数据字典和主要的处理算法描述这个逻辑模型 3 1 4修正系统开发计划根据在分析过程中获得的对系统的更深入更具体的了解 可以比较准确地估计系统的成本和进度 修正以前制定的开发计划 17 图 软件需求分析的通信途径 分析小组成员主要包括领域专家 系统分析员 客户访谈问题分析与确认 18 与用户沟通的方法 1 访谈2 面向数据流自顶向下求精3 简易的应用规格说明技术4 快速建立软件原型 19 3 2 1访谈 分正式和非正式访谈 可采用调查表形式可使用情

7、景分析技术 20 例 某出版社系统调查表 21 3 2面向数据流自顶向下求精 结构化分析方法的实质 进一步细化可行性研究阶段获得到高层数据流图 包括建立 详细的数据流图 描绘数据在软件系统内从输入移动到输出的过程中所经受到变换 数据字典 定义数据流图中包含的元素 实体关系 ER 图 从用户角度描述数据 IPO图 描述数据流图中处理框的功能和算法 22 面向数据流自顶向下求精过程 23 3 2 3简易的应用规格说明技术 一种面向团队的需求收集法 提倡用户与开发者密切合作 共同标识问题 提出解决方案要素 商讨不同方案并指定基本需求 24 3 2 4快速建立软件原型 快速原形就是快速建立起来的旨在演

8、示目标系统主要功能的可运行的程序 要点 实现用户看得见的功能 省略目标系统 隐含 功能 25 3 2 4快速建立软件原型 建立和修改原型的方法和工具 1 第四代技术 包括众多数据库查询和报表语言 程序和应用系统生成器以及其他非常高级的非过程语言 能快速生成可执行的代码 2 可重用的软件构件 使用一组已有的软件构件 也称为组件 来装配 而不是从头构造 原型 3 形式化规格说明和原型环境 在交互式环境下 用自动工具把基于形式语言的规格说明翻译成可执行的程序代码 26 3 3分析建模与规格说明 3 3 1分析建模什么是模型 为了理解事物而对事物做出的一种抽象 是对事物的一种无歧义的书面描述 模型通常

9、由一组图形符号和组织这些符号的规则组成 27 模型的作用 在建模过程中了解系统 通过抽象降低复杂性 有助于回忆所有的细节 有助于开发小组间的交流 有助于与用户的交流 为系统的维护提供文档 28 例 结构化分析方法建立的需求模型 结构化分析 StructuredAnalysis SA 是面向数据流进行分析的方法 主要建立以下几种模型 实体关系图 Entity RelationshipDiagram E R图 来创建数据模型 描述系统中所有重要的数据对象 数据流图 DataFlowDiagram DFD 用来创建功能模型 描述了信息流和数据转换 状态转换图 State TransitionDiag

10、ram STD 用来创建行为模型 描述系统状态如何响应外部事件 而进行转换 29 例 面向对象分祈方法 OOA 所建立的摸型 对象模型 Objectmodel 定义实体 描述系统的静态结构 定义 对谁做 动态模型 Dynamicmodel 描述对象之间的交互过程 规定 何时做 功能模型 Functionalmodel 描述内部数据的处理 指明系统应 做什么 30 软件需求规格说明 软件需求规格说明书 是需求分析阶段最主要的文档 对目标进行完善和补充 并写出完整的需求说明 为消除自然语言中可能存在的不一致 歧义 含糊 不完整及抽象层次混乱等问题 有主张用形式化方法描述用户对软件系统的需求 例 G

11、B8567 88计算机软件产品开发文件编制指南 31 结构化分析方法 StructuredAnalysis SA 面向数据流进行需求分析的方法适合于数据处理类型软件的需求分析 32 结构化分折模型的组成结构 33 3 4实体一联系图 实体一联系图 E一R图 描绘系统的数据关系 分析实体一联系有助于对业务或系统数据组成的理解和交互 ER图中包含了实体 数据对象 关系和属性三种基本成分一 基本概念 1 实体 客观世界中存在的 可区分的事物 属性 实体或数据对象所具有的性质 34 数据对象 实体 对软件必须理解的复合信息的表示 所谓复合信息是指具有一系列不同性质或属性的事物 因此仅有单个值的事物 例

12、如姓名 不是数据对象 数据对象可能是 一个外部实体 例如生产或消费信息的任何事物 一个事物 例如一份报告 一次行为 例如一个电话呼叫 一个事件 例如一次警报 一个角色 例如教师 一个组织 例如学校教务处 一个地点 例如图书馆 一个结构 例如一个目录 35 一 基本概念 2 联系 客观事物之间的联系 联系分为三种 一对一 1 1 班级和班长一对多联系 1 N 班级和学生 系与教师 学生与宿舍多对多联系 M N 课程与学生 教师和课程 学生和学会二 E一R图的结构三种基本元素 36 例 教学E R图 37 例 仓库 职工 零件和供应商的ER图 38 三 如何建立实体一联系图 1 在需求收集的过程中

13、 列出应用软件或业务过程涉及到的所有 事物 将其演化成数据对象 2 一次考虑一个对象 定义这个对象和其他对象之间是否存在连接 3 如果存在连接 应创建一个或多个关系 4 对每一个关系 确定其关联类型 5 重复步骤 2 到步骤 4 直到定义了所有关系 6 定义每个实体的属性 7 形式化并复审实体关系图 8 重复步骤 1 到 7 直到数据建模完成 39 2 4数据流图 DFD DataFlowDiagram 描述数据处理过程的工具 通过图形的方法 从数据传递和数据处理的角度 刻画数据流从输入到输出的移动变换过程 数据流三个重要属性 数据流名字 数据组成 流向 40 2 4 1符号 1 说明 用图形

14、符号以黑盒子形式描绘组成系统的每个部件 程序 文档 数据库 人工过程等 表达数据在系统各部件之间流动的情况 41 符号 2 42 例1 描述银行取款过程的数据流图 43 应该注意的几个问题 适当地命名 详见教材p45 数据存储 代表数据静止状态 数据流 代表数据的运动状态 注意数据流与控制流的区别 通常数据流图中忽略出错处理 打开或关闭文件之类的事务处理 若数据的源点和终点相同 则应该有两个箭头和这个数据源 终 点相连 或重复画一个源 终 点 44 数据流图的层次结构 对于大型系统 往往采用自顶向下逐层分解的方法 用分层数据流图表示所有数据流和加工 对任何一个数据流图来说 它的上层图为父图 在

15、它的下一层的图为子图 45 分层数据流图 46 说明 在多层数据流图中 顶层流图仅包含一个数据处理 它代表被开发系统 它的输入流是该系统的输入数据 输出流是系统所输出数据底层流图是指其数据处理不需再做分解的数据流图 它处在最底层中间层流图则表示对其上层父图的细化 它的每一数据处理可能继续细化 形成子图 47 注意的原则 1 数据流图上所有图形符号只限于前述四种基本图形元素 数据流图的主图必须包括前述四种基本元素 缺一不可 数据流图的主图上的数据流必须封闭在外部实体之间 每个数据处理至少有一个输入数据流和一个输出数据流 在数据流图中 需按层给数据处理框编号 编号表明该处理所处层次及上下层的亲子关

16、系 48 注意的原则 2 规定任何一个数据流子图必须与它上一层的一个数据加工对应 两者的输入数据流和输出数据流必须一致 此即父图与子图的平衡 可以在数据流图中加入物质流 帮助用户理解数据流图 图上每个元素都必须有名字 数据流图中不可夹带控制流 初画时可以忽略琐碎的细节 以集中精力于主要数据流 49 例2 结构化分析方法步骤示例 商场业务处理系统假设某商场的经营业务 商场进货时 先发订货单给供应商 供应商收到订货单 将商品发给商场 商场货到付款 供应商收款后 将收据发给商场 当顾客到商场采购商品时 先下购物订单 商场查询库存中是否有此种商品 若有则发货给顾客 若没有 则向供应商订货 货到之后再销售给顾客 顾客收到货物之后付款 商场开收据给顾客 商场对货物的管理方面要求知道每种货物详细的销售情况 50 分析业务流程 订货过程 51 分析业务流程 采购过程 52 第一步 绘制顶层数据流图 1 基本思想 任何计算机系统都是有若干个数据源 终 点加上一个事务处理组成 首先从问题的描述中提取数据流图中的源 终 点 数据处理 数据流和数据存储四种成份 分析源 终 点 分析数据处理 分析数据流和数据存

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 经营企划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号