软件工程第二章(可行性)_第1页
软件工程第二章(可行性)_第2页
软件工程第二章(可行性)_第3页
软件工程第二章(可行性)_第4页
软件工程第二章(可行性)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章第二章 可行性分析可行性分析开发软件要回答三个问题nWhy to do? 可行性研究nWhat to do?需求分析nHow to do? 系统设计2.1 项目可行性分析项目可行性分析n项目准备阶段的第一个工作,是项目的总体规项目准备阶段的第一个工作,是项目的总体规划。首先要做的是明确系统的需求,也就是用划。首先要做的是明确系统的需求,也就是用户要计算机解决什么问题,即问题定义户要计算机解决什么问题,即问题定义 。n项目的筹备、规划与准备是软件项目实施的前项目的筹备、规划与准备是软件项目实施的前期工作,它由两个重要的工作阶段构成:一是期工作,它由两个重要的工作阶段构成:一是项目规划及可行

2、性分析;二是项目需求分析。项目规划及可行性分析;二是项目需求分析。n n可行性分析可行性分析就是解决一个项目是否有可行解以及是就是解决一个项目是否有可行解以及是否值得去解的问题。该阶段的主要任务就是用最小否值得去解的问题。该阶段的主要任务就是用最小的代价在尽可能短的时间内确定问题是否能够得到的代价在尽可能短的时间内确定问题是否能够得到解决。解决。一、可行性分析的概念二、可行性分析的目标和内容q 具体地说,具体地说,分析员应从下面三个方面对项目做出可行性分分析员应从下面三个方面对项目做出可行性分析:析:(1)技术可行性:使用现有的技术能实现这个系统吗)技术可行性:使用现有的技术能实现这个系统吗?

3、(2)经济可行性:这个系统的经济效益能超过它的开发成本)经济可行性:这个系统的经济效益能超过它的开发成本吗吗?(详细在后面介绍成本(详细在后面介绍成本/效益分析)效益分析)(3)操作可行性:系统的操作方式在该用户组织内行得通吗)操作可行性:系统的操作方式在该用户组织内行得通吗? ? 必要时还应该进一步从法律、社会效益等更广泛的角度研究每种解法必要时还应该进一步从法律、社会效益等更广泛的角度研究每种解法的可行性。的可行性。三、 可行性分析的主要任务q 可行性分析的结论可以是以下四种:可行性分析的结论可以是以下四种:(1 1)项目可行,可以立即开始执行;)项目可行,可以立即开始执行;(2 2)需要

4、推迟到某些条件(例如资金、人力、设备等)具备)需要推迟到某些条件(例如资金、人力、设备等)具备或成熟之后才能开始;或成熟之后才能开始;(3 3)需要对开发目标进行某些修改之后才能开始进行;)需要对开发目标进行某些修改之后才能开始进行;(4 4)不能进行或不必进行;例如因技术不成熟,经济上不合)不能进行或不必进行;例如因技术不成熟,经济上不合算或可能产生负面的社会影响等原因,这种情况下,分析员应算或可能产生负面的社会影响等原因,这种情况下,分析员应该建议尽早终止项目计划,以免浪费人力、物力和财力。该建议尽早终止项目计划,以免浪费人力、物力和财力。q 可行性分析结束后,要写出可行性分析报告,提交有

5、关专可行性分析结束后,要写出可行性分析报告,提交有关专家论证和上级主管部门批准。家论证和上级主管部门批准。1成本成本/效益分析效益分析q成本成本效益分析的目的是从经济角度评效益分析的目的是从经济角度评价开发一个新的软件项目是否可行。价开发一个新的软件项目是否可行。开发开发一个软件系统也是一种投资,期望在将来一个软件系统也是一种投资,期望在将来获得更大的利润。因此在正式进行投资之获得更大的利润。因此在正式进行投资之前,投资商必须对成本前,投资商必须对成本/ /效益进行分析。效益进行分析。2.2 经济可行性分析经济可行性分析 (1 1)成本估算)成本估算 开发软件的成本主要是人的劳动消耗。开发软件

6、的成本主要是人的劳动消耗。软件开发软件开发成本成本的计算方法的计算方法是以一次性开发过程所花费的代价来是以一次性开发过程所花费的代价来计算的计算的,也就是从项目计划、需求分析、总体设计、,也就是从项目计划、需求分析、总体设计、详细设计、编码、单元测试、整体测试等全过程所花详细设计、编码、单元测试、整体测试等全过程所花费的代价作为成本。费的代价作为成本。 根据代码行进行估计根据代码行进行估计 代码行技术是一种简单的方法,它通过估计软件代码行技术是一种简单的方法,它通过估计软件中的代码行数来估计软件的开发成本。用每行代码的中的代码行数来估计软件的开发成本。用每行代码的成本乘以行数就得到软件的开发成

7、本。成本乘以行数就得到软件的开发成本。 根据任务分解进行估计根据任务分解进行估计 这个方法首先将任务分解成若干子任务,然后对子任务进这个方法首先将任务分解成若干子任务,然后对子任务进行成本估计,最后累加起来得出软件开发总成本。行成本估计,最后累加起来得出软件开发总成本。 表表1.11.1是在典型环境下各开发阶段需要使用的人力的百分比,是在典型环境下各开发阶段需要使用的人力的百分比,可供开发人员在对软件成本估计时参考。可供开发人员在对软件成本估计时参考。 借助工具软件对成本进行估计借助工具软件对成本进行估计 这种估计方法需要大量的历史数据为基这种估计方法需要大量的历史数据为基础,需要良好的数据库

8、系统支持。础,需要良好的数据库系统支持。(2 2)成本)成本/ /效益分析效益分析 在进行成本在进行成本效益分析之前,首先是要估计软件效益分析之前,首先是要估计软件的开发成本、运行费用以及软件系统将带来的效益。的开发成本、运行费用以及软件系统将带来的效益。 系统的运行费用系统的运行费用包括系统的操作费用(如操作包括系统的操作费用(如操作人员数量、工作时间以及消耗的物资等)和维护费用。人员数量、工作时间以及消耗的物资等)和维护费用。系统将来带来的经济效益系统将来带来的经济效益包括因使用新的系统包括因使用新的系统而增加的收入加上使用新系统可以节省的运行费用。而增加的收入加上使用新系统可以节省的运行

9、费用。 货币的时间价值货币的时间价值货币的时间价值通常用利率来表示。设年利货币的时间价值通常用利率来表示。设年利率为率为i, i, 现存放资金现存放资金P P元,则在元,则在n n年后可得钱数年后可得钱数为为F F,若不计复利,则,若不计复利,则F=P(1+i)F=P(1+i)n n 或或 P=F/(1+i)P=F/(1+i)n n 例:假设购置一套应用软件投资例:假设购置一套应用软件投资2020万元,预计可使万元,预计可使用用5 5年,每年直接经济效益年,每年直接经济效益9.69.6万元,年利率为万元,年利率为5%5%,试计算投入试计算投入/ /产出比。产出比。解:考虑到货币的时间价值,解:

10、考虑到货币的时间价值,5 5年的总体收入应当逐年的总体收入应当逐年按照公式计算,并非为恒定的年按照公式计算,并非为恒定的9.69.6万元。万元。1 15 5年年中,每年的收入折算到当前的数据如表中,每年的收入折算到当前的数据如表2.12.1所示。所示。年份将来收益/万元(1+i)n当前收益累计的当前收益19.61.059.6/1.05=9.14299.142929.61.10258.707517.851339.61.15768.292826.143249.61.21557.897934.041159.61.27637.521941.5630表2.1 货币的时间价值年始年未根据上表所列数据,本软

11、件投入根据上表所列数据,本软件投入/产出比为:产出比为: 41.5630/20 = 2.0785 (实为产出投入比)(实为产出投入比) 成本的回收周期成本的回收周期根据上例,两年后收入根据上例,两年后收入17.851317.8513万元,尚欠万元,尚欠2.152.15万元没有收回万元没有收回成本,在第三年还需要:成本,在第三年还需要:2.15/8.2928 = 0.259(2.15/8.2928 = 0.259(年年) ),故投资,故投资回收期为回收期为2.2592.259年。年。 项目的纯收入项目的纯收入 衡量项目价值的另一个经济指标是衡量项目价值的另一个经济指标是项目的纯收入项目的纯收入,

12、也就是,也就是在整个生存周期之内的累计经济效益(现在值)与投资成本之在整个生存周期之内的累计经济效益(现在值)与投资成本之差(在计算时要考虑到货币的时间价值)。差(在计算时要考虑到货币的时间价值)。 在上例中:根据前面的计算结果,在上例中:根据前面的计算结果,5 5年纯收入为:年纯收入为: 41.563041.563020 = 21.5630 20 = 21.5630 万元万元只有当纯收入大于只有当纯收入大于0 0时,开发软件才有真正的效益。时,开发软件才有真正的效益。 1 1 可行性分析的步骤可行性分析的步骤 (过程)(过程)(1 1)复查系统规模和目标。)复查系统规模和目标。 (2 2)研

13、究正在运行的系统。)研究正在运行的系统。 (3 3)建立目标系统的逻辑模型。)建立目标系统的逻辑模型。 (4 4)重新定义问题)重新定义问题(5 5)导出和评价各种方案。)导出和评价各种方案。 (6 6)推荐可行性方案。)推荐可行性方案。(7 7)草拟开发计划。)草拟开发计划。(8 8)编写可行性分析报告提交审查。)编写可行性分析报告提交审查。 2 2可行性分析报告编写规范可行性分析报告编写规范 2.3 项目可行性分析报告项目可行性分析报告“可行性报告可行性报告”中最主要的内容是:中最主要的内容是: (1) (1) 项目的背景:问题描述、实现环境和限制条件等。项目的背景:问题描述、实现环境和限

14、制条件等。 (2) (2) 管理概要与建议:重要的研究结果管理概要与建议:重要的研究结果( (结论结论) )、说明、说明、劝告和影响等。劝告和影响等。 (3) (3) 推荐的方案推荐的方案( (不止一个不止一个) ):候选系统的配置与选择最:候选系统的配置与选择最终方案的原则。终方案的原则。 (4) (4) 简略的系统范围描述:分配元素的可行性。简略的系统范围描述:分配元素的可行性。 (5) (5) 经济可行性分析结果:经费概算和预期的经济效益经济可行性分析结果:经费概算和预期的经济效益等。等。 (6) (6) 技术可行性技术可行性( (技术风险评价技术风险评价) ):技术实力分析、已有的:技

15、术实力分析、已有的工作及技术基础和设备条件等等。工作及技术基础和设备条件等等。 (7) (7) 法律可行性分析结果描述。法律可行性分析结果描述。 (8) (8) 可用性评价:汇报用户的工作制度和人员的素质,确可用性评价:汇报用户的工作制度和人员的素质,确定人机交互功能界面需求。定人机交互功能界面需求。 (9) (9) 其他项目相关的问题:如可能会发生的变更等等。其他项目相关的问题:如可能会发生的变更等等。 可行性研究报告由系统分析员撰写,交由项目负责人审查,可行性研究报告由系统分析员撰写,交由项目负责人审查,再上报给上级主管审阅。再上报给上级主管审阅。 在可行性研究报告中,应当明确项目在可行性

16、研究报告中,应当明确项目“可行还是不可行可行还是不可行”,如果认为可行,接下来还要制定项目开发计划书。如果认为可行,接下来还要制定项目开发计划书。2. 4 项目开发计划项目开发计划项目开发计划书是一种管理性的文档,项目开发计划书是一种管理性的文档,它的主要内容如下它的主要内容如下:(1 1)项目概述:包括项目目标、主要功能、系统特点以及)项目概述:包括项目目标、主要功能、系统特点以及关于开发工作的安排。关于开发工作的安排。(2 2)系统资源:包括开发和运行该系统所需要的各种资源,)系统资源:包括开发和运行该系统所需要的各种资源,硬件、软件、人员和组织机构等。硬件、软件、人员和组织机构等。(3 3) 费用预算:说明完成项目的总费用及资金计划。费用预算:说明完成项目的总费用及资金计划。(4 4) 进度安排:说明开发项目的周期,开始及完成时间。进度安排:说明开发项目的周期,开始及完成时间。(5 5) 交付的产品清单。交付的产品清单。项目开

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论