软件工程需求分析PPT课件
合集下载
(完整版)《软件需求分析》PPT课件

4.1.1 需求分析的特点
需求分析虽处于软件开发过程的开始阶段,但它对 于整个软件开发过程以及软件产品质量是至关重要 的。需求分析是指开发人员要进行细致的调查分析, 准确理解用户的要求。将用户非形式的需求陈述转 化为完整的需求定义,再由需求定义转换到相应的 形式功能规约的过程。
2020/4/10
2020/4/10
广东工业大学计算机学院
11
(4)用户界面需求:用户操纵界面的形式、输入 /输出数据格式、数据传递的载体等。
(5)系统的可靠性、安全性、可移植性和可维护 性等方面的需求。
2020/4/10
广东工业大学计算机学院
12
2. 导出软件的逻辑模型
分析人员根据前面获取的需求资料,要进行一致性 的分析检查,在分析、综合中逐步细化软件功能, 划分成各个子功能。同时对数据域进行分解,并分 配到各个子功能上,以确定系统的构成及主要成分。 最后要用图文结合的形式,建立起新系统的逻辑模 型。
2020/4/10
广东工业大学计算机学院
10
1. 问题明确定义
(1)功能需求:指所开发的软件必须具备什么样 的功能。
(2)性能需求:要开发软件的技术性能指标,如 访问时延、存储容量、运行时间等限制。
(3)环境需求:软件运行时所需要的硬件的机型、 外设;软件的操作系统、开发与维护工具和数据库 管理系统等要求。
2020/4/10
广东工业大学计算机学院
5
3. 交流障碍
需求分析涉及人员较多,系统分析员要与软件系统 用户、问题领域专家、需求工程师和项目管理员等 进行交流。但是这些人具备不同的背景知识,处于 不同的角度,扮演不同角色,造成了相互之间交流 的困难。
2020/4/10
软件工程PPT4

MiniLibrary:参与者
确定场景
确定参与者和场景的关键在于理解业务领域,这需 要理解用户的工作过程和系统的范围。 确定场景的问题
–参与者希望系统执行的任务是什么? –参与者访问什么信息?谁生成数据? –参与者需要通知系统的哪些外部变化?(时间和频率) –系统需要通知参与者什么事件?(时间)
MiniLibrary:借书
场景名称:借书 参与者实例:Bob,图书管理员;John,普通读者 事件流程:
1.John向Bob提供个人的注册号、所借图书的编号和书名等; 2.Bob在系统中查询该图书是否在图书馆; 3.Bob登记John的借书记录,并将图书借给John。
其他流程:
1.图书已被借出或者不存在: Bob告诉John无法借出。 2.John不是合法注册用户: Bob 请求John注册后在借书。
功能需求
功能需求
–描述系统应该提供的功能或服务,通常涉及用户或外部系 统与该系统之间的交互,一般不考虑系统的实现细节。
举例:MiniLibrary
–用户可以从图书资料库中查询或者选择其中的一个子集。 –系统可以提供适当的浏览器供用户阅读电子文献。 –用户每次借阅图书应该对应一个唯一的标识号,它被记 录到用户的帐户上。
内容提纲
软件需求
软件需求
①用户解决问题或达到目标所需的条件或能力。 ②系统或系统部件要满足合同、标准、规范或其它正式规定文 档所需具有的条件或能力。 ③一种反映上面①或②所描述的条件或能力的文档说明。
对定义的理解
–软件需求的概念涵盖了用户角度(系统的外部行为)和开 发人员角度(系统的内部特性)两个方面,其中的关键在于 需求一定要文档化。
软件工程需求分析(精品PPT)

•确定被开发软件系统的系统元素
•将功能和信息结构分配到这些系统元素中 •需求分析的任务
•深入描述软件的功能和性能 •确定软件设计的约束和软件同其它系统元素的接口细节
•定义软件的其它有效性需求
第四页,共七十七页。
需求(xūqiú)分析的具体任务
•需求分析阶段的具体任务:
•确定对系统的综合要求
•系统功能要求
第四章 析根底
软件工程 需求分 (ruǎn jiàn ɡōnɡ chénɡ)
第一页,共七十七页。
第四章 需求分析 根底 (fēnxī)
• 需求(xūqiú)分析的任务与原那么〔重点〕 • 需求分析的任务 • 需求分析的过程 • 软件需求分析的原那么 • 初步需求获取技术 • 需求建模〔重点〕 • 问题抽象、问题分解与多视点分析 • 支持需求分析的快速原型技术 • 需求规格说明书
第二十六页,共七十七页。
教务管理系统调查分析过程 1、认真学习教务管理方面的知识,重点掌握其中
的名词和术语 2、收集目前教务管理方面资料和软件,了解其特
•了解系统的需求 •软件开发是系统开发的一局部,仔细分析研究系统的需求 规格说明,对软件的需求获取是很有必要的
第十六页,共七十七页。
✓需求调查对象
对组织的高层管理者,进行组织管理目标或经营方 针等组织战略问题的调查
对中层的管理者,进行全部业务流的调查 对业务工作人员,进行详细业务信息的调查
✓市场调查 了解市场对待开发软件有什么样的要求;了解市场上 有无与待开发软件类似的系统
第十页,共七十七页。
需求(xūqiú)分析流程
第十一页,共七十七页。
软件需求(xūqiú)分析的原那么
1、需要能够表达和理解问题的信息域和功能域 信息域应包括:
•将功能和信息结构分配到这些系统元素中 •需求分析的任务
•深入描述软件的功能和性能 •确定软件设计的约束和软件同其它系统元素的接口细节
•定义软件的其它有效性需求
第四页,共七十七页。
需求(xūqiú)分析的具体任务
•需求分析阶段的具体任务:
•确定对系统的综合要求
•系统功能要求
第四章 析根底
软件工程 需求分 (ruǎn jiàn ɡōnɡ chénɡ)
第一页,共七十七页。
第四章 需求分析 根底 (fēnxī)
• 需求(xūqiú)分析的任务与原那么〔重点〕 • 需求分析的任务 • 需求分析的过程 • 软件需求分析的原那么 • 初步需求获取技术 • 需求建模〔重点〕 • 问题抽象、问题分解与多视点分析 • 支持需求分析的快速原型技术 • 需求规格说明书
第二十六页,共七十七页。
教务管理系统调查分析过程 1、认真学习教务管理方面的知识,重点掌握其中
的名词和术语 2、收集目前教务管理方面资料和软件,了解其特
•了解系统的需求 •软件开发是系统开发的一局部,仔细分析研究系统的需求 规格说明,对软件的需求获取是很有必要的
第十六页,共七十七页。
✓需求调查对象
对组织的高层管理者,进行组织管理目标或经营方 针等组织战略问题的调查
对中层的管理者,进行全部业务流的调查 对业务工作人员,进行详细业务信息的调查
✓市场调查 了解市场对待开发软件有什么样的要求;了解市场上 有无与待开发软件类似的系统
第十页,共七十七页。
需求(xūqiú)分析流程
第十一页,共七十七页。
软件需求(xūqiú)分析的原那么
1、需要能够表达和理解问题的信息域和功能域 信息域应包括:
工学软件需求第8课软件需求分析概述课件

23
第8章 软件需求分析概述
1 需求分析的根本任务 建立分析模型
建模的目的 通过软件建模,帮助我们按照实际情况或按照我们
的需要的模式对系统进行可视化,提供一种详细说明系 统的结构或者行为的方法,给出一个指导系统构造的模 板。对所有做出的决定实施文档化。
24
第8章 软件需求分析概述
1 需求分析的根本任务
此种情况出现时,可能会影响需求分析人员建立全面的理 解,因此需要采用自底向上的方法进行提炼。例如将每个业务 事件中的类进行提炼,抽取出共性的部分,建立针对整个系统 的全局领域模型。
19
第8章 软件需求分析概述
1 需求分析的过程中消除需求矛盾
(3)消除矛盾
在分析过程中,显然可能会发现有些需求是相互矛盾 的、冲突的,由于是将收集的信息放在一个预先定义的 结构中发现这些矛盾的,因此对矛盾的影响范围会有直 观的了解,也能够知道它影响那些层面。寻找相应的人 员,通过进一步需求获取来消除矛盾。
20
第8章 软件需求分析概述
1 需求分析的根本任务 建立分析模型
❖ 建立分析模型 – 将复杂的系统分解成为简单的部分以及它们之间的联系, 确定本质特征 – 和用户达成对信息内容的共同理解 – 分析的活动主要包括识别、定义和结构化,它的目的是 获取某个可以转换为知识的事物的信息
❖ 创建解决方案 – 将一个问题分解成独立的、更简单和易于管理的子问题来帮助寻找 解决方案 – 创建解决方案的过程是创造性的 – 帮助开发者建立问题的定义,并确定被定义的事物之间的逻辑关系 这些逻辑关系可以形成信息的推理,进而可以被用来验证解决方案 的正确性。
7
第8章 软件需求分析概述
1 需求分析的根本任务
15
第8章 软件需求分析概述
第8章 软件需求分析概述
1 需求分析的根本任务 建立分析模型
建模的目的 通过软件建模,帮助我们按照实际情况或按照我们
的需要的模式对系统进行可视化,提供一种详细说明系 统的结构或者行为的方法,给出一个指导系统构造的模 板。对所有做出的决定实施文档化。
24
第8章 软件需求分析概述
1 需求分析的根本任务
此种情况出现时,可能会影响需求分析人员建立全面的理 解,因此需要采用自底向上的方法进行提炼。例如将每个业务 事件中的类进行提炼,抽取出共性的部分,建立针对整个系统 的全局领域模型。
19
第8章 软件需求分析概述
1 需求分析的过程中消除需求矛盾
(3)消除矛盾
在分析过程中,显然可能会发现有些需求是相互矛盾 的、冲突的,由于是将收集的信息放在一个预先定义的 结构中发现这些矛盾的,因此对矛盾的影响范围会有直 观的了解,也能够知道它影响那些层面。寻找相应的人 员,通过进一步需求获取来消除矛盾。
20
第8章 软件需求分析概述
1 需求分析的根本任务 建立分析模型
❖ 建立分析模型 – 将复杂的系统分解成为简单的部分以及它们之间的联系, 确定本质特征 – 和用户达成对信息内容的共同理解 – 分析的活动主要包括识别、定义和结构化,它的目的是 获取某个可以转换为知识的事物的信息
❖ 创建解决方案 – 将一个问题分解成独立的、更简单和易于管理的子问题来帮助寻找 解决方案 – 创建解决方案的过程是创造性的 – 帮助开发者建立问题的定义,并确定被定义的事物之间的逻辑关系 这些逻辑关系可以形成信息的推理,进而可以被用来验证解决方案 的正确性。
7
第8章 软件需求分析概述
1 需求分析的根本任务
15
第8章 软件需求分析概述
软件工程需求分析课件

当描绘循环运行过程时,通常并不关心循 环是怎样启动的。 当描绘单程生命期时,需要表明初始状态 和最终状态。
43
例题:
办公室复印机的工作过程大致如下: 未接到复印命令时处于闲臵状态,一旦接到复 印命令则进入复印状态,完成一个复印命令规定的 工作后又回到闲臵状态,等待下一个复印命令; 如果执行复印命令时发现缺纸,则进入缺纸状 态,发出警告,等待装纸,装满纸后进入闲臵状态, 准备接受复印命令;如果复印时发生卡纸故障,则 进入卡纸状态,发出警告等待维修人员排除故障, 故障排除后回到闲臵状态。
系统对事件的响应,既可以是做一个(或一系 列)动作,也可以是仅仅改变系统本身的状态 ,还可以是既改变状态又做动作。
40
初态: 终态: 中间状态:
状态名 状态变量
活动表
事件:
事件名(参数表)[条件]/动作表达式
状态转换:
41
状态图中使用的主要符号
42
状态图可以表示系统循环运行过程,也可 以表示系统单程生命期。
时就应该再次订货。
27
再次阅读可知:
事务有类型,需要根据不同情况处理;---处理事务
对各类事务要更改库存信息;对出库事务当 库存量少于临界值时,要产生订货信息。
订货信息不同于订货报表,报表要有严格的 格式。------产生报表
28
库存清单(信息)
订货 订货报表 CRT终端 事务 2 1 采购员 (仓库管 处理事务 信息 产生报表 (部) 理员) 订 货 信 息 订货信息 订 货 信 息
11
系统流程图(4)
12
系统流程图(5)
13
数据流图(1)
一.数据流图的作用
43
例题:
办公室复印机的工作过程大致如下: 未接到复印命令时处于闲臵状态,一旦接到复 印命令则进入复印状态,完成一个复印命令规定的 工作后又回到闲臵状态,等待下一个复印命令; 如果执行复印命令时发现缺纸,则进入缺纸状 态,发出警告,等待装纸,装满纸后进入闲臵状态, 准备接受复印命令;如果复印时发生卡纸故障,则 进入卡纸状态,发出警告等待维修人员排除故障, 故障排除后回到闲臵状态。
系统对事件的响应,既可以是做一个(或一系 列)动作,也可以是仅仅改变系统本身的状态 ,还可以是既改变状态又做动作。
40
初态: 终态: 中间状态:
状态名 状态变量
活动表
事件:
事件名(参数表)[条件]/动作表达式
状态转换:
41
状态图中使用的主要符号
42
状态图可以表示系统循环运行过程,也可 以表示系统单程生命期。
时就应该再次订货。
27
再次阅读可知:
事务有类型,需要根据不同情况处理;---处理事务
对各类事务要更改库存信息;对出库事务当 库存量少于临界值时,要产生订货信息。
订货信息不同于订货报表,报表要有严格的 格式。------产生报表
28
库存清单(信息)
订货 订货报表 CRT终端 事务 2 1 采购员 (仓库管 处理事务 信息 产生报表 (部) 理员) 订 货 信 息 订货信息 订 货 信 息
11
系统流程图(4)
12
系统流程图(5)
13
数据流图(1)
一.数据流图的作用
软件工程PPT课件第3章 软件需求分析

–多个来回
6
软件需求分析的通信途径
7
分析建模
结构化分析模型 面向对象分析模型 分析模型描述工具
DFD、DD和PSPEC(加工规约)
CFD、CSPEC(控制规约)和STD E-R图 用例图,对象-关系图,对象-行为图
8
结构化分析模型
数据对象 说明 E-R图 加工说明 DFD图
44
数据流图
数据流图(DFD)是一种图形化技术,它描绘信息
流和数据从输入移动到输出的过程中所经受的变换 。 在数据流图中没有任何具体的物理部件,它只是 描绘数据在软件中流动和被处理的逻辑过程。 数据流图是系统逻辑功能的图形表示,即使不是 专业的计算机技术人员也容易理解它,因此是分析 员与用户之间极好的通信工具。 此外,设计数据流图时只需考虑系统必须完成的 基本逻辑功能,完全不需要考虑怎样具体地实现这 些功能。
2
需求分析的结构化分析方法准则
(1) 必须理解并描述问题的信息域,根 据这条准则应该建立数据模型。 (2) 必须定义软件应完成的功能,这条 准则要求建立功能模型。 (3) 必须描述作为外部事件结果的软件 行为,这条准则要求建立行为模型。 (4) 必须对描述信息、功能和行为的模 型进行分解,用层次的方式展示细节。
40
分析模型的元素
数据字典(DD):模型核心(中心库) E-R图(ERD): 数据流图(DFD)
指明数据在系统中移动时如何被变换; 描述对数据流进行变换的功能;
DFD中每个功能的描述包含在加工规约 (小说明)。
状态变迁图(STD)
指明作为外部事件的结果,系统将如何 动作。
41
3.4.2 数据建模
4
需求分析的任务和步骤
软件工程培训课件(PPT)

编码效率技巧:在保证代 码质量的前提下,应该尽 可能提高编码效率,减少 不必要的重复工作。
单元测试的方法与工具
测试用例设 计
执行测试流 程
测试工具选 择
测试结果分 析和报告
集成测试的方法与工具
测试方法:自 下而上、自上
而下
测试工具: JUnit、
Te s t N G 、 Selenium等
测试目的:检 测模块之间的 接口是否正确
方法:采用版本控制、变更 控制、状态报告等手段进行
管理
感谢观看
汇报人:
软件风险管理的方法与策略
风险识别:识别潜在的风险和 问题
风险评估:评估风险的大小和 影响
风险应对:制定应对策略和措 施
风险监控:持续监控风险的变 化和进展
软件配置管理的基本概念与方法
目的:确保软件产品的完整 性、一致性和可追溯性
范围:包括文档、程序、数 据等所有软件工程产品
定义:软件配置管理是一种 标识、组织和控制修改的技 术
质量控制:通过测试、统计等方 法,对软件开发过程中的质量进 行监控和评估,及时发现和解决 问题。
添加标题
添加标题
添加标题
添加标题
质量保证:通过一系列的质量保 证活动,如代码审查、测试、文 档编写等,确保软件质量的稳定 性和可靠性。
工具和技术:使用一些工具和技 术来辅助软件质量管理,如代码 审查工具、测试工具、项目管理 工具等。
编写要求:清晰明了,易于理解,方便查阅,及时更新
编写目的:方便用户和系统管理员使用和维护系统
06
软件工程管理
软件项目计划与进度安排
定义项目目标和范围 确定关键路径和里程碑 分配资源和工作任务 监控和控制项目进度
《软件工程》PPT课件

设计方法
E-R图、范式化、反范式化等
优化策略
索引优化、查询优化、存储优化等
04
软件测试与质量保证
测试策略与计划制定
确定测试目标
明确测试的目的和范围,确保测试工作有针对 性。
制定测试计划
根据测试目标,制定详细的测试计划,包括测 试资源、时间表、风险管理等。
选择测试方法
根据软件特点和测试需求,选择合适的测试方法,如黑盒测试、白盒测试、灰 盒测试等。
《软件工程》PPT课件
目录
• 引言 • 软件需求分析 • 软件设计与开发 • 软件测试与质量保证 • 软件维护与演化 • 软件工程管理与实践
01
引言
软件工程概述
软件工程定义
软件工程是一门研究计算机软件开发、 维护和管理的科学,旨在通过系统方 法、工具和技术来提高软件开发的效 率和质量。
软件工程的目标
B
C
D
持续改进与优化
在项目执行过程中,不断总结经验教训, 持续改进和优化项目管理流程和方法。
迭代开发与交付
通过短周期的迭代开发和交付,不断收集 用户反馈,及时调整产品方向和开发计划。
THANKS
感谢观看
回归测试
02
03
缺陷分析
在修复缺陷后,进行回归测试以 验证修复效果,确保软件质量得 到提升。
对缺陷进行统计分析,找出缺陷 产生的原因和规律,为改进软件 开发过程提供依据。
质量保证措施
代码审查 通过代码审查,检查代码是否符合编码
规范和设计要求,提高代码质量。
质量度量与监控 建立质量度量体系,对软件质量进行 度量和监控,及时发现和解决问题。
在给定成本和时间内,设计、实现和 维护软件系统。同时,软件工程也致 力于开发高质量、高可靠性和易于维 护的软件产品。
需求分析过程ppt课件.ppt

功能建模的基础
系统或子系统对数据实施的变换、变换的功能
提供信息分析的信息
状态-变迁图 行为建模的基础
系统的行为模式(称“状态”)以及状态变迁的方 式
结构化的分析模型
最外层 数据对象描述、加工规格说明PSPEC、控制规格说
明CSPEC 数据对象
表示实体-关系图中每个数据对象的属性 加工规格说明PSPEC
“一对多”(1:N) 一个对象A关联多个对象B,反之,一个对象B关联一个对
象A。如,父子。
“多对多”(N:M) 一个对象A关联多个对象B,反之,一个对象B关联多个对
象A。如,叔侄。
教师-学生-课程E-R 图
性别 职称 职务
姓名
教工号
教师
1
教
N
姓名 性别
系
学号
年级
学生
M
课程
N
学
成绩
课程号 课名 学时 学分
问题有关的属性。
数据对象描述
例 汽车销售管理问题
的数据对象描述表. 汽车属性
制造商 型号 标识码 车体类型 颜色
关系 数据对象按照某种关系相互连接 用对象-关系偶描述数据对象 关系的命名及内涵应反映描述的问题 删除与问题无关的关系
数据对象、属性与关系
例 汽车销售问题的数据对象、属性与关系
如果软件产品含有大量人机交互、可视输出、 或者涉及复杂的算法,应采用快速原型技术。
对于复杂问题,可对某些子问题,尤其是用户 界面,使用快速原型技术。
4.1.6 需求规格说明与评审
产生需求规格说明并进行评审。
需求规格说明应成为开发过程必须遵循的指导原 则。
ห้องสมุดไป่ตู้
需求规格说明
软件工程-需求分析

➢随着结构的精细化,层次方框图对数据结构也描绘得越来越详 细,这种模式非常适合于需求分析阶段的需要。
3.7 其他图形工具
3.7.1 层次方框图
3.7 其他图形工具
3.7.2 Warnier图
➢法国计算机科学家Warnier提出了表示信息层次结构的另外一 种图形工具。
➢Warnier图也用树形结构描绘信息,但是这种图形工具比层次 方框图提供了更丰富的描绘手段。
如,宽度)不是数据对象。 ➢ 可以由一组属性来定义的实体都可以被认为是数据对象。 ➢ 在一个系统中,数据对象彼此间是有关联的。
➢ 例:仓库管理系统(零件),销售系统(某一类货品)
3.4 实体-联系图(ER 图)
3.4.2 属性
➢ 属性定义了数据对象的性质。 ➢ 把一个或多个属性定义为“标识符”,当我们希望找到数据对象的一个实
➢用Warnier图可以表明信息的逻辑组织。 ➢它可以指出一类信息或一个信息元素是重复出现的,也可以表
示特定信息在某一类信息中是有条件地出现的。
3.7 其他图形工具
3.7.2 Warnier图
花括号区分数 据结构的层次
操作系统(P1)
软件产品
系统软件
⊕
编译程序(P2)
软件工具
编辑程序(P3) 测试驱动程序(P4)
› 4.建立联合分析小组
› 联合小组要制定小组工作计划和进度安排,确定专门的记录 员和负责人。同时还要选定一种简洁、准确、易于理解的符 号,作为共同交流的语言。
3.2 需求分析获取的常用方法
› 5.快速原型法 › 过程:快速建立起一个系统原型,用来演示系统功能。
用户对原型进行评估,根据用户的需求来修改原型,把 修改后的系统原型再次交给用户评估,如此循环多次, 直到获得用户最终准确的需求。 › 快速原型法在使用时应注意以下几点:
3.7 其他图形工具
3.7.1 层次方框图
3.7 其他图形工具
3.7.2 Warnier图
➢法国计算机科学家Warnier提出了表示信息层次结构的另外一 种图形工具。
➢Warnier图也用树形结构描绘信息,但是这种图形工具比层次 方框图提供了更丰富的描绘手段。
如,宽度)不是数据对象。 ➢ 可以由一组属性来定义的实体都可以被认为是数据对象。 ➢ 在一个系统中,数据对象彼此间是有关联的。
➢ 例:仓库管理系统(零件),销售系统(某一类货品)
3.4 实体-联系图(ER 图)
3.4.2 属性
➢ 属性定义了数据对象的性质。 ➢ 把一个或多个属性定义为“标识符”,当我们希望找到数据对象的一个实
➢用Warnier图可以表明信息的逻辑组织。 ➢它可以指出一类信息或一个信息元素是重复出现的,也可以表
示特定信息在某一类信息中是有条件地出现的。
3.7 其他图形工具
3.7.2 Warnier图
花括号区分数 据结构的层次
操作系统(P1)
软件产品
系统软件
⊕
编译程序(P2)
软件工具
编辑程序(P3) 测试驱动程序(P4)
› 4.建立联合分析小组
› 联合小组要制定小组工作计划和进度安排,确定专门的记录 员和负责人。同时还要选定一种简洁、准确、易于理解的符 号,作为共同交流的语言。
3.2 需求分析获取的常用方法
› 5.快速原型法 › 过程:快速建立起一个系统原型,用来演示系统功能。
用户对原型进行评估,根据用户的需求来修改原型,把 修改后的系统原型再次交给用户评估,如此循环多次, 直到获得用户最终准确的需求。 › 快速原型法在使用时应注意以下几点:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息科学与技术学院 闵笛
软件工程
§3.1.2分析系统的数据要求
❖ 提问并思考:
❖
如果你是设计者,除了上述需求以外,
ห้องสมุดไป่ตู้
你觉得还需要得到哪些要求?
❖
答:软件系统本质上是信息处理系统,
要考虑数据和数据处理的问题。
信息科学与技术学院 闵笛
软件工程
对系统数据的分析
❖ 建立数据(3. 4 节实体—联系图) ; ❖ 描绘数据结构(3. 7 节其他图形工具) ; ❖ 数据结构规范化( 3. 5 节)
软件工程
图:软件需求分析的通信途径
❖ 分析小组成员主要包括领域专家、系统分析 员;
❖ 客户访谈 ❖ 问题分析与确认
信息科学与技术学院 闵笛
软件工程
3.2 与用户沟通获取需求的方法
❖ 1、访谈 ❖ 2、面向数据流自顶向下求精 ❖ 3、简易的应用规格说明技术 ❖ 4、快速建立软件原型
信息科学与技术学院 闵笛
信息科学与技术学院 闵笛
软件工程
提问并思考:
❖
如果你是一个用户,你会对将要开发
的软件有哪些要求?
信息科学与技术学院 闵笛
软件工程
§3.1.1确定对系统的综合要求
❖ ① 功能需求。指定系统必须提供的服务。
❖ ② 性能需求。指定系统必须满足的定时约束或容 量约束等。
❖ ③ 可靠性和可用性需求。应定量指定。
信息科学与技术学院 闵笛
软件工程
注意
❖ ①需求分析阶段,系统分析员的主要关注点 是“做什么( what ) ” ,不是“怎样做 ( how)”;
❖ ②需求分析阶段,系统分析员应该给出软件 需求规格说明书。
信息科学与技术学院 闵笛
软件工程
§3.1需求分析的任务
❖ 四项主要任务: ❖ 1 、确定对系统的综合要求 ❖ 2 、分析系统的数据要求 ❖ 3 、导出系统的逻辑模型 ❖ 4 、修正系统开发计划
信息科学与技术学院 闵笛
软件工程
整体概况
+ 概况1
您的内容打在这里,或者通过复制您的文本后。
概况2
+ 您的内容打在这里,或者通过复制您的文本后。
概况3
+ 您的内容打在这里,或者通过复制您的文本后。
信息科学与技术学院 闵笛
软件工程
教学要求
❖ 教学目的:了解需求分析的任务和步骤、评 审标准和过程;掌握基本技术,理解需求规 格说明书的作用与组成。
信息科学与技术学院 闵笛
软件工程
面向数据流自顶向下求精过程
信息科学与技术学院 闵笛
软件工程
§3.2.3简易的应用规格说明技术
❖ 一种面向团队的需求收集法,提倡用户与 开发者密切合作,共同标识问题,提出解决 方案要素,商讨不同方案并指定基本需求。
❖ 具体过程见教材 P60 面 ❖ 提问:此方法将产生什么样的产品?
❖ 教学重点:基本技术、需求规格说明书的作 用与组成。
❖ 教学难点:基本技术。
信息科学与技术学院 闵笛
软件工程
需求分析简介
❖
软件需求指用户对所开发的软件在功
能、性能、环境、可靠性等各方面的要求。
❖ 需求分析主要回答待开发的系统必须 “做什么”,并用 《 需求规格说明书 》 的 形式准确、详细、规范地表达出来。
软件工程
§3.2.2 面向数据流自顶向下求精
❖ 结构化分析方法的实质。 ❖ 进一步细化可行性研究阶段获得到高层数
据流图。包括建立:
详细的数据流图,描绘数据在软件系统内从输入 移动到输出的过程中所经受到变换;
数据字典:定义数据流图中包含的元素; 实体关系( ER )图:从用户角度描述数据; IPO 图:描述数据流图中处理框的功能和算法。
程序和应用系统生成器以及其他非常高级的非过程 语言。能快速生成可执行的代码。 ❖ (2)可重用的软件构件。使用一组已有的软件构件 (也称为组件)来装配(而不是从头构造)原型。 ❖ (3)形式化规格说明和原型环境。在交互式环境下, 用自动工具把基于形式语言的规格说明翻译成可执 行的程序代码。
信息科学与技术学院 闵笛
软件工程
第三章 软件需求分析
❖ 3 . 1 需求分析的任务 ❖ 3 . 2 与用户沟通获取需求的方法 ❖ 3 . 3 分析建模与规格说明 ❖ 3 . 4 实体-联系图 ❖ 3 . 5 数据规范化 ❖ 3 . 6 状态转换图 ❖ 3 . 7 其他图形工具 ❖ 3 . 8 验证软件需求 ❖ 3 . 9 小结
信息科学与技术学院 闵笛
软件工程
§3.2.4快速建立软件原型
❖ 快速原形就是快速建立起来的旨在演示目标 系统主要功能的可运行的程序。
❖ 要点:
实现用户看得见的功能,省略目标系统“隐含” 功能。
❖ 具有“快速”和“容易修改”两大特性。
信息科学与技术学院 闵笛
软件工程
§3.2.4快速建立软件原型
❖ 建立和修改原型的方法和工具: ❖ (1)第四代技术。包括众多数据库查询和报表语言、
软件工程
§3.2.1 访谈
❖ 分正式和非正式访谈。
可采用调查表形式 可使用情景分析技术
信息科学与技术学院 闵笛
软件工程 例:某出版社系统调查表
编号
提出问题
1 您在哪个部门工作?每日都处理哪些文件、数据、报表?
2 出版业务流程是什么? 3 工作中手工处理特别麻烦的事情是什么? 4 手工处理有什么问题解决不了?影响效率的问题有哪些? 5 您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法? 6 您的部门需要成本核算和统计的内容有哪些? 7 您的部门采用计算机管理工作情况如何? 8 如何改进业务流程使之更合理? 9 哪些问题是目前传统手工方法根本无法解决的? 10 出版社计算机管理信息系统需要解决什信么息问题科?学与技术学院 闵笛
信息科学与技术学院 闵笛
软件工程
§3.1.3 导出系统的逻辑模型
❖
用数据流图、实体一联系图、状态转
换图、数据字典和主要的处理算法描述这个
逻辑模型。
❖ § 3.1.4 修正系统开发计划
❖
根据在分析过程中获得的对系统的更
深入更具体的了解,可以比较准确地估计系
统的成本和进度,修正以前制定的开发计划。
信息科学与技术学院 闵笛
❖ ④ 出错处理需求。指环境错误,非系统本身的错 误。
❖ ⑤ 接口需求。常见的接口需求:用户接口需求; 硬件接口需求;软件接口需求;通信接口需求。
❖
信息科学与技术学院 闵笛
软件工程
❖ ⑥ 约束。常见的约束:精度;工具和语言约束;
设计约束;应该使用的标准;应该使用的硬件平台。
❖ ⑦逆向需求。指定系统不应该做什么。 ❖ ⑧将来可能提出的要求。
软件工程
§3.1.2分析系统的数据要求
❖ 提问并思考:
❖
如果你是设计者,除了上述需求以外,
ห้องสมุดไป่ตู้
你觉得还需要得到哪些要求?
❖
答:软件系统本质上是信息处理系统,
要考虑数据和数据处理的问题。
信息科学与技术学院 闵笛
软件工程
对系统数据的分析
❖ 建立数据(3. 4 节实体—联系图) ; ❖ 描绘数据结构(3. 7 节其他图形工具) ; ❖ 数据结构规范化( 3. 5 节)
软件工程
图:软件需求分析的通信途径
❖ 分析小组成员主要包括领域专家、系统分析 员;
❖ 客户访谈 ❖ 问题分析与确认
信息科学与技术学院 闵笛
软件工程
3.2 与用户沟通获取需求的方法
❖ 1、访谈 ❖ 2、面向数据流自顶向下求精 ❖ 3、简易的应用规格说明技术 ❖ 4、快速建立软件原型
信息科学与技术学院 闵笛
信息科学与技术学院 闵笛
软件工程
提问并思考:
❖
如果你是一个用户,你会对将要开发
的软件有哪些要求?
信息科学与技术学院 闵笛
软件工程
§3.1.1确定对系统的综合要求
❖ ① 功能需求。指定系统必须提供的服务。
❖ ② 性能需求。指定系统必须满足的定时约束或容 量约束等。
❖ ③ 可靠性和可用性需求。应定量指定。
信息科学与技术学院 闵笛
软件工程
注意
❖ ①需求分析阶段,系统分析员的主要关注点 是“做什么( what ) ” ,不是“怎样做 ( how)”;
❖ ②需求分析阶段,系统分析员应该给出软件 需求规格说明书。
信息科学与技术学院 闵笛
软件工程
§3.1需求分析的任务
❖ 四项主要任务: ❖ 1 、确定对系统的综合要求 ❖ 2 、分析系统的数据要求 ❖ 3 、导出系统的逻辑模型 ❖ 4 、修正系统开发计划
信息科学与技术学院 闵笛
软件工程
整体概况
+ 概况1
您的内容打在这里,或者通过复制您的文本后。
概况2
+ 您的内容打在这里,或者通过复制您的文本后。
概况3
+ 您的内容打在这里,或者通过复制您的文本后。
信息科学与技术学院 闵笛
软件工程
教学要求
❖ 教学目的:了解需求分析的任务和步骤、评 审标准和过程;掌握基本技术,理解需求规 格说明书的作用与组成。
信息科学与技术学院 闵笛
软件工程
面向数据流自顶向下求精过程
信息科学与技术学院 闵笛
软件工程
§3.2.3简易的应用规格说明技术
❖ 一种面向团队的需求收集法,提倡用户与 开发者密切合作,共同标识问题,提出解决 方案要素,商讨不同方案并指定基本需求。
❖ 具体过程见教材 P60 面 ❖ 提问:此方法将产生什么样的产品?
❖ 教学重点:基本技术、需求规格说明书的作 用与组成。
❖ 教学难点:基本技术。
信息科学与技术学院 闵笛
软件工程
需求分析简介
❖
软件需求指用户对所开发的软件在功
能、性能、环境、可靠性等各方面的要求。
❖ 需求分析主要回答待开发的系统必须 “做什么”,并用 《 需求规格说明书 》 的 形式准确、详细、规范地表达出来。
软件工程
§3.2.2 面向数据流自顶向下求精
❖ 结构化分析方法的实质。 ❖ 进一步细化可行性研究阶段获得到高层数
据流图。包括建立:
详细的数据流图,描绘数据在软件系统内从输入 移动到输出的过程中所经受到变换;
数据字典:定义数据流图中包含的元素; 实体关系( ER )图:从用户角度描述数据; IPO 图:描述数据流图中处理框的功能和算法。
程序和应用系统生成器以及其他非常高级的非过程 语言。能快速生成可执行的代码。 ❖ (2)可重用的软件构件。使用一组已有的软件构件 (也称为组件)来装配(而不是从头构造)原型。 ❖ (3)形式化规格说明和原型环境。在交互式环境下, 用自动工具把基于形式语言的规格说明翻译成可执 行的程序代码。
信息科学与技术学院 闵笛
软件工程
第三章 软件需求分析
❖ 3 . 1 需求分析的任务 ❖ 3 . 2 与用户沟通获取需求的方法 ❖ 3 . 3 分析建模与规格说明 ❖ 3 . 4 实体-联系图 ❖ 3 . 5 数据规范化 ❖ 3 . 6 状态转换图 ❖ 3 . 7 其他图形工具 ❖ 3 . 8 验证软件需求 ❖ 3 . 9 小结
信息科学与技术学院 闵笛
软件工程
§3.2.4快速建立软件原型
❖ 快速原形就是快速建立起来的旨在演示目标 系统主要功能的可运行的程序。
❖ 要点:
实现用户看得见的功能,省略目标系统“隐含” 功能。
❖ 具有“快速”和“容易修改”两大特性。
信息科学与技术学院 闵笛
软件工程
§3.2.4快速建立软件原型
❖ 建立和修改原型的方法和工具: ❖ (1)第四代技术。包括众多数据库查询和报表语言、
软件工程
§3.2.1 访谈
❖ 分正式和非正式访谈。
可采用调查表形式 可使用情景分析技术
信息科学与技术学院 闵笛
软件工程 例:某出版社系统调查表
编号
提出问题
1 您在哪个部门工作?每日都处理哪些文件、数据、报表?
2 出版业务流程是什么? 3 工作中手工处理特别麻烦的事情是什么? 4 手工处理有什么问题解决不了?影响效率的问题有哪些? 5 您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法? 6 您的部门需要成本核算和统计的内容有哪些? 7 您的部门采用计算机管理工作情况如何? 8 如何改进业务流程使之更合理? 9 哪些问题是目前传统手工方法根本无法解决的? 10 出版社计算机管理信息系统需要解决什信么息问题科?学与技术学院 闵笛
信息科学与技术学院 闵笛
软件工程
§3.1.3 导出系统的逻辑模型
❖
用数据流图、实体一联系图、状态转
换图、数据字典和主要的处理算法描述这个
逻辑模型。
❖ § 3.1.4 修正系统开发计划
❖
根据在分析过程中获得的对系统的更
深入更具体的了解,可以比较准确地估计系
统的成本和进度,修正以前制定的开发计划。
信息科学与技术学院 闵笛
❖ ④ 出错处理需求。指环境错误,非系统本身的错 误。
❖ ⑤ 接口需求。常见的接口需求:用户接口需求; 硬件接口需求;软件接口需求;通信接口需求。
❖
信息科学与技术学院 闵笛
软件工程
❖ ⑥ 约束。常见的约束:精度;工具和语言约束;
设计约束;应该使用的标准;应该使用的硬件平台。
❖ ⑦逆向需求。指定系统不应该做什么。 ❖ ⑧将来可能提出的要求。