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