购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.1.1 可行性研究的目的和内容

1.可行性研究的目的

软件可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得开发。注意,可行性研究的目的不是去开发一个软件系统,而是研究这个项目是否值得去开发,其中的问题是否能够解决。可行性研究实质上是要进行一次简化、压缩了的需求分析和设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。

只要资源和时间不加以限制,所有的项目都是可行的。然而,由于资源缺乏和交付时间限制的困扰,使得软件系统的开发变得比较困难。因此,尽早对软件项目的可行性做出细致而谨慎的评估,是十分必要的。如果在分析阶段尽早发现将来可能在开发过程中遇到的问题,及早做出决定,可以避免大量在人工、金钱、时间上的浪费。

可行性研究的主要任务:首先,需要对系统进行概要的分析研究,初步确定软件项目的规模和目标,确定项目的约束和限制;其次,分析员对系统做简要的需求分析,抽象出该系统的逻辑结构,建立逻辑模型;最后,从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的主要解决方案,并研究每种解决方案的可行性。

2.可行性研究的内容

可行性研究主要从经济可行性、技术可行性、社会可行性、开发方案的选择4个方面进行。

(1)经济可行性。经济可行性是指进行成本/效益分析等,从经济角度判断系统开发是否合算;或者说是进行开发成本的估算和可能取得效益的评估,确定待开发的项目是否值得投资开发。对于大多数系统,一般衡量经济上是否合算,应考虑一个底线。经济可行性研究范围较广,包括成本/效益分析、公司经营长期战略、开发所需的成本和资源、潜在的市场前景。

所谓成本,主要包括购置并安装软件、硬件及有关设备的费用,系统开发费用,系统安装、运行及维护的费用,人员培训费用。而效益是指系统为用户增加的收入或为用户节省的开支,这是有形的效益;给潜在用户心理上造成的影响,这是无形的效益,它可以转化为有形的效益。

(2)技术可行性。技术可行性是指进行技术风险评价,从开发者的技术实力、以往工作基础、问题的复杂性等出发,判断系统开发在时间、费用等限制条件下成功的可能性。技术可行性常常是系统开发过程中最难决断和最关键的问题,因为系统的目标、功能、性能比较模糊。分析人员需要根据用户提出的系统功能、性能要求及实现系统的各种约束和限制条件,建立系统模型,从技术的角度研究系统实现的可行性。由于系统的分析和定义过程与系统的技术可行性评估过程是同时进行的,这时系统目标、功能和性能的不确定性会给技术可行性论证带来许多困难。

技术可行性研究内容主要包括:①开发的风险。在给出的各种限制范围内,能否设计出系统,并实现必需的功能和性能?②资源的有效性。资源包括已有的或可以使用的硬件、软件资源,现有技术人员的技术水平与已有的工作基础。资源分析要考虑可用于开发系统的人员是否存在问题?可用于建立系统的其他资源(硬件、软件)是否具备?③技术方面。相关技术的发展是否能支持这个系统?

在评估技术可行性时,必须保持冷静的头脑,一旦估计错误,将会出现灾难性的后果。如果开发技术风险很大,或者模型演示表明当前采用的技术和方法不能实现系统预期的功能和性能,或者系统的实现不支持各子系统的集成,则项目管理人员可以做出停止系统开发的决定。

(3)社会可行性。社会可行性是指确定系统开发可能导致的任何侵权、妨碍和责任,以及用户软件操作的可行性。社会可行性主要包括法律可行性和用户操作可行性。

法律可行性考虑要开发系统是否存在任何侵权、妨碍和责任问题。法律可行性涉及的范围也比较广泛,它包括合同、责任、侵权、用户组织的管理模式及规范,以及其他一些技术人员一般不了解的陷阱。

用户操作可行性考虑待开发软件的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。

(4)开发方案的选择。开发方案的选择是指评价进行系统或产品开发时可能采用的几个候选方案,最后给出结论意见。分析员考虑解决问题的方案,一般采用将一个大而复杂的系统分解为若干个子系统的办法来降低复杂性。如何进行系统分解,如何定义各子系统的功能、性能和界面,实现方案不唯一,可以采用折中的方法,反复比较各个方案的成本/效益,选择可行的方案。 wQw45xEEpIQi0cUV2DAFEMCYg2PRIlTiQjzAoCx/ul7aqGG4iX5Gh5SPTB3FRTjm

点击中间区域
呼出菜单
上一章
目录
下一章
×