《可行性研究的目的ppt课件》由会员分享,可在线阅读,更多相关《可行性研究的目的ppt课件(42页珍藏版)》请在金锄头文库上搜索。
1、复习回顾复习回顾1、可行性研究的目的是什么? 用用最小的代价最小的代价在在尽可能短的时间尽可能短的时间内内确定问题是否确定问题是否能够解决。能够解决。2、可行性研究的任务主要是什么? 了解客户的要求了解客户的要求了解客户的要求了解客户的要求及现实环境及现实环境及现实环境及现实环境分析技术、经济和社会因素可行性分析技术、经济和社会因素可行性分析技术、经济和社会因素可行性分析技术、经济和社会因素可行性编写可行性研究报告编写可行性研究报告编写可行性研究报告编写可行性研究报告制定初步项目开发计划制定初步项目开发计划制定初步项目开发计划制定初步项目开发计划1 1引入新课引入新课 数据流图数据流图1、便于
2、、便于用户表达功能需求和数据需求用户表达功能需求和数据需求及其及其联系;联系;2、便于用户和开发人员两类人员共同理解、便于用户和开发人员两类人员共同理解现行系统和规划系统的框架;现行系统和规划系统的框架;3、清晰表达数据流的情况,有利于后期的、清晰表达数据流的情况,有利于后期的系统建模。系统建模。 如何了解客户的要求?如何了解客户的要求?2 2 2.4 2.4 数据流图数据流图 DFD - Data Flow Diagram一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程,是系统逻辑功能的图
3、形表示。设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑怎样具体地实现这些功能,所以它也是今后进行软件设计的很好的出发点。3 3 数据流图四种基本符号数据流图四种基本符号数据加工数据加工/ /处理/ /变换变换数据源点或终点数据源点或终点 ( (外部实体外部实体) )数据流数据流(data flow)(data flow)(运动中的(运动中的数据)数据)数据存储文件数据存储文件(静止状态数据)(静止状态数据)或或或或或或数据存储文件(静止状态数据)4 4最小的简单数据流图示例最小的简单数据流图示例处理处理处理处理数据源点数据源点数据源点数据源点数据终点数据终点数据终点数据终点输
4、入输入输入输入数据流数据流数据流数据流D1数据存数据存储输出输出输出输出数据流数据流数据流数据流数据流数据流数据流数据流5 5数据流图几种数据流图几种附加符号附加符号与关系与关系6 6或关系或关系7 7异与关系异与关系8 8画画DFD的的策略策略为了表达数据处理过程的数据加工情为了表达数据处理过程的数据加工情况,需要采用况,需要采用层次结构层次结构的数据流图。的数据流图。按照系统的层次结构进行按照系统的层次结构进行逐步分解逐步分解,并以分层的数据流图反映这种结构关并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系系,能清楚地表达和容易理解整个系统。统。9 9首先画首先画“顶层顶层
5、DFDDFD”软件软件软件软件系统系统系统系统外部实体外部实体外部实体外部实体 外部实体外部实体外部实体外部实体 外部实体外部实体外部实体外部实体外部实体外部实体外部实体外部实体 输入输入输入输入数据流数据流数据流数据流输入输入输入输入数据流数据流数据流数据流输出输出输出输出数据流数据流数据流数据流输出输出输出输出数据流数据流数据流数据流顶层流图仅包含一个加工顶层流图仅包含一个加工顶层流图仅包含一个加工顶层流图仅包含一个加工,它代表被开发系统。它的输入流,它代表被开发系统。它的输入流,它代表被开发系统。它的输入流,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据。是该系统
6、的输入数据,输出流是系统所输出数据。是该系统的输入数据,输出流是系统所输出数据。是该系统的输入数据,输出流是系统所输出数据。描绘系统的整体逻辑概貌描绘系统的整体逻辑概貌1010分层的数据流图分层的数据流图分层的数据流图分层的数据流图分解前和分分解前和分解后的输入、解后的输入、输出数据流输出数据流必须相同必须相同其次画中间层流图:对上层父图的处理的细化,形成子图。其次画中间层流图:对上层父图的处理的细化,形成子图。其次画中间层流图:对上层父图的处理的细化,形成子图。其次画中间层流图:对上层父图的处理的细化,形成子图。底层流图是指其加工不需再做分解的数据流图,它处在最底层底层流图是指其加工不需再做
7、分解的数据流图,它处在最底层底层流图是指其加工不需再做分解的数据流图,它处在最底层底层流图是指其加工不需再做分解的数据流图,它处在最底层。1111注意:注意:数据流图应该分层,并且在把功能级数据流图数据流图应该分层,并且在把功能级数据流图细化后得到的处理细化后得到的处理超过超过9 9个时个时,应该采用,应该采用画分图画分图的办法。的办法。当对数据流图分层细化时必须保持信息的连续当对数据流图分层细化时必须保持信息的连续性,即,当把一个处理分解为一系列处理时,分性,即,当把一个处理分解为一系列处理时,分解前和分解后的输入输出数据流必须相同!解前和分解后的输入输出数据流必须相同!1212假设一家工厂
8、的采购部每天需要一张订货报表,报假设一家工厂的采购部每天需要一张订货报表,报表按零件编号排序,表中列出所有需要再次订货的表按零件编号排序,表中列出所有需要再次订货的零件。对于每个需要再次订货的零件应该列出下述零件。对于每个需要再次订货的零件应该列出下述数据:零件编号,零件名称,订货数量,目前价格,数据:零件编号,零件名称,订货数量,目前价格,主要供应者,次要供应者。主要供应者,次要供应者。零件入库或出库称为事零件入库或出库称为事务务,通过放在仓库中的,通过放在仓库中的CRTCRT终端把事务报告给订货系终端把事务报告给订货系统。当某种零件的库存数量少于库存量临界值时就统。当某种零件的库存数量少于
9、库存量临界值时就应该再次订货。应该再次订货。2.4.2举例1313订货报表表订货系系统图图图图2.5 2.5 订货系统的基本系统模型(顶层数据流图)订货系统的基本系统模型(顶层数据流图)订货系统的基本系统模型(顶层数据流图)订货系统的基本系统模型(顶层数据流图)从从问题描述中提取数描述中提取数据流据流图的的4种成分:种成分:数据源点数据源点数据数据终点点数据流数据流数据数据处理理1414图图2.6 2.6 订货系统的订货系统的功能级功能级数据流图数据流图订货信息信息订货信息信息订货报表表订货信息信息订货信息信息订货系统分解后的第二级订货系统分解后的第二级DFD1515图图2.7 2.7 把处理
10、事务的功能进一步分解后的数据流图把处理事务的功能进一步分解后的数据流图订货信信息息处理理订货订货信息信息订货报表表订货信息信息订货系统分解后订货系统分解后的第三级的第三级DFD1616 思考:DFD分解到什么时候结束?也就是把每个主要功能都细化为一张数据流分也就是把每个主要功能都细化为一张数据流分图!图!当进一步分解将涉及如何具体实现一个功能时当进一步分解将涉及如何具体实现一个功能时就不应该再分解了!就不应该再分解了!1717画数据流图的基本目的是利用它作为交流信息的工具。画数据流图的基本目的是利用它作为交流信息的工具。画数据流图的基本目的是利用它作为交流信息的工具。画数据流图的基本目的是利用
11、它作为交流信息的工具。分析员把他对现有系统的认识或对目标系统的设想用数分析员把他对现有系统的认识或对目标系统的设想用数分析员把他对现有系统的认识或对目标系统的设想用数分析员把他对现有系统的认识或对目标系统的设想用数据流图描绘出来,供有关人员审查确认。据流图描绘出来,供有关人员审查确认。据流图描绘出来,供有关人员审查确认。据流图描绘出来,供有关人员审查确认。由于在数据流图中通常仅仅使用由于在数据流图中通常仅仅使用由于在数据流图中通常仅仅使用由于在数据流图中通常仅仅使用4 4 4 4种基本符号,而且不种基本符号,而且不种基本符号,而且不种基本符号,而且不包含任何有关物理实现的细节,因此,绝大多数用
12、户都可包含任何有关物理实现的细节,因此,绝大多数用户都可包含任何有关物理实现的细节,因此,绝大多数用户都可包含任何有关物理实现的细节,因此,绝大多数用户都可以理解和评价它。以理解和评价它。以理解和评价它。以理解和评价它。数据流图着重描绘系统所完成的功能,其另一个主要用数据流图着重描绘系统所完成的功能,其另一个主要用数据流图着重描绘系统所完成的功能,其另一个主要用数据流图着重描绘系统所完成的功能,其另一个主要用途是作为辅助物理系统的途是作为辅助物理系统的途是作为辅助物理系统的途是作为辅助物理系统的分析和设计分析和设计分析和设计分析和设计的工具。的工具。的工具。的工具。2.4.4 数据流图用途数据
13、流图用途1818辅助物理系统设计时的自动化边界划分!辅助物理系统设计时的自动化边界划分!辅助物理系统设计时的自动化边界划分!辅助物理系统设计时的自动化边界划分! 当用数据流图辅助物理系统的设计时,以图中不同当用数据流图辅助物理系统的设计时,以图中不同当用数据流图辅助物理系统的设计时,以图中不同当用数据流图辅助物理系统的设计时,以图中不同处理的定时要求为指南,能够在数据流图上画出许多组处理的定时要求为指南,能够在数据流图上画出许多组处理的定时要求为指南,能够在数据流图上画出许多组处理的定时要求为指南,能够在数据流图上画出许多组自动化边界,每组自动化边界可意味着自动化边界,每组自动化边界可意味着自
14、动化边界,每组自动化边界可意味着自动化边界,每组自动化边界可意味着一个不同的物理一个不同的物理一个不同的物理一个不同的物理系统系统系统系统,因此可以根据系统的逻辑模型考虑系统的物理实,因此可以根据系统的逻辑模型考虑系统的物理实,因此可以根据系统的逻辑模型考虑系统的物理实,因此可以根据系统的逻辑模型考虑系统的物理实现。现。现。现。作为辅助物理系统的分析和设计的工具作为辅助物理系统的分析和设计的工具1919图图图图2.8 2.8 这种划分自动化边界的方法暗示这种划分自动化边界的方法暗示这种划分自动化边界的方法暗示这种划分自动化边界的方法暗示以以以以批量方式更新库存清单批量方式更新库存清单批量方式更
15、新库存清单批量方式更新库存清单订货报表表 处理理订货订货信息信息订货信息信息订货信息信息订货信息信息第一种划分方式:以批量方式更新库存清单第一种划分方式:以批量方式更新库存清单2020图图图图2.9 2.9 另一种划分自动化边界的方法建议另一种划分自动化边界的方法建议另一种划分自动化边界的方法建议另一种划分自动化边界的方法建议以以以以联机方式更新库存清单联机方式更新库存清单联机方式更新库存清单联机方式更新库存清单订货报表表处理理订货订货信息信息订货信息信息订货信息信息为何出何出现不同的划分自不同的划分自动化化边界方法?界方法?因因为事事务随随时可能可能发生,生,因此因此处理理1.1(接收事(接
16、收事务)必)必须是是联机的。机的。采采购员每天需要一次每天需要一次订货报表,表,因此因此处理理2( (产生生报表)表)应该以批量方式以批量方式进行。行。而更新而更新库存清存清单、 、处理理订货并没有被施加限制。并没有被施加限制。第二种划分方式:以联机方式更新库存清单第二种划分方式:以联机方式更新库存清单2121思考:有没有第三种划分方式?思考:有没有第三种划分方式?订货报表表处理理订货订货信息信息订货信息信息订货信息信息订货报表表处理理订货订货信息信息订货信息信息订货信息信息22222.5 2.5 数据字典数据字典 & & 用途 - DDDD(Data DictionaryData Dicti
17、onary) 数据流图数据流图和和数据字典数据字典共同构成系统的逻共同构成系统的逻辑模型辑模型 没有数据字典数据流图就不严格,没有没有数据字典数据流图就不严格,没有没有数据字典数据流图就不严格,没有没有数据字典数据流图就不严格,没有数据流图数据流图数据流图数据流图 数据字典也难于发挥作用。数据字典也难于发挥作用。数据字典也难于发挥作用。数据字典也难于发挥作用。 数据字典的任务是数据字典的任务是: : 对于数据流图中出现的所对于数据流图中出现的所有被命名的图形元素在字典中作为一个词条加以定有被命名的图形元素在字典中作为一个词条加以定义,使得每一个图形元素的名字都有一个确切的解义,使得每一个图形元
18、素的名字都有一个确切的解释。释。2323数据字典的内容数据字典的内容 一般说来,数据字典应该由对一般说来,数据字典应该由对下列下列4 4类元素的定义组成:类元素的定义组成: (1) (1) 数据流数据流 (2) (2) 数据流分量数据流分量( (即数据元素即数据元素) ) (3) (3) 数据存储数据存储 (4) (4) 处理处理24242.5.22.5.22.5.22.5.2定义数据的方法定义数据的方法定义数据的方法定义数据的方法 符符符符号号号号含含含含 义义义义例例例例 子子子子 = =被定义为被定义为被定义为被定义为+ +与与与与 x=a+bx=a+b,则表示则表示则表示则表示 x x
19、 由由由由 a a 和和和和 b b 组成组成组成组成x=a|bx=a|b,则表示则表示则表示则表示 x x 由由由由 a a 或由或由或由或由 b b 组成组成组成组成 或或或或重复重复重复重复x=ax=a,则表示则表示则表示则表示 x x 由由由由 0 0个个个个或多个或多个或多个或多个 a a 组成组成组成组成( )( )可选可选可选可选 表示在两个表示在两个表示在两个表示在两个 * * 之间的内容为词条的注释之间的内容为词条的注释之间的内容为词条的注释之间的内容为词条的注释m nm n重复重复重复重复x=3a8x=3a8,则表示则表示则表示则表示x x中至少出现中至少出现中至少出现中至
20、少出现3 3 3 3次次次次a ,a ,最多出现最多出现最多出现最多出现8 8 8 8次次次次*注释符注释符注释符注释符 x=(a)x=(a),则表示则表示则表示则表示 a a 在在在在 x x 中出现中出现中出现中出现, , 也可不出现也可不出现也可不出现也可不出现2525 CASE结构化分析与设计工具结构化分析与设计工具 (大型软件大型软件) 卡片形式卡片形式/excel or record in file (小型软小型软件件) 卡片应该包含下述信息:卡片应该包含下述信息:名字、别名、描述、定义、位置。名字、别名、描述、定义、位置。2.5.4 数据字典的实现数据字典的实现2626 例如:例
21、如:名字:名字:订货报表订货报表别名:别名:订货信息订货信息描述:描述:每天一次送给采购员的需要订货的零件表每天一次送给采购员的需要订货的零件表定义:定义:订货报表订货报表= =零件编号零件编号+ +零件名称零件名称 + +订货数量订货数量+ +目前价格目前价格+ +主要供应者主要供应者 + +次要供应者次要供应者位置:位置:输出到打印机输出到打印机2727 例如:名字:名字:零件编号零件编号别名:别名:描述:描述:唯一地标识库存清单中唯一地标识库存清单中 一个特定零件的关键域一个特定零件的关键域定义:定义:零件编号零件编号=8=8字符字符88位置:位置:订货报表订货报表 订货信息订货信息 库
22、存清单库存清单 事务事务名字:名字:订货数量订货数量别名:别名:描述:描述:某个零件一次订货的数量某个零件一次订货的数量定义:定义:订货数量订货数量=1=1数字数字55位置:位置:订货报表订货报表 订货信息订货信息2828课堂练习课堂练习1 P54 n n电话号码=校内号码|校外号码n n校内号码=非0数字+3数字3n n非0数字=1|2|3|4|5|6|7|8|9n n数字=0|非0数字n n校外号码=本市号码|外地号码n n本市号码=0+非0数字+7数字7n n外地号码=0+3数字3+非0数字+7数字729292.6 2.6 成本成本/ /效益分析效益分析成本成本/ /效益分析的目的效益分
23、析的目的: : 从经济角度分析开发一个特定的从经济角度分析开发一个特定的新系统是否划算,新系统是否划算,从而帮助客户组织从而帮助客户组织的负责人正确地作出是否投资于这项的负责人正确地作出是否投资于这项开发工程的决定。开发工程的决定。3030 2.6.12.6.1 成本估计成本估计-人力成本估计人力成本估计 软件开发成本主要表现为人软件开发成本主要表现为人力消耗力消耗 估算技术估算技术 1. 代码行技术代码行技术 2. 2. 任务分解技术任务分解技术 3. 3. 自动估计成本自动估计成本技术技术3131 代码行技术代码行技术根据经验和历史数据估计实现一个功根据经验和历史数据估计实现一个功能需要的
24、源程序行数,能需要的源程序行数,用每行代码的用每行代码的平均成本乘以行数就可以确定软件的平均成本乘以行数就可以确定软件的成本成本。每行代码的平均成本主要取决于软件每行代码的平均成本主要取决于软件的复杂程度和工资水平的复杂程度和工资水平。代码行技术是比较简单的定量估算方代码行技术是比较简单的定量估算方法。法。当有以往开发类似工程的历史数当有以往开发类似工程的历史数据可供参考时据可供参考时,这个方法是非常有效,这个方法是非常有效的。的。3232 任务分解技术任务分解技术首先把软件开发工程分解为若干个相首先把软件开发工程分解为若干个相对独立的任务。对独立的任务。再分别估计每个单独的开发任务的成再分别
25、估计每个单独的开发任务的成本,最后累加起来得出软件开发工程本,最后累加起来得出软件开发工程的总成本。的总成本。估计每个任务的成本时,通常先估计估计每个任务的成本时,通常先估计完成该项任务需要用的完成该项任务需要用的人力人力( (以人月为以人月为单位单位) ),再乘以每人每月的平均工资而,再乘以每人每月的平均工资而得出每个任务的成本得出每个任务的成本。3333 自动估计成本技术自动估计成本技术 采用自动估计成本的软件工具采用自动估计成本的软件工具可以减轻人的劳动,并且使得估计可以减轻人的劳动,并且使得估计的结果更客观。但是,采用这种技的结果更客观。但是,采用这种技术必须有长期搜集的大量历史数据术
26、必须有长期搜集的大量历史数据为基础,并且需要有良好的数据库为基础,并且需要有良好的数据库系统支持。系统支持。34342.6.2 2.6.2 成本成本/ /效益分析的方法效益分析的方法成本成本/ /效益分析的第一步是估计效益分析的第一步是估计开发成本、运开发成本、运行费用行费用和和新系统将带来的经济效益新系统将带来的经济效益,然后从经,然后从经济角度判断这个系统是否值得投资。济角度判断这个系统是否值得投资。运行费运行费用取决于系统的用取决于系统的操作费用操作费用( (操作员人数,操作员人数,工作时间,消耗的物资等工作时间,消耗的物资等) )和和维护费用维护费用。系统的系统的经济效益经济效益等于等
27、于因使用新系统而增加的收因使用新系统而增加的收入入加上加上使用新系统可以节省的运行费用使用新系统可以节省的运行费用。 注意:注意:总的效益和生命周期的长度有关,所以总的效益和生命周期的长度有关,所以应该合理地估计软件的寿命。应该合理地估计软件的寿命。投资是现在进行投资是现在进行的,效益是将来获得的,不能简单地比较成本的,效益是将来获得的,不能简单地比较成本和效益,应该考虑货币的时间价值。和效益,应该考虑货币的时间价值。3535第第2章章小结小结2.1 2.1 可行性研究的任务可行性研究的任务: : 技术技术, , 经济经济, ,社会社会2.2 2.2 可行性研究过程可行性研究过程: 8 : 8
28、 步骤步骤2.4 2.4 数据流图数据流图: : 源点或终点,处理,数据存储源点或终点,处理,数据存储和数据流和数据流2.5 2.5 数据字典数据字典: : 是分析阶段的工具,包括流,是分析阶段的工具,包括流,元素,存储,处理元素,存储,处理4 4类元素组成。类元素组成。2.6 2.6 成本成本/ /效益分析:从经济角度判断是否继效益分析:从经济角度判断是否继续投资于这项工程的主要依据。续投资于这项工程的主要依据。 3636习题 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还会延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统,请分层次
29、地画出描述本系统功能的数据流图。 医院对患者37监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压、心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。37373838从问题陈述可知,本系统数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。进一步分析问题陈述,从系统应该“定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。从问题陈述容易看出,本系统的数据终点是接收警告信息和病情报告的护士。
30、系统对病人生理信号的处理功能主要是“接收信号”、“分析信号”和“产生警告信息”。此外,系统还应该具有“定时取样生理信号”、“更新日志”和“产生病情报告”的功能。为了分析病人生理信号是否超出了医生规定的安全范围,应该存储“患者安全范围”信息。此外,定时记录病人生理信号所形成的“患者日志”,显然也是一个数据存储。3939日志日志数据数据要求要求生理生理信号信号生理生理信号信号危危机机病病人人信息信息产生警产生警告信息告信息3分析分析信号信号2处理事处理事务务1接受信接受信号号1病人病人警告信息警告信息护士护士病情报告病情报告日期日期时间时间定时生定时生理信号理信号日志日志数据数据更新日更新日志志6
31、处理事处理事务务1定时取定时取样样5时钟时钟生理信号生理信号D1D1 患者安全范围患者安全范围患者安全患者安全范围范围D1D1 患者日志患者日志产生病产生病情报告情报告7护士护士4040日志日志数据数据要求要求生理生理信号信号生理信号生理信号危危机机病病人人信息信息产生警产生警告信息告信息3分析分析信号信号2处理事处理事务务1接受信接受信号号1病人病人警告信息警告信息护士护士病情报告病情报告日期日期时间时间定定 时时 生生理信号理信号日志日志数据数据更新日更新日志志6处理事处理事务务1定时取定时取样样5时钟时钟生理信号生理信号D1D1 患者安全范围患者安全范围患者安全患者安全范围范围D1D1
32、患者日志患者日志产生病产生病情报告情报告7护士护士D3D3生理信息生理信息生理信号生理信号4141日志日志数据数据要求要求生理生理信号信号生理信号生理信号危机病人危机病人信息信息产生警产生警告信息告信息3分析分析信号信号2处理事处理事务务1接受信接受信号号1病人病人警告信息警告信息护士护士病情报告病情报告日期日期时间时间定定时时生生理理信号信号日志日志数据数据更新日更新日志志6处理事处理事务务1定时取定时取样样5时钟时钟生理信号生理信号D1D1 患者安全范围患者安全范围患者安全患者安全范围范围D1D1 患者日志患者日志产生病产生病情报告情报告7护士护士D3D3生理信息生理信息生理信号生理信号制定安制定安全范围全范围8安安全全范范围围信息信息安安全全范范围围信息信息4242