《软件工程课件之第2章-可行性研究(第五版)(张海潘编著)复习进程.ppt》由会员分享,可在线阅读,更多相关《软件工程课件之第2章-可行性研究(第五版)(张海潘编著)复习进程.ppt(88页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、软件工程课件之第2章-可行性研究(第五版)(张海潘编著)开始问题定义可性行研究可行否?项目实施计划终止项目的建议结束YN问题的定义与可性行研问题的定义与可性行研究究Who 为谁设计,用户是谁?为谁设计,用户是谁?What 要解决哪些问题?要解决哪些问题?Why 为什么要解决这些问题为什么要解决这些问题有用的软件有用的软件 3W问题定义阶段问题定义阶段目的:目的:弄清用户需要计算机解决的问题根本所在,以及弄清用户需要计算机解决的问题根本所在,以及项目所需的资源和经费。项目所需的资源和经费。任务:任务:在向用户调查的基础上,编写在向用户调查的基础上,编写关于系统规模和关于系统规模和目标的报告书目标
2、的报告书。例:教材销售系统例:教材销售系统n学生购买学校教材的手续可能是:先找系办公室开购学生购买学校教材的手续可能是:先找系办公室开购书申请(用于确定学生可购买的书),凭申请找教材书申请(用于确定学生可购买的书),凭申请找教材科开购书证明(确定是否卖完),向出纳员交付书款科开购书证明(确定是否卖完),向出纳员交付书款获得领书单,然后到书库找保管员领书。获得领书单,然后到书库找保管员领书。关于系统规模和目标的报告书关于系统规模和目标的报告书 1.项目名称:教材销售系统项目名称:教材销售系统2.问问 题:人工发售教材手续繁杂,且易出错。题:人工发售教材手续繁杂,且易出错。3.项项目目目目标标:建
3、建立立一一个个高高效效率率、无无差差错错的的微微机机教教材材销销售售系统。系统。4.项项目目规规模模:利利用用现现有有微微型型计计算算机机,软软件件开开发发费费用用不不超超过过5000元。元。5.初初步步想想法法:建建议议在在系系统统中中增增加加对对缺缺书书的的统统计计与与采采购购功功能。能。6.可可行行性性研研究究:建建议议进进行行大大约约10天天的的可可行行性性研研究究,研研究究费用不超过费用不超过500元。元。第第2章章 可行性研究可行性研究目的目的:n 用最小的代价在尽可能短的时间内确定问题是否能够解决。n 不是解决问题,而是确定问题是否值得去解决。说明该软件开发项目的实现在技术上、经
4、济上和社会条件上的说明该软件开发项目的实现在技术上、经济上和社会条件上的说明该软件开发项目的实现在技术上、经济上和社会条件上的说明该软件开发项目的实现在技术上、经济上和社会条件上的可行性;评述为合理地达到开发目标可能选择的各种方案。可行性;评述为合理地达到开发目标可能选择的各种方案。可行性;评述为合理地达到开发目标可能选择的各种方案。可行性;评述为合理地达到开发目标可能选择的各种方案。GB 8567-88GB 8567-88 计算机软件产品开发文件编制指南计算机软件产品开发文件编制指南计算机软件产品开发文件编制指南计算机软件产品开发文件编制指南 2.1 可行性研究的任务可行性研究的任务 可行性
5、研究的目的:可行性研究的目的:n不是解决问题,而是确定问题是否值得去解决。不是解决问题,而是确定问题是否值得去解决。可行性研究的实质:可行性研究的实质:是是是是“了解客户的要求及现实环境,从技术、经济和社会因了解客户的要求及现实环境,从技术、经济和社会因了解客户的要求及现实环境,从技术、经济和社会因了解客户的要求及现实环境,从技术、经济和社会因素等三方面研究并论证本软件项目的可行性,编写可行性素等三方面研究并论证本软件项目的可行性,编写可行性素等三方面研究并论证本软件项目的可行性,编写可行性素等三方面研究并论证本软件项目的可行性,编写可行性研究报告,制定初步项目开发计划。研究报告,制定初步项目
6、开发计划。研究报告,制定初步项目开发计划。研究报告,制定初步项目开发计划。”可行性研究的最根本任务可行性研究的最根本任务可行性研究的最根本任务可行性研究的最根本任务 对软件开发以后的行动方针提出建议对软件开发以后的行动方针提出建议对软件开发以后的行动方针提出建议对软件开发以后的行动方针提出建议。可行性研究的内容:可行性研究的内容:n首先进一步分析和澄清问题定义,导出系统的首先进一步分析和澄清问题定义,导出系统的逻辑模型;逻辑模型;n然后从系统逻辑模型出发,探索若干种可供选然后从系统逻辑模型出发,探索若干种可供选择的主要解法择的主要解法(即系统实现方案即系统实现方案);n对每种解法都研究它的可行
7、性对每种解法都研究它的可行性,至少应该从三至少应该从三方面研究每种解法的可行性方面研究每种解法的可行性。主要方面:主要方面:n技术可行性,使用现有的技术能实现这个系统技术可行性,使用现有的技术能实现这个系统吗吗?n经济可行性,这个系统的经济效益能超过它的经济可行性,这个系统的经济效益能超过它的开发成本吗开发成本吗?n操作可行性,系统的操作方式在这个用户组织操作可行性,系统的操作方式在这个用户组织内行得通吗内行得通吗?其他方面:其他方面:n运行可行性,系统的运行方式是否可行?运行可行性,系统的运行方式是否可行?n法律可行性,系统是否侵犯他人、集体或国家法律可行性,系统是否侵犯他人、集体或国家的利
8、益,是否违反法律?的利益,是否违反法律?n分析员应该为每个可行的解法制定一个粗略的分析员应该为每个可行的解法制定一个粗略的实现进度。实现进度。n如果问题没有可行的解,分析员应该建议停止如果问题没有可行的解,分析员应该建议停止这项开发工程,以避免时间、资源、人力和金这项开发工程,以避免时间、资源、人力和金钱的浪费;如果问题值得解,分析员应该推荐钱的浪费;如果问题值得解,分析员应该推荐一个较好的解决方案,并且为工程制定一个初一个较好的解决方案,并且为工程制定一个初步的计划。步的计划。n可行性研究需要的时间长短取决于工程的规模。可行性研究需要的时间长短取决于工程的规模。一般说来,可行性研究的成本只是
9、预期的工程一般说来,可行性研究的成本只是预期的工程总成本的总成本的5%10%。2.2 可行性研究过程可行性研究过程1.复查系统规模和目标复查系统规模和目标n对问题定义阶段书写的关于规模和目标的报告对问题定义阶段书写的关于规模和目标的报告书进一步复查确认。书进一步复查确认。2.研究目前正在使用的系统研究目前正在使用的系统n新的目标系统必须也能完成旧系统的基本功能;新的目标系统必须也能完成旧系统的基本功能;另一方面,新系统必须能解决旧系统中存在的另一方面,新系统必须能解决旧系统中存在的问题。问题。3.导出新系统的高层逻辑模型导出新系统的高层逻辑模型n现有的物理系统现有的物理系统现有系统的逻辑模型现
10、有系统的逻辑模型目目标系统的逻辑模型标系统的逻辑模型新的物理系统新的物理系统4.进一步定义问题进一步定义问题n分析员应该和用户一起再次复查问题定义、工分析员应该和用户一起再次复查问题定义、工程规模和目标。程规模和目标。可行性研究的前可行性研究的前4个步骤实质上构成一个循环。个步骤实质上构成一个循环。5.导出和评价供选择的解法导出和评价供选择的解法n首先从技术角度出发排除不可行方案;首先从技术角度出发排除不可行方案;n其次考虑操作可行性,去掉用户不能接受的方其次考虑操作可行性,去掉用户不能接受的方案;案;n接下来考虑经济可行性,估计余下的每个可能接下来考虑经济可行性,估计余下的每个可能的系统的开
11、发成本和运行费用,进行成本的系统的开发成本和运行费用,进行成本/效效益分析;益分析;n最后为每个在各方面都可行的系统制定实现进最后为每个在各方面都可行的系统制定实现进度表。度表。工程进度表工程进度表阶阶段段所需所需时间时间(月)(月)可行性研究可行性研究0.5需求分析需求分析1概要概要设计设计0.5详细设计详细设计1实现实现2总计总计56.推荐行动方针推荐行动方针n根据可行性研究结果应该做出的一个关键性决根据可行性研究结果应该做出的一个关键性决定是,是否继续进行这项开发工程。定是,是否继续进行这项开发工程。n若继续开发,选择一种最好的解法,说明选择若继续开发,选择一种最好的解法,说明选择这个解
12、决方案的理由。这个解决方案的理由。7.草拟开发计划草拟开发计划n分析员应该为所推荐的方案草拟一份开发计划,分析员应该为所推荐的方案草拟一份开发计划,制定工程进度表、估计对各类开发人员和各种制定工程进度表、估计对各类开发人员和各种资源的需要情况、估计系统生命周期每个阶段资源的需要情况、估计系统生命周期每个阶段的成本、给出下一个阶段的成本、给出下一个阶段(需求分析需求分析)的详细进的详细进度表和成本估计。度表和成本估计。项目实施计划项目实施计划1.系系统概述统概述 包包括括项项目目目目标标,主主要要功功能能,系系统统特特点点,以以及及关关于于开开发发工作的安排工作的安排2.系统系统资源资源 包括开
13、发和运行该系统所需要的各种资源包括开发和运行该系统所需要的各种资源 如硬件、软件、人员和组织机构等如硬件、软件、人员和组织机构等3.费用预算:分阶段的人员费用、机时费用及其他费用费用预算:分阶段的人员费用、机时费用及其他费用4.进度安排:各阶段起始时间、完成文档及验证方式进度安排:各阶段起始时间、完成文档及验证方式5.要交付要交付的产品清单的产品清单8.书写文档提交审查书写文档提交审查n把可行性研究各个步骤的工作结果写成清晰的把可行性研究各个步骤的工作结果写成清晰的文档,请用户、客户组织的负责人及评审组审文档,请用户、客户组织的负责人及评审组审查,以决定是否继续这项工程及是否接受分析查,以决定
14、是否继续这项工程及是否接受分析员推荐的方案。员推荐的方案。可行性研究报告的编写可行性研究报告的编写1 1 引言引言 1.1 1.1 编写目的编写目的 1.2 1.2 背景背景 1.3 1.3 定义定义 1.4 1.4 参考资料参考资料2 2 2 2 可行性研究的前提可行性研究的前提可行性研究的前提可行性研究的前提 2.1 2.1 2.1 2.1 要求要求要求要求 2.2 2.2 2.2 2.2 目标目标目标目标 2.3 2.3 2.3 2.3 条件、假定和限制条件、假定和限制条件、假定和限制条件、假定和限制 2.4 2.4 2.4 2.4 进行可行性研究的方法进行可行性研究的方法进行可行性研究
15、的方法进行可行性研究的方法 2.5 2.5 2.5 2.5 评价尺度评价尺度评价尺度评价尺度可行性研究报告的编写可行性研究报告的编写3 3 3 3 对现有系统的分析对现有系统的分析对现有系统的分析对现有系统的分析 3.1 3.1 3.1 3.1 数据流程和处理流程数据流程和处理流程数据流程和处理流程数据流程和处理流程 3.2 3.2 3.2 3.2 工作负荷工作负荷工作负荷工作负荷 3.3 3.3 3.3 3.3 费用开支费用开支费用开支费用开支 3.4 3.4 3.4 3.4 人员人员人员人员 3.5 3.5 3.5 3.5 设备设备设备设备 3.6 3.6 3.6 3.6 局限性局限性局限
16、性局限性4 4 所建议的系统所建议的系统所建议的系统所建议的系统 4.1 4.1 4.1 4.1 对所建议系统的说明对所建议系统的说明对所建议系统的说明对所建议系统的说明 4.2 4.2 4.2 4.2 数据流程和处理流程数据流程和处理流程数据流程和处理流程数据流程和处理流程 4.3 4.3 4.3 4.3 改进之处改进之处改进之处改进之处 4.4 4.4 4.4 4.4 影响影响影响影响 4.5 4.5 4.5 4.5 局限性局限性局限性局限性 4.6 4.6 4.6 4.6 技术条件方面的可行性技术条件方面的可行性技术条件方面的可行性技术条件方面的可行性可行性研究报告的编写可行性研究报告的
17、编写可行性研究报告的编写可行性研究报告的编写5 5 5 5 可选择的其它系统方案可选择的其它系统方案可选择的其它系统方案可选择的其它系统方案 5.1 5.1 5.1 5.1 可选择的其它系统可选择的其它系统可选择的其它系统可选择的其它系统1 1 1 1 5.2 5.2 5.2 5.2 可选择的其它系统可选择的其它系统可选择的其它系统可选择的其它系统2 2 2 2 .6 6 6 6 投资及收益分析投资及收益分析投资及收益分析投资及收益分析 6.1 6.1 6.1 6.1 支出支出支出支出 6.2 6.2 6.2 6.2 收益收益收益收益 6.3 6.3 6.3 6.3 收益收益收益收益/投资比投
18、资比投资比投资比 6.4 6.4 6.4 6.4 投资回收周期投资回收周期投资回收周期投资回收周期 6.5 6.5 6.5 6.5 敏感性分析敏感性分析敏感性分析敏感性分析7 7 7 7 社会条件方面的可行性社会条件方面的可行性社会条件方面的可行性社会条件方面的可行性 7.1 7.1 7.1 7.1 法律方面的可行性法律方面的可行性法律方面的可行性法律方面的可行性 7.2 7.2 7.2 7.2 使用方面的可行性使用方面的可行性使用方面的可行性使用方面的可行性2.3 系统流程图系统流程图 系统流程图:系统流程图:n是概括地描绘物理系统的传统工具。是概括地描绘物理系统的传统工具。n用图形符号以黑
19、盒子形式描绘组成系统的每个用图形符号以黑盒子形式描绘组成系统的每个部件部件(程序,文档,数据库,人工过程等程序,文档,数据库,人工过程等)。n表达的是表达的是数据在系统各部件之间流动数据在系统各部件之间流动的情况,的情况,而不是对数据进行加工处理的控制过程。而不是对数据进行加工处理的控制过程。2.3.1 符号符号 n基本符号:基本符号:5个,以概括的方式抽象地描绘个,以概括的方式抽象地描绘一个实际系统。一个实际系统。n系统符号:系统符号:11个,更具体的描绘物理系统。个,更具体的描绘物理系统。2.3.2 例子例子例例1:某装配厂有一座存放零件的仓库,仓库中现有的各种零某装配厂有一座存放零件的仓
20、库,仓库中现有的各种零件的数量以及每种零件的库存量临界值等数据记录在库存清件的数量以及每种零件的库存量临界值等数据记录在库存清单主文件上。当仓库零件数量发生变化时,应该及时修改库单主文件上。当仓库零件数量发生变化时,应该及时修改库存清单主文件。如果哪种零件的库存量少于它的库存临界值,存清单主文件。如果哪种零件的库存量少于它的库存临界值,则应该报告给采购部门以便定货,规定每天向采购部门送一则应该报告给采购部门以便定货,规定每天向采购部门送一次定货报告。次定货报告。该装配厂使用一台小型计算机,处理更新库存清单主文件该装配厂使用一台小型计算机,处理更新库存清单主文件和产生定货报告。零件库存量的每一次
21、变化称为一个事务,和产生定货报告。零件库存量的每一次变化称为一个事务,由放在仓库中由放在仓库中CRT终端输入到计算机中;系统中的库存清单终端输入到计算机中;系统中的库存清单程序对事务进行处理,更新存储在磁盘上的库存清单主文件,程序对事务进行处理,更新存储在磁盘上的库存清单主文件,并且把必要的订货信息写在磁带上。最后,每天由报告生成并且把必要的订货信息写在磁带上。最后,每天由报告生成程序读一次磁带,并且打印出订货报告。程序读一次磁带,并且打印出订货报告。部件:部件:包括程序、文档、数据库、人工过程等包括程序、文档、数据库、人工过程等n程序:程序:更新库存清单程序更新库存清单程序 产生定货报告程序
22、产生定货报告程序n文档:定货报告文档:定货报告n数据:磁盘上的库存清单主文件数据:磁盘上的库存清单主文件 磁带上的定货信息磁带上的定货信息 CRT终端输入事务终端输入事务n人工过程:无人工过程:无库存清单系统的系统流程图库存清单系统的系统流程图2.3.3 分层分层 n首先用一张高层次首先用一张高层次的系统流程图描绘的系统流程图描绘系统总体概貌,表系统总体概貌,表明系统的关键功能;明系统的关键功能;n然后分别把每个关然后分别把每个关键功能扩展到适当键功能扩展到适当的详细程度,画在的详细程度,画在单独的一页纸上。单独的一页纸上。第一层:描绘系统关键功能第一层:描绘系统关键功能(仅用基本符号)(仅用
23、基本符号)第二层:扩展系统关键功能第二层:扩展系统关键功能第三层:合成后的系统流程图第三层:合成后的系统流程图例例2:教材销售系统:教材销售系统n人工教材销售系统:先找系办公室开购书申请,人工教材销售系统:先找系办公室开购书申请,凭申请找教材科开购书证明,向出纳员交付书凭申请找教材科开购书证明,向出纳员交付书款获得领书单,然后到书库找保管员领书。款获得领书单,然后到书库找保管员领书。人工教材销售的系统流程图人工教材销售的系统流程图n计算机教材销售系统:由计算机实现有效性审计算机教材销售系统:由计算机实现有效性审查(不该购买或已卖完的教材),收书款和发查(不该购买或已卖完的教材),收书款和发书仍
24、由人工完成。开购书申请和购书证明可一书仍由人工完成。开购书申请和购书证明可一步完成,增加缺书统计和采购功能。步完成,增加缺书统计和采购功能。计算机计算机教材销售的系统流程图教材销售的系统流程图2.4 数据流图数据流图数据流图数据流图(DFD):n是一种图形化技术,它描绘信息流和数据从输是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。入移动到输出的过程中所经受的变换。n在数据流图中没有任何具体的物理部件,它只在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。是描绘数据在软件中流动和被处理的逻辑过程。2.4.1 符号符号基本符号:基本符号:
25、n数据源点数据源点/终点:终点:通常是人或部门,可重复表通常是人或部门,可重复表示;示;n处理:处理:一个处理框可以代表一系列程序、单个一个处理框可以代表一系列程序、单个程序或程序的一个模块;程序或程序的一个模块;n数据存储:数据存储:可以表示一个文件、文件的一部分、可以表示一个文件、文件的一部分、数据库的元素或记录的一部分等,数据存储是数据库的元素或记录的一部分等,数据存储是处于静止状态的数据;处于静止状态的数据;n数据流:数据流:描绘所有可能的数据流向,而不应该描绘所有可能的数据流向,而不应该描绘出现某个数据流的条件描绘出现某个数据流的条件,数据流是处于,数据流是处于运动中的数据。运动中的
26、数据。附加符号:附加符号:n星号(星号(*):表示):表示“与与”关系关系n加号(加号(+):表示):表示“或或”关系关系n异或(异或():表示互斥关系):表示互斥关系2.4.2 例子例子例例1:假设采购部每天需要一张定货报表,报假设采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件,定货的零件。对于每个需要再次定货的零件,应该列出下述数据:零件编号,零件名称,应该列出下述数据:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供定货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务
27、,通过放在应者。零件入库或出库称为事务,通过放在仓库中的仓库中的CRT终端把事务报告给定货系统。终端把事务报告给定货系统。当某种零件的库存量少于库存量的临界值时,当某种零件的库存量少于库存量的临界值时,就应该再次定货。就应该再次定货。画数据流图的步骤:画数据流图的步骤:1.从问题描述中提取数据流图的从问题描述中提取数据流图的4种成分种成分n数据的源点数据的源点/终点终点q“通过放在仓库中的通过放在仓库中的CRT终端把事务报告给定货系终端把事务报告给定货系统统”仓库管理员仓库管理员是数据源点;是数据源点;q“采购部每天需要一张定货报表采购部每天需要一张定货报表”采购员采购员是数是数据终点。据终点
28、。n处理处理q“采购部需要报表采购部需要报表”,产生报表产生报表;q事务的后果是改变零件库存量,因此对事务进行的事务的后果是改变零件库存量,因此对事务进行的加工是另一个处理加工是另一个处理处理事务。处理事务。n数据流:数据流:q“系统把定货报表送给采购部系统把定货报表送给采购部”定货报表定货报表;q“事务需要从仓库送到系统中事务需要从仓库送到系统中”事务事务。n数据存储:数据存储:q处理事务和产生报表这两个处理在时间上明显不匹处理事务和产生报表这两个处理在时间上明显不匹配,用来产生定货报表的定货信息必须存放一段时配,用来产生定货报表的定货信息必须存放一段时间间定货信息定货信息;q零件库存量和库
29、存量临界值需要存储零件库存量和库存量临界值需要存储库存清单。库存清单。源点:仓库管理员源点:仓库管理员终点:采购员终点:采购员处理:产生报表、处理事务处理:产生报表、处理事务数据流:数据流:定货报表定货报表事务事务零件编号零件编号零件名称零件名称定货数量定货数量目前价格目前价格主要供应者主要供应者次要供应者次要供应者零件编号零件编号事务类型事务类型数量数量数据存储:数据存储:定货信息定货信息同定货报表同定货报表库存清单库存清单零件编号零件编号库存量库存量库存量临界值库存量临界值2.画基本系统模型画基本系统模型n由若干个数据源点由若干个数据源点/终点和一个处理组成。终点和一个处理组成。定货系统的
30、基本系统模型定货系统的基本系统模型3.细化,描绘系统的主要功能(功能级数据流图)细化,描绘系统的主要功能(功能级数据流图)定货系统的功能级数据流图定货系统的功能级数据流图4.对系统主要功能进一步细化对系统主要功能进一步细化把处理事务的功能进一步分解后的数据流图把处理事务的功能进一步分解后的数据流图细化时注意:细化时注意:n当进一步分解涉及如何具体的实现一个功能时当进一步分解涉及如何具体的实现一个功能时就不应该再分解了。就不应该再分解了。n当对数据流图分层细化时必须保持信息连续性,当对数据流图分层细化时必须保持信息连续性,也就是说,当把一个处理分解为一系列处理时,也就是说,当把一个处理分解为一系
31、列处理时,分解前和分解后的输入输出数据流必须相同。分解前和分解后的输入输出数据流必须相同。n注意对处理进行编号的方法。注意对处理进行编号的方法。2.4.3 命名命名 1.为数据流为数据流(或数据存储或数据存储)命名命名n完整性;完整性;n具体性;具体性;n起名字遇到了困难时,试试重新分解。起名字遇到了困难时,试试重新分解。2.为处理命名为处理命名n通常先为数据流命名,然后再为与之相关联的通常先为数据流命名,然后再为与之相关联的处理命名;处理命名;n完整性;完整性;n及物动词及物动词+宾语,具体性;宾语,具体性;n通常名字中仅包括一个动词,否则进行分解;通常名字中仅包括一个动词,否则进行分解;n
32、命名时遇到困难,应考虑重新分解。命名时遇到困难,应考虑重新分解。3.为数据源点为数据源点/终点命名终点命名n采用它们在问题域中习惯的名字。采用它们在问题域中习惯的名字。2.4.4 用途用途n作为交流信息的工具作为交流信息的工具q供有关人员审查确认供有关人员审查确认q供用户理解和评价供用户理解和评价q数据流图应该分层,超过数据流图应该分层,超过9个时应该画分图个时应该画分图 n作为分析和设计的工具作为分析和设计的工具q描绘系统所完成的功能描绘系统所完成的功能 q辅助物理系统的设计时,以定时要求为指南,画出辅助物理系统的设计时,以定时要求为指南,画出许多组自动化边界,对应不同的物理系统。许多组自动
33、化边界,对应不同的物理系统。q导出更详细的设计步骤导出更详细的设计步骤面向数据流的设计方法面向数据流的设计方法 以批量方式更新库存清单以批量方式更新库存清单以联机方式更新库存清单以联机方式更新库存清单例例2:高考录取统分子系统高考录取统分子系统 功能如下:功能如下:(1)计算标准分计算标准分根据考生原始分计算标根据考生原始分计算标准分,存入考生分数文件;准分,存入考生分数文件;(2)计算录取线分计算录取线分根据标准分和招生计根据标准分和招生计划文件中的招生人数,计算录取线分,存入录划文件中的招生人数,计算录取线分,存入录取线文件。取线文件。1.提取数据流图的四种成分提取数据流图的四种成分n数据
34、源点和终点:数据源点和终点:考生考生n处理:处理:(1)计算标准分计算标准分 (2)计算录取线分计算录取线分n数据存储:数据存储:(1)考生分数文件考生分数文件 (2)招生计划文件招生计划文件 (3)录取线文件录取线文件n数据流:数据流:原始分;标准分;原始分;标准分;招生人数;录取线分招生人数;录取线分2.画基本数据流图画基本数据流图3.画功能级数据流图画功能级数据流图 例例3:教材销售系统:教材销售系统n人工:先找系办公室开购书申请,凭申请找教人工:先找系办公室开购书申请,凭申请找教材科开购书证明,向出纳员交付书款获得领书材科开购书证明,向出纳员交付书款获得领书单,然后到书库找保管员领书。
35、单,然后到书库找保管员领书。n计算机:包括销售和采购两大功能。计算机:包括销售和采购两大功能。q销售时,根据学生用书表和教材库存清单对购书单销售时,根据学生用书表和教材库存清单对购书单进行有效性审查,通过审查后得到有效购书单,并进行有效性审查,通过审查后得到有效购书单,并将缺书信息写入缺书表。交完款后开领书单,根据将缺书信息写入缺书表。交完款后开领书单,根据领书单更新教材库存清单。领书单更新教材库存清单。q采购时,将缺书表中的信息汇总生成采购单,新书采购时,将缺书表中的信息汇总生成采购单,新书进库时更新教材库存清单。进库时更新教材库存清单。人工教材销售系统的数据流图人工教材销售系统的数据流图基
36、本数据流图基本数据流图功能级数据流图功能级数据流图销售功能细化的数据流图销售功能细化的数据流图采购功能细化的数据流图采购功能细化的数据流图2.5 数据字典数据字典 数据字典:数据字典:n是关于数据的信息的集合,也就是对数据流图是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。中包含的所有元素的定义的集合。n数据流图和数据字典共同构成系统的逻辑模型。数据流图和数据字典共同构成系统的逻辑模型。2.5.1 数据字典的内容数据字典的内容 数据字典的组成:数据字典的组成:n数据流数据流n数据流分量数据流分量(即数据元素即数据元素)n数据存储数据存储n处理处理(用其它工具描述更方便,如
37、用其它工具描述更方便,如IPO图图)在数据字典中记录数据元素的下列信息:在数据字典中记录数据元素的下列信息:n一般信息一般信息n定义定义n使用特点使用特点n控制信息控制信息n分组信息分组信息2.5.2 定义数据的方法定义数据的方法方法:方法:对数据自顶向下分解。对数据自顶向下分解。数据组成方式数据组成方式(三种基本类型三种基本类型):n顺序顺序 以确定次序连接两个或多个分量;以确定次序连接两个或多个分量;n选择选择 从两个或多个可能的元素中选取一个;从两个或多个可能的元素中选取一个;n重复重复 即把指定的分量重复零次或多次。即把指定的分量重复零次或多次。附加类型:附加类型:n可选可选 即一个分
38、量是可有可无的即一个分量是可有可无的(重复零次或一重复零次或一次次)。符号:符号:n=意思是等价于意思是等价于(或定义为或定义为);n+意思是和意思是和(即,连接两个分量即,连接两个分量);n 意思是或意思是或(即,从方括弧内列出的若干个即,从方括弧内列出的若干个分量中选择一个分量中选择一个),通常用,通常用“|”号隔开供选择号隔开供选择的分量;的分量;n 意思是重复意思是重复(即,重复花括弧内的分量即,重复花括弧内的分量);常;常常使用上限和下限进一步注释表示重复的花括常使用上限和下限进一步注释表示重复的花括弧。弧。n()意思是可选意思是可选(即,圆括弧里的分量可有可无即,圆括弧里的分量可有
39、可无)。例例1:标识符标识符=字母字符字母字符+字母数字串字母数字串字母数字串字母数字串=0字母或数字字母或数字7字母或数字字母或数字=字母字符数字字符字母字符数字字符 例例2:购书单购书单=学号学号+姓名姓名+书号书号+数量数量+单价单价+总价总价+书书费合计费合计学生用书表学生用书表=学院编号学院编号+专业编号专业编号+年级年级+书号书号年级年级=1|2|3|4 学号学号=10数字数字102.5.3 数据字典的用途数据字典的用途n数据字典最重要的用途是作为分析阶段的工具;数据字典最重要的用途是作为分析阶段的工具;n数据字典中包含的每个数据元素的控制信息是数据字典中包含的每个数据元素的控制信
40、息是很有价值的。很容易估计改变一个数据将产生很有价值的。很容易估计改变一个数据将产生的影响;的影响;n数据字典是开发数据库的第一步,而且是很有数据字典是开发数据库的第一步,而且是很有价值的一步。价值的一步。2.5.4 数据字典的实现数据字典的实现n计算机实现:计算机实现:目前,数据字典几乎总是作为目前,数据字典几乎总是作为CASE(计算机辅助软件工程)(计算机辅助软件工程)“结构化分析结构化分析与设计工具与设计工具”的一部分实现的。在开发大型软的一部分实现的。在开发大型软件系统的过程中,数据字典的规模和复杂程度件系统的过程中,数据字典的规模和复杂程度迅速增加,人工维护数据字典几乎是不可能的。迅
41、速增加,人工维护数据字典几乎是不可能的。n人工实现:人工实现:采用卡片形式书写数据字典,每张采用卡片形式书写数据字典,每张卡片上保存描述一个数据的信息。每张卡片上卡片上保存描述一个数据的信息。每张卡片上主要应该包含下述这样一些信息:名字、别名、主要应该包含下述这样一些信息:名字、别名、描述、定义、位置。描述、定义、位置。名字:定货报表名字:定货报表别名:定货信息别名:定货信息描描述述:每每天天一一次次送送给给采采购购员员的的需需要要定定货的零件表货的零件表定义:定货报表定义:定货报表=零件编号零件编号+零件名称零件名称 +定货数量定货数量+目前价格目前价格+主要供主要供 应者应者+次要供应者次
42、要供应者位置:输出到打印机位置:输出到打印机名字:零件编号名字:零件编号别名:别名:描述:惟一地标识库存清单中一个特描述:惟一地标识库存清单中一个特定零件的关键域定零件的关键域定义:零件编号定义:零件编号=8字符字符8位置:定货报表位置:定货报表 定货信息定货信息 库存清单库存清单名字:定货数量名字:定货数量别名:别名:描述:某个零件一次定货的数量描述:某个零件一次定货的数量定义:定货数量定义:定货数量=1=1数字数字55位置:定货报表位置:定货报表 定货信息定货信息2.6 成本成本/效益分析效益分析n成本成本/效益分析的目的正是要从经济角度分析效益分析的目的正是要从经济角度分析开发一个特定的
43、新系统是否划算,从而帮助客开发一个特定的新系统是否划算,从而帮助客户组织的负责人正确地作出是否投资于这项开户组织的负责人正确地作出是否投资于这项开发工程的决定。发工程的决定。2.6.1 成本估计成本估计 1.代码行技术代码行技术n方法:通常根据经验和历史数据估计实现一个方法:通常根据经验和历史数据估计实现一个功能需要的源程序行数。一旦估计出源代码行功能需要的源程序行数。一旦估计出源代码行数以后,用每行代码的平均成本乘以行数就可数以后,用每行代码的平均成本乘以行数就可以确定软件的成本。每行代码的平均成本主要以确定软件的成本。每行代码的平均成本主要取决于软件的复杂程度和工资水平。取决于软件的复杂程
44、度和工资水平。n特点:简单;当有以往开发类似工程的历史数特点:简单;当有以往开发类似工程的历史数据可供参考时,这个方法是非常有效的。据可供参考时,这个方法是非常有效的。功能功能生产率生产率(行行/人月人月)估计行数估计行数每行成本每行成本(元行元行)成本成本(元元)人力人力(人月人月)获取实时数据获取实时数据92840108907209.1更新数据库更新数据库1021210546534011.8脱机分析脱机分析13460072432004.4产生报告产生报告14545033148503.1实时控制实时控制80110013514850013.7总计总计36261042.1代码行技术分析一个过程控
45、制系统:代码行技术分析一个过程控制系统:2.任务分解技术任务分解技术n方法:首先把软件开发工程分解为若干个相对方法:首先把软件开发工程分解为若干个相对独立的任务。再分别估计每个单独的开发任务独立的任务。再分别估计每个单独的开发任务的成本,最后累加起来得出软件开发工程的总的成本,最后累加起来得出软件开发工程的总成本。估计每个任务的成本时,通常先估计完成本。估计每个任务的成本时,通常先估计完成该项任务需要用的人力成该项任务需要用的人力(以人月为单位以人月为单位),再,再乘以每人每月的平均工资而得出每个任务的成乘以每人每月的平均工资而得出每个任务的成本。本。任务分解技术估计软件开发成本:任务分解技术
46、估计软件开发成本:任任务务估估计计人力(人月)人力(人月)元人月元人月 成本(元)成本(元)需求分析需求分析5.01020051000设计设计15.09600144000编码编码和和单单元元测试测试8.0795063600综合测试综合测试16.58700143550总计总计44.54021503.自动估计成本技术自动估计成本技术 n方法:采用自动估计成本的软件工具方法:采用自动估计成本的软件工具n特点:可以减轻人的劳动,并且使得估计的结特点:可以减轻人的劳动,并且使得估计的结果更客观。但是,采用这种技术必须有长期搜果更客观。但是,采用这种技术必须有长期搜集的大量历史数据为基础,并且需要有良好的
47、集的大量历史数据为基础,并且需要有良好的数据库系统支持。数据库系统支持。2.6.2 成本成本/效益分析的方法效益分析的方法 n成本成本/效益分析要估计开发成本、运行费用和效益分析要估计开发成本、运行费用和新系统将带来的经济效益。新系统将带来的经济效益。n运行费用:取决于系统的操作费用运行费用:取决于系统的操作费用(操作员人操作员人数,工作时间,消耗的物资等等数,工作时间,消耗的物资等等)和维护费用。和维护费用。n系统的经济效益:等于因使用新系统而增加的系统的经济效益:等于因使用新系统而增加的收入加上使用新系统可以节省的运行费用。收入加上使用新系统可以节省的运行费用。成本成本/效益分析涉及的效益
48、分析涉及的4个概念:个概念:1.货币的时间价值货币的时间价值n通常用利率的形式表示货币的时间价值。通常用利率的形式表示货币的时间价值。n假设年利率为假设年利率为 i,如果现在存入,如果现在存入 P 元,则元,则 n 年年后可以得到的钱数为后可以得到的钱数为 F=P(1+i)nn反之,如果反之,如果 n 年后能收入年后能收入 F 元钱,那么这些钱元钱,那么这些钱的现在价值是的现在价值是 P=F/(1+i)n 例子2.投资回收期投资回收期n所谓投资回收期就是使累计的经济效益等于最所谓投资回收期就是使累计的经济效益等于最初投资所需要的时间。初投资所需要的时间。n通常用投资回收期衡量一项开发工程的价值
49、。通常用投资回收期衡量一项开发工程的价值。例:投资回收期例:投资回收期=2+774.88/1779.44=2.44年年3.纯收入纯收入n纯收入是在整个生命周期之内系统的累计经济纯收入是在整个生命周期之内系统的累计经济效益效益(折合成现在值折合成现在值)与投资之差。与投资之差。n这相当于比较投资开发一个软件系统和把钱存这相当于比较投资开发一个软件系统和把钱存在银行中在银行中(或贷给其他企业或贷给其他企业)这两种方案的优劣。这两种方案的优劣。例:纯收入例:纯收入=9011.94 5000=4011.94元元 4.投资回收率投资回收率n用来衡量投资效益的大小,并且可以把它和年用来衡量投资效益的大小,
50、并且可以把它和年利率相比较。利率相比较。P=F1/(1+j)+F2/(1+j)2+Fn(1+j)n 其中:其中:P是现在的投资额;是现在的投资额;Fi是第是第i年年底的效年年底的效益;益;n是系统的使用寿命;是系统的使用寿命;j是投资回收率。是投资回收率。例:投资回收率例:投资回收率=41%42%第2章小结2.1 可行性研究的任务:技术技术技术技术,经济经济经济经济,操作操作操作操作,社社社社会会会会,抉择抉择抉择抉择2.2 可行性研究过程:7 步骤2.3 系统流程图:数据在系统(人,软,硬)各部件之间流动2.4 数据流图:源点或终点,处理,数据存储和数据流2.5 数据字典:流,元素,存储,处