《可行性报告-软件工程第3章可行性分析与软件开发计划.ppt》由会员分享,可在线阅读,更多相关《可行性报告-软件工程第3章可行性分析与软件开发计划.ppt(61页珍藏版)》请在第一文库网上搜索。
1、第三讲第三讲 可行性分析与软件开发计划可行性分析与软件开发计划第第3章章 可行性分析与软件开发计划可行性分析与软件开发计划3.1 可行性研究的任务可行性研究的任务3.3 可行性研究过程可行性研究过程3.3 系统流程图系统流程图3.4 成本成本/效益分析效益分析3.5 小结小结2022-8-22 当我们在着手做任何一件工作以前,必须明确工当我们在着手做任何一件工作以前,必须明确工作的性质、任务,制定完成任务的计划,这是非常必作的性质、任务,制定完成任务的计划,这是非常必要的。同样对于软件产品的开发,显然也应该解决好要的。同样对于软件产品的开发,显然也应该解决好这样类似的问题,明确该软件产品开发的
2、任务,以及这样类似的问题,明确该软件产品开发的任务,以及完成任务的价值从而制定出完成任务的计划。那么问完成任务的价值从而制定出完成任务的计划。那么问题的定义和可性行研究就是制定软件系统的计划的第题的定义和可性行研究就是制定软件系统的计划的第一步。一步。 所以在软件工程中把这一步称为所以在软件工程中把这一步称为 计划时期。计划时期。问题的定义与可性行研究问题的定义与可性行研究开始开始问题定义问题定义可性行研究可性行研究 可行否?可行否?项目实施计划项目实施计划终止项目的建议终止项目的建议结束结束YN问题的定义与可性行研究问题的定义与可性行研究计划时期的工作流程图计划时期的工作流程图为谁设计,用户
3、是谁?为谁设计,用户是谁?要解决哪些问题?要解决哪些问题?为什么要解决这些问题为什么要解决这些问题 有用的软件有用的软件 Win CE1.0Win CE1.0问题的定义与可性行研究问题的定义与可性行研究项目来源项目来源合同:为别人做;合同:为别人做;立项:为自己做;立项:为自己做;失败:无盈利失败:无盈利赔钱赔钱声誉影响声誉影响官司官司失败:尽赔钱失败:尽赔钱公司倒闭公司倒闭东山再起难!东山再起难!学到的远比失去的多! 任何工程项目均应进行可行性研究。任何工程项目均应进行可行性研究。 软件工程项目可行性研究软件工程项目可行性研究实质实质是一次大大压是一次大大压缩和简化了的分析和设计过程,主要在
4、缩和简化了的分析和设计过程,主要在较高层次较高层次上以较抽象的方式进行,其上以较抽象的方式进行,其目的目的是在尽可能短的是在尽可能短的时间内以最小的代价确定该项目时间内以最小的代价确定该项目是否能够开发,是否能够开发,是否值得开发是否值得开发。 3.1 现状调查和问题的定义现状调查和问题的定义 目的目的: :弄清楚用户要求计算机解决什么问题弄清楚用户要求计算机解决什么问题任务任务: :编写系统目标与规范说明书编写系统目标与规范说明书可行性研究可行性研究3.1 可行性研究的任务可行性研究的任务3.2 可行性研究的内容可行性研究的内容技术可行性技术可行性经济可行性经济可行性举例举例操作可行性操作可
5、行性3.3 可行性研究过程可行性研究过程1. 1. 复查系统规模和目标复查系统规模和目标3. 3. 研究目前正在使用的系统研究目前正在使用的系统3. 3. 导出新系统的高层逻辑模型导出新系统的高层逻辑模型4. 4. 进一步定义问题进一步定义问题5. 5. 导出和评价供选择的解法导出和评价供选择的解法6. 6. 推荐行动方针推荐行动方针7. 7. 草拟开发计划草拟开发计划8. 8. 书写文档提交审查书写文档提交审查可行性研究的具体步骤可行性研究的具体步骤1 1、确定项目规模和目标,明确限制和约束。、确定项目规模和目标,明确限制和约束。 我们认为用户要的我们认为用户要的 用户要的用户要的? ?2、
6、研究老系统、研究老系统 解决老系统问题解决老系统问题老系统老系统功能功能新增新增功能功能 注:注: 注意了解与其注意了解与其它系统的接口。它系统的接口。? ? 新系统效益新系统效益 老系统效益老系统效益 可行性研究的具体步骤可行性研究的具体步骤3、导出高层逻辑模型、导出高层逻辑模型(conceptual design)抽象抽象实现实现改进改进老系统老系统模型模型新模型新模型新系统新系统应该告诉用户应该告诉用户“What”而不是而不是“How”可行性研究的具体步骤可行性研究的具体步骤4 4、复查和重新定义、复查和重新定义 1 1)复查定义)复查定义 2 2)导出逻辑模型)导出逻辑模型 3 3)从
7、新定义。)从新定义。注:此时合同未签,应考虑成本,不宜反复太多次。注:此时合同未签,应考虑成本,不宜反复太多次。可行性研究的具体步骤可行性研究的具体步骤5、导出和评价多种解法、导出和评价多种解法目标:根据前面定义的系统逻辑模型,导出若干个较高层次目标:根据前面定义的系统逻辑模型,导出若干个较高层次的物理解法供选择的物理解法供选择考察角度考察角度技术可行性技术可行性: : 初步排除一些不现实的系统初步排除一些不现实的系统操作可行性操作可行性: : 分析员应该根据使用部门处理事务的原则分析员应该根据使用部门处理事务的原则和习惯检查技术上可行的那些方案。和习惯检查技术上可行的那些方案。经济可行性经济
8、可行性: : 开发成本和运行费用,并且估计相对于现开发成本和运行费用,并且估计相对于现有的系统而言这个系统可以节省的开支或可以增加的收入。有的系统而言这个系统可以节省的开支或可以增加的收入。在这些估计数字的基础上,对每个可能的系统进行成本在这些估计数字的基础上,对每个可能的系统进行成本/ /效益分析。效益分析。为每个在技术、操作和经济等方面都为每个在技术、操作和经济等方面都可行的可行的系统制定实现进系统制定实现进度表,这个进度表不需要度表,这个进度表不需要( (也不可能也不可能) )制定得很详细,通常只制定得很详细,通常只需要估计生命周期每个阶段的工作量。需要估计生命周期每个阶段的工作量。可行
9、性研究的具体步骤可行性研究的具体步骤5 5、导出和评价多种解法、导出和评价多种解法进度表进度表经济上合算经济上合算技术上可行技术上可行操作上可行操作上可行技术上不可行技术上不可行用户用户不不可可能能操操作作不合算不合算可行性研究的具体步骤可行性研究的具体步骤6 6、推荐行动方针、推荐行动方针Yes or No?NoYesWhy?Which one is the best?Why? (cost / benefit)8、审查、存档、审查、存档7、编写可行性报告(开发计划)、编写可行性报告(开发计划) 任务分解,确定负责人任务分解,确定负责人 大致进度规划大致进度规划 财务预算财务预算 风险分析及对
10、策风险分析及对策粗略粗略 系统目标和范围的定义系统目标和范围的定义 - -要解决的根本问题、达到目要解决的根本问题、达到目标所需的资源和经费;标所需的资源和经费;对现行系统进行分析研究对现行系统进行分析研究 - -现有系统的物理模型和逻现有系统的物理模型和逻辑模型;(入口:现有系统的组织结构)辑模型;(入口:现有系统的组织结构)导出新系统的逻辑模型导出新系统的逻辑模型;(解决了有关问题);(解决了有关问题)设计新系统的物理方案设计新系统的物理方案;(最先进的方案、实用、基本;(最先进的方案、实用、基本方案)方案)推荐可行的方案推荐可行的方案 ;(包括推荐理由);(包括推荐理由)编写可行性研究报
11、告编写可行性研究报告。(结论:继续、延期和拒绝)。(结论:继续、延期和拒绝)草拟开发计划草拟开发计划工程进度表工程进度表开发人员开发人员资源资源估计系统生命周期每个阶段的成本估计系统生命周期每个阶段的成本给出需求分析的详细进度表和成本估计给出需求分析的详细进度表和成本估计注意事项注意事项标书标书 :我国对软件成本认识不足:我国对软件成本认识不足困难:就是缺乏数据估计,导致估计不科学;困难:就是缺乏数据估计,导致估计不科学;应根据应根据项目复杂度、熟悉程度、规模等科学计划。尤项目复杂度、熟悉程度、规模等科学计划。尤其在时间计划上,要牢牢记住,人数与工作日不能简其在时间计划上,要牢牢记住,人数与工
12、作日不能简单互换。单互换。因为人员的增加与流动必然要增加培训、交因为人员的增加与流动必然要增加培训、交流所占用的时间和资源,也就会影响项目的进度,所流所占用的时间和资源,也就会影响项目的进度,所以计划时必须考虑。要留有缓冲时间,将缓冲时间用以计划时必须考虑。要留有缓冲时间,将缓冲时间用到不确定的事情上。到不确定的事情上。 可行性研究报告的编写可行性研究报告的编写可行性研究报告的编写可行性研究报告的编写可行性研究报告的编写可行性研究报告的编写3.3 系统流程图系统流程图系统流程图是系统流程图是概括地描绘物理系统的传统工具概括地描绘物理系统的传统工具。它的基本思想是它的基本思想是用图形符号以用图形
13、符号以黑盒子黑盒子形式形式描绘组成系描绘组成系统的每个统的每个部件部件( (程序,文档,数据库,人工过程等程序,文档,数据库,人工过程等) )。系统流程图表达的是数据在系统各部件之间流动的情系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程,因此尽况,而不是对数据进行加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是同,但是它却是物理数据流图物理数据流图而不是程序流程图。而不是程序流程图。不关心内部不关心内部细节细节3.3 系统流程图系统流程图系统流程图:信息在各部件之间流动的情
14、况;系统流程图:信息在各部件之间流动的情况;程序流程图:程序对信息进行加工的控制过程。程序流程图:程序对信息进行加工的控制过程。基本符号基本符号 -以概括的方式抽象地描绘一个实际系统所用符号以概括的方式抽象地描绘一个实际系统所用符号 系统符号系统符号- 具体地描绘一个物理系统所用符号具体地描绘一个物理系统所用符号3.3 系统流程图系统流程图绘图工具:绘图工具:Microsoft Microsoft VisioVisio1.1.某工厂的库存管理流程某工厂的库存管理流程 某某装配厂装配厂有一个存放零件的仓库,仓库中现有许多有一个存放零件的仓库,仓库中现有许多种零件及零件的数量等项数据。其需要加工的
15、数据是每种零件及零件的数量等项数据。其需要加工的数据是每当仓库中的零件数量发生变化时,就应该及时修改库存当仓库中的零件数量发生变化时,就应该及时修改库存清单,如果那种零件的库存量少于它的库存临界值,则清单,如果那种零件的库存量少于它的库存临界值,则应该报告个采购部门以便定货,规定每天向采购部门送应该报告个采购部门以便定货,规定每天向采购部门送一次定货报告。一次定货报告。 该该装配厂装配厂使用一台小型计算机处理更新库存清单库使用一台小型计算机处理更新库存清单库和产生定货报告的任务,请用系统流程图描述该过程。和产生定货报告的任务,请用系统流程图描述该过程。二二. .示例示例图图3.3 库存清单系统
16、的系统流程图库存清单系统的系统流程图2.2.装配厂零件库存业务装配厂零件库存业务1)系统描述)系统描述2)系统基本流程)系统基本流程零件库存量的每一次变零件库存量的每一次变化称为一个事务。由放化称为一个事务。由放在仓库中的在仓库中的CRT的终端的终端输入到计算机中。输入到计算机中。3)系统流程图)系统流程图信息流动方向:从上到下、从左到右;信息流动方向:从上到下、从左到右;分层描述:从简单到详细;分层描述:从简单到详细;数据状态变化:一种数据必然通过至数据状态变化:一种数据必然通过至少一次处理转变为另一种数据少一次处理转变为另一种数据/ /文件。文件。2 2、成绩管理系统、成绩管理系统1)系统描述)系统描述2)系统基本流程)系统基本流程3)系统流程图)系统流程图练习练习人工销售教材人工销售教材某学校规定学生领取教材过程如下,请画出在此过程的系某学校规定学生领取教材过程如下,请画出在此过程的系统流程图。统流程图。 1 1. .每班推代表一人,填写集体购书单,申请购书。每班推代表一人,填写集体购书单,申请购书。2 2. .由各系教学秘书审购书单,去掉不属该班本学期使用的由各系教学秘书审购书