需求开发在CMMI中有一个专门的过程域来描述,它在项目管理过程中也是很重要的一块,因为后续的设计、开发等都是基于需求。如果需求获取不正确或在需求开发过程中很多功能没有挖掘出来的话,那么在后期选择弥补时,将会造成项目延期以及成本的大幅度增加。
需求开发的目的是产生和分析客户、产品和产品组件需求。需求是客户在项目立项时就有的一个远景,在项目管理过程中它得到不断的变更和细化。客户根据需求会决定在整个项目的需求中,要承办方具体要做些什么,即承办方的任务,承办方具体要实现哪些需求。承办方在明确了需求后,就会开始后期的设计、开发、测试、部署等工作。
需求获取的目的是通过各种途径获取用户的需求信息,由于在实际工作中,大部分客户是无法完整地讲述其需求,因此需求获取是一件看似简单,做起来很难的一件事情。在需求获取过程中,主要需要弄清楚3个问题,即:明确需要获取的信息(What)、明确所获取信息的来源和渠道(Where)和怎样获取需求(How)。下面我们分别对这三点进行讲述。
1、明确需要获取的信息(What)
需求分析师应在需求获取前明确需要获取的信息,以确保在实施需求获取时有的放矢。
1)与问题域相关的背景信息(如业务资料,组织结构图,业务处理流程等);