很多人认为,软件项目的范围就是软件需求。至少在我经历过的项目中,有很多发起人、相关方、团队成员都是这么认为的,甚至有很多项目经理也是这么认为的。其实这也是软件开发项目,或者说是IT类项目的一个特点。大部分人认为,软件项目就是开发一个软件,软件开发完成了,这个项目就完成了。项目范围就是软件功能,软件功能就是根据需求实现的,所以软件项目的范围不就是软件需求吗?看上去似乎逻辑清晰,但其实不是这样。
明确这个问题之前,我们先要弄清楚什么是项目范围。先来看看《活用PMBOK指南》(第6版)中是怎么定义的,在项目环境中,“范围”这一术语有两种含义。
(1)产品范围:某项产品、服务或成果具有的特征和功能。
(2)项目范围:为交付具有规定特性与功能的产品、服务或成果而必须完成的工作。项目范围有时也包括产品范围。
当我们把这个概念放进软件项目,刚好可以发现,其实产品范围就是软件项目的交付物,而项目范围就是为了要完成这个交付物而必须完成的一系列工作。
通俗地说,软件项目最终要开发出一套可运行的软件,形式有很多,比如一种桌面应用,word、excel、ppt在Windows系统常用的软件,也有很多视频网站,如优酷、爱奇艺、腾讯,还有我们天天在手机上使用的App,如微信、钉钉、美团,还有很多操作系统本身,如Windows系统、Android系统等。这些我们就可以称之为通过成功的项目管理,最终产生的交付物,那么在软件开发项目中,就是前面说的这些软件。
开发软件要有对这个软件最终各方面的描述,我们把这份文档称为需求文档,专业的叫法是软件需求规格说明书。说完了软件需求,我们再说一说软件项目的范围。其实,在IT项目中,说清楚了需求,项目的范围就完成了一大半,毕竟做什么、怎么做说清楚了,可交付成果也已经明确了。一般情况下,还有对可交付成果的总体描述、验收标准、除外责任、制约因素、假设条件、验收计划、用户培训等。以上组成了项目范围说明书的主要内容。