软件工程第二讲可行性研究详解教学教材.ppt
软件工程第二讲可行性研究详解2.1 可行性研究的任可行性研究的任务u可行性研究可行性研究实质上是要上是要进行一次大大行一次大大压缩简化了的系化了的系统分析和分析和设计的的过程,也就是在程,也就是在较高高层次上以次上以较抽象的方式抽象的方式进行的系行的系统分析和分析和设计的的过程:程:p 分析和澄清分析和澄清问题定定义p 导出系出系统的的逻辑模型探索系模型探索系统实现方案:方案:技技术可行性:可行性:现有的技有的技术 经济可行性:开可行性:开发成本成本 操作可行性:用操作可行性:用户操作操作 社会可行性社会可行性p实现进度度p可行性研究的成本:可行性研究的成本:预期的工程期的工程总成本的成本的510使用现有的技术能否实现这个系统?是否有胜任开发该项目的熟练技术人员?能否按期得到开发该项目所需的软件、硬件资源?操作可行性评价系统运行后会引起的各方面变化,如:对组织机构管理模式、用户工作环境等产生的影响。社会可行性主要讨论法律方面和使用方面的可行性。例如,被开发软件的权利归属问题、软件所使用的技术是否会造成侵权等问题。2022/11/2322.2 可行性研究的步可行性研究的步骤1.1.复复查系系统规模和目模和目标 2.2.研究目前正在使用的系研究目前正在使用的系统3.3.导出新系出新系统的高的高层逻辑模型模型4.4.重新定重新定义问题5.5.导出和出和评价供价供选择的解法的解法6.6.推荐行推荐行动方方针7.7.草草拟开开发计划划8.8.书写文档提交写文档提交审查2022/11/233复复查系系统规模和目模和目标n对问题定定义阶段段书写的关于写的关于规模和目模和目标的的报告告书进一步复一步复查确确认。n改正改正报告告书中的叙述模糊、不正确的地方。中的叙述模糊、不正确的地方。n为了确保分析了确保分析员正在解决的正在解决的问题确确实是要求他解决的是要求他解决的问题。2022/11/234研究目前正在使用的系研究目前正在使用的系统正在使用的系正在使用的系统的基本功能以及某些缺点的基本功能以及某些缺点分析分析现有系有系统的文档的文档资料和使用手册,料和使用手册,实地考察地考察现有系有系统描描绘现有系有系统的高的高层系系统流程流程图并确并确认记录现有系有系统的接口的接口2022/11/235导出新系出新系统的高的高层逻辑模型模型n设计过程通常程通常总是从是从现有的物理系有的物理系统出出发,再参考,再参考现有系有系统的的逻辑模型,模型,设想想目目标系系统的的逻辑模型模型,最后根据目,最后根据目标系系统的的逻辑模型建造模型建造新的物理系新的物理系统。n使用使用数据流数据流图,描,描绘数据在系数据在系统中流中流动和和处理的情况,从而概括地表达出理的情况,从而概括地表达出对新系新系统的的设想。想。n通常通常为了把新系了把新系统描描绘得更清晰准确,得更清晰准确,还应该有一个初步的数据字典,定有一个初步的数据字典,定义系系统中使用的数据。中使用的数据。n数据流数据流图和数据字典共同定和数据字典共同定义了新系了新系统的的逻辑模型,以后可以从模型,以后可以从这个个逻辑模型出模型出发设计新系新系统。2022/11/236进一步定一步定义问题n分析分析员应该和用和用户一起再次复一起再次复查问题定定义、工程、工程规模和目模和目标,这次复次复查应该把数据流把数据流图和数据字典作和数据字典作为讨论的基的基础。n可行性研究的前四个步可行性研究的前四个步骤实质上构成一个循上构成一个循环。定义问题分析问题导出一个试探性的解重新定义问题符合系统目标?YN2022/11/237导出和出和评价供价供选择的解法的解法n分析分析员应该从他建从他建议的系的系统逻辑模型出模型出发,导出若干个出若干个较高高层次的(次的(较抽象的)物理解法供比抽象的)物理解法供比较和和选择。1.1.从技从技术角度出角度出发考考虑解决解决问题的不同方案。的不同方案。2.2.根据技根据技术可行性的考可行性的考虑初步排除一些不初步排除一些不现实的系的系统。例如,如果要求系例如,如果要求系统的的响响应时间不超不超过几秒几秒钟,显然然应该排除任何批排除任何批处理方案。理方案。3.3.考考虑操作方面的可行性。操作方面的可行性。根据使用部根据使用部门处理事理事务的原的原则和和习惯检查技技术上可上可行的那些方案,去掉从行的那些方案,去掉从操作方式或操作操作方式或操作过程的角度程的角度看用看用户不能接受的方案。不能接受的方案。4.4.考考虑经济方面的可行性。方面的可行性。估估计余下的每个可能的系余下的每个可能的系统的的开开发成本和运行成本和运行费用用,并且估,并且估计可以可以节省的省的开支或可以增加的收入开支或可以增加的收入。在在这些估些估计数字的基数字的基础上,上,对每个可能的系每个可能的系统进行行成本效益分析成本效益分析。5.5.制定制定实现进度表。度表。通常只需要估通常只需要估计生命周期每个生命周期每个阶段的工作量。段的工作量。2022/11/238推荐行推荐行动方方针n做出一个关做出一个关键性的决定:是否性的决定:是否继续进行行这项开开发工程。工程。n如果分析如果分析员认为值得得继续进行行这项开开发工程,那么他工程,那么他应该选择一种最好的解法,并且一种最好的解法,并且说明明选择这个解决方案的理由。个解决方案的理由。2022/11/239草草拟开开发计划划n为推荐的系推荐的系统草草拟一份开一份开发计划:划:1.工程工程进度表度表2.估估计对各种开各种开发人人员和各种和各种资源的需要情况。源的需要情况。3.估估计系系统生命周期每个生命周期每个阶段的成本。段的成本。4.最后最后应该给出下一个出下一个阶段(需求分析)的段(需求分析)的详细进度表和成度表和成本估本估计。2022/11/2310书写文档提交写文档提交审查n写成清晰的文档,写成清晰的文档,请用用户和使用部和使用部门的的负责人仔人仔细审查。2022/11/2311可行性研究的步可行性研究的步骤图解解复查系统的规模和目标研究现正在 使用的系统新系统的高层逻辑模型重新定义问题 导出和评价 供选择的解法推荐行动方针草拟开发计划书写文档提交审查用户分析员是否符合系统目标 逻辑模型表达了系统分析员对新系统必须作什么工作、完成什么任务的理解.1.是否继续该工程的开发的建议2.所选择解决方案的解法的说明3.比较仔细的成本/效益分析2022/11/2312可行性研究的步骤(例子)载重汽车进厂后至称重计量点称出货物毛重。计量人员读出称重仪表上的重量指示,数据,开具相应的流 转单(货物、毛重、车号、收发 货单位名称等的凭据)。货主持此流转单将货物送到接收单位,验收合格后签章以示有效,卸空后空车返回称重计量 点称出皮重。计量人员计算出净重以后收回流转单,出具计量单作为正式结帐凭据,货主即可开车离厂。结帐付款一般在财务处定期核对进行。研究目前正在使用的系统 这个计量流程存在以下问题:1 该计量点日平均过车(仅进厂)1 50 0多辆,如果每车都要返回称重去皮,则称重工作量成倍增加,经常引起严重的交通堵塞问题。2 由于是用汽车衡称量,人工看表读数,手工验车开票,所以工作效率十分低,有时竟引起长达 1公里的堵车现象,难以满足日车流量的要求。3 为了克服车流量大而引起的工作量繁重的问题,对一部分送货单位的车型、车号相对固定的车实行定期称量空车,这样虽然减少了一定的称重工作量,但易引起车型车号不符、皮重不实的问题,在管理上也有漏洞存在。4 在验票、开票等过程中大量存在人工干预,往往会出现计量差错、人情重量、违法乱纪乃至犯罪的情况,给企业造成非常严重的经济损失。原系统的工作流程如图 2。2022/11/2313系统要求 自动称量,提高工作效率;自动除皮;自动去杂和去水;数据自动汇总;任意点均可称量;可行性研究的步骤(例子)2022/11/2314财务处计量点 整个称重点采用两台汽车衡、分布在公路两侧,物理上将进厂和出厂的车流分开,实行一侧称重,而另一侧回皮。实现称重过程微机全过程自动化处理(免除人工操作),保证称重数据的客观公正和有效准确性,称重重量,车号等数据自动存储,实现多个称重点按权限共享和引用。能对称重,计量数据的物资品种,供货单位,接收单位,供货车号均可分工作班次,日,旬,月进行分类查询和统计处理。一方面进一步减轻工作人员的负担,另一方面也使管理人员时时可掌握各种有关数据。如果一侧称重点出现故障,另一侧称重点也可用微机称重和计量,进行以上工作。可以随时将计量数据转发到计控处管理机,进入企业管理计算机网。技术问题 称量自动化的程度:车号识别,杂质处理 数据通信方式:有线,无线 开票处理:可行性研究的步骤(例子)2022/11/2315可行性研究的步骤(例子)2022/11/23162.3 系系统统流程流程图图n系系统流程流程图是描是描绘物理系物理系统的的传统工具。工具。n它的基本思想是用它的基本思想是用图形符号以黑盒子形式描形符号以黑盒子形式描绘系系统里面的里面的每个部件(程序,文件,数据每个部件(程序,文件,数据库,表格,人工,表格,人工过程等等)。程等等)。n系系统流程流程图表达的是信息在系表达的是信息在系统各部件之各部件之间流流动的情况,的情况,而不是而不是对信息信息进行加工行加工处理的控制理的控制过程。程。n尽管系尽管系统流程流程图使用的某些符号和使用的某些符号和程序流程程序流程图使用的符号使用的符号相同,但是它却是物理数据流程相同,但是它却是物理数据流程图而不是程序流程而不是程序流程图。2022/11/2317基本符号基本符号 概括抽象概括抽象n一个符号表示系一个符号表示系统中的一个部件。中的一个部件。符号名 称说 明处理能改变数据值或数据位置的加工或部件,例如,程序、处理机、人工加工等都是处理。输入输出表示输入或输出(或既输入又输出),是一个广义的不指明具体设备的符号。连接指出转到图的另一部分或从图的另一部分转来,通常在同一页上。换页连接指出转到另一页图上或由另一页图转来。数据流用来连接其他符号,指明数据流动方向。2022/11/2318系系统符号符号具体描具体描绘 2022/11/23192.3.2 例子例子n某装配厂有一座存放零件的仓库,仓库中现有的各种零件的数量以及每种零件的库存量临界值等数据记录在库存清单主文件中。n当仓库中零件数量有变化时,应该及时修改库存清单主文件,如果那种零件的库存量少于它的库存量临界值,则应该报告给采购部门以便定货,规定每天向采购部门送一次定货报告。n习惯画法是使信息在图中从顶向下,从左向右流动。系统流程图系统流程图2022/11/23202.3.3 分分层层n首先用一首先用一张高高层次的系次的系统流程流程图描描绘系系统总体概貌,表明系体概貌,表明系统的关的关键功能。功能。n然后分然后分别把每个关把每个关键功能功能扩展到适当的展到适当的详细程度,画在程度,画在单独的独的一一页纸上。上。n这种分种分层次的描次的描绘方法便于方法便于阅读者按从抽象到具体的者按从抽象到具体的过程逐步程逐步深入地了解一个复深入地了解一个复杂的系的系统。2022/11/23212.4 数据流数据流图图n数据流数据流图是一种是一种图形化技形化技术,描,描绘信息流和数据流从信息流和数据流从输入入移移动到到输出的出的过程中所程中所经受的受的变换。n没有任何具体的物理元素,只是描没有任何具体的物理元素,只是描绘数据在数据在软件中流件中流动流流动和被和被处理的理的逻辑过程。程。n因因为数据流数据流图是是逻辑系系统的的图形表示,即使不是形表示,即使不是专业的的计算机技算机技术人人员也容易理解,所以是极好的通信工具。也容易理解,所以是极好的通信工具。n此外,此外,设计数据流数据流图只需考只需考虑系系统必必须完成的基本完成的基本逻辑功功能,完全不需要考能,完全不需要考虑如何具体地如何具体地实现这些功能,所以它也些功能,所以它也是是软件件设计的很好的出的很好的出发点。点。2022/11/2322四种基本符号四种基本符号 n表示数据的源点或表示数据的源点或终点。点。n表示表示变换数据的数据的处理。理。n表示数据存表示数据存储(静止数据)。(静止数据)。n表示数据流,即特定数据的流表示数据流,即特定数据的流动方方向(流向(流动数据)。数据)。2022/11/2323n*:表示数据之表示数据之间是是“与与”关系。关系。n+:表示数据之:表示数据之间是是“或或”关系。关系。n :表示数据之:表示数据之间是是“互互斥斥”关系(只能从中关系(只能从中选一一个)。个)。三个附加符号三个附加符号 TABC*TABC*TABC+TABC+TABC TABC 2022/11/2324说明明1n处理并不一定是一个程序。理并不一定是一个程序。n数据存数据存储和数据流都是数据,和数据流都是数据,仅仅所所处的状的状态不同。数据不同。数据存存储是是处于静止状于静止状态的数据,数据流是的数据,数据流是处于运于运动中的数据。中的数据。n数据流数据流图的基本要点是描的基本要点是描绘“做什么做什么”而不考而不考虑“怎怎样做做”。通常忽略出。通常忽略出错处理,也不包括理,也不包括诸如打开或者关如打开或者关闭文件文件的的处理。理。n在数据流在数据流图中中应该描描绘所有可能的数据流向,而不所有可能的数据流向,而不应该描描绘出出现某个数据流的条件。某个数据流的条件。2022/11/2325说明明2n有有时数据的源点和数据的源点和终点相同。如果只用一个符号代表数据点相同。如果只用一个符号代表数据的源点和的源点和终点,点,则至少有两个箭至少有两个箭头和和这个符号相个符号相连(一个(一个进一个出,)可能其中一条箭一个出,)可能其中一条箭头相当相当长,这将降低数据流将降低数据流图的清晰度,如果代表同一个事物的同的清晰度,如果代表同一个事物的同样符号在符号在图中出中出现在在n个地方,个地方,则在在这个符号的一个角上画个符号的一个角上画n-1条短斜条短斜线做做标记。2022/11/2326说明明3n数据流与程序流程数据流与程序流程图中用箭中用箭头表示的控制流有本表示的控制流有本质不同,不同,千万不要混淆。千万不要混淆。n熟悉程序流程熟悉程序流程图的初学者在画数据流的初学者在画数据流图时,往往,往往试图在数在数据流据流图中表中表现分支条件或循分支条件或循环,殊不知,殊不知这样做将造成混乱,做将造成混乱,画不出正确的数据流画不出正确的数据流图。2022/11/2327例子例子n问题定定义:n一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。n对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。n零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某个零件的库存数量少于库存量临界值时就应该再次定货。2022/11/2328提取数据流提取数据流图的四种成分的四种成分1 n“通通过放在放在仓库中的中的CRT终端把事端把事务报告告给定定货系系统”仓库管理管理员是数据源点。是数据源点。n“采采购部每天需要一部每天需要一张定定货报表表”采采购员是数据是数据终点。点。n“采采购部需要部需要报表表”用于用于产生生报表的表的处理。理。n“事事务的后果是改的后果是改变零件零件库存量存量”对事事务进行的加工的行的加工的处理。理。2022/11/2329提取数据流提取数据流图的四种成分的四种成分2n“系系统把定把定货报表送表送给采采购部部”定定货报表是一个数据表是一个数据流。流。n“事事务需要从需要从仓库送到系送到系统中中”事事务是一个数据流。是一个数据流。n“每当有一个事每当有一个事务发生生时立即立即处理它,然而每天只理它,然而每天只产生一生一次定次定货报表表”应该有一个数据存有一个数据存储保存保存产生定生定货报表表的数据。的数据。n“当某个零件的当某个零件的库存数量少于存数量少于库存量存量临界界值时就就应该再次再次定定货”应该有一个数据存有一个数据存储保存保存库存清存清单数据。数据。2022/11/2330数据流数据流图的四种成分的四种成分2022/11/2331定货系统的基本系统模型仓库 管理管理员定定货系系统采采购员事事务定定货报表表2022/11/2332定定货系系统的功能的功能级数据流数据流图 2022/11/2333把把处理功能理功能进一步分解后的数据流一步分解后的数据流图 2022/11/2334注意注意1.1.当当进一步分解将涉及如何具体地一步分解将涉及如何具体地实现一个功能一个功能时就不就不应该再分解了。再分解了。n例如:为什么不进一步分解“产生报表”这个功能呢?定货报表中需要的数据在存储的定货信息中全都有,产生报表只不过是按一定顺序排列这些信息,再按一定格式打印出来。然而这些考虑纯属具体实现的细节,不应该在数据流图中表现。2.2.当当对数据流数据流图分分层细化化时必必须保持信息保持信息连续性。性。n也就是说,当把一个处理分解为一系列处理时,分解前和分解后的输入输出数据流必须相同。3.3.应该注意在注意在图中中对处理理进行行编号的方法。号的方法。2022/11/23352.4.3 命名命名n数据流数据流图中每个成分的命名是否恰当,直接影响中每个成分的命名是否恰当,直接影响数据流数据流图的可理解性。的可理解性。2022/11/2336为数据流(或数据存数据流(或数据存储)命名)命名1.1.名字名字应代表代表整个数据流整个数据流(或数据存(或数据存储)的内容,而不是)的内容,而不是仅仅反映它的某些成分。反映它的某些成分。2.2.不要使用空洞的、缺乏不要使用空洞的、缺乏具体含具体含义的名字(如:的名字(如:“数据数据”、“信息信息”、“输入入”等)。等)。3.3.如果在如果在为数据流(或数据存数据流(或数据存储)起名字)起名字时遇到了困遇到了困难,则很很可能是因可能是因为对数据流数据流图分解不恰当分解不恰当造成的,造成的,应尝试重新分解,重新分解,看是否能克服看是否能克服这个困个困难。2022/11/2337为处理命名理命名1.1.通常通常先先为数据流命名数据流命名,然后再,然后再为与之相关与之相关联的的处理命名。理命名。2.2.名字名字应该反映反映整个整个处理的功能理的功能,而不是它的一部分功能。,而不是它的一部分功能。3.3.名字最好由一个名字最好由一个具体的及物具体的及物动词,加上一个具体的,加上一个具体的宾语组成成。应该尽量避免使用尽量避免使用“加工加工”、“处理理”等空洞等空洞笼统的的动词作作名字。名字。4.4.通常名字中通常名字中仅包括一个包括一个动词,如果必,如果必须用两个用两个动词才能描述才能描述整个整个处理的功能,理的功能,则把把这个个处理再分解成两个理再分解成两个处理可能更恰理可能更恰当些。当些。5.5.如果在如果在为某个某个处理命名理命名时遇到困遇到困难,则很可能是很可能是发现了了分解分解不当不当的迹象,的迹象,应考考虑重新分解。重新分解。2022/11/2338为数据源点数据源点/终点命名点命名n采用它采用它们在在问题域中域中习惯使用的名字(如使用的名字(如“采采购员”、“仓库管理管理员”等)等)2022/11/23392.4.4 用途用途1.1.画数据流画数据流图的基本目的是利用它作的基本目的是利用它作为交流信息的工具。交流信息的工具。2.2.数据流数据流图的另一个主要用途是作的另一个主要用途是作为分析和分析和设计的工具。的工具。3.3.可以根据系可以根据系统的的逻辑模型考模型考虑系系统的物理的物理实现。当用数据。当用数据流流图辅助物理系助物理系统的的设计时,以,以图中不同中不同处理的定理的定时要求要求为指南,能指南,能够在数据流在数据流图上画出上画出许多多组自自动化化边界,每界,每组自自动化化边界可能意味着一个不同的物理系界可能意味着一个不同的物理系统。4.4.数据流数据流图对更更详细的的设计步步骤也有帮助也有帮助2022/11/2340例1n可以可以联机地接收事机地接收事务并放入并放入队列中,然而更新列中,然而更新库存清存清单、处理理定定货和和产生生报表以批量方式表以批量方式进行。当然,行。当然,这种方案需要增加一种方案需要增加一个数据存个数据存储以存放事以存放事务数据。数据。2022/11/2341例2n改改变自自动化化边界,把界,把处理理11、12和和13放在同一个放在同一个边界内。界内。n这个系个系统将将联机地接收事机地接收事务、更新、更新库存清存清单和和处理定理定货及及输出出定定货信息;然而信息;然而处理理2将以批量方式将以批量方式产生定生定货报表。表。2022/11/23422.5 数据字典数据字典n数据字典是关于数据的信息的集合,也就是数据字典是关于数据的信息的集合,也就是对数据流数据流图中中包含的所有元素的定包含的所有元素的定义的集合。的集合。n数据流数据流图和数据字典共同构成系和数据字典共同构成系统的的逻辑模型,没有数据模型,没有数据字典数据流字典数据流图就不就不严格,然而没有数据流格,然而没有数据流图数据字典也数据字典也难于于发挥作用。作用。2022/11/23432.5.1 数据字典的内容数据字典的内容n一般一般说来,数据字典来,数据字典应该由由对下列四下列四类元素的定元素的定义组成:成:(1)数据流)数据流(2)数据流分量(即,数据元素)数据流分量(即,数据元素)(3)数据存)数据存储(4)处理。理。n本本书中数据字典将主要由中数据字典将主要由对数据的定数据的定义组成。数据成。数据处理的理的定定义用其它工具(如用其它工具(如IPO图或或PDL)描述更方便。)描述更方便。2022/11/2344数据字典中数据字典中记录的数据元素的信息的数据元素的信息 n一般信息:名字,一般信息:名字,别名名,描述等。,描述等。n定定义:数据:数据类型,型,长度,度,结构等。构等。n使用特点:使用特点:值的范的范围,使用,使用频率,率,使用方式使用方式输入入/输出出/本地,条件本地,条件值等。等。n控制信息:来源,用控制信息:来源,用户,使用它的,使用它的程序,改程序,改变权,使用,使用权等。等。n分分组信息:父信息:父结构,从属构,从属结构,物构,物理位置理位置-记录、文件和数据、文件和数据库等。等。出出现别名主要原因名主要原因 n对于同于同样的数据,不同的用的数据,不同的用户使用了不同的名字;使用了不同的名字;n一个分析一个分析员在不同在不同时期期对同一个数据使用了不同的名字;同一个数据使用了不同的名字;n两个分析两个分析员分分别分析同一个数据流分析同一个数据流时,使用了不同的名字。,使用了不同的名字。数据元素编号:DC001数据元素名称:考试成绩别名:成绩、分数简述:学生考试成绩,分五个等级类型/长度:两个字节,字符类型取值/含义:优 90-100 良 80-89 中 70-79 及格 60-69 不及格 0-59有关数据项或结构:学生成绩档案有关处理逻辑:计算成绩2022/11/23452.5.2 定定义义数据的方法数据的方法n数据字典中的定数据字典中的定义就是就是对数据自数据自顶向下的分解。向下的分解。n当分解到不需要当分解到不需要进一步定一步定义,每个和工程有关的人也都清,每个和工程有关的人也都清楚其含楚其含义的元素的元素时,这种分解种分解过程就完成了。程就完成了。数据元素数据元素组成数据的方式成数据的方式 1.1.顺序序即以确定次序即以确定次序连接两个或多个分量;接两个或多个分量;2.2.选择即从两个或多个可能的元素中即从两个或多个可能的元素中选取一个;取一个;3.3.重复重复即把指定的分量重复零次或多次。即把指定的分量重复零次或多次。4.4.可可选即一个分量是可有可无的(重复零次或一次)。即一个分量是可有可无的(重复零次或一次)。2022/11/2346符号符号1 n意思是等价于(或定意思是等价于(或定义为)n意思是和(即意思是和(即连接两个分量)接两个分量)n 意思是或(即从方括弧内列出的若干个分量中意思是或(即从方括弧内列出的若干个分量中选择一个)一个)n 意思是重复(即,重复花括弧内的分量)意思是重复(即,重复花括弧内的分量)n()意思是可意思是可选(即,(即,圆括弧里的分量可有可无)括弧里的分量可有可无)通讯录=通讯地址 通讯地址=姓名+邮编+省|直辖市|自治区+市|县+街道+门牌号+(电话)2022/11/23472.5.3 数据字典的用途数据字典的用途n数据字典最重要的用途是作数据字典最重要的用途是作为分析分析阶段的工具段的工具。n数据字典中包含的每个数据元素的控制信息是很有价数据字典中包含的每个数据元素的控制信息是很有价值的。的。容易估容易估计改改变一个数据将一个数据将产生的影响,并且能生的影响,并且能对所有受影所有受影响的程序或模响的程序或模块作出相作出相应的改的改变。n最后,数据字典是开最后,数据字典是开发数据数据库的第一步。的第一步。2022/11/23482.5.4 数据字典的数据字典的实现实现n程序程序处理;理;n卡片式人工卡片式人工书写;写;名字:定名字:定货报表表别名:定名:定货信息信息描述:每天一次送描述:每天一次送给采采购员的需的需要要定定货的零件表的零件表定定义:定:定货报表表=零件零件编号号+零件零件名称名称+定定货数量数量+目前价格目前价格+主主要供要供应者者+次要供次要供应者者位置:位置:输出到打印机出到打印机名字:零件名字:零件编号号别名:名:描述:唯一地描述:唯一地标识库存清存清单中中一个特定零件的关一个特定零件的关键域域定定义:零件:零件编号号=8字符字符8位置:定位置:定货报表、定表、定货信息、信息、库存清存清单名字:定名字:定货数量数量别名:名:描述:某个零件一次定描述:某个零件一次定货的数的数量量定定义:定:定货数量数量=1数字数字5位置:定位置:定货报表、定表、定货信息信息2022/11/2349数据字典具有的特点数据字典具有的特点 1.1.通通过名字能方便地名字能方便地查阅数据的定数据的定义。2.2.没有冗余。没有冗余。3.3.尽量不重复在尽量不重复在规格格说明的其它明的其它组成部分中已成部分中已经出出现的信息。的信息。4.4.容易更新和修改。容易更新和修改。5.5.能能单独独处理描述每个数据元素的信息。理描述每个数据元素的信息。6.6.定定义的的书写方法写方法简单方便而且方便而且严格。格。2022/11/2350教材购销管理系统(1)问题描述:学校教材科根据业务的需要,建立一个学校教材购销管理系统,提高教材采购、销售和信息管理的效率。学生张秘书购书申请王会计李出纳赵保管学生购书证明购书申请购书申请书学生审 查有效性购书单开发票开领书单发书学生有 效购书单发票领书单书学生审查并开发票购书单开领书单发书学生发票领书单书2)去掉具体模型中的非本质因素,抽象出当前系统的逻辑模型1)通过对现实环境的调查研究,获得当前系统的具体模型3)分析当前系统与目标系统的差别,建立目标系统的逻辑模型。2022/11/2351教材购销管理系统(2)学生审查并开发票购书单开领书单学生发票领书单无效书单4)对目标系统进行补充和完善,并写出完整的需求说明。学生1 审查并开发票购书单2 开领书单学生发票领书单无效书单各班学生用书表教材存量表5)对需求说明进行复审,直到确认文档齐全,并且符合用户的全部需求为止2022/11/2352教材购销管理系统(3)学生学生教材购销教材购销管理系统管理系统书书 库库保管员保管员1.教材购销管理系统的顶层DFD学生学生书书 库库保管员保管员2.第二层DFD图教材购销系统购书单领书单缺书单进书通知购书单领书单1销 售2采购进书通知F2:缺书登记表F1:教材存量表缺书单进书通知2022/11/2353教材购销管理系统(4)1.1 审 查有效性1.2 开发票有效 购书单1.3 领书并 开领书单发票1.4 登记缺书1.5 补售教材F2:缺书登记表学生学生无效书单领书单领书单F3:各班学生用书表F4:售书登记表 补售书单 暂缺书单采购3.第三层DFD图销售子系统F1:教材存量表2022/11/2354教材购销管理系统(5)2.3 修改教材库存和待购量2.1 按 书 号 汇总缺书F2:缺书登记表销售子系统书库保管员F1:教材存量表进书通知3.第三层DFD图采购子系统2.2 按出版社 统计缺书F5:待购教材表F6:教材一览表进书通知2022/11/2355教材购销管理系统(6)数据字典(Data Directory-DD)领书单=学院+专业+班级+学号+姓名+书号+书名+数量+日期有效购书单=领书单发票=学号+姓名+书号+书名+单价+数量+总价+书费合计教材存量表=书号+单价+数量暂缺书单=学号+姓名+书号+数量补售书单=学号+姓名+书号+数量2022/11/23562.6 成本成本/效益分析效益分析n成本效益分析的目的成本效益分析的目的要从要从经济角度分析开角度分析开发一个特定的新系一个特定的新系统是否划算,是否划算,从而帮助使用部从而帮助使用部门负责人正确地作出是否投人正确地作出是否投资于于这项开开发工程的决定。工程的决定。2022/11/23572.6.1 成本估成本估计计n软件开件开发成本主要表成本主要表现为人力消耗(乘以平均工人力消耗(乘以平均工资则得得到开到开发费用)。用)。n代码行技术 软件成本=每行代码的平均成本估计的源代码总行数n任务分解技术:软件开发项目分解为若干个相对独立的任务,分别估计每个单独任务的成本:单独任务成本=任务所需人力估计值每人每月平均工资;软件开发项目总成本估计=各个单独任务成本估计值之和。常用的办法是按开发阶段划分任务,典型环境下各个开发阶段需要使用的人力百分比大致如下:2022/11/23582.6.1 成本估成本估计计n自动估计成本技术:采用自动估计成本的软件工具估计。任任务人力()人力()可行性研究可行性研究需求分析需求分析设计编码与与单元元测试综合合测试总计5102520401002022/11/23592.6.2 成本成本/效益分析的方法效益分析的方法n成本效益分析的第一步是成本效益分析的第一步是估估计开开发成本成本、运行运行费用用和和新新系系统将将带来的来的经济效益效益。n运行运行费用:系用:系统的操作的操作费用(操作用(操作员人数,工作人数,工作时间,消,消耗的物耗的物资等等)和等等)和维护费用。用。n系系统的的经济效益:因使用新系效益:因使用新系统而增加的收入加上使用新而增加的收入加上使用新系系统可以可以节省的运行省的运行费用。用。2022/11/2360相关概念相关概念1n货币货币的的时间时间价价值值 假假设设年利率年利率为为i,如果,如果现现在存入在存入P元,元,则则n年后可以得到的年后可以得到的钱钱数数为为:FP(1 i)n 反之,如果反之,如果n年后能收入年后能收入F元元钱钱,那么,那么这这些些钱钱的的现现在价在价值值是是 P F(1 i)n 例:修改一个已有的例:修改一个已有的库存管理系存管理系统,估,估计需要需要5000元,系元,系统修改后使修改后使用用5年,每年可年,每年可节省省2500元。元。请进行成本行成本/效益分析。效益分析。年年将来将来值(元)(元)(1+0.12)n现在在值(元)(元)累累计的的现在在值(元)(元)125001.122232.142232.14225001.251992.984225.12325001.401779.456004.57425001.571588.807593.37525001.761418.579011.942022/11/2361相关概念相关概念2n投投资回收期回收期n通常用投资回收期衡量一项开发工程的价值。n所谓投资回收期就是使累计的经济效益等于最初投资所需要的时间。例如:修改库存清单第一、第二年回收:4225元 第三年用于回收投资要:(5000-4225)/1779=0.44年 总的投资回收期=2.44年2022/11/2362相关概念相关概念3n纯收入收入n衡量工程价值的另一项经济指标是工程的纯收入。n纯收入就是在整个生命周期之内系统的累计经济效益(折合成现在值)与投资之差。2022/11/2363相关概念相关概念4n投投资回收率回收率n衡量投资效益的大小,并且可以把它和年利率相比较,在衡量工程的经济效益时,它是最重要的参考数据。计算公式:算公式:P F1/(1 j)+F2/(1 j)2+Fn/(1 j)n P 是是现现在的投在的投资额资额;Fi 是第是第 i年年底的效益年年底的效益(i 1,2,n);n 是系是系统统的使用寿命;的使用寿命;j 是投是投资资回收率;回收率;2022/11/23642.7 小小结结-1n可行性研究目的是可行性研究目的是进一步探一步探讨问题定定义阶段所确定的段所确定的问题是否有可行的解。是否有可行的解。n过程程1、经过定定义问题,分析,分析问题,提出解法的反复,提出解法的反复过程,最程,最终提提出一个符合系出一个符合系统目目标的高的高层次的次的逻辑模型。模型。2、然后根据系然后根据系统的的这个个逻辑模型模型设想各种可能的物理系想各种可能的物理系统,并且从技并且从技术、经济和操作等各方面分析和操作等各方面分析这些物理系些物理系统的可行性。的可行性。3、最后,系、最后,系统分析分析员提出一个推荐的行提出一个推荐的行动方方针,提交用,提交用户和和使用部使用部门负责人人审查批准。批准。2022/11/23652.7 小小结结-2n系系统流程流程图实质上是物理数据流上是物理数据流图,它描,它描绘组成成系系统的主要物理元素以及信息在的主要物理元素以及信息在这些元素些元素间流流动和和处理的情况。理的情况。n数据流数据流图的基本符号只有四种,它是描的基本符号只有四种,它是描绘系系统逻辑模型的极好工具。通常数据字典和数据流模型的极好工具。通常数据字典和数据流图共共同构成系同构成系统的的逻辑模型。模型。n成本效益分析是可行性研究的一成本效益分析是可行性研究的一项重要内容重要内容 2022/11/2366例1:计算投资回收期、纯收入、投资回收率n一个软件的开发成本为50000元,寿命为5年。未来5年的每年收益预计为:20000元、22000元、23600元、24100元、25500元。银行年利率为10%。求投资回收期、纯收入、投资回收率。2022/11/2367年将来值(1+i)n现在值120000222000323600424100525500将来的收入折算成现在的值2022/11/2368n投资回收期?n纯收入?n投资回收率?2022/11/2369例2:计算软件成本n设计人员分析“文件管理”软件系统的开发成本,该系统有六大模块。按每人每月1000行源语句计算,请将表中的空格填上数据,以计算软件成本。n注:A、B、M分别表示行数估计值的最大、最小、预期,权重比为1:1:4。n系统分析、系统设计、程序设计、测试花费时间按13:14:7:12计算;n精确到2位小数2022/11/2370项目项目ABM系统系统分析分析系统系统设计设计程序程序设计设计测试测试合计合计人人.月月收文处理收文处理180026502400文件查询文件查询350600420文件传送文件传送245060002100系统管理系统管理295036003400文件拟稿文件拟稿410074005000系统设置系统设置300045003500总计总计工资(元工资(元/月)月)2500180015001800成本成本2022/11/2371大作业参考题目n售票系统n排课系统n超市管理系统n酒店管理系统n物业管理系统n人事管理系统n生产管理系统n设备管理系统n各种实时通信系统(QQ、MSN、Skype、飞信)n各种网络评审系统(论文管理系统、成绩管理系统)n各种仿真试验系统(Matlab、ns2)n各种工具(Formail、winrar、CuteFTP)2022/11/2372Thanks2022/11/2373此课件下载可自行编辑修改,仅供参考!此课件下载可自行编辑修改,仅供参考!感谢您的支持,我们努力做得更好!谢谢感谢您的支持,我们努力做得更好!谢谢