需求分析的任务:
-
确定对系统的综合要求
-
功能需求
-
性能需求
-
可靠性和可用性需求
-
出错处理需求
-
接口需求
-
约束
-
逆向需求
-
将来可能提出的需求
-
-
分析系统的数据要求
-
导出系统的逻辑模型(数据流图,实体联系图,状态转换图,数据字典和主要的处理算法描述)
-
修正系统开发计划
与用户沟通获取需求的方法:
-
访谈
-
面向数据流自顶向下求精:把数据流和数据存储定义到元素级
-
简易的应用规格说明技术:
-
基于对于用户的访问,开发者和用户分析写出需求,选定会议的时间和地点,选举负责主持会议的协调人。邀请开发者和用户双方组织代表出席会议,并在开会前先把写好的产品需求分发给每位与会者
-
要求每位与会者开会前几天认真审查需求,并且列出作为系统环境组成部分的对象,系统将产生的对象以及系统为了完成工程将使用的对象。此外每位与会者列出操作这些对象或者与这些对象交互的服务,以及约束条件(例如成本,规模,完成日期)和性能标准(例如速度,容量)。并不期望每位与会者列出的内容都毫无纰漏,但希望每个人都能准确表达对系统的认识
-
会议开始后:第一个问题就是是否需要这个新产品,如需要,每位与会者就应该把他们准备号的列表展示出来,把这些列表抄写在卡片上,挂在白板上,进行讨论,在这个阶段禁止批评和争论
-
讨论之后,共同创建一张组合列表,讨论的目标是针对每个议题(对象,服务,约束,性能)都创建一张意见一致的列表。
-
一旦得出意见一致的列表,就把与会者分成更小的小组,分别对列表中项目制定小型规格说明,然后向全体与会者展示,共大家讨论,做精化工作
-
最后得出一个意见一致的标准,由一名或多名与会者根据会议成果起草完整的软件需求规模说明书
-
-
快速建立软件模型
分析建模与规格说明:
-
数据模型:实体—联系模型,描绘数据对象之间的关系
-
功能模型:数据流图描绘数据在系统中移动时被转换的逻辑过程,是功能模型的基础
-
行为模型:状态转换图是行为建模的基础
软件需求规格说明书:需求分析阶段得出的最主要的文档
实体-联系图:数据模型包含(数据对象,数据对象的属性,以及数据对象彼此间的关系)
状态转换图:实心圆代表初态,终态是同心圆,中间态是圆角矩形,分三部分,上面部分为状态名称(必须),中间部分为状态变量的名字和值,底部是活动表
-
状态
-
时间
-
符号
其他图形工具:
-
层次方框图
-
Warnier图
-
IPO图
验证软件需求:
-
一致性:所有需求必须是一致的
-
完整性:需求必须是完整的
-
现实性:需求是现有经过可行性分析认为可以解决的
-
有效性:需求是正确的,是解决用户面对的问题的