当前位置:文档之家› 软件工程 需求分析 模板

软件工程 需求分析 模板

31
Warnier图的一个例子 图的一个例子
32
3.7.3 IPO图 图
IPO图是输入,处理,输出图的简称,它 是美国IBM公司发展完善起来的一种图形 工具,能够方便地描绘输入数据,对数 据的处理和输出数据之间的关系. 建议使用一种改进的IPO图(也称为IPO 表),这种图中包含某些附加的信息,在 软件设计过程中将比原始的IPO图更有用.
36
3.8.2 验证软件需求的方法
验证需求的一致性
当需求分析的结果是用自然语言书写的时候, 除了靠人工技术审查验证软件系统规格说明 书的正确性之外,目前还没有其他更好的 "测试"方法. 人们提出了形式化的描述软件需求的方法. 当软件需求规格说明书是用形式化的需求陈 述语言书写的时候,可以用软件工具验证需 求的一致性,从而能有效地保证软件需求的 一致性.
实体-联系图:描绘数据对象及数据对象之 间的关系,是用于建立数据模型的图形. 数据流图:描绘当数据在软件系统中移动时 被变换的逻辑过程,指明系统具有的变换数 据的功能,是建立功能模型的基础. 状态转换图(简称为状态图),指明了作为外 部事件结果的系统行为,是行为建模的基础.
13
3.3.2 软件需求规格说明
34
3.8 验证软件需求
大量统计数字表明,软件系统中15%的 错误起源于错误的需求.应该从下述4个 方面进行验证:
一致性 完整性 现实性 有效性
35
3.8 验证软件需求
(1) 一致性所有需求必须是一致的,任何一条需 求不能和其他需求互相矛盾. (2) 完整性需求必须是完整的,规格说明书应该 包括用户需要的每一个功能或性能. (3) 现实性指定的需求应该是用现有的硬件技术 和软件技术基本上可以实现的.对硬件技术的 进步可以做些预测,对软件技术的进步则很难 做出预测,只能从现有技术水平出发判断需求 的现实性. (4) 有效性必须证明需求是正确有效的,确实能 解决用户面对的问题.
3.3.1 分析建模
更好地理解复杂事物,人们常常采用建立事 物模型的方法. 所谓模型,就是为了理解事物而对事物做出 的一种抽象,是对事物的一种无歧义的书面 描述. 通常,模型由一组图形符号和组织这些符号 的规则组成. 结构化分析实质上是一种创建模型的活动.
12
3.3.1 分析建模
需求分析过程应该建立3种模型,它们分 别是数据模型,功能模型和行为模型.
27
3.7 其他图形工具
3.7.1 层次方框图 3.7.2 Warnier图 3.7.3 IPO图
28
3.7.1 层次方框图
层次方框图用树形结构的一系列多层次的矩形 框描绘数据的层次结构.树形结构的顶层是一 个单独的矩形框,它代表完整的数据结构,下 面的各层矩形框代表这个数据的子集,最底层 的各个框代表组成这个数据的实际数据元素(不 能再分割的元素). 随着结构的精细化,层次方框图对数据结构也 描绘得越来越详细,这种模式非常适合于需求 分析阶段的需要.
23
3.6 状态转换图
事件
事件是在某个特定时刻发生的事情,它是对 ( ) 引起系统做动作或(和)从一个状态转换到另 一个状态的外界事件的抽象. 事件就是引起系统做动作或(和)转换状态的 控制信息.
24
3.6 状态转换图
符号
初态用实心圆表示,终态用一对同心圆(内圆为实心 圆)表示. 中间状态用圆角矩形表示,可以用两条水平横线把 它分成上,中,下3个部分.上面部分为状态的名 称,这部分是必须有的;中间部分为状态变量的名 字和值,这部分是可选的;下面部分是活动表,这 部分也是可选的. 活动表的语法格式如下: 事件名(参数表)/动作表达式
37
3.8.2 验证软件需求的方法
验证需求的现实性
为了验证需求的现实性,分析员应该参照以 往开发类似系统的经验,分析用现有的软, 硬件技术实现目标系统的可能性.必要的时 候应该采用仿真或性能模拟技术,辅助分析 软件需求规格说明书的现实性.
38
3.8.2 验证软件需求的方法
验证需求的完整性和有效性
9
3.2.4 快速建立软件原型
快速原型就是快速建立起来的旨在演示 目标系统主要功能的可运行的程序. 构建原型的要点是,它应该实现用户看 得见的功能(例如,屏幕显示或打印报表), ( ) 省略目标系统的"隐含"功能(例如,修 改文件). 应该具备的第一个特性是"快速".第 二个特性是"容易修改".
10
检验需求的完整性,特别是证明系统确实满足用户 的实际需要,只有在用户的密切合作下才能完成. 使用原型系统是一个比较现实的替代方法,开发原 型系统所需要的成本和时间可以大大少于开发实际 系统所需要的.用户通过试用原型系统,也能获得 许多宝贵的经验,从而可以提出更符合实际的要求. 可以适当降低对接口,可靠性和程序质量的要求, 此外还可以省掉许多文档资料方面的工作,从而可 以大大降低原型系统的开发成本.
2
3 需求分析
所有这些分析方法都遵守下述准则: (1) 必须理解并描述问题的信息域,根据这条准 则应该建立数据模型 数据模型. 数据模型 (2) 必须定义软件应完成的功能,这条准则要求 建立功能模型 功能模型. 功能模型 (3) 必须描述作为外部事件结果的软件行为,这 条准则要求建立行为模型 行为模型. 行为模型 (4) 必须对描述信息,功能和行为的模型进行分 解,用层次的方式展示细节.
联系也可能有属性.
18
某校教学管理ER图 某校教学管理 图
19
3.4.4 实体 联系图的符号 实体-联系图的符号
通常用矩形框代表实体,用连接相关实 体的菱形框表示关系,用椭圆形或圆角 矩形表示实体(或关系)的属性,并用直线 把实体(或关系)与其属性连接起来. ER模型可以作为用户与分析员之间有效 的交流工具.
29
层次方框图的一个例子
30
3.7.2 Warnier图 图
和层次方框图类似,Warnier图也用树形结构 描绘信息,但是这种图形工具比层次方框图提 供了更丰富的描绘手段. 用Warnier图可以表明信息的逻辑组织,也就 Warnier 是说,它可以指出一类信息或一个信息元素是 重复出现的,也可以表示特定信息在某一类信 息中是有条件地出现的.很容易把Warnier图 转变成软件设计的工具.
22
3.6 状态转换图
状态
在状态图中定义的状态主要有:初态,终态 和中间状态.在一张状态图中只能有一个初 态,而终态则可以有0至多个. 状态图既可以表示系统循环运行过程,也可 以表示系统单程生命期.当描绘循环运行过 程时,通常并不关心循环是怎样启动的.当 描绘单程生命期时,需要标明初始状态和最 终状态.
3
3.1 需求分析的任务
3.1.1 确定对系统的综合要求
1. 2. 3. 4. 5. 6. 7. 8. 功能需求 性能需求 可靠性和可用性需求 出错处理需求 接口需求 约束 逆向需求 将来可能提出的要求
4
3.1 需求分析的任务
3.1.2 分析系统的数据要求
分析系统的数据要求通常采用建立数据模型 的方法. 为了提高可理解性,常常利用图形工具辅助 描绘数据结构.常用的图形工具有层次方框 图和Warnier图. 通常需要把数据结构规范化.
25
状态图中使用的主要符号
26
课堂练习
复印机的工作过程大致如下:未接到复印命令 时处于闲置状态,一旦接到复印命令则进入复 印状态,完成一个复印命令规定的工作后又回 到闲置状态,等待下一个复印命令;如果执行 复印命令时发现没纸,则进入缺纸状态,发出 警告,等待装纸,装满纸后进入闲置状态,准 备接收复印命令;如果复印时发生卡纸故障, 则进入卡纸状态,发出警告等待维修人员来排 除故障,故障排除后回到闲置状态. 请用状态转换图描绘复印机的行为.
16
3.4.2 属性
属性定义了数据对象的性质.必须把一 个或多个属性定义为"标识符",也就 是说,当我们希望找到数据对象的一个 实例时,用标识符属性作为"关键 字"(通常简称为"键").
17
3.4.3 联系
数据对象彼此之间相互连接的方式称为 联系,也称为关系.联系可分为以下3种 类型:
一对一联系(1:1) 一对多联系(1:N) 多对多联系(M:N)
3.2.4 快速建立软件原型
通常使用下述3种方法和工具:
(1) 第四代技术:包括众多数据库查询和报表 语言,程序和应用系统生成器以及其他非常 高级的非过程语言. (2) . (3) 形式化规格说明和原型环境
11
3.3 分析建模与规格说明
20
课堂练习
银行计算机储蓄系统的工作过程大致如下:储 户填写的存款单或取款单由业务员键入系统, 如果是存款则系统记录存款人姓名,住址(或电 话号码),身份证号码,存款类型,存款日期, 到期日期,利率及密码(可选)等信息,并印出 存单给储户;如果是取款而且存款时留有密码, 则系统首先核对储户密码,若密码正确或存款 时未留密码,则系统计算利息并印出利息清单 给储户. 请用数据流图描绘本系统的功能,并用实体-联 系图描绘系统中的数据对象.
7
3.2.2 面向数据流自顶向下求精(略) 面向数据流自顶向下求精(
数据是需求分析的出发点. 数据 结构化分析方法就是面向数据流自顶向 下逐步求精进行需求分析的方法.需求 分析的目标之一就是把数据流和数据存 储定义到元素级.
8
3.2.3 简易的应用规格说明技术(略) 简易的应用规格说明技术(
人们研究出一种面向团队的需求收集法, 称为简易的应用规格说明技术.这种方 法提倡用户与开发者密切合作,共同标 识问题,提出解决方案要素,商讨不同 方案并指定基本需求.
通过需求分析除了创建分析模型之外, 还应该写出软件需求规格说明书,它是 需求分析阶段得出的最主要的文档.
14
3.4 实体 联系图 实体-联系图
相关主题