1
 软件工程
1.5.1.1 3.1.1 可行性研究的任务

3.1.1 可行性研究的任务

我们知道并不是所有问题都有简单明显的解决办法的,事实上,许多问题不可能在预定的系统规模之内解决。如果问题没有可行的解,那么花费在这项开发工程上的时间、资源、人力和费用都是无谓的浪费。

可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。必须记住,可行性研究的目的不是解决问题,而是确定问题是否值得去解。怎样达到这个目的呢?当然不能靠主观猜想,而只能靠客观分析。必须分析几种主要的可能解法的利弊,从而判断原定的系统目标和规模是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度。因此,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行系统分析和设计的过程。

首先需要进一步分析和澄清问题定义。在问题定义阶段要初步确定规模和目标,如果是正确的就进一步加以肯定,如果是错误的就应该及时改正;如果对目标系统有任何约束和限制,就必须清楚地把它们列举出来。

在澄清了问题定义之后,分析员应该导出系统的逻辑模型,然后从系统逻辑模型出发,探索若干种可供选择的主要解法(系统实现方案)。对每种解法都应该仔细研究它的可行性,一般说来,至少应该从下述三方面研究每种解法的可行性。

(1)技术可行性,使用现有的技术能实现这个系统吗?

(2)经济可行性,这个系统的经济效益能超过它的开发成本吗?

(3)操作可行性,系统的操作方式在这个用户组织内行得通吗?

分析员应该为每个可行的解法制定一个粗略的实现进度。

当然,可行性研究最根本的任务是对以后的行动方针提出建议。如果问题没有可行的解,分析员应该建议停止这项开发工程,以避免时间、资源、人力和费用的浪费;如果问题值得求解,分析员应该推荐一个较好的解决方案,并且为工程制订一个初步的计划。

可行性研究需要的时间长短取决于工程的规模,一般说来,可行性研究的成本只是预期工程总成本的5%~10%。