软件工程概论ch02-项目可行性分析与计划课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件工程概论ch02-项目可行性分析与计划课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 概论 ch02_ 项目 可行性 分析 计划 课件
- 资源描述:
-
1、2目 录 第第1 1章章 绪论绪论 第第2 2章章 可行性分析与项目计划可行性分析与项目计划 第第3 3章章 需求分析需求分析 第第4 4章章 概要设计概要设计 第第5 5章章 详细设计详细设计 第第6 6章章 编程与测试编程与测试 第第7 7章章 软件维护软件维护 第第8 8章章 面向对象的方法面向对象的方法 第第9 9章章 面向对象的需求获取面向对象的需求获取第第1010章章 面向对象的分析面向对象的分析第第1111章章 面向对象的设计面向对象的设计第第1212章章 面向对象的测试面向对象的测试3第第 2 2 章章 可行性分析与项目计划可行性分析与项目计划2.1 可行性可行性分析分析2.2
2、 系统流程图系统流程图2.3 成本成本/效益分析效益分析2.4 项目开发计划项目开发计划42.1 可行性分析n 2.1.1 2.1.1 目的目的n 2.1.2 2.1.2 任务任务n 2.1.3 2.1.3 步骤步骤n 2.1.4 2.1.4 可行性分析报告的主要内容可行性分析报告的主要内容52.1.1 2.1.1 可行性分析的可行性分析的目的目的n 避免造成时间、人力、财力、物力的巨大浪费。避免造成时间、人力、财力、物力的巨大浪费。n 可行性分析目的在于使用最小的代价,在尽可可行性分析目的在于使用最小的代价,在尽可能短的时间内能短的时间内,得出软件项目是否能够开发、是得出软件项目是否能够开发
3、、是否值得开发的结论。否值得开发的结论。n 可行性分析的目的不是解决问题,而是确定问可行性分析的目的不是解决问题,而是确定问题是否值得去解决,有没有解决的可能性。题是否值得去解决,有没有解决的可能性。62.1 可行性分析n 2.1.1 2.1.1 目的目的n 2.1.2 2.1.2 任务任务n 2.1.3 2.1.3 步骤步骤n 2.1.4 2.1.4 可行性分析报告的主要内容可行性分析报告的主要内容72.1.2 2.1.2 可行性分析的任务可行性分析的任务n实质上,可行性分析是要进行一次大大压缩简化了实质上,可行性分析是要进行一次大大压缩简化了的系统分析和设计的过程(高度概括和抽象的)的系统
4、分析和设计的过程(高度概括和抽象的)n上述分析与设计过程是为了拟定方案,对比分析几上述分析与设计过程是为了拟定方案,对比分析几种可能的方案的利弊,判断最初提出的系统规模和种可能的方案的利弊,判断最初提出的系统规模和目标是否现实,系统完成后所能带来的效益是否值目标是否现实,系统完成后所能带来的效益是否值得投资。得投资。82.1.2 2.1.2 可行性分析的任务可行性分析的任务n首先,澄清并核实用户需求首先,澄清并核实用户需求v 明确任务,并复查最初(由用户提出的)的规模和目标,如明确任务,并复查最初(由用户提出的)的规模和目标,如果有误要加以修正。果有误要加以修正。n同时收集约束和限制。同时收集
5、约束和限制。n在澄清了问题之后,分析师应进行简要的需求分析,在澄清了问题之后,分析师应进行简要的需求分析,导出系统的逻辑模型。再从系统逻辑模型出发,探索导出系统的逻辑模型。再从系统逻辑模型出发,探索若几种可供选择的设计和实施方案。若几种可供选择的设计和实施方案。9可行性分析的四个方面:可行性分析的四个方面:n 对每种方案都应该仔细研究它的可行性,一般说来,对每种方案都应该仔细研究它的可行性,一般说来,至少应该从四方面研究其可行性:至少应该从四方面研究其可行性:v 技术可行性;技术可行性;v 经济可行性;经济可行性;v 操作可行性;操作可行性;v 社会可行性;社会可行性;101.技术可行性技术可
6、行性n分析项目的功能、性能和限制条件,确定在现分析项目的功能、性能和限制条件,确定在现有的技术、资源条件下,该项目是否可实现?有的技术、资源条件下,该项目是否可实现?n因为现阶段对项目的功能、目标、性能认识相因为现阶段对项目的功能、目标、性能认识相对模糊,所以,技术可行性分析相对困难,一对模糊,所以,技术可行性分析相对困难,一般应考虑以下情况:般应考虑以下情况:11技术可行性一般考虑的情况:技术可行性一般考虑的情况:n 开发的风险开发的风险就限制和约束条件下,能否成功设就限制和约束条件下,能否成功设计并实现该软件系统;计并实现该软件系统;n 资源的有效性资源的有效性包括人在内的相关资源是否有问
7、包括人在内的相关资源是否有问题;题;n 技术技术现有成熟技术是否支持,是否存在技术攻现有成熟技术是否支持,是否存在技术攻关的环节;关的环节;122.经济可行性经济可行性n 估算开发成本与费用,预测系统运行可取得的未来效估算开发成本与费用,预测系统运行可取得的未来效益,明确项目是否值得开发;益,明确项目是否值得开发;n 一般要进行一般要进行“成本成本/效益分析效益分析”,计算出投资回收期、,计算出投资回收期、投资回收率等指标投资回收率等指标133.操作可行性操作可行性n 根据使用部门处理事务的原则和习惯,检根据使用部门处理事务的原则和习惯,检查技术上可行的那些方案,去掉其中从操查技术上可行的那些
8、方案,去掉其中从操作方式或操作过程的角度看用户不能接受作方式或操作过程的角度看用户不能接受的方案。的方案。144.社会可行性社会可行性n 必要时还应该从法律、社会效益等更广泛的方面研究必要时还应该从法律、社会效益等更广泛的方面研究每种方案的可行性。每种方案的可行性。v 项目是否存在侵权、妨碍等社会责任问题;项目是否存在侵权、妨碍等社会责任问题;v 系统运行方式在用户组织内是否行得通;系统运行方式在用户组织内是否行得通;v 现有的管理制度、人员素质、操作方式是否可行;现有的管理制度、人员素质、操作方式是否可行;n 总之,社会可行性所涉及的范围比较广,包括合同、总之,社会可行性所涉及的范围比较广,
9、包括合同、责任、侵权、用户组织的管理模式及规范,其他一些责任、侵权、用户组织的管理模式及规范,其他一些技术人员常常不了解的陷阱等。技术人员常常不了解的陷阱等。15总之总之n可行性分析最根本的任务是对以后的行动方针提出可行性分析最根本的任务是对以后的行动方针提出建议。建议。v 如果项目不可行,分析员应该建议终止项目;如果项目不可行,分析员应该建议终止项目;v 如果可行,分析员应该推荐一个较好的解决方案,并且为项如果可行,分析员应该推荐一个较好的解决方案,并且为项目制定一个初步的行动计划。目制定一个初步的行动计划。n可行性分析需要的时间长短取决于项目的规模。一可行性分析需要的时间长短取决于项目的规
10、模。一般说来,可行性分析的成本只是预期的项目总成本般说来,可行性分析的成本只是预期的项目总成本的的5%10%。16可行性分析的任务表述可行性分析的任务表述不可行不可行用户提出的开用户提出的开发项目发项目有可行方案有可行方案拟定几个拟定几个可行方案可行方案;并推荐一个并推荐一个最优方案最优方案推荐行动方推荐行动方针针,给出关给出关键性决定键性决定:即该项目值即该项目值不值得做不值得做?草拟开发草拟开发计划计划;资原资原需求需求;开发开发工期和下工期和下一点工作一点工作要点要点提交可行提交可行性报告供性报告供审核审核经济经济技术技术社会(操作)社会(操作)172.1 可行性分析n 2.1.1 2.
11、1.1 目的目的n 2.1.2 2.1.2 任务任务n 2.1.3 2.1.3 步骤步骤n 2.1.4 2.1.4 可行性分析报告的主要内容可行性分析报告的主要内容182.1.3 可行性分析的具体步骤(过程)可行性分析的具体步骤(过程)n 1.复查系统规模和目标复查系统规模和目标n 2.研究现行系统(目前正在使用的系统)研究现行系统(目前正在使用的系统)n 3.导出新系统的高层逻辑模型,进一步定义问题导出新系统的高层逻辑模型,进一步定义问题n 4.导出和评价供选择的方案,推荐较优方案导出和评价供选择的方案,推荐较优方案n 5.推荐行动方针推荐行动方针n 6.草拟开发计划草拟开发计划n 7.书写
12、可行性报告,提交审查书写可行性报告,提交审查191.1.复查系统规模和目标复查系统规模和目标n分析员访问关键人员,阅读和分析有关的材分析员访问关键人员,阅读和分析有关的材料,对问题定义阶段书写的关于规模和目标料,对问题定义阶段书写的关于规模和目标的报告书进一步复查确认,改正含糊或不确的报告书进一步复查确认,改正含糊或不确切的叙述,清晰地描述对目标系统的一切限切的叙述,清晰地描述对目标系统的一切限制和约束。制和约束。n这个步骤的工作,实质上是为了确保分析员这个步骤的工作,实质上是为了确保分析员正在解决的问题确实是要求他解决的问题。正在解决的问题确实是要求他解决的问题。明确问题明确问题202.1.
13、3 可行性研究具体步骤(过程)可行性研究具体步骤(过程)n 1.复查系统规模和目标复查系统规模和目标n 2.研究目前正在使用的系统研究目前正在使用的系统n 3.导出新系统的高层逻辑模型,进一步定义问题导出新系统的高层逻辑模型,进一步定义问题n 4.导出和评价供选择的方案,推荐较优方案导出和评价供选择的方案,推荐较优方案n 5.推荐行动方针推荐行动方针n 6.草拟开发计划草拟开发计划n 7.书写可行性报告,提交审查书写可行性报告,提交审查212.2.研究目前正在使用的系统研究目前正在使用的系统n目前正在使用的系统可能是手工的也可能有一个早期版本目前正在使用的系统可能是手工的也可能有一个早期版本的
14、软件系统。新系统必须优于原有系统才有开发的价值,的软件系统。新系统必须优于原有系统才有开发的价值,因此,研究现行系统是必要的一个步骤。因此,研究现行系统是必要的一个步骤。n总的来说,新系统,一方面要完成现行系统的基本功能,总的来说,新系统,一方面要完成现行系统的基本功能,另一方面,要克服现行系统的欠缺;另一方面,要克服现行系统的欠缺;n此外,旧系统的运行成本是一个重要的经济指标,新系统此外,旧系统的运行成本是一个重要的经济指标,新系统必须能增收或节支;必须能增收或节支;n阅读分析现有系统的文档资料和使用手册,实地考察,重阅读分析现有系统的文档资料和使用手册,实地考察,重点了解原系统可以做什么、
15、为什么这样做,还要了解使用点了解原系统可以做什么、为什么这样做,还要了解使用原系统的代价。原系统的代价。调查原有系调查原有系统的功能和统的功能和存在的问题存在的问题,使用维护成使用维护成本和经济效本和经济效益益22注意注意1 1:只调查功能和问题,不研究现行系统的:只调查功能和问题,不研究现行系统的原理和作法原理和作法n在了解上述这些信息的时候显然必须访问在了解上述这些信息的时候显然必须访问有关的人员。有关的人员。n这个步骤的目的是了解现有系统能做什么、这个步骤的目的是了解现有系统能做什么、为什么这么做,而不是了解它怎样做这些为什么这么做,而不是了解它怎样做这些工作。工作。n常见的错误做法是花
16、费过多时间去分析现常见的错误做法是花费过多时间去分析现有的系统。有的系统。只做调查和只做调查和问题表述问题表述23注意注意2 2:必要时,只画高层逻辑模型,不去用模:必要时,只画高层逻辑模型,不去用模型描述现行系统的细节型描述现行系统的细节n 分析员应该画出描绘现有系统的高层系统流程图,分析员应该画出描绘现有系统的高层系统流程图,并请有关人员检验他对现有系统的认识是否正确。并请有关人员检验他对现有系统的认识是否正确。千万不要花费太多时间去了解和描绘现有系统的实千万不要花费太多时间去了解和描绘现有系统的实现细节。现细节。24注意注意3 3:调查现行系统与相关系统的接口,这是:调查现行系统与相关系
17、统的接口,这是重要的约束来源重要的约束来源n没有一个系统是在没有一个系统是在“真空真空”中运行的,绝中运行的,绝大多数系统都和其他系统有联系。大多数系统都和其他系统有联系。n应该注意了解并记录现有系统和其他系统应该注意了解并记录现有系统和其他系统之间的接口情况,这是设计新系统时的重之间的接口情况,这是设计新系统时的重要约束条件。要约束条件。注意接口注意接口调查调查252.1.3 可行性分析具体步骤(过程)可行性分析具体步骤(过程)n 1.复查系统规模和目标复查系统规模和目标n 2.研究目前正在使用的系统研究目前正在使用的系统n 3.导出新系统的高层逻辑模型导出新系统的高层逻辑模型n 4.进一步
18、定义问题进一步定义问题n 5.导出和评价供选择的方案,推荐较优方案导出和评价供选择的方案,推荐较优方案n 6.推荐行动方针推荐行动方针n 7.草拟开发计划草拟开发计划n 8.书写可行性报告,提交审查书写可行性报告,提交审查263.3.导出新系统的高层逻辑模型导出新系统的高层逻辑模型n 优秀的设计过程通常总是从现有的物理系统出发,导优秀的设计过程通常总是从现有的物理系统出发,导出现有系统的逻辑模型,再参考现有系统的逻辑模型,出现有系统的逻辑模型,再参考现有系统的逻辑模型,设想目标系统的逻辑模型,最后根据目标系统的逻辑设想目标系统的逻辑模型,最后根据目标系统的逻辑模型建造新的物理系统。模型建造新的
19、物理系统。273.3.导出新系统的高层逻辑模型导出新系统的高层逻辑模型n通过前一步的工作,分析员对目标系统应该具有的通过前一步的工作,分析员对目标系统应该具有的基本功能和所受的约束已有一定了解,能够使用数基本功能和所受的约束已有一定了解,能够使用数据流图,描绘数据在系统中流动和处理的情况,从据流图,描绘数据在系统中流动和处理的情况,从而概括地表达出他对新系统的设想。而概括地表达出他对新系统的设想。n必要时,还应该有一个初步的数据字典,定义系统必要时,还应该有一个初步的数据字典,定义系统中使用的数据。数据流图和数据字典共同定义了新中使用的数据。数据流图和数据字典共同定义了新系统的逻辑模型,以后可
20、以从这个逻辑模型出发设系统的逻辑模型,以后可以从这个逻辑模型出发设计新系统。计新系统。282.1.3 可行性分析具体步骤(过程)可行性分析具体步骤(过程)n 1.复查系统规模和目标复查系统规模和目标n 2.研究目前正在使用的系统研究目前正在使用的系统n 3.导出新系统的高层逻辑模型导出新系统的高层逻辑模型n 4.进一步定义问题进一步定义问题n 5.导出和评价供选择的方案,推荐较优方案导出和评价供选择的方案,推荐较优方案n 6.推荐行动方针推荐行动方针n 7.草拟开发计划草拟开发计划n 8.书写可行性报告,提交审查书写可行性报告,提交审查294.4.进一步定义问题进一步定义问题n新系统的逻辑模型
21、实质上表达了分析员对新系统必新系统的逻辑模型实质上表达了分析员对新系统必须做什么的认识和设想。须做什么的认识和设想。n分析员应该和用户一起再次复查问题定义、工程规分析员应该和用户一起再次复查问题定义、工程规模和目标,这次复查应该把数据流图和数据字典作模和目标,这次复查应该把数据流图和数据字典作为讨论的基础。为讨论的基础。n如果分析员对问题有误解或者用户曾经遗漏了某些如果分析员对问题有误解或者用户曾经遗漏了某些要求,那么现在是发现和改正这些错误的时候了。要求,那么现在是发现和改正这些错误的时候了。304.4.进一步定义问题进一步定义问题n 可行性分析的前几个步骤实质上构成一个循环:可行性分析的前
22、几个步骤实质上构成一个循环:v 定义问题;定义问题;v 分析问题;分析问题;v 导出一个试探性的解;导出一个试探性的解;v 在此基础上再次定义问题,再一次分析这个问题,修改这个在此基础上再次定义问题,再一次分析这个问题,修改这个解;解;v 继续这个循环过程,直到提出的逻辑模型完全符合系统目标。继续这个循环过程,直到提出的逻辑模型完全符合系统目标。312.1.3 可行性分析具体步骤(过程)可行性分析具体步骤(过程)n 1.复查系统规模和目标复查系统规模和目标n 2.研究目前正在使用的系统研究目前正在使用的系统n 3.导出新系统的高层逻辑模型导出新系统的高层逻辑模型n 4.进一步定义问题进一步定义
23、问题n 5.导出和评价供选择的方案,推荐较优方案导出和评价供选择的方案,推荐较优方案n 6.推荐行动方针推荐行动方针n 7.草拟开发计划草拟开发计划n 8.书写可行性报告,提交审查书写可行性报告,提交审查325.5.导出和评价供选择的可行方案导出和评价供选择的可行方案n 从逻辑模型出发,导出若干个较高层次的从逻辑模型出发,导出若干个较高层次的(较抽象的较抽象的)物理解法,进行可行性分析,供物理解法,进行可行性分析,供比较和选择。比较和选择。(1 1)考虑技术可行性)考虑技术可行性v 导出可供选择的可行方案的最简单的途径,是从技导出可供选择的可行方案的最简单的途径,是从技术角度出发考虑解决问题的
24、不同方案。还可以使用术角度出发考虑解决问题的不同方案。还可以使用组合的方法导出若干种可能的物理系统。组合的方法导出若干种可能的物理系统。v 当从技术角度提出了一些可能的物理系统之后,应当从技术角度提出了一些可能的物理系统之后,应该根据技术可行性的考虑初步排除一些不现实的系该根据技术可行性的考虑初步排除一些不现实的系统。把技术上行不通的解法去掉之后,就剩下了一统。把技术上行不通的解法去掉之后,就剩下了一组技术上可行的方案。组技术上可行的方案。335.5.导出和评价供选择的导出和评价供选择的(可行方案可行方案)解法解法(2)考虑操作方面的可行性)考虑操作方面的可行性v 根据使用部门处理事务的原则和
25、习惯检查技术上可行根据使用部门处理事务的原则和习惯检查技术上可行的那些方案,看系统运行方式在用户组织内是否行得的那些方案,看系统运行方式在用户组织内是否行得通;现有的管理制度、人员素质、操作方式是否可行,通;现有的管理制度、人员素质、操作方式是否可行,去掉其中从操作方式或操作过程的角度看用户不能接去掉其中从操作方式或操作过程的角度看用户不能接受的方案。受的方案。(3)考虑经济可行性)考虑经济可行性v 接下来应该考虑经济方面的可行性接下来应该考虑经济方面的可行性估计余下的每估计余下的每个可能的系统的开发成本和运行费用,并且估计相对个可能的系统的开发成本和运行费用,并且估计相对于现有的系统而言这个
展开阅读全文