一个项目会有很多需求,但这些需求通常并不是有相同优先级的。这就说明,这些需求的价值,有差异。为什么会有这样的差异呢?
我们的需求分析是基于原始需求的。原始需求通常很粗糙,只是客户和市场人员的直接描述,甚至连具体目标都不清楚。基于这样的资料,我们会进行分析,然后猜想用户的真正需求,围绕这些需求将我们能做到的提供给客户。通常,最终需求中会有很多需求点,并不是客户提出的,甚至并不是他们想要的。下面具体分析看看这些需求点吧。
1、客户的真实需求。
每一个软件产品或项目,都是为了解决一个问题或几个问题。这些问题就是这个软件的核心需求。即这个软件就是为了解决这个问题而诞生。这些既是需求,也是软件的目标,所以如果开发前没有目标,那么还是先不要动手的好。
2、客户需求的延伸。
直接需求通常还会衍生出一些间接需求,这些间接需求是为了更好的满足核心需求。甚至没有这些延伸,核心需求就无法完成。比如客户说,我们的系统需要登录。那么我们不但要做登录,还一定需要帐户管理功能。
3、技术性需求。
在具体的应用场合,软件的肯定会有一些技术性限制,比