软件工程第三章课件详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3
在软件生命期的每个阶段中,分析 阶段是面向“问题”的,它主要是对用 户的业务活动进行分析,明确在用户的 业务环境中,软件系统应该“做什么”。
4
需求分析的任务
➢ 确定对系统的综合要求
1.确定系统的功能要求
提出系统必须完成的全部所有功能
2.确定系统的性能要求
(1)系统的响应时间
(2)系统需要的存储容量
(3)后援存储器容量、系统重新启动
(4)系统的安全性和可靠性
3.确定系统的运行要求
(1)支持系统运行的软件环境
(2)工具软件和系统软件
(3)支持系统运行的硬件环境
(4)外存储器、通信接口、输入和输出
4.确定系统的扩充要求
5
➢ 分析系统的数据要求
建立数据模型(层次方框图、Warnier图)
➢ 导出系统的逻辑模型
户与最终用户提供必要需求信息
7
(2)分析与综合
从信息流和信息结构出发,逐步细化所有的软件功能, 找出系统各元素之间的联系、接口特性和设计上的约束, 分析它们是否满足功能要求。
(3)书写需求分析文档
▪ 软件需求说明书 ▪ 数据要求说明书 ▪ 初步的用户手册 ▪ 修改、完善与确定软件开发实施计划
8
(4)需求分析的评审
10
需求分析是指在需求开发的过程中,对所获取 的各种需求信息进行分析,消除错误、刻画细节等。 确保需求文档能正确反映用户的真实意图。
常见的需求分析方法有问答分析和建模分析两 类
问答分析比较适合用户需求调查阶段,而建模 分析比较适合产品需求定义阶段
10
问答分析法
自问自答或者“研讨”
问答分析最重要的问题是“是什么”和“为什么”
第3章 需求分析
3.1 需求分析的任务
3.2 与用户沟通获取需求的方法
3.3 分析建模与规格说明
3.4 实体-联系图
3.5 数据规范化
3.6 状态转换图
3.7 其他图形工具
3.8 验证软件需求
3.9 小结
1
为什么要进行需求分析
在需求阶段修复一个错误的费用是编码阶段 的1/5到1/10,是维护阶段修复费用的1/100到 1/200。因此,我们可以认为,设计错误的修复 费用要远远高于编码错误的修复费用。
通过“分析”,理解用户的各种问题, 通过 “规格说明”把问题表达出来。要求大家: (1)掌握具体的步骤和方法 (2)提高分析问题和解决问题的能力 (3)熟练运用一些图形工具
2
基本概念
➢ 开发过程的两Байду номын сангаас阶段
(1)正确地确定问题 (2)为问题寻找合适的解答
➢ 目的
澄清用户的各种需求
➢ 基本任务
用户和软件人员双方一起来充分理解用户的要 求,并把双方共同的理解明确地表达成一份书面文 档——软件需求规格说明书。
每个需求都应当用陈述句说明“是什么”,如果“是什么”
的内涵不够清晰,则应补充说明“不是什么”。解释“为什 么”是为了加深读者的理解
其他常见问题:
•需求存在二义性吗?
•需求上下文存在矛盾吗?
•需求完备吗?
•需求是必要的吗?
•需求是可以实现的吗?
•需求是可以验证的吗?
•需求的优先级确定吗?
10
建模分析法
需求分析员按计划执行调查 表1:需求信息表格示例:
需求标题
调查方式
调查人
调查对象
时间地点
需求信息记录
在调查需求的同时应进行必要的需求分析,建议采 用“问答分析法”,尽可能确定每个需求的基本要 素,如“是什么”“为什么”等
9
(3)书写用户需求说明书
需求分析员对收集到的所有需求信息进行分析,消除错误, 归纳与总结共性的用户需求。然后按指定的文档模板书写 《用户需求说明书》。 调查过程中获取的需求信息,可以作为《用户需求说明书》 的附件 《用户需求说明书》撰写完毕后,需求分析员应当邀请同行 专家和用户一起评审《用户需求说明书》,尽最大努力使得 《用户需求说明书》能够正确无误的反映用户的真实意愿。 之后才进一步定义产品的需求,产生《产品需求规格说明书》
数据流图 实体— 联系图 状态转换图 数据字典 主要的处理算法
➢ 修正系统开发计划
6
需求分析的过程
需求分析阶段可分为四个过程:调查研究、 分析与综合、书写需求分析的文档和评审。 (1)调查研究
❖ 目的:需求调查的目的是通过各种途径获取用户需求
信息产生《用户需求说明书 》
❖ 角色与职责:需求分析员调查、分析用户的需求,客
它适用于分析大型的数据处理系统,尤其是企 事业管理方面的系统,这个方法通常与设计阶段的 结构化设计方法(SD)衔接起来。
系统定义的目标是否与用户的要求一致 系统需求分析阶段提供的文档资料是否齐全 文档中的所有描述是否完整、清晰、准确反应用户要求 与所有其它系统成分的重要接口是否都已经描述
9
主要步骤(过程): 1. 准备调查 2. 调查与记录 3. 分析需求信息 4. 撰写《用户需求说明书 》 5. 需求确认
9
(1)准备调查
与被调查者取得联系,馔写需求调查计划
9
➢ 访谈
访谈有正式访谈和非正式访谈两种形式。 非正式访谈以一种较自由的形式,交换对问题 的看法,主要是了解问题的性质、需要解决的方案、 所需的人数和能力,关注客户的目标和收益。 正式访谈将根据一些事先准备好的议题全面展 开讨论,得出结论性的意见。
11
(2)调查和记录
9
需求获取的方法
系统分析员建立需求的过程中所遇到的困难
⑴ 分析员与领域专家交流的过程中,容易产生误解
⑵ 大型系统有时会有不同的用户群体,他们往往会提出相 互矛盾的要求,分析员要寻求令所有用户满意的答案很难
⑶ 需求永远不会稳定。系统工程环境一旦改变,用户对软 件的需求也会改变,而且这种需求往往无法预测。
需求分析员起草需求调查问题表
•将调查重点锁定在该问题表内,否则调查工作将变得漫无边际;
•随着调查的深入问题表将不断被细化
确定需求调查的方式 :
•与用户交谈,向用户提问
•参观用户工作流程,观察用户操作
• 发调查问卷
•与同行、专家交谈,听取他们的意见
•分析已存在的同类产品,提取需求
•从行业标准与规则中提取需求etc.
在需求开发过程中,对某些类型的信息, 用图形表示要比用文本表示更有效。
需求建模就是指用图形符号来表示、刻画 需求。
10
➢ 面向数据流自顶向下求精
结构化分析方法(SA)就是面向数据流自顶 向下逐步求精进行需求分析的方法。
“ 结构化分析”(“ Structured Analysis”) 是一个简单实用,使用广泛的方法。
相关文档
最新文档