《第2章性研究1》由会员分享,可在线阅读,更多相关《第2章性研究1(56页珍藏版)》请在金锄头文库上搜索。
1、复习n软件危机软件危机n软件工程软件工程n软件生命周期软件生命周期n软件过软件过程程技术技术管理管理传统方法学传统方法学面向对象方法学面向对象方法学软件定义软件定义软件开发软件开发运行维护运行维护问题定义问题定义可行性研究可行性研究需求分析需求分析编码和单元测试编码和单元测试总体设计总体设计详细设计详细设计综合测试综合测试问题定义n目的目的:弄清楚用户要求计算机解决什么问题弄清楚用户要求计算机解决什么问题n任务任务: 编写编写“系统目标与规范说明系统目标与规范说明” 系统目标与规范说明书系统目标与规范说明书1 1、项目:教材销售系统、项目:教材销售系统2 2、问题:人工销售教材手续繁琐,容易出
2、错、问题:人工销售教材手续繁琐,容易出错3 3、项目目标:建立一个高效率、无差错的计算机教材销售系统、项目目标:建立一个高效率、无差错的计算机教材销售系统4 4、项目范围:利用现有的计算机,软件开发费用不得超过、项目范围:利用现有的计算机,软件开发费用不得超过20002000元元5 5、初步想法:建议在系统中增加对缺书的统计与采购功能、初步想法:建议在系统中增加对缺书的统计与采购功能6 6、可性行研究:建议进行大约、可性行研究:建议进行大约1010天的可性行研究,且研究费用不天的可性行研究,且研究费用不超过超过500500元元第2章 可行性研究2.1 可行性研究的任务可行性研究的任务n目的目的
3、:用最小的代价在尽可能短的时间内确定问用最小的代价在尽可能短的时间内确定问题是否能够解决题是否能够解决.n任务:对以后的行动方针提出建议,制定工程实任务:对以后的行动方针提出建议,制定工程实施计划。施计划。 实质是实质是:在较高层次上以较抽象的方式进行系统分析和在较高层次上以较抽象的方式进行系统分析和设计的过程设计的过程n首先需进一步分析和澄清问题定义首先需进一步分析和澄清问题定义n导出系统的逻辑模型导出系统的逻辑模型n探索出若干种可供选择的主要解法(即系统实现探索出若干种可供选择的主要解法(即系统实现方案)方案)n最后仔细研究每种解法的可行性。最后仔细研究每种解法的可行性。一、技术可行性一、
4、技术可行性n使用现有的技术能实现这个系统吗使用现有的技术能实现这个系统吗? ?n进行技术风险评价。从开发者的技术实力、以往工作基础、问题的复杂性等出发,判断系统开发在时间、费用等限制条件下成功的可能性。 n由于系统的分析和定义过程与系统的技术可行性评估过程是同时进行的,这时系统目标、功能和性能的不确定性会给技术可行性论证带来许多困难。 二、经济可行性二、经济可行性n这个系统的经济效益能超过它的开发成本吗这个系统的经济效益能超过它的开发成本吗? ?n进行成本效益分析,评估项目的开发成本。进行成本效益分析,评估项目的开发成本。举例:开发计算机辅助设计举例:开发计算机辅助设计(CAD)系统取代当前的
5、手工设计过系统取代当前的手工设计过程中的成本效益分析程中的成本效益分析设:设: T:绘制一幅图的平均时间,单位:绘制一幅图的平均时间,单位 小时小时 r:用:用CAD系统绘图减少的绘图时间比例系统绘图减少的绘图时间比例 d:每小时绘图的平均成本,单位:每小时绘图的平均成本,单位 元元 n:每年绘制图的数目:每年绘制图的数目 p:用:用CAD系统绘图的百分比系统绘图的百分比 则可用下式计算利用则可用下式计算利用 CAD 系统绘图每年可以节省的经费:系统绘图每年可以节省的经费:B= Tx r x d x n x p 联想集团领导人柳传志曾说:联想集团领导人柳传志曾说:“没钱赚的事我没钱赚的事我们不
6、干;有钱赚但投不起钱的事不干;有钱赚也们不干;有钱赚但投不起钱的事不干;有钱赚也投得起钱但没有可靠的人选,这样的事也不干。投得起钱但没有可靠的人选,这样的事也不干。”投资回收期投资回收期 1 2 3 4 5 年年604020 0成本成本- -效益效益( (万元万元) )该系统节省经费该系统节省经费该系统成本该系统成本盈亏平衡点盈亏平衡点成本及效益分析图:成本及效益分析图: 若若r=1/4, T=4小时,小时,n=8000/年,年,d=20元元/小时,小时,p=60%,则则B=1/4x 4x 8000x 20x 60%=96000/年,年, 即用即用 CAD 绘图比绘图比用手工系统绘图平均每年要
7、节省用手工系统绘图平均每年要节省96000元。元。 假设总开发费用为假设总开发费用为 20。4万元,年度费用估计为万元,年度费用估计为3。2万元。万元。系统开发成本、节省的经费与时间的关系如图所示。盈亏平衡系统开发成本、节省的经费与时间的关系如图所示。盈亏平衡点对应的时间坐标是点对应的时间坐标是 3.1年,表示系统应用年,表示系统应用 3.1年后可以收回系年后可以收回系统成本。则从图中可知,投资回收期大约需要统成本。则从图中可知,投资回收期大约需要3。1年。年。三、社会社会可行性 社会可行性包括法律可行性和用户操作可社会可行性包括法律可行性和用户操作可行性。行性。法律可行性考虑要开发系统是否存
8、在任何法律可行性考虑要开发系统是否存在任何侵犯、妨碍和责任问题。侵犯、妨碍和责任问题。用户操作可行性考虑待开发软件的运行方用户操作可行性考虑待开发软件的运行方式在用户组织内是否行得通,现有管理制式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。度、人员素质、操作方式是否可行。2.2 可行性研究过程1 1、复查系统规模和目标:、复查系统规模和目标: 对前面提交的文档进一步复查确认,改正含糊对前面提交的文档进一步复查确认,改正含糊不清的叙述,清楚地描述系统的一切限制和约束,不清的叙述,清楚地描述系统的一切限制和约束,确保解决问题的正确性。确保解决问题的正确性。2 2、研究目前正在
9、使用的系统:、研究目前正在使用的系统: 了解现有系统能做什么了解现有系统能做什么新系统必须能解决旧系统中存在的问题新系统必须能解决旧系统中存在的问题新系统要能增加收入和减少使用费用新系统要能增加收入和减少使用费用注意现有系统和其他系统之间的接口情况注意现有系统和其他系统之间的接口情况用用系统流程图系统流程图来反映当前系统的基本功能和处理流程。来反映当前系统的基本功能和处理流程。 2.2 可行性研究过程3 3、导出新系统的高层逻辑模型:、导出新系统的高层逻辑模型: 根据对当前系统的分析研究,逐步明确了新系统的功能、处理流程和应有的约束条件,使用建立逻辑模型的工具-数据流图和数据词典来描述数据在系
10、统中的流动和处理情况。 4 4、重新定义问题、重新定义问题分析员与用户一起再次复查问题定义、工程规模和目标:以数据流图和数据字典作为讨论基础。n前四个步骤实质构成一个循环,直到提出的前四个步骤实质构成一个循环,直到提出的逻辑模型完全符合系统目标。逻辑模型完全符合系统目标。导出新系统的高层逻辑模型现有物理系统 现有系统逻辑模型 目标系统的逻辑模型(DFD、DD) 建造新的物理系统 2.2 可行性研究过程5 5、导出和评价供选择的解法、导出和评价供选择的解法分析员从系统逻辑模型出发,从技术角度导出若干个较高层次的物理方案。技术可行性、操作可行性、经济可行性为每个可行的方案制定实现进度表。6 6、推
11、荐行动方针、推荐行动方针选择最好的解法,并说明提出实施这个解决方案的理由。进行比较仔细的成本/效益分析,决定是否继续进行开发工程。7 7、草拟开发计划、草拟开发计划包括工程进度表、对人员和资源的需求情况估计系统生命周期每一阶段的成本下一阶段(需求分析)的详细进度表和成本估计8 8、书写文档提交审查、书写文档提交审查把上述各步骤的工作结果进行分析汇总然后草拟一份计划任务书可行性论证报告,供用户和使用部门的负责人及评审组仔细审查。可行性论证报告1、系统概述2、可行性分析3、拟订开发计划4、结论意见主要是对当前系统极其存在的问题的简单描述;对新系统的开发目的、目标、业务对象和范围;新系统和它各个子系
12、统的功能与特性等。 这是报告的主体。包括新系统在经济上、技术上、运行上、法律上的可行性,以及对新系统的主客观条件的分析。包括工程进度,人员配备情况,资源配备情况,估计出每个阶段的成本、约束条件综合上述分析,说明新系统是否可行,结论可区分为三类: 深刻立即进行 推迟进行 不能或不值得进行数据流图数据流图数据字典数据字典系统流程图系统流程图是用来概括描述系统物理模型的一种传统工具。是用来概括描述系统物理模型的一种传统工具。2.3 系统流程图系统流程图基本思想基本思想是用图形符号以黑盒子的形式描绘系是用图形符号以黑盒子的形式描绘系统里的每个部件(程序、文件、数据库、表格、统里的每个部件(程序、文件、
13、数据库、表格、人工过程等)。人工过程等)。系统流程图表达信息在系统各部件之间流动的系统流程图表达信息在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程,情况,而不是对数据进行加工处理的控制过程,所以是所以是物理数据流图物理数据流图而不是程序流程图。而不是程序流程图。流程符号流程符号含含 义义流程符号流程符号含含 义义数据加工符号数据加工符号换页连接换页连接 输入输入/输出符号输出符号显示器或终端机显示器或终端机连接点符号连接点符号磁盘机或数据库磁盘机或数据库人工操作人工操作多文档符号多文档符号控制流符号控制流符号流程开始与结束流程开始与结束库存清单系统库存清单系统n一个存放零件的仓
14、库,仓库中现有多种零一个存放零件的仓库,仓库中现有多种零件及零件的数量等项数据。需加工的数据件及零件的数量等项数据。需加工的数据是每当仓库中的零件数量发生变化时,就是每当仓库中的零件数量发生变化时,就应该及时修改库存清单,若此零件的库存应该及时修改库存清单,若此零件的库存量少于它的库存临界值,则应该报告各采量少于它的库存临界值,则应该报告各采购部门以便定货,规定每天向采购部门送购部门以便定货,规定每天向采购部门送一次一次定货报告。定货报告。把零件库存量的每一次变把零件库存量的每一次变化则称为一个事务,由放化则称为一个事务,由放在仓库中的在仓库中的CRT终端输入终端输入到计算机中到计算机中系统中
15、的库存清单程序则系统中的库存清单程序则是对是对 事务进行处理事务进行处理并更新在磁盘上的库存清并更新在磁盘上的库存清单主文件单主文件并且把必要的定货信息写并且把必要的定货信息写在磁盘上在磁盘上 最后由报告生成程序读一最后由报告生成程序读一次磁盘,并打印出定货报次磁盘,并打印出定货报告。告。库存清单系统流程图库存清单系统流程图库存清单程序库存清单程序事务事务定货信息定货信息库存清单库存清单主文件主文件报告生成程序报告生成程序定货报告定货报告结束结束人工销售教材人工销售教材 流程图流程图结束结束学生学生申请购申请购书书 购书证明购书证明检索教材检索教材帐本是帐本是否有该否有该教材教材购书单购书单开
16、购书发开购书发票和购票和购书单书单购书发票购书发票到书库到书库领书领书 计算机售书系统流程图计算机售书系统流程图结束结束学生学生购书发票购书发票到书库到书库领书领书 购书单购书单终端终端审查并审查并开发票开发票11-学生各学期用书数据库学生各学期用书数据库购书单购书单2 2-教材存量数据库教材存量数据库2.4 数据流图数据流图数据流图(DFD)描绘信息系统的逻辑模型。描绘信息系统的逻辑模型。没有任何具体的物理元素没有任何具体的物理元素,描绘信息流和数据从输描绘信息流和数据从输入移动到输出的过程所经受的变换入移动到输出的过程所经受的变换,即在系统中即在系统中流动和被处理的逻辑过程流动和被处理的逻
17、辑过程.系统流程图用来概括描述系统物理模型系统流程图用来概括描述系统物理模型.表达信息在系统各部件之间流动的情况,而不是表达信息在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程,所以是物理数对数据进行加工处理的控制过程,所以是物理数据流图据流图l数数据据流流图图的的特特点点是是:它它是是逻逻辑辑系系统统的的图图形形表表示示,容容易易理理解解,是是分分析析员员和和用用户户间间极极好好的的通通信信工工具具;设设计计数数据据流流图图只只需需考考虑虑系系统统必必须须完完成成的的基基本本逻逻辑辑功功能能,不不需需要要考考虑虑如如何何具具体体实实现现这这些些功功能能,是是今今后进行软件设计很
18、好的出发点。后进行软件设计很好的出发点。1 1、数据流图中的基本符号、数据流图中的基本符号 - - 转换数据的处理过程转换数据的处理过程 数据转换数据转换外部实体外部实体 - - 数据的源点终点,位于软件数据的源点终点,位于软件系统边界之外的信息生产者或消费者系统边界之外的信息生产者或消费者数据流数据流 - - 在转换之间有向流动的数据项在转换之间有向流动的数据项或数据集合或数据集合数据存储数据存储 -可以是数据库文件或任何形式的数可以是数据库文件或任何形式的数 据组织。箭头向内则表示写入文件据组织。箭头向内则表示写入文件 或查询文件,箭头向外则表示从文或查询文件,箭头向外则表示从文 件中读取
19、数据或得到查询结果件中读取数据或得到查询结果 n为了表达复杂的实际问题,需要为了表达复杂的实际问题,需要采用层次结采用层次结构的数据流图构的数据流图,即按照问题的层次结构进行逐即按照问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构步分解,并以分层的数据流图反映这种结构关系关系,能清楚地表达和容易理解整个系统能清楚地表达和容易理解整个系统.n做法:系统的基本模型(把整个系统看成一做法:系统的基本模型(把整个系统看成一个加工点)个加工点)逐层地对系统进行分解,系统逐层地对系统进行分解,系统的加工数量就会增多的加工数量就会增多所有的加工都足够简所有的加工都足够简单,不必再分解为止单,不必再
20、分解为止-“基本加工基本加工”。数据流图的层次结构数据流图的层次结构 . . . . 便于实现便于实现便于实现便于实现. . . . 便于使用便于使用便于使用便于使用 - 采用逐步细化的扩展方法,可避免采用逐步细化的扩展方法,可避免采用逐步细化的扩展方法,可避免采用逐步细化的扩展方法,可避免 一次引入过多的细节,有利于控制一次引入过多的细节,有利于控制一次引入过多的细节,有利于控制一次引入过多的细节,有利于控制 问题的复杂度;问题的复杂度;问题的复杂度;问题的复杂度; -用一组图代替一张总图,方便用户用一组图代替一张总图,方便用户用一组图代替一张总图,方便用户用一组图代替一张总图,方便用户 及
21、软件开发人员阅读。及软件开发人员阅读。及软件开发人员阅读。及软件开发人员阅读。分层分层 DFD 图的优点图的优点分层的数据流图分层的数据流图n例子:假设一家工厂的采购部每天需要一例子:假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个列出所有需要再次定货的零件。对于每个再次定货的零件应该列出下述数据:再次定货的零件应该列出下述数据: 零零件件编编号号,零零件件名名称称,定定货货数数量量,目目前前价价格,主要供应者,次要供应者。格,主要供应者,次要供应者。 零零件件入入库库或或出出库库被被称称为为事事务务,通
22、通过过放放在在仓仓库库中中的的CRT终终端端把把事事务务报报告告给给定定货货系系统统。当当某某种种零零件件的的库库存存数数量量少少于于库库存存量量临临界界值值时就应该再次定货。时就应该再次定货。 2)画基本系统模型:输入)画基本系统模型:输入 +处理处理+输出输出 源点源点+处理处理+终点终点仓管员仓管员采购员采购员订货订货系统系统事务事务订货报表订货报表1)从问题描述中提取数据流图的四种成分:)从问题描述中提取数据流图的四种成分:数据源点,终点数据源点,终点:仓库管理员、采购员:仓库管理员、采购员数据流:数据流:事务:事务: 零件编号、事务类型、数量零件编号、事务类型、数量定货报表:零件编号
23、、零件名称、定货数量、目前价格、定货报表:零件编号、零件名称、定货数量、目前价格、主要供应者、次要供应者主要供应者、次要供应者处理(加):处理(加): 产生报表、处理事务产生报表、处理事务数据存储(文件):数据存储(文件): 定货信息(定货报表)定货信息(定货报表)库存清单(零件编号,库存量,库存量临界值)库存清单(零件编号,库存量,库存量临界值)3)细化,绘制系统的主要功能)细化,绘制系统的主要功能产生报表和处理事务是系统必须完成的两个主要功能产生报表和处理事务是系统必须完成的两个主要功能,增加了两个数据存储增加了两个数据存储仓管员仓管员采购员采购员D1库存清单库存清单D2订货信息订货信息订
24、货订货报表报表事务事务订货信息订货信息库存信息库存信息订货信息订货信息1处理处理事务事务2产生产生报表报表4)对主要处理进一步细化)对主要处理进一步细化仓管仓管员员事务事务库存库存信息信息采购采购员员D1库存信息库存信息订货订货信息信息订货订货信息信息库存清单库存清单订货订货报表报表1.3处理处理订货订货事务事务1.2更新库更新库存清单存清单1.1接收接收事务事务2产产生生报报表表D2订货信息订货信息 当进一步分解将涉及如何具体地实现一当进一步分解将涉及如何具体地实现一个功能时就不应该再分解了。个功能时就不应该再分解了。作为分析员和用户交流的工具:分层、画分图作为分析员和用户交流的工具:分层、
25、画分图作为分析和设计的工具:作为分析和设计的工具:n描绘系统所完成的功能描绘系统所完成的功能n辅助物理系统的设计:以图中不同处理的定辅助物理系统的设计:以图中不同处理的定时要求为指南,画出多组自动化边界,每组时要求为指南,画出多组自动化边界,每组可意味着一个不同的物理系统可意味着一个不同的物理系统n辅助总体设计:面向数据流的设计方法辅助总体设计:面向数据流的设计方法4.用途用途1)联机接收事务并存储,批量方式更新库存清)联机接收事务并存储,批量方式更新库存清单、处理定货和产生报表单、处理定货和产生报表仓管仓管员员事务事务库存库存信息信息采购采购员员D1库存信息库存信息订货订货信息信息订货订货信
26、息信息库存清单库存清单订货订货报表报表1.3处理处理订货订货事务事务1.2 更新库更新库存清单存清单1.1接收接收事务事务2产产生生报报表表D2订货信息订货信息D1事务事务事务事务2)联机接收事务、更新库存清单和处理定货及输)联机接收事务、更新库存清单和处理定货及输出定货信息,以批量方式产生报表出定货信息,以批量方式产生报表仓管仓管员员事务事务库存库存信息信息采购采购员员D1库存信息库存信息订货订货信息信息订货订货信息信息库存清单库存清单订货订货报表报表1.3处理处理订货订货事务事务更更新新库库存存清清单单1.1接收接收事务事务2产产生生报报表表D2订货信息订货信息1.2 更新库更新库存清单存
27、清单n先找出系统的先找出系统的数据源点与汇点数据源点与汇点(外部实体,(外部实体,用来确定系统与外界的接口)用来确定系统与外界的接口)n第一步是画顶层图第一步是画顶层图:通常把整个系统当作一个通常把整个系统当作一个大的加工,并标明系统的输入与输出,以及大的加工,并标明系统的输入与输出,以及数据的源点与终点数据的源点与终点学学生生教材教材购销购销系统系统购书单购书单领书单领书单缺书单缺书单进书通知进书通知保保管员管员第第 1 层层外部实体外部实体外部实体外部实体举举例例计算机教材销售系统计算机教材销售系统第第 1 层层第第 2 层层进书通知进书通知进书通知进书通知1 1销售销售销售销售购书单购书
28、单购书单购书单领书单领书单领书单领书单学学学学生生生生缺书单缺书单缺书单缺书单进书通知进书通知进书通知进书通知2 2采购采购采购采购保保保保管员管员管员管员 教材存量表教材存量表教材存量表教材存量表 F1F1F1F1 缺书登记表缺书登记表缺书登记表缺书登记表 F2F2F2F2学学学学生生生生教材教材教材教材购销购销购销购销系统系统系统系统购书单购书单购书单购书单领书单领书单领书单领书单缺书单缺书单缺书单缺书单进书通知进书通知进书通知进书通知保保保保管员管员管员管员外部实体外部实体第二步画分层第二步画分层DFD图:图: 教材销售子系统教材销售子系统 无效书单无效书单购书单购书单1.3登记并开登记
29、并开领书单领书单1.2开发票开发票1.1审查审查有效性有效性1.4登记登记缺书缺书1.5补售补售教材教材采采购购学学生生学学生生进书通知进书通知有效书单有效书单发票发票领书单领书单暂缺书单暂缺书单1 1销售销售销售销售购书单购书单购书单购书单领书单领书单领书单领书单缺书单缺书单缺书单缺书单进书通知进书通知进书通知进书通知2 2采购采购采购采购进书通知进书通知进书通知进书通知缺书登记表缺书登记表缺书登记表缺书登记表教材存量表教材存量表教材存量表教材存量表学学学学生生生生保保保保管员管员管员管员第第第第 2 2 层层层层补售补售书单书单第第 3 层层 教材存量表教材存量表 F1F1 缺书登记表缺书
30、登记表 F2F2 各班用书表各班用书表 F3F3 售书登记表售书登记表 F4F4外部外部外部外部项项项项继续分解得第三层数据流图继续分解得第三层数据流图1 1销售销售销售销售购书单购书单购书单购书单领书单领书单领书单领书单缺书单缺书单缺书单缺书单进书通知进书通知进书通知进书通知2 2采购采购采购采购进书通知进书通知进书通知进书通知缺书登记表缺书登记表缺书登记表缺书登记表教材存量表教材存量表教材存量表教材存量表学学学学生生生生保保保保管员管员管员管员采购采购 子系统子系统 第第第第 2 2 层层层层第第第第 3 3 层层层层2.3修改教材库修改教材库存和待存和待购量购量销销售售进书通知进书通知进
31、书通知进书通知2.1按书号汇按书号汇总缺书总缺书2.2按出版社统按出版社统计缺书计缺书保保管员管员 教材存量表教材存量表 F1F1 待购教材表待购教材表 F5F5 教材一览表教材一览表 F6F6 缺书登记表缺书登记表 F2F2缺书单缺书单 F1书号书号单价单价数量数量5 5、画分层、画分层 DFD 的指导原则的指导原则发票发票发票发票1.31.3开领书单开领书单开领书单开领书单领书单领书单领书单领书单(a) (a) 父图父图父图父图 1.3.11.3.1学生学生学生学生领书单领书单领书单领书单1.3.21.3.21.3.31.3.3教材教材教材教材( ( ( (a)a)子图子图子图子图 1)注
32、意父图和子图的平衡)注意父图和子图的平衡: 在分层图中,每一层在分层图中,每一层都是它上层的子图,同时又是它下层的父图。如都是它上层的子图,同时又是它下层的父图。如前面例子中的第二层就是。所谓的平衡,就是指前面例子中的第二层就是。所谓的平衡,就是指父图和子图的输入和输出数据应分别保持一致。父图和子图的输入和输出数据应分别保持一致。 再比如,从下图中可能发现,父图和子图的输入数据再比如,从下图中可能发现,父图和子图的输入数据流从名称到数量均不相同,但如果,我们把流从名称到数量均不相同,但如果,我们把 “发票发票=学生学生+教材教材” 的关系能够满足,那么,这一对父子图仍可算是平的关系能够满足,那
33、么,这一对父子图仍可算是平衡的。衡的。1 1销售销售销售销售购书单购书单购书单购书单领书单领书单领书单领书单缺书单缺书单缺书单缺书单进书通知进书通知进书通知进书通知2 2采购采购采购采购进书通知进书通知进书通知进书通知缺书登记表缺书登记表缺书登记表缺书登记表教材存量表教材存量表教材存量表教材存量表学学学学生生生生保保保保管员管员管员管员第第第第 2 2 层层层层采购采购 子系统子系统 第第第第 3 3 层层层层缺书单缺书单2.3修改教材库修改教材库存和待存和待购量购量销销售售进书通知进书通知进书通知进书通知2.1按书号汇按书号汇总缺书总缺书2.2按出版社统按出版社统计缺书计缺书保保管员管员 教
34、材存量表教材存量表 F1F1 待购教材表待购教材表 F5F5 教材一览表教材一览表 F6F6 缺书登记表缺书登记表 F2F2父图中没有的文件和外部项。例如在前例中的父图中没有的文件和外部项。例如在前例中的第三层第三层(采购子系统采购子系统) 多了两个文件多了两个文件F5、F6和一个和一个外部项(销售)。外部项(销售)。 一般来说,除底层一般来说,除底层DFD需画出全部的外部文件需画出全部的外部文件外,外,各中间层的各中间层的DFD仅显示处于加工之间的接口文仅显示处于加工之间的接口文件,件,而其余的文件均不必画出,以保持图面的简洁。而其余的文件均不必画出,以保持图面的简洁。 此外,在第二层中的此
35、外,在第二层中的-进书通知是指向销售进书通知是指向销售框的。所以在采购子系统中,销售就成了采购子系框的。所以在采购子系统中,销售就成了采购子系统的外部项。那么如果漏画了这个外部项,进书通统的外部项。那么如果漏画了这个外部项,进书通知便将成为无知便将成为无“的的”之之“矢矢”了。了。 )区分局部文件和局部外部项)区分局部文件和局部外部项1 1销售销售销售销售购书单购书单购书单购书单领书单领书单领书单领书单缺书单缺书单缺书单缺书单进书通知进书通知进书通知进书通知2 2采购采购采购采购进书通知进书通知进书通知进书通知缺书登记表缺书登记表缺书登记表缺书登记表教材存量表教材存量表教材存量表教材存量表学学
36、学学生生生生保保保保管员管员管员管员采购采购采购采购 子系统子系统子系统子系统 第第第第 2 2 层层层层第第第第 3 3 层层层层缺书单缺书单缺书单缺书单2.32.3修改教材库修改教材库修改教材库修改教材库存和待存和待存和待存和待购量购量购量购量销销销销售售售售进书通知进书通知进书通知进书通知进书通知进书通知进书通知进书通知2.12.1按书号汇按书号汇按书号汇按书号汇总缺书总缺书总缺书总缺书2.22.2按出版社统按出版社统按出版社统按出版社统计缺书计缺书计缺书计缺书保保保保管员管员管员管员 教材存量表教材存量表教材存量表教材存量表 F1F1F1F1 待购教材表待购教材表待购教材表待购教材表
37、F5F5F5F5 教材一览表教材一览表教材一览表教材一览表 F6F6F6F6 缺书登记表缺书登记表缺书登记表缺书登记表 F2F2F2F2局部局部局部局部外部项外部项外部项外部项局部局部局部局部文件文件文件文件 )掌握分解的速度)掌握分解的速度) 遵守加工编号规则遵守加工编号规则 顶层加工不编号。第二层的加工编号为顶层加工不编号。第二层的加工编号为1,2,3,1,2,3,n,n号。号。第三层编号为第三层编号为1.1,1.2,1.31.1,1.2,1.3n.1,n.2n.1,n.2等号,依此类推。等号,依此类推。分解是逐步细化的过程,通常在上层可分解快分解是逐步细化的过程,通常在上层可分解快一些,
38、下层应慢一些,因为越接近下层功能愈强,一些,下层应慢一些,因为越接近下层功能愈强,如果分解太快,将会增加用户理解的困难,同一图如果分解太快,将会增加用户理解的困难,同一图中的各个加工,分解的步骤应大致均匀,保持同步中的各个加工,分解的步骤应大致均匀,保持同步扩展。一般来说,每一个加工每次可分为扩展。一般来说,每一个加工每次可分为 2-4个子个子加工,最多不得超过加工,最多不得超过 7 个。个。2.5 数据字典 数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。 数据字典的任务是数据字典的任务是: : 对于数据流图中出现的对于数据流图中出现的所有被命名的图形元素在字典
39、中作为一个词条加所有被命名的图形元素在字典中作为一个词条加以定义,使得每一个图形元素的名字都有一个确以定义,使得每一个图形元素的名字都有一个确切的解释。切的解释。其内容有图形元素的名字、别名或编其内容有图形元素的名字、别名或编号、分类、描述、定义、位置等。号、分类、描述、定义、位置等。DD1数据字典的内容数据字典的内容 (1)数据流)数据流 (2)数据流分量(即数据元素)数据流分量(即数据元素) (3)数据存储)数据存储(4)处理)处理 2定义数据的方法定义数据的方法由数据元素组成数据的方式有下述几种基本类型:由数据元素组成数据的方式有下述几种基本类型:(1)顺序:即以确定次序连接两个或多个分
40、量。)顺序:即以确定次序连接两个或多个分量。(2)选选择择:即即从从两两个个或或多多个个可可能能的的元元素素中中选选取取一个。一个。(3)重复:即把指定的分量重复零次或多次。)重复:即把指定的分量重复零次或多次。数据字典定义符号数据字典定义符号数据字典定义符号数据字典定义符号 符号符号符号符号含含含含 义义义义例例例例 子子子子 = =被定义为被定义为被定义为被定义为+ +与与与与 x=a+bx=a+b,则表示则表示则表示则表示 x x 由由由由 a a 和和和和 b b 组成组成组成组成x=a,bx=a,b,则表示则表示则表示则表示 x x 由由由由 a a 或由或由或由或由 b b 组成组
41、成组成组成 或或或或重复重复重复重复x=ax=a,则表示则表示则表示则表示 x x 由由由由 0 0个个个个或多个或多个或多个或多个 a a 组成组成组成组成( )( )可选可选可选可选 表示在两个表示在两个表示在两个表示在两个 * * 之间的内容为词条的注释之间的内容为词条的注释之间的内容为词条的注释之间的内容为词条的注释m nm n重复重复重复重复x=3a8x=3a8,则表示则表示则表示则表示x x中至少出现中至少出现中至少出现中至少出现3 3 3 3次次次次a ,a ,最多出现最多出现最多出现最多出现8 8 8 8次次次次* *注释符注释符注释符注释符x=(a)x=(a),则表示则表示则
42、表示则表示 a a 在在在在 x x 中出现中出现中出现中出现, , 也可不出现也可不出现也可不出现也可不出现数据流名:数据流名: 说明:简要介绍作用即它产生的原因和结果。说明:简要介绍作用即它产生的原因和结果。 数据流来源:即该数据流来自何方。数据流来源:即该数据流来自何方。 数据流去向:去向何处。数据流去向:去向何处。 数据流组成:数据结构。数据流组成:数据结构。 每个数据量流通量:数据量、流通量。每个数据量流通量:数据量、流通量。(1) (1) (1) (1) 数据流词条的描述数据流词条的描述数据流词条的描述数据流词条的描述: : : :数据流是数据结构在系统数据流是数据结构在系统内传播
43、的路径。内传播的路径。数据流名:发票数据流名:发票 说明:用作学生已付书款的依据说明:用作学生已付书款的依据 数据流来源:来自加工数据流来源:来自加工“审查并开发票审查并开发票” 数据流去向:流向加工数据流去向:流向加工“开领书单开领书单”。 数据流组成:学号数据流组成:学号+ +姓名姓名+ +书号书号+ +单价单价+ +书费合计书费合计审查并审查并审查并审查并开发票开发票开发票开发票发票发票发票发票购书单购书单购书单购书单 举举例例数据元素名数据元素名数据元素名数据元素名: : : : 类型类型类型类型: : : :数字(离散值、连续值),文字(编码类型)数字(离散值、连续值),文字(编码类
44、型)数字(离散值、连续值),文字(编码类型)数字(离散值、连续值),文字(编码类型) 长度长度长度长度: : : : 取值范围取值范围取值范围取值范围: : : : 相关的数据元素及数据结构相关的数据元素及数据结构相关的数据元素及数据结构相关的数据元素及数据结构 (2)(2)(2)(2) 数据元素词条的描述数据元素词条的描述数据元素词条的描述数据元素词条的描述: : : :图中的每一个数据结构图中的每一个数据结构都是由数据元素构成的,数据元素是数据处理中最小的,都是由数据元素构成的,数据元素是数据处理中最小的,不可再分割的单位,它直接反映事物的某一特征。其描不可再分割的单位,它直接反映事物的某
45、一特征。其描述则需要以下信息述则需要以下信息: 年年 = “1900”.“3000” 月月 = “01”.“12” 日日 = “01”.“31” 摘要摘要 = 1字母字母4 金额金额 = “00000000.01”.“999999999.99” (3) (3) (3) (3) 数据文件词条的描述数据文件词条的描述数据文件词条的描述数据文件词条的描述: : : :数据文件是数据结构数据文件是数据结构保存的地方。一个数据文件词条应有以下几项内容:保存的地方。一个数据文件词条应有以下几项内容: 数据文件名:数据文件名:数据文件名:数据文件名: 简述:存放的是什么数据。简述:存放的是什么数据。简述:存
46、放的是什么数据。简述:存放的是什么数据。 输入数据输入数据输入数据输入数据: : : : 输出数据输出数据输出数据输出数据: : : : 数据文件组成数据文件组成数据文件组成数据文件组成: : : :数据结构。数据结构。数据结构。数据结构。 存储方式存储方式存储方式存储方式: : : :顺序,直接,关键码。顺序,直接,关键码。顺序,直接,关键码。顺序,直接,关键码。 存取频率存取频率存取频率存取频率: : : : 例例如如,图图书书管管理理系系统统中中的的“目目录录文文件件”是是个个数数据据存存储储,对它的说明如下:对它的说明如下:文件名:目录文件文件名:目录文件 组组成成:分分类类目目录录号
47、号+书书名名+作作者者+内内容容摘摘要要+价价格格+入入库日期库日期+总数总数+库存数库存数+图书流水号图书流水号 加工名加工名: : 加工编号加工编号: :反映该加工的层次反映该加工的层次 简要描述简要描述: :加工逻辑及功能简述加工逻辑及功能简述 输入数据流输入数据流: : 取值范围取值范围: : 相关的数据元素及数据结构相关的数据元素及数据结构 (4) (4) (4) (4) 加工逻辑词条的描述加工逻辑词条的描述加工逻辑词条的描述加工逻辑词条的描述: : : :加工比较复杂,它到后加工比较复杂,它到后来就是一段程序。加工的表达方式有判断表,判断树来就是一段程序。加工的表达方式有判断表,判
48、断树和结构化英语等等和结构化英语等等1.3审查并审查并开发票开发票学学生生发票发票购书单购书单 各班学生用书表各班学生用书表教材存量表教材存量表 名称:外部实体名名称:外部实体名 简要描述简要描述: :什么外部实体什么外部实体 有关数据流有关数据流: : 数目数目: :(5) (5) (5) (5) 外部实体词条描述外部实体词条描述外部实体词条描述外部实体词条描述 1 1销售销售销售销售购书单购书单购书单购书单领书单领书单领书单领书单缺书单缺书单缺书单缺书单进书通知进书通知进书通知进书通知2 2采购采购采购采购进书通知进书通知进书通知进书通知缺书登记表缺书登记表缺书登记表缺书登记表教材存量表教
49、材存量表教材存量表教材存量表学学学学生生生生保保保保管员管员管员管员成本成本/效益分析的目的,是从经济角度评价开效益分析的目的,是从经济角度评价开发一个新项目是否可行、是否划算,从而帮助使发一个新项目是否可行、是否划算,从而帮助使用部门的负责人正确地作出是否投资于这项开发用部门的负责人正确地作出是否投资于这项开发的决定。的决定。 一、成本估计一、成本估计 1代代码码行行技技术术:通通常常先先根根据据经经验验和和历历史史数数据据来来估估计计实实现现一一个个功功能能所所需需的的源源程程序序行行数数,然然后后用用每每行行代码的平均成本乘以行数就可确定软件的成本。代码的平均成本乘以行数就可确定软件的成
50、本。2.6 2.6 成本成本/ /效益分析效益分析2 2任任务务分分解解技技术术:首首先先把把软软件件开开发发工工程程分分解解为为若若干干个个相相对对独独立立的的任任务务,再再分分别别估估计计每每个个单单独独的的开开发发任任务务的的成成本本,最最后后累累加加起起来来得得出出软件开发工程的总成本。软件开发工程的总成本。 估估计计每每个个任任务务的的成成本本时时,通通常常先先估估计计完完成成该该项项任任务务所所需需要要使使用用的的人人力力(以以人人月月为为单单位位),再再乘乘以以每每人人每每月月的的平平均均工工资资而而得得出出每每个个任任务务的的成成本本。划划分分任任务务时时最最常常用用的的办办法
51、法是是按开发阶段进行。按开发阶段进行。 用人月作为衡量一项工作的规模是一个危用人月作为衡量一项工作的规模是一个危险和带有欺骗性的神话。险和带有欺骗性的神话。二、二、 成本成本/效益的分析方法效益的分析方法 成本效益分析的第一步是估计开发成本、运行费用和新系统将带来的经济效益。 1货币的时间价值货币的时间价值货货币币的的时时间间价价值值通通常常用用利利率率的的形形式式表表示示。假假设设年年利利率率为为i,如如果果现现在在存存入入P元元,则则n年年后后可可以以得得到到的的钱钱数为:数为: FP(1十十i)n这这也也就就是是P元元钱钱在在n年年后后的的价价值值。反反之之,如如果果n年年后能收入后能收
52、入F元钱,那么这些钱的现在的价值是:元钱,那么这些钱的现在的价值是: PF (1十十i)n假定年利率为12,利用上面计算货币现在价值的公式可以算出修改库存清单系统后每年预计节省的钱的现在价值,如表所示。年将来值(元)(li)n现在值(元)累计的现在值(元)125001.122232.142232.14225001.251992.984225.12325001.401779.456004.57425001.571588.807593.37525001.761418.579011.942投资回收期投资回收期所所谓谓投投资资回回收收期期就就是是使使累累计计的的经经济济效效益益等等于于最最初初投投资资
53、所所需需要要的的时时间间。显显然然,投投资资回回收收期期越越短短就就能能越越快快获获得得利利润润,这项工程也就越值得投资。这项工程也就越值得投资。n例如,修改库存清单系统:两年以后可以节省4225.12元,比最初的投资(5000元)还少774.88元; 三年以后将再节省1779.45元,774.881779.45=0.44,因此,投资回收期是2.44年。3纯收入纯收入纯纯收收入入就就是是在在整整个个生生命命周周期期之之内内系系统统累累计计经经济济效效益益(折折合合成成现现在在值值)与与投投资资之之差差。这这相相当当于于比比较较投投资资开开发发一一个个软软件件系系统统和和把把钱钱存存在在银银行行中中(或或贷贷给给其其他他企企业业)这这两两种种方案的优劣。方案的优劣。本章内容回顾:n本章重点是可行性研究的任务和数据流图、本章重点是可行性研究的任务和数据流图、数据字典的内容和使用方法以及成本数据字典的内容和使用方法以及成本/效益效益分析的方法。分析的方法。