第二章 可行性分析
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
② 根据任务分解进行估计 这个方法首先将任务分解成若干子任务,然后对子任务 进行成本估计,最后累加起来得出软件开发总成本。
表 1.1 是在典型环境下各开发阶段需要使用的人力的百分 比,可供开发人员在对软件成本估计时参考。
© Copyright by Pu Qiumei
③ 借助工具软件对成本进行估计 这种估计方法需要大量的历史数据为基础,需要良好的 数据库系统支持。 (2)成本/效益分析 在进行成本—效益分析之前,首先是要估计软件的开发成 本、运行费用以及软件系统将带来的效益。 系统的运行费用包括系统的操作费用(如操作人员数 量、工作时间以及消耗的物资等)和维护费用。系统将来带来 的经济效益包括因使用新的系统而增加的收入加上使用新系统 可以节省的运行费用。
信息工程学院 本科生课程
软件工程
第二章 可行性分析
© Copyright by Pu Qiumei
第二章 可行性分析
2.1 2.2 2.3 2.4 2.5 2.6 2.7 可行性研究的任务 可行性研究过程 系统流程图 数据流图 数据字典 成本/效益分析 小结
© Copyright by Pu Qiumei
操作可行性
• 用户使用可能性
• 时间进度可行性 • 组织和文化上的可行性
© Copyright by Pu Qiumei
2.2
可行性研究过程
1. 复查系统规模和目标 2. 研究目前正在使用的系统
3. 导出新系统的高层逻辑模型
4. 进一步定义问题 5. 导出和评价供选择的解法 6. 推荐行动方针 7. 草拟开发计划
可行性研究报告的编写
5 可选择的其它系统方案 5.1 可选择的其它系统1 5.2 可选择的其它系统2
......
6 投资及收益分析 6.1 支出
6.2 收益
6.3 收益/投资比
7 社会条件方面的可行性 7.1 法律方面的可行性 7.2 使用方面的可行性
6.4 投资回收周期 6.5 敏感性分析
© Copyright by Pu Qiumei
阶段构成:一是项目规划及可行性分析;二是项目需求分析。 项目准备阶段的第一个工作,是项目的总体规划。首先要做的是明确系统的 需求,也就是用户要计算机解决什么问题,即问题定义 。 系统分析员应该深入现场,了解用户单位对系统的要求,调查开发背景,进 行市场调研。经过调查分析,分析员要在较短的时间内对问题进行抽象、概 括,并把自己的认识写成书面报告,即项目需求报告,提交给用户方面进行
可行性研究报告的编写
3 对现有系统的分析
3.1 数据流程和处理流程 3.2 工作负荷 3.3 费用开支 3.4 人员 3.5 设备 3.6 局限性
4 所建议的系统
4.1 对所建议系统的说明 4.2 数据流程和处理流程 4.3 改进之处 4.4 影响 4.5 局限性 4.6 技术条件方面的可行性
© Copyright by Pu Qiumei
© Copyright by Pu Qiumei
1.成本/效益分析 成本—效益分析的目的是从经济角度评价开发一个新的软件 项目是否可行。开发一个软件系统也是一种投资,期望在将来 获得更大的利润。因此在正式进行投资之前,投资商必须对成 本/效益进行分析。 (1)成本估算 开发软件的成本主要是人的劳动消耗。软件开发成本的计 算方法是以一次性开发过程所花费的代价来计算的,也就是从 项目计划、需求分析、总体设计、详细设计、编码、单元测试、 整体测试等全过程所花费的代价作为成本。 ① 根据代码行进行估计 代码行技术是一种简单的方法,它通过估计软件中的代码 行数来估计软件的开发成本。用每行代码的成本乘以行数就得 到软件的开发成本。 © Copyright by Pu Qiumei
必要时还应该进一步从法律、社会效益等更广泛的角度研究每种解法 的可行性。 © Copyright by Pu Qiumei
可行性分析的结论可以是以下四种: (1)项目可行,可以立即开始执行; ( 2 )需要推迟到某些条件(例如资金、人力、设备等)具备 或成熟之后才能开始; (3)需要对开发目标进行某些修改之后才能开始进行; ( 4 )不能进行或不必进行;例如因技术不成熟,经济上不合 算或可能产生负面的社会影响等原因,这种情况下,分析员应 该建议尽早终止项目计划,以免浪费人力、物力和财力。 可行性分析结束后,要写出可行性分析报告,提交有关专 家论证和上级主管部门批准。 根据可行性分析结果,如果项目是可行的,那么对该项目的 开发工作就继续进行。此时,分析员要做出项目开发的初步计 划。
可行性分析的目标
识别用户要求 评价系统的可行性 进行经济分析和技术分析 把功能分配给硬件、软件、人、数据库和其它 系统元素 建立成本和进度限制 生成系统规格说明,形成所有后续工程的基础
© Copyright by Pu Qiumei
可行性分析的主要任务
可行性分析的出发点是前阶段所书写的文档(即项目需求 报告),对于项目需求报告中所确定的目标和规模,如果正确 就进一步确认,如果错误则及时修改,为做出正确的可行性分 析打好基础。 具体地说,分析员应从下面三个方面对项目做出可行性分 析: (1)技术可行性:使用现有的技术能实现这个系统吗? (2)经济可行性:这个系统的经济效益能超过它的开发成本 吗?(详细在后面介绍成本/效益分析) (3)操作可行性:系统的操作方式在该用户组织内行得通吗?
当前收 年份 1 2 益 9.6/1.05=
3
4 5
9.6
9.6 9.6
26.1432
34.0411 41.5630
© Copyright by Pu Qiumei
根据上表所列数据,本软件投入/产出比为: 41.5630/20 = 2.0785 (实为产出投入比)
② 成本的回收周期
成本的回收周期是衡量一个项目开发价值的一个指标。 成本回收周期就是使累计的经济效益等于最初的投资成本所需 要的时间。显然,成本回收周期越短,就越快获得利润,则该 项目就越值得开发。 根据上例,两年后收入17.8513万元,尚欠2.15万元没有 收回成本,在第三年还需要:2.15/26.1432 = 0.259(年), 故投资回收期为2.259年。
8. 书写文档提交审查
© Copyright by Pu Qiumei
可行性研究报告的编写
1 引言 1.1 编写目的 1.2 背景 1.3 定义 1.4 参考资料 2 可行性研究的前提 2.1 要求 2.2 目标 2.3 条件、假定和限制 2.4 进行可行性研究的方法 2.5 评价尺度
© Copyright by Pu Qiumei
问题的定义与可性行研究
开始 问题定义 可性行研究 可行否?
Y N
有用的软件
Who What Why 为谁设计,用户是谁? 要解决哪些问题? 为什么要解决这些问题
3W
项目实施计划
终止项目的建议
结束 © Copyright by Pu Qiumei
可行性研究
目的: 用最小的代价在尽可能短的时间内确定 问题是否能够解决。 不是解决问题,而是确定问题是否值得 去解决。
© Copyright byLeabharlann BaiduPu Qiumei
年 未
表2.1 货币的时间价值
将来收益/万元 9.6 9.6 (1+i)n 1.05 1.1025 1.1576 1.2155 1.2763 9.1429 8.7075 8.2928 7.8979 7.5219
年 始 累计的当前收 益 9.1429 17.8513
一般的做法是分析员和用户方面的人员一起阅读讨论这份
报告,通过修改得到一份双方都满意的文档。
当分析员和用户双方就项目需求取得了完全一致的看法, 项目的可行性研究即可开始。
© Copyright by Pu Qiumei
2.1
可行性研究的任务
可行性研究的主要任务是“了解客户的要求及 现实环境,从技术、经济和社会因素等三方面研 究并论证本软件项目的可行性,编写可行性研究 报告,制定初步项目开发计划。” GB 8566-88 《计算机软件开发规范》
1. 项目:××公司工资管理系统 2. 问题:在公司日常工资管理工作中,现有系统所承担的工作只能实现工 资管理的简单功能,已无法适应目前工作中处理大量数据(如日常打印工资 条等)要求,工作效率低下,容易出错。 3. 项目目标:为了提高公司日常工资管理的效率与准确率,而开发该项软 件。该软件应逐步向本市各企业推广。 4. 项目范围:硬件主要利用现有的计算机网络,增配少量专用设备,软件 开发费用预计20000元。 5. 初步设想:实现××公司工资管理系统,包括工资录入、数据查询、工 资条、工资统计、部门设置、人员设置、项目设置等具体功能。要求将各 种输出数据以表单形式打印;系统各模块具有添加新数据的功能;系统软 件具有权限功能,使不同的用户具有不同的权限;建立后的数据库需要加 密。 6.可行性研究:由分析员和××公司工资管理部门进行,主要对公司日常 工资管理规程和系统实施方案进行研究。建议进行大约3天的可行性研究, 研究费用不超过200元。 © Copyright by Pu Qiumei
© Copyright by Pu Qiumei
③ 项目的纯收入 衡量项目价值的另一个经济指标是项目的纯收入,也就 是在整个生存周期之内的累计经济效益(现在值)与投资成本 之差(在计算时要考虑到货币的时间价值)。若纯收入为零, 则项目的预期效益和在银行存款一样,是不值得投资开发的。 若纯收入小于零, 那么这个项目显然不值得投资开发。 在上例中:根据前面的计算结果,5年纯收入为: 41.5630-20 = 21.5630 万元
可行性研究的最根本任务 对软件开发以后的行动方针提出建议。
© Copyright by Pu Qiumei
可行性研究的内容
(1) 技术可行性
(2) 经济可行性
(3) 操作可行性
(4) 社会可行性(法律可行性)
(5) 抉择
© Copyright by Pu Qiumei
技术可行性
度量一个特定技术信息系统解决方 案的实用性及技术资源的可用性
讨论审查。
项目需求报告应该尽可能清楚简洁,内容通常包括项目的名称,对问题的概 括,项目的目标,项目的规模及对可行性研究的具体建议(即需要用的时间 和成本)等等。 图2.1通过一个实际项目给出了项目需求报告编写示例。
© Copyright by Pu Qiumei
项目需求报告
2008年10月
估计出开发成本和将来带来的效益后,应将二者进行比 较,但是,成本是现在的,效益是将来的,所以在对二者进行 比较时应考虑到货币的时间价值。
© Copyright by Pu Qiumei
① 货币的时间价值
货币的时间价值通常用利率来表示。设年利率为i, 现存放 资金P元,则在n年后可得钱数为F,若不计复利,则 F=P(1+i)n 或 P=F/(1+i)n 例:假设购置一套应用软件投资20万元,预计可使用5年, 每年直接经济效益9.6万元,年利率为5%,试计算投入/产出 比。 解:考虑到货币的时间价值,5年的总体收入应当逐年按照 公式计算,并非为恒定的9.6万元。1~5年中,每年的收入 折算到当前的数据如表2.1所示。
价值和成本的关系
质量与价值、成本的关系 价值/成本的均衡
© Copyright by Pu Qiumei
举例
成本-效益(万元) 该系统节省经费
60
40 20 0 1 2
盈亏平衡点 该系统成本
3
4
5
年
投资回收期
---------成本及效益分析图
© Copyright by Pu Qiumei
考虑的问题
(1)开发风险分析 (2)资源分析 (3)相关技术的发展(现有技术能否实现新系 统,技术难点、建议采用技术的先进性)
© Copyright by Pu Qiumei
经济可行性
度量系统解决方案的性能价格比。
考虑的问题
成本/效益分析(开发、运行的成本/效益)
有形成本、效益 无形成本、效益
说明该软件开发项目的实现在技术上、经济上和社会条件上的 可行性;评述为合理地达到开发目标可能选择的各种方案。 GB 8567-88《 计算机软件产品开发文件编制指南 》
© Copyright by Pu Qiumei
可行性研究
项目的筹备、规划与准备是软件项目实施的前期工作,它由两个重要的工作