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

下载本文档

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

文档简介

1、1 软件工程 02章章 可行性研究可行性研究 2 02章 可行性研究 2 . 1 可行性研究的任务可行性研究的任务 2 . 2 可行性研究过程可行性研究过程 2 . 3 系统流程图系统流程图 2 . 4 成本效益分析成本效益分析 2 . 5 小结小结 习题习题 3 重点、难点 重点:可行性研究任务;重点:可行性研究任务; 系统流程图系统流程图 ; 成本效益分析成本效益分析 4 2. 1 可行性研究任务 一、可行性研究的目的一、可行性研究的目的 说明该软件开发项目的实现在技术上、经济上和社说明该软件开发项目的实现在技术上、经济上和社 会条件上的可行性;评述为合理地达到开发目标可能会条件上的可行性

2、;评述为合理地达到开发目标可能 选择的各种方案。选择的各种方案。 GB 8567 -88 计算机软件产品开发文件编制指南计算机软件产品开发文件编制指南 用最小的代价在尽可能短的时间内确定问题是否能用最小的代价在尽可能短的时间内确定问题是否能 够并且值得解决。够并且值得解决。 可行性研究最根本任务是对以后的行动方针提出建议可行性研究最根本任务是对以后的行动方针提出建议. 可行性研究一般占预期工程总成本的可行性研究一般占预期工程总成本的 5 10 。 5 二、可行性研究的基本内容 1 、技术可行性:使用现有的技术能实现这个系统吗?、技术可行性:使用现有的技术能实现这个系统吗? 主要考虑:开发风险;

3、资源;相关技术的发展主要考虑:开发风险;资源;相关技术的发展 2、经济可行性:这个系统的经济效益能超过它的开、经济可行性:这个系统的经济效益能超过它的开 发成本吗?发成本吗? 系统经济效益系统经济效益=新系统增加的收入新系统节省的费用新系统增加的收入新系统节省的费用 考虑:成本考虑:成本效益分析、长期的公司经营策略、对效益分析、长期的公司经营策略、对 其他单位或产品的影响、开发所需的成本和资源、潜在其他单位或产品的影响、开发所需的成本和资源、潜在 的市场前景的市场前景 3 、运行可行性:系统的操作方式在用户组织内行得、运行可行性:系统的操作方式在用户组织内行得 通吗?通吗? 4、其他:法律可行

4、性、社会效应、管理问题等、其他:法律可行性、社会效应、管理问题等 6 国家标准定义的可行性研究 了解客户的要求及现实环境,从技术、经济了解客户的要求及现实环境,从技术、经济 和社会因素等三方面研究并论证本软件项目的可行和社会因素等三方面研究并论证本软件项目的可行 性,编写可行性研究报告,制定初步项目开发计划。性,编写可行性研究报告,制定初步项目开发计划。 一一 GB 8566-88 GB 8566-88 计算机软件开发规范计算机软件开发规范 GB8567 一一 88 计算机软件产品开发文件编制指计算机软件产品开发文件编制指 南南 GB5666 一一 88(计算机软件开发规范(计算机软件开发规范

5、 国家标准局国家标准局 1988 年发布年发布 标准基于软件生存标准基于软件生存 周期,将软件产品从形成、开发、周期,将软件产品从形成、开发、 运用、维护,到最后被淘汰的整个过程中,应提交的运用、维护,到最后被淘汰的整个过程中,应提交的 文档归于文档归于 13 种,作为软件开发人员工作的准则和规种,作为软件开发人员工作的准则和规 程。程。 7 2. 2 可行性研究的步骤 8 可行性研究的基本步骤可行性研究的基本步骤 1)复查系统的规模、目标和限制。)复查系统的规模、目标和限制。 要注意用户想的要注意用户想的 用户说的用户说的 2)研究正在使用的系统问题)研究正在使用的系统问题 新系统的效益新系

6、统的效益老系统?老系统? 注意:注意: 只了解老系统做什么,而不管怎样做;只了解老系统做什么,而不管怎样做; 注意了解与其它系统的接口注意了解与其它系统的接口 老系统老系统 功能功能 新增新增 功能功能 9 3)导出新系统的高层逻辑模型导出新系统的高层逻辑模型 使用数据流程图描述数据在系统中流动和处使用数据流程图描述数据在系统中流动和处 理的情况,概括表达出对新系统的设想。理的情况,概括表达出对新系统的设想。 数据流程图和数据字典共同定义了新系统的数据流程图和数据字典共同定义了新系统的 逻辑模型。逻辑模型。 抽象抽象 实现实现 改进改进 老系统老系统模型模型新模型新模型 新系统新系统 10 逻

7、辑模型逻辑模型 4)重新定义)重新定义 复查定义复查定义 p分析员和用户一起复查问题定义、工程规分析员和用户一起复查问题定义、工程规 模和目标,这次复查应该以数据流图和数据模和目标,这次复查应该以数据流图和数据 字典为基础。发现有误解或遗漏马上改正。字典为基础。发现有误解或遗漏马上改正。 p可行性研究的前可行性研究的前4个步骤实质上构成了一个步骤实质上构成了一 个循环,不断重复这个循环步骤,直到提出个循环,不断重复这个循环步骤,直到提出 的逻辑模型完全符合系统目标。的逻辑模型完全符合系统目标。 11 5)导出和评价供选择的解决导出和评价供选择的解决 方案方案 根据系统的逻辑模型,从技术根据系统

8、的逻辑模型,从技术 角度提出不同的解决方案。角度提出不同的解决方案。 例如,要求系统的响应时例如,要求系统的响应时 间不超过几秒钟,显然应间不超过几秒钟,显然应 该排除批处理的方案。该排除批处理的方案。 分析员应该根据使用者处理事分析员应该根据使用者处理事 物的原则和习惯,去掉那物的原则和习惯,去掉那 些可操作性不好的方案。些可操作性不好的方案。 进度表进度表经济上合算经济上合算 技术上可行技术上可行 操作上可行操作上可行 技术上不可行技术上不可行 用户用户 不不 可可能 能 操操作 作 不合算不合算 12 6)推荐行动方针)推荐行动方针 如果分析员认为值得继续进行这项工程,则如果分析员认为值

9、得继续进行这项工程,则 应该选择相对最好的方案,并说明理由。应该选择相对最好的方案,并说明理由。 通常使用部门的负责人主要根据经济上的可通常使用部门的负责人主要根据经济上的可 行性决定是否开发这项工程,因此分析员行性决定是否开发这项工程,因此分析员 对于所推荐的方案必须进行仔细的成本对于所推荐的方案必须进行仔细的成本/效效 益分析。益分析。 13 7)草拟开发计划)草拟开发计划 分析员为推荐的方案拟一份开发计划:任务分析员为推荐的方案拟一份开发计划:任务 分解、工程进度,人员要求,其他资源分解、工程进度,人员要求,其他资源 (计算机硬件、软件工具等)的需求情况、(计算机硬件、软件工具等)的需求

10、情况、 估算开发成本和开发风险。估算开发成本和开发风险。 14 8)书写可行性研究报告)书写可行性研究报告 内容:简述项目背景、开发基础、技术路线、内容:简述项目背景、开发基础、技术路线、 关键技术的先进性和效果论述、市场需求关键技术的先进性和效果论述、市场需求 情况和风险分析、情况和风险分析、 成本效益分析、研发基成本效益分析、研发基 础和实力、进度计划等。础和实力、进度计划等。 9)提交审查)提交审查 用户、评审组专家和分析员讨论审查报告,用户、评审组专家和分析员讨论审查报告, 评审方案的可行性。评审方案的可行性。 15 可行性研究报告的编写 可行性研究报告功能:可行性研究报告功能: 说明

11、软件项目的实现在技术上、经济上和说明软件项目的实现在技术上、经济上和 社会因素上的可行性,评述为合理地达到开社会因素上的可行性,评述为合理地达到开 发目标可供选择的各种可能的实现方案,说发目标可供选择的各种可能的实现方案,说 明并论证所选定实施方案的理由。明并论证所选定实施方案的理由。 GB 8567 一一 88 计算机软件产品开发文计算机软件产品开发文 件编制指南件编制指南 16 2. 3 系统流程图 可行性分析的描述手段:系统流程图、数可行性分析的描述手段:系统流程图、数 据流图据流图 1 、什么是系统流程图、什么是系统流程图? 概括地描绘物理系统的传统工具。概括地描绘物理系统的传统工具。

12、 基本思想:用图形符号以黑盒子形式描绘基本思想:用图形符号以黑盒子形式描绘 组成系统的每个部件(程序,文档,数据库,组成系统的每个部件(程序,文档,数据库, 人工过程等)人工过程等) , 表达数据在系统各部件之间表达数据在系统各部件之间 流动的情况。流动的情况。 17 2.3.1 符号 表示任何类型的联机存储,包括磁盘、软件和海量存储器表示任何类型的联机存储,包括磁盘、软件和海量存储器 件等件等 联机处理联机处理 通常表示打印输出,也可以表示用打印终端输入数据通常表示打印输出,也可以表示用打印终端输入数据文档文档 用户连接其它符号,指明数据流动方向用户连接其它符号,指明数据流动方向数据流数据流

13、 指出转到另一页图上或由另一页图转来指出转到另一页图上或由另一页图转来换页连接换页连接 指出转到图的另一部分或从图的另一部分转来,通常在同指出转到图的另一部分或从图的另一部分转来,通常在同 一页上一页上 连接连接 表示输入或输出(或既输入又输出),是一个广义的不指表示输入或输出(或既输入又输出),是一个广义的不指 明具体设备的符号明具体设备的符号 输入输入/ /输出输出 能改变数据值或数据位置的加工或部件,例如,程序模块、能改变数据值或数据位置的加工或部件,例如,程序模块、 处理机等都是处理处理机等都是处理 处理处理 说 明名 称 符 号 18 符号 通过远程通信线路或链路传送数据通过远程通信

14、线路或链路传送数据通信链路通信链路 使用设备进行的脱机操作使用设备进行的脱机操作辅助操作辅助操作 人工完成的处理,例如,会计在工资汇票上签名人工完成的处理,例如,会计在工资汇票上签名人工操作人工操作 人工输入数据的联机处理,例如,填写表格等人工输入数据的联机处理,例如,填写表格等人工输入人工输入 CRTCRT终端或类似的显示部件,可用于输入或输出,也可既输终端或类似的显示部件,可用于输入或输出,也可既输 入又输出入又输出 显示显示 磁盘输入磁盘输入/ /输出,也可表示存储在磁盘上的文件和数据库输出,也可表示存储在磁盘上的文件和数据库磁盘磁盘 说 明名 称符 号 19 2.3.3 例子 例题1:

15、某装配厂有一座存放零件的仓库,仓库中现有的各 种零件的数量以及每种零件的库存量临界值等数据记录在库 存清单主文件中。 当仓库中零件数量有变化时,应该及时修改库存清单文件, 如果哪种零件的库存量少于它的库存量临界值,则应该报告 给采购部门以便定货,规定每天向采购部门送一次定货报告。 变化变化 仓库仓库 零零 库存量库存量 件件 临界值临界值 库存清单库存清单 XX : XX : 库存库存 临临界值界值 定货报告定货报告 20 2.3.3 例子 图图 库房管理系统的系统流程图库房管理系统的系统流程图 订货报告 库存文件 输入变更记录 订货信息 库存管理模块 报告生成模块 21 练习练习 练习:用系

16、统流程图分析下述问题。 图书馆闭架借书流程 读者验明证件后可以进入查询室 读者在查询室利用检书卡或计算机终端检索 数据库查询自己需要的图书。 读者找到自己需要的图书后,填写索书单到 服务台借书。 如果图书有剩余,管理员填好借书单,从库 房中取出图书交与读者。 22 分层 描绘复杂系统时,一采取分层次地描绘的方描绘复杂系统时,一采取分层次地描绘的方 法法 第一步第一步:建立高层次的系统流程图,描绘系统建立高层次的系统流程图,描绘系统 总体概貌,表明系统的关键功能。总体概貌,表明系统的关键功能。 第二步第二步:分别对每个关键功能进行扩展,到合分别对每个关键功能进行扩展,到合 适的详细程度,画在单独

17、的一页纸上。适的详细程度,画在单独的一页纸上。 第三步:可以多次扩展,直到描述完整。第三步:可以多次扩展,直到描述完整。 优点:便于阅读者按从抽象到具体的过程逐优点:便于阅读者按从抽象到具体的过程逐 步深入地了解一个复杂的系统。步深入地了解一个复杂的系统。 23 2 . 4 成本效益分析 从经济角度分析开发一个特定的新系统从经济角度分析开发一个特定的新系统 是否划算,帮助客户负责人作出是否投资的是否划算,帮助客户负责人作出是否投资的 决定。决定。 主要包括成本估计和成本效益分祈。主要包括成本估计和成本效益分祈。 24 1 成本估计 包括开发成本和运行成本包括开发成本和运行成本 一、开发成本估计

18、技术(一、开发成本估计技术( 1 ) 1 、代码行技术、代码行技术 根据经验和历史数据,估算实现一个功根据经验和历史数据,估算实现一个功 能需要多少源程序行数,用每行代码的平均能需要多少源程序行数,用每行代码的平均 成本乘以行数。成本乘以行数。 25 一、开发成本估计技术( 2 ) 2 、任务分解技术、任务分解技术 将软件开发工程分解成若干个相对独将软件开发工程分解成若干个相对独 立的任务,分别估算,然后累加得出总成本。立的任务,分别估算,然后累加得出总成本。 l按阶段分解按阶段分解 l按功能分解按功能分解 5 (%) 26 例:按功能分解 计算机辅助设计(计算机辅助设计( CAD )的软件项

19、目估算)的软件项目估算 将将 CAD CAD 项目分为如下项目分为如下7 7个子项目:个子项目: l用户界面和控制;用户界面和控制; l二维几何分析;二维几何分析; l三维几何分析;三维几何分析; l数据库管理;数据库管理; l计算机图形显示;计算机图形显示; l外设控制;外设控制; l设计分析设计分析 27 代码行和成本、工作量估算 28 系统开发和每年运行费用估算举例 A 系统开发费用(一次)。系统开发费用(一次)。 2名系统分析员(名系统分析员(450小时小时/名,名,45美元美元/小时)小时) $40,500 5名系统开发人员(名系统开发人员(275小时小时/名,名,36美元美元/小时

20、)小时) $49,500 1名数据库管理员(名数据库管理员(30小时小时/名,名,42美元美元/小时)小时) $1,260 2名技术写作者(名技术写作者(120小时小时/名,名,25美元美元/小时)小时) $6,000 1名秘书(名秘书(160小时小时/名,名,15美元美元/小时)小时) $2,400 1名数据通讯专家(名数据通讯专家(60小时小时/名,名,42美元美元/小时)小时) $2,400 2名数据输入人员(名数据输入人员(40小时小时/名,名,12美元美元/小时)小时) $49,500 29 系统其他费用 培训:培训:三天的开发人员内部培训课程三天的开发人员内部培训课程 $7,000

21、$7,000 30 30个用户,三天的内部培训课个用户,三天的内部培训课 $10,000$10,000 物资:物资:复印复印 $500 $500 磁盘、纸张等消耗品磁盘、纸张等消耗品 $650$650 购买软、硬件:购买软、硬件: 2020台工作站台工作站windowswindows软件软件 $1,000$1,000 20 20台工作站内存升级台工作站内存升级 $8,000$8,000 网络软件网络软件 $17,500$17,500 20 20台工作站办公软件产品台工作站办公软件产品 $20,000$20,000 系统开发总费用系统开发总费用 $161 , 670 30 B .年运行费用(每年

22、) 人员:人员: 维护程序员维护程序员/ /分析员(分析员(250250小时小时/ /年,年,4242美元美元/ /小时)小时) $10,500$10,500 网络管理员(网络管理员(30003000小时小时/ /年,年,5050美元美元/ /小时)小时) $15,000$15,000 购买硬件、软件升级:购买硬件、软件升级: 硬件硬件 $ 5,000 $ 5,000 软件软件 $6,000 $6,000 物资和杂项:物资和杂项: $ 3,500 每年总运行费用每年总运行费用 $ 40,000 31 一、开发成本估计技术( 3 ) 3 、自动估计成本技术、自动估计成本技术 采用自动估计成本的软

23、件工具,需要采用自动估计成本的软件工具,需要 有长期搜集的大量历史数据为基础,并需要有长期搜集的大量历史数据为基础,并需要 良好的数据库系统支持。良好的数据库系统支持。 二、运行费用估计二、运行费用估计 取决于系统的操作费用(操作人员数、工取决于系统的操作费用(操作人员数、工 作时间、消耗的物资等)和维护费用。作时间、消耗的物资等)和维护费用。 32 6 .2 成本效益分折方法 l成本效益分折的是估计开发成本、运行费成本效益分折的是估计开发成本、运行费 用和新系统将带来的经济效益。用和新系统将带来的经济效益。 l成本:房租、办公费用、设备折旧费、市场成本:房租、办公费用、设备折旧费、市场 费用

24、、人员工资、公司运营的各项管理费。费用、人员工资、公司运营的各项管理费。 l收益:有形的效益可以用货币的时间价值、收益:有形的效益可以用货币的时间价值、 投资回收期、纯收入等指标进行度量。无形投资回收期、纯收入等指标进行度量。无形 的效益主要是从社会影响力和对社会的贡献的效益主要是从社会影响力和对社会的贡献 等方面考虑。等方面考虑。 注意:通常软件的生命周期按注意:通常软件的生命周期按5年计算。年计算。 33 2 成本效益分折方法 几种度量效益的方法几种度量效益的方法 1.货币的时间价值:以银行利率表示货币的货币的时间价值:以银行利率表示货币的 时间价值。时间价值。 假设年利率为假设年利率为i

25、 i,如果现在存入,如果现在存入P P元,则元,则 n n年后可以得到的钱数为:年后可以得到的钱数为:F=P(1+i)F=P(1+i)n n 如果如果n n年后能收入年后能收入F F元钱,那么这些钱的元钱,那么这些钱的 现在价值是:现在价值是:P=F/(1+i)P=F/(1+i)n n 34 设年利率是设年利率是5%5%,引入,引入CADCAD后,每年预计节省的钱的现后,每年预计节省的钱的现 在价值在价值。 年份年份 将来值将来值 (1+i)1+i)n n 现在价值 现在价值 累计现在价值累计现在价值 1 9.6 1.05 9.1429 9.14291 9.6 1.05 9.1429 9.14

26、29 2 9.6 1.1025 8.7075 17.85132 9.6 1.1025 8.7075 17.8513 3 9.6 1.1576 8.2928 26.1432 3 9.6 1.1576 8.2928 26.1432 4 9.6 1.2155 7.8979 34.04114 9.6 1.2155 7.8979 34.0411 5 9.6 1.2763 7.5219 41.56305 9.6 1.2763 7.5219 41.5630 例:在工程设计中用例:在工程设计中用CADCAD系统取代大部分人工设计工系统取代大部分人工设计工 作,每年可节省作,每年可节省9.69.6万元。若软件生

27、存期为万元。若软件生存期为5 5年,则年,则5 5 年节省年节省4848万元。开发万元。开发CADCAD系统共投资了系统共投资了2020万元。万元。 35 2 成本效益分折方法 2.投资回收期:累计的经济效益等于最初的投投资回收期:累计的经济效益等于最初的投 资所需要的时间。资所需要的时间。 投资回收期投资回收期=TN-1 + |(投资值投资值-TZ)/出现正值年份出现正值年份 的净现金流量的净现金流量)| TN:累计现在值大于投资值的年:累计现在值大于投资值的年 TZ:累计现在值大于投资值的现金值的上一年值:累计现在值大于投资值的现金值的上一年值 CAD投资回收期是:投资回收期是: 2+(20-17.85)/8.29= 2+2.15/8.29=2.259年年 36 3.纯收入:整个软件生命期内,累计经济效纯收入:整个软件生命期内,累计经济效 益(折合成现在值)与投资之差。益(折合成现在值)与投资之差。 如:引入如:引入CAD系统之后,系统之后,5年内工程的纯收入年内工程的纯收入 预计是预计是41.563-20=21.563 37 例子:投资例子:投资2020万元开发一个软件,从第万元开发一个软件,从第1 1年年年年 底起,每年收入底起,每年收入4.24.2万元,问该项目是否值得万元,

温馨提示

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

评论

0/150

提交评论