需求分析的概念
需求获取
需求类型:
功能性,非功能性需求
需求获取面临挑战:
- 客户说不清楚需求
- 需求易变性
- 问题的复杂性和对问题空间理解的不完备性与不一致性
需求诱导原则:
- 倾听
- 有准备的沟通
- 需要有人推动
- 最好当面沟通
- 记录所有决定
- 保持通力合作
- 聚焦并协调话题
- 采用图形表示
- 继续前进原则
- 谈判双赢原则
需求分析过程:需求确认,需求变更
需求确认:
获取,提炼,描述,验证
需求提炼:
定义:
核心是建立分析模型;建立多重视图
需求分析模型:
需求规格说明书:
需求分析工作完成的一个基本标志
需求验证:
需求验证技术:
需求变更控制流程:
需求分析的任务&软件需求规格文档编制
需求分析的任务:
1,建立分析模型;
2,编写需求说明
需求规格文档编制:
沟通活动通用任务集:
规格说明的原则:
规格说明的结构:
需求分析的模型%面向过程分析方法(重点
需求分析模型概述:
面向过程分析模型
面相对象分析模型
面相过程分析------结构化分析方法
面向数据流
数据处理类型软件
面向过程需求建模---功能模型---数据流图
1。加工
对数据的操作,编号表示层次分解中的位置
注意事项:
-顶层的加工名就是整个系统的名字
-尽量动宾词组,也可主谓词组
-不是用空洞动词
2。外部实体(数据源点/终点)
位于系统之外的信息提供者或使用者
3。数据流
表示数据和数据流向
注意事项:
-不要把控制流作为数据流
-不要标出激发条件
4。数据存储
表示需要保存的数据流向,如"学生档案"
DFD改进
主要工作:
1)检查正确性
-数据守恒
-数据存储的使用
2)提高易理解性
-简化加工之间的关系,
减少加工间数据流数目
-注意分解均匀,
注意各部分不均匀
-适当的命名,
名字意义明确
3)重新分解
-重新连接成一张图
-把图分成几部分
-重新建立父图
-重新建立各子图
-为所有加工重新命名
检查数据流图的原则
功能键摸------编写数据字典
面向对象的分析方法
什么是对象,
面相对象的软件开发模型
数据模型:类图
行为模型:顺序图,活动图,状态图
功能模型:用例图(重点)
功能模型------用例图
从用户角度,描述系统的场景
参与者,用例,执行关联
用例建模过程:
1)参与者
系统以外的,需要与系统交互的,人,机器
首先确认参与者,每一种参与者有自己用例
2)用例
对一组动作序列的描述,系统执行这组动作序列为参与者产生一个可以观察的结果
怎样获取用例;
用例扩展;
用例之间的关系:
关联,泛化,包含,扩展
1。关联
参与者与用例之间的通信,箭头指向接收方
2。泛化
继承关系,空心箭头指向父用例
3。包含
把一个复杂用例的功能分解成较小的步骤,箭头指向小用例
4。扩展
用例功能的延伸,箭头指向基础用例
包含,扩展的区别: