范围层定义
定义项目范围就是在做这两件事
- 这是一个有价值的过程
- 同时还能产生有价值的产品
过程的价值在于,当整个事情还处于假设阶段的时候,它能迫使你去考虑潜在的冲突和产品中一些粗略的点。我们能确定现在解决哪些事情,而哪些必须迟点解决。简单来说,就是判断需求的优先级。
产品的价值在于,被定义的产品给了整个团队一个参考点,明确了项目中要完成的全部工作,它也提供了一门用于讨论这件事情的共同语言。定义好你要求能保证在设计过程中不出现模棱两可的情况。简单来说,就是明确需求范围。
确定好需求后,我们还要确定时间。通常不能推出这个产品的真正原因,不会是需求有问题,产品有问题,通常是时间不够明确。我们需要有工作流程,日程安排,里程碑。确定好这三者以后,我们可以看得到项目的进度,在复盘时也能了解是哪部分出现了差错。
确定好这三者以后,我们需要一个文档将其记录下来。如果详细地记录下你正在建设的内容,每一个人就会知道这个项目的目标是什么,什么时候将达成这个目标。
许多功能听上去很诱人,但是他们对于项目战略目标并不是必备的。当这些想法出现的时候,用一个文档记录它们,可以为你提供一个评估这些想法的架构,帮助你了解它们如何(或是否)能满足你当初承诺要做的事情。简单的说,就是拿个文档记录下你的想法,再评估是否是和你战略目标(需求)一致的,它们的优先级如何。(当然这一步是最早的时候,还没确定好具体功能的时候做的)把想法收集起来,找到符合你长期规划的需求,这才是真正的价值所在。
如果不能有意识地管理你的要求,你将会陷入可怕的范围蠕动。每增加一个小需求看似没有增加太多的工作量,但是当它汇聚到一起的时候,整个项目就会失去控制地膨胀,结束时间遥遥无期,而且预算也不可避免的朝着分崩离析飞奔而去。
功能和内容
在范围层,我们讨论战略层面的抽象问题——“我们为什么要开发这个产品(目标和需求)”转向另一个问题——“我们要开发的是什么?”。
范围层被“功能型产品”和“信息型产品”分成了两个部分。功能型产品需要考虑功能规格,即哪些应当被当成软件产品的功能以及相应的组合。信息型产品需要考虑内容需求,这属于编辑和营销推广的传统领域。
在软件开发中,范围层确定的是全部的功能需求和功能规格。通常我们会使用功能需求规格文档(原型)来表示功能需求和功能规格。
内容需求常常伴随这功能的需求(比如你要发布视频,必须有播放视频相关的功能)。现在真正的网站内容通常是通过一个内容管理系统(CMS)来进行管理的(简单的说就是一个管理网站内容的后台)。内容管理系统必备的功能取决于你将要管理的内容的性质。