2.2 问题定义和可行性分析

在我们着手做任何一项工作之前,必须明确该工作的性质、任务,并制订完成任务的计划,这是非常有必要的。同样,对于软件产品的开发,也应该解决好类似的问题,即明确该软件产品开发的任务以及完成任务的价值,从而制订出能够完成任务的计划。

问题定义和可行性研究是制订软件系统计划的第一步。在软件工程中,把这一步称为计划时期。在瀑布模型中,软件生命周期的第一个时期是计划时期,包括问题定义和可行性研究两个阶段。

我们的目标是开发有用的软件,需要明确3个W,即:Who——为谁设计、用户是谁,What——要解决哪些问题,Why——为什么要解决这些问题。