软件工程可行性研究课件

上传人:F****n 文档编号:88525261 上传时间:2019-04-30 格式:PPT 页数:44 大小:865KB
返回 下载 相关 举报
软件工程可行性研究课件_第1页
第1页 / 共44页
软件工程可行性研究课件_第2页
第2页 / 共44页
软件工程可行性研究课件_第3页
第3页 / 共44页
软件工程可行性研究课件_第4页
第4页 / 共44页
软件工程可行性研究课件_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《软件工程可行性研究课件》由会员分享,可在线阅读,更多相关《软件工程可行性研究课件(44页珍藏版)》请在金锄头文库上搜索。

1、可行性研究,1 可行性研究的任务和目的 2 可行性研究过程 3 可行性研究报告的文档格式 4 系统流程图 5 数据流图 6 数据字典 7 成本/效益分析 8 本章小结,1 可行性研究的任务和目的,1.可行性研究的任务 GB 8566-88 计算机软件开发规范中指出:可行性研究的主要任务是“了解客户的要求及现实环境,从技术、经济、操作和社会因素等三方面研究并论证本软件项目的可行性,编写可行性研究报告,制定初步项目开发计划。” 可行性研究的目的 可行性研究用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得开发。它不是解决而是确定问题是否值得解决。其实质是一次大幅简化和压缩了的系统分

2、析和设计过程。,2 可行性研究过程,可行性研究过程的一般步骤: 1.确认项目的目标和规模。 系统分析员对问题定义阶段书写的关于规模和目标的报告进一步复查确认,清晰地描述关于目标系统的一切限制与约束。 研究目前正在使用的系统。 实地考察现有系统,仔细阅读其文档资料和使用手册,确定其基本功能、工作流程以及其缺陷。 3.建立新系统的高层逻辑模型。 系统分析员在逐步明确目标系统应该具有的基本功能、处理流程和所受的约束的基础上,利用建立逻辑模型的工具,定义新系统的逻辑模型。能够利用数据流图描绘数据在系统中的流动和处理的情况,利用初步的数据字典定义系统中的数据。数据流图和数据字典共同定义了系统的逻辑模型,

3、以后可以从这个逻辑模型出发设计新的系统。,2 可行性研究过程,4.进一步定义问题。 分析员通过新系统的逻辑模型表达新系统必须做什么之后,应该和用户一起再次复查问题定义、工程规模和目标,以发现并改正分析员对某些问题的误解或者用户遗漏的某些问题。分析员定义问题,分析这个问题,导出一个试探性的解;在此基础上再次定义问题,再次分析这个问题,修改这个解;继续这个循环过程,直到提出的逻辑模型完全符合系统目标。 5.导出和评价各种供选择的方案 分析员在建立了完全符合系统目标的高层逻辑模型后,要给出若干个较高层次的(较抽象的)物理解法供选择和比较。一般地,首先从技术可行性出发,初步排除一些不现实的处理方案;然

4、后,从操作可行性出发,充分考虑用户的工作方式和习惯,将那些操作方式或操作过程不能被用户接受的方案剔除;再次,从经济可行性出发,估算余下各种方案的开发成本和运行费用,进行成本/效益分析,选择预期利润比较理想的方案;最后,分析员详细列出各种较理想方案制定进度表,估计各种方案在生命周期各个阶段的工作量,2 可行性研究过程,为项目负责人进行决策提供充分的依据。 6.推荐一个可行的方案。 根据前述可行性研究的结果,分析员应该作出是否继续进行这项开发工作的决定。如果结论肯定,则应该推荐一种最好的解法,并说明选择这个解决方案的理由。 7.草拟开发计划。 分析员应该为所推荐的方案草拟一份开发计划。该计划除了制

5、定工程进度表外,还应该估计需要的各类开发人员和各种资源,另外还应估计生命周期各个阶段的成本,最后还应给出下一阶段(需求分析)的详细进度表和成本估算。 8.编写文档并提交审查。 将上述可行性研究的各个步骤的工作成果写成正式的文档,提交用户、客户组织的主管以及评审组审查,以决定是否继续这项工程以及是否接受分析员推荐的方案。,3 可行性研究报告的文档格式,可行性研究文档的文档格式可参看GB8567-88计算机软件产品开发文件编制指南。,4 系统流程图,4.1 概述 分析员在进行可行性研究时需要了解和分析现有的系统,并概要地表达对现有系统的认识;在进入设计阶段还需要将设想的新系统的逻辑模型转变成物理模

6、型,因此需要描绘未来的物理系统的概貌。 系统流程图是概括地描绘物理系统的传统工具。其基本思想是用图形符号以黑盒子形式描述系统的各个部件(包括程序、文档、数据库和人工过程等)。 系统流程图表达的是数据在系统各部件之间的流动情况,而不是对数据进行处理处理的控制过程。值得注意的是,尽管系统流程图和程序流程图的某些符号形式相同,但系统流程图描述的是物理数据流图而不是程序数据流图。,4 系统流程图,4.2 系统流程图符号,4 系统流程图,4 系统流程图,4.2 系统流程图实例一:人工销售教材系统,4 系统流程图,4.3 系统流程图实例二:计算机售书系统,4 系统流程图,4.4 系统流程图的分层 面对复杂

7、的系统时,一个比较好的方法是分层次地描绘这个系统。方法是对高层系统流程图进行分解,分别把每个核心功能扩展到适当的详细程度。这样可以逐步深入地了解一个复杂系统。,5 数据流图,5.1 数据流图概述 数据流图(Data Flow Diagram,DFD)是一种图形化技术,它描绘信息流和数据流从输入到输入过程中所经历的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。数据流图有四种主要成分:源点/终点、处理、数据流和数据存储。 数据流图的基本功能是作为信息交流的工具,分析员把他对现有系统的认识或对目标系统的设想用数据流图描绘出来,供有关人员审查。 数据流图的另一

8、个主要用途是作为分析和设计的工具。分析员在研究现有的系统时通常使用系统流程图来表达他对这个系统的认识,这种方法形象具体,也比较容易验证其正确性。但是在用系统流程图描绘一个系统时,系统的功能和实现每个功能的具体方案是混合在一起的。分析员就会使用数据流图进一步总结现有的系统,着重描绘系统所完成的功能而不是系统的物理实现方案。,5 数据流图,5.2 数据流图实例一:订货系统 问题描述: 假设某厂的采购部每天需要一张订货报表,报表按照零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下列数据:零件编号,零件名称,定货数量,当前价格,主要供应商,次要供应商。零件入库或出库称

9、为事务。通过置放于仓库的CRT终端将事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。 如何画出上述订货系统的数据流图?,5 数据流图,绘制本系统的数据流图的详细过程: 1.从问题描述中提取数据流图的四种成分。 (1).从“采购部每天需要一张订货报表”以及“CRT终端将事务报告给定货系统”可知,采购员是数据终点,仓库管理员是数据源点; (2).从“采购部每天需要一张定货报表”,显然订货前他们需要一张这样的报表,因此必须有一个产生报表的处理。零件入库和出库的结果是改变了零件库存量,通常任何改变数据的操作都是处理,因此对事务的处理是另一个处理; (3).从“系统把定货报表呈

10、送到采购部”可知定货报表是一个数据流。事务需要记录到系统中,显然事务是另一个数据流; (4).产生报表和处理事务这两个处理在时间上明显不匹配每天只产生一次报表,而每当有一个事务发生时需要立即处理它。因此,用于产生定货报表的数据必须存放一段时间,也就是有一个数据存储。 将上面的分析结果用表格列出。,5 数据流图,画出基本系统模型 任何系统的基本模型都由若干个数据源点/终点以及一个处理组成,这个处理就代表了系统处理变换数据的基本功能。因此,从基本系统模型这样高的层次开始画数据流图是一种很好的思路。 定货系统的基本系统模型如下。,5 数据流图,5 数据流图,3.细化基本系统模型 基本系统模型通常很抽

11、象,接下来应该将其细化,描绘系统的主要功能。此时就可以根据从问题描述中提取的信息元素画出功能级的数据流图。如下所示。,5 数据流图,4.分解功能级数据流图 接下来需要对功能级数据流图中描绘的系统主要功能进一步分解,得到更细化的数据流图。 注意:当对数据流图分层细化时必须保持信息的连续性。也就是说,当把一个处理分解为一系列处理时,分解前和分解后的输入输出数据流必须相同。,5 数据流图,5.3 数据流图实例二:主文件修改系统 实例描述: 考虑一个修改磁带上主文件的系统。文件管理员把修改信息穿孔在卡片上,系统读入穿孔卡片上的信息并按照记录号把修改信息按照顺序排列好,然后系统逐个读入主文件上的记录,根

12、据记录上的校验码核对每个读入的记录,丢掉出错的记录,按照修改信息修改余下的记录,产生的新文件存储在磁盘上。最后,系统输出一份修改报告供文件管理员参阅。 请分层次地画出上述主文件修改系统的数据流图。,5 数据流图,绘制本系统的数据流图的简要过程: 本系统的数据源点和终点都是“文件管理员”,他既向系统提供修改信息,又从系统接收系统生成的修改报告。 系统的主要功能是接收修改信息、读主文件、核对记录、修改原始记录和产生修改报告。值得注意的是,问题陈述中所描述的“系统按照记录号把修改信息按照顺序排列好”是具体的实现方法。而在数据流图中无需描绘具体实现的方法。因此在本系统的数据流图中不需要包含“排序”功能

13、。类似地,“文件管理员把修改信息穿孔在卡片上,系统读入穿孔卡片上的信息”是系统接收信息的具体方法。在数据流图中无需描述这个具体的实现方案。因此,在本系统的数据流图上也不需要包含“穿卡片”和“读卡片”的功能。 本系统包含的数据和数据存储是修改信息、主文件和修改后的主文件。 下面的两个图描述本系统的基本系统模型和功能级的数据流图。,5 数据流图,5 数据流图,5 数据流图,5.4 数据流图实例三:患者监护系统 实例描述: 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化而延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统。 医院对患者监护系统的基

14、本要求是随时接收每个病人的生理信号(脉搏、体温、血压和心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息。此外,护士在需要时还可以要求系统输出某个指定的病人的病情报告。 请分层次地画出描述本系统功能的数据流图。,5 数据流图,绘制本系统的数据流图的简要过程: 从问题的陈述容易看出,本系统的数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。进一步分析问题陈述,从“系统定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。 从问题陈述还容易看出,本系统的数据终点是接收

15、警告信息和病情报告的值班护士。 系统对病人生理信号的处理功能是“接收信号”、“分析信号”和“产生警告信息”。此外,系统还应该具有“定时取样生理信号”、“更新日志”和“产生病情报告”的功能。 为了分析病人生理信号是否超出了医生规定的安全范围,应该存储“患者安全范围”信息。此外,定时记录病人生理信号所形成的“患者日志”显然也是一个数据存储。 本系统的基本系统模型和功能级数据流图如下图。,5 数据流图,5 数据流图,5 数据流图,5.3 命名 数据流图中的每个成分的命名是否恰当,直接影响到数据流图的可理解性。命名时通常要注意以下问题: 1.为数据流或数据存储命名。 (1).名字应该代表整个数据流或数

16、据存储的内容,而不是仅仅反映它的某些成分; (2).不要使用空洞、缺乏具体含义的名字,比如“数据”、“信息”、“输入”之类; (3).如果在为某个数据流或数据存储命名时遇到困难,很可能是对数据流图分解不成功造成的。 为数据流或数据存储命名。 (1).通常先为数据流命名,然后为其关联的处理命名; (2).名字应该能反映整个处理的功能,而不是它的一部分功能;,5 数据流图,5.4 画数据流图应注意的事项 1.合理地命名,有助于数据流图的理解和阅读; 编号的设置; 3.在分层数据流图中,应保持父图和子图的平衡,即两者的输入数据流和输出数据流必须一致; 4.局部数据存储 当某层数据流图中的数据存储不是父图中相应处理的外部接口,而只是本图中某些处理之间的数据接口,则这些数据存储为局部数据存储。在子图中出现的数据存储,可以不出现在父图中,画父图时只需画出处理逻辑之间的联系,不必画出各个处理逻辑内部的细节,有助于实现信息隐藏。 5.逐层分解,注意分解的连续性,概念清晰合理;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号