2.1可行性研究的任务

可行性研究的目的不是解决问题,而是确定问题是否值得去解决。

  • 可行性研究任务:
    1. 技术可行性
    2. 经济可行性
    3. 操作可行性

      2.2可行性研究的过程

  1. 复查系统规模和目标
  2. 研究目前正在使用的系统
  3. 导出新系统的高层逻辑模型
  4. 进一步定义问题
  5. 导出和评价供选择的解法
  6. 导出和评价供选择的解法
  7. 草拟开发计划
  8. 书写文档提交审查
  • 需求获取的(参考)过程

第二章可行性研究 - 图1

  1. 开发高层的业务模型
  2. 定义项目范围和高层需求
  3. 识别用户类和用户代表
  4. 获取具体的需求
  5. .确定目标系统的业务工作流
  6. 需求整理与总结

    2.3系统流程图

  • 系统流程图是概括地描绘物理系统的传统工具。
  • 基本思想:用图形符号以黑盒子形式描绘组成系统的每个部件(程序、文档、数据库、人工过程等)。
  • 系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程。

2.3.1符号

基本符号
第二章可行性研究 - 图2

2.3.2例子

某装配厂有一座存放零件的仓库,仓库中现有的各种零件的数量以及每种零件的库存量临界值等数据记录在库存清单主文件中。当仓库中零件数量有变化时,应该及时修改库存清单主文件,如果哪种零件的库存量少于它的库存量临界值,则应该报告给采购部门以便订货,规定每天向采购部门送一次订货报告。该装配厂使用一台小型计算机处理更新库存清单主文件和产生订货报告的任务。零件库存量的每一次变化称为个事务,由放在仓库中的CR终端输入到计算机中;系统中的库存清单程序对事务进行处理,更新存储在磁盘上的库存清单主文件,并且把必要的订货信息写在磁带上。最后每天由报告生成程序读一次磁带,并且打印出订货报告。

第二章可行性研究 - 图3

2.3.3分层

2.4数据流图(考点)

结构化分析模型
第二章可行性研究 - 图4


概念:数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。

2.4.1符号

  1. ** 基本符号(箭头上有信息):**<br />![](https://cdn.nlark.com/yuque/0/2020/png/1118250/1584082359737-d7661112-9ed2-421a-b13b-6531b3be73ec.png#align=left&display=inline&height=344&margin=%5Bobject%20Object%5D&originHeight=214&originWidth=309&status=done&style=none&width=496)

附加符号:
第二章可行性研究 - 图5
环境图

环境图( context diagram)也称为顶层数据流图(或0层数据流图),它仅包括一个数据处理过程,也就是要开发的目标系统。

•环境图的作用是确定系统在其环境中的位置,通过确定系统的输入和输出与外部实体的关系确定其边界。

  1. 典型的环境图<br />![](https://cdn.nlark.com/yuque/0/2020/png/1118250/1584082360075-da439bc5-b060-44fd-9d4f-bec5c46bccf7.png#align=left&display=inline&height=177&margin=%5Bobject%20Object%5D&originHeight=196&originWidth=580&status=done&style=none&width=525)

2.4.2例子

  • 例1 招生系统需求描述:学校首先公布招生条件,考生根据自己的条件报名,之后系统进行资格审査,并给出资格审査信息;对于资格审查合格的考生可以参加答卷,系统根据学校提供的试题及答案进行自动判卷,并给出分数及答题信息,供考生査询;最后系统根据学校的录取分数线进行录取,并将录取信息发送给考生。

环境图(箭头上是信息名词)
第二章可行性研究 - 图6

  • 例2 银行储蓄系统的业务流程:储户填写的存款单或取款单由业务员键入系统;如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率、密码(可选)等信息,并印出存单给储户;如果是取款而且开户时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。要求画出分层的数据流图,并细化到2层数据流图。

环境图
第二章可行性研究 - 图7

一层数据流图
第二章可行性研究 - 图8

  • 例3假设一家工厂的采购部每天需要5一张订货报表,报表按零件编号排序,表中列出所有需要再次订货的零件。对于每个需要再次订货的零件应该列出下述数据:零件编号,零件名称,订货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给订货系统。当某种零件的库存数量少于库存量临界值时就应该再次订货。

    • 做题步骤

第一步:可以从问题描述中提取数据流图的4种成分:实体,处理,数据库,数据流
首先考虑数据的源点终点,从上面对系统的描述可以知道“采购部每天需要一张订货报表”,“通过放在仓库中的CRT终端把事务报告给订货系统”,所以采购员是数据终点,而仓库管理员是数据源点。
image.png
第二步:再一次阅读问题描述,“采购部需要报表”
因此必须有一个用于产生报表的处理。事务的后果是改变零件库存量,然而任何改变数据的操作都是处理,因此对事务进行的加工是另一个处理。注意,在问题描述中并没有明显地提到需要对事务进行处理,但是通过分析可以看出这种需要。
image.png
第三步:考虑数据流和数据存储
系统把订货报表送给采购部,因此订货报表是一个数据流;事务需要从仓库送到系统中,显然手务是另一个数据流。产生报表和处理事务这两个处理在时间上明显不匹配——每当有一个事务发生时立即处理它,然而每天只产生一次订货报表。因此,用来产生订货报表的数据必须存放一段时间,也就是应该有一个数据存储。
image.png

2.4.3命名

  • 数据流命名时应注意的问题:

1.名字应代表整个数据流的内容,而不是仅仅反映它的某些成分。
2.不要使用空洞的、缺乏具体含义的名字。
3.在为某个数据流(或数据存储)起名字时遇到了困难,则很可能是因为对数据流图分解不恰当造成 的,应该试试重新分解。

  • 为处理命名时应注意的问题:

    1. 1. 通常先为数据流命名,然后再为与之相关联的处理命名。<br /> 2.名字应该反映整个处理的功能,而不是它的一部分功能。<br /> 3.名字最好由一个具体的及物动词加上一个具体的宾语组成。<br /> 4.通常名字中仅包括一个动词,如果必须用两个动词才能描述整个处理的功能,则把这个处理再分解 成两个处理可能更恰当些。<br /> 5.如果在为某个处理命名时遇到困难,则很可能是发现了分解不当的迹象,应考虑重新分解。

    2.4.4用途

1、画数据流图的基本目的是利用它作为交流信息的工具。
2、数据流图的另一个主要用途是作为分析和设计的工具。
3、数据流图辅助物理系统的设计时,以图中不同处理的定时要求为指南,能够在数据流图上画出许 多组自动化边界,每组自动化边界可能意味着一个不同的物理系统。

2.5数据字典

概念:数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。

2.5.1内容

第二章可行性研究 - 图12

2.5.2定义数据的方法

  • 由数据元素组成数据的方式只有下述3种基本类型:
    1. 顺序 即以确定次序连接两个或多个分量。
    2. 选择 即从两个或多个可能的元素中选取一个。
    3. 重复 即把指定的分量重复零次或多次。
    4. 可选** **即一个分量是可有可无的(重复零次或一次)。

      2.5.3数据字典的用途

  1. 数据字典最重要的用途是作为分析阶段的工具
  2. 数据字典中包含的每个数据元素的控制信息是很有价值的
  3. 数据字典是开发数据库的第一步,而且是很有价值的一步。

    2.5.4数据字典的实现

    2.6成本效益分析(了解)

    2.6.1成本估计

    1.代码行技术
    2.任务分解技术
    3.自动估计成本技术

    2.6.2成本/效益分析的方法

  • 货币的时间价值
    • 通常用利率的形式表示货币的时间价值。假设年利率为i,如果现在存入P元,则n年后可以得到的钱数为:第二章可行性研究 - 图13这也就是P元钱在n年后的价值。
    • 反之,如果n年后能收入F元钱,那么这些钱的现在价值是:第二章可行性研究 - 图14
  • 投资回收期
  • 纯收入
  • 投资回收率

    习题2

    3.为方便旅客,某航空公司拟开发一个**机票预订系统。旅行社把预订机票的旅客信息~~(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)~~输入进该系统,系统为旅客安排航班印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票系统校对无误印出机票**给旅客。

航空系统.vsd

画出环境图之后,机票预订系统分解找动词或者动名词。
数据流是名词
数据的存储


5.北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电话则再接着拨8位数字(第1位不是0),若是外地电话则拨3位区码再拨8位电话号码(第1位不是0)。用2.5.2小节讲述的定义数据的方法,定义上述的电话号码。
·
第二章可行性研究 - 图15