IEEE软件工程标准术语表将需求定义为:
- 用户所需的解决某个问题或达到某个目标所要具备的条件或能力。
- 系统或系统组件为符合合同、标准、规范或其他正式文档而必须满足的条件或必须具备的能力。
- 上述第一项或第二项中定义的条件和能力的文档表述。
RUP将需求定义为:
需求描述了系统必须满足的情况或提供的能力,可以直接来自客户需要,也可以来自合同、标准、规范或其他有正规约束力的文档。
1、需求捕获、需求分析、系统分析
从软件过程全局看,需求分析是承上启下的阶段,上乘愿景,下接设计。
需求捕获是获取知识的过程,采集者必须理解用户所从事的工作,并且了解用户和客户希望软件系统在哪些方面帮助他们。
需求分析是挖掘和整理知识的过程,在已掌握知识的基础上进行。致力于搞清楚软件系统要“做什么”。
系统分析是针对系统所要面临的问题,搜集相关资料,以了解产生问题的原因所在,进而提出解决问题的方法与可行的逻辑方案,以满足系统的需求,实现预定的目标。已经开始涉及“怎么做”的问题。
- 需求捕获、需求分析以及系统分析是相互伴随、交叉进行的。
- 需求分析与系统分析不能混淆。
2、需求成果
2.1、需求捕获
需求采集卡,包括项目、时间、地点、
需求类型、需求编号、用户关注度
描述、背景或原因、相关材料、
提出者/受访者、记录者/采访者
需 求 采 集 卡 |
|||||
项目 |
|
时间 |
|
地点 |
|
需求类型 |
|
需求编号 |
|
用户关注度 |
|
描述 |
|
||||
背景或原因 |
|
||||
相关材料 |
|
||||
提出者/受访者 |
|
记录者/采访者 |
|
2.2、需求分析
应交付一份明确、规范的需求定义--《软件需求规格说明书》(SRS&#