可行性研究

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

▪ 步骤:
➢分析问题,找出源点或终点,处理,数据 存储和数据流;
➢画出包含数据源点/终点以及处理的基本系 统模型,如图2.5;
➢把基本系统模型细化,描绘系统的主要功 能,即产生功能级数据流图;
➢对功能级数据流图中描绘的系统细化。
2020/7/9
13
例子
假设一家工厂的采购部每天需要一张定货报表, 报表按零件编号排序,表中列出所有需要再次定货 的零件。对于每个需要再次定货的零件应该列出下 述数据:零件编号,零件名称,定货数量,目前价 格,主要供应者,次要供应者。
例子
事务
常用符号
库存清 单程序
处理 输入/输出 连接 换页连接
库存清单主文件 定货信息
数据流 文档
磁带 联机存储
报告生 成程序
磁盘
2020/7/9
显示 人工输入 人工操作
定货报告
7
系统流程图举例
▪ 问题描述:一仓库存储各种零件,仓库管 理员每日要对零件的数量进行实时更新, 若某种零件的数量少于某个值(库存量临 界值)则应产生订货报告,规定每天向采 购部送一张订货报表。
可行性研究需要的时间长短取决于工程的规模,一般 来说,其成本只能占预期的工程总成本的5%~10%.
2020/7/9
可行性研究 的结论
5
可行性研究的步骤
复查系统的 规模和目标
研究现正在 使用的系统
新系统的高 层逻辑模型
用户
逻辑模型表达了系统
分析员对新系统必须作什 么工作、完成什么任务的 理解.
分析员
可行性研究的成本约占总成本的5%—10%。
2020/7/9
4
可行性研究
可行性研究的任务
用最小的代价在尽可能短的时间内确定问题是否能够解决。
问题 定义
可行性 研究
系统的 逻辑模型
问题定义 否 正确 ?
问题定义阶段

实际的 审查 物理系统
系统实现 方案若干
技术可行性 经济可行性 操作可行性
可行性研究阶段任务(示意图)
软件工程
(Software Engineering)
第二章 可行性研究
2020/7/9
1
第二章可行性研究
(1)了解可行性研究的任务、过程; (2)掌握系统流程图、数据流图和数据 字典等工具的使用; (3)会对软件项目做成本效益分析;
2020/7/9
2
开发软件要回答三个问题
▪ Why to do? —可行性研究 ▪ What to do?—需求分析 ▪ How to do? —系统设计
产生报表 图2.7将处理事务的功能进一步分解
2020/7/9
27
2、数据流图的另一个主要用途是作为分析 和设计的工具。
当用数据流图辅助物理系统的设计时,以图中 不同处理的定时要求为指南,能够在数据流图上画 出许多组自动化边界,每组自动化边界可能意味着 一个不同的物理系统,因此可以根据系统的逻辑模 型考虑系统的物理实现。
19
数据流图的绘制
▪ 接下来应该对功能级数据流图中描绘的系统主要功能进 一步细化。
▪ 注意: ➢分层细化时必须保持信息连续性 ➢对处理进行编号的方法
2020/7/9
20
把处理事务的功能进一步分解后的数据流图
2020/7/9
21
分层
面对复杂的系统时,一个比较好的方法 是分层次地描绘这个系统。首先用一张高层 次的系统流程图描绘系统总体概貌,表明系 统的关键功能。然后分别把每个关键功能扩 展到适当的详细程度,画在单独的一页纸上。 这种分层次的描绘方法便于阅读者按从抽象 到具体的过程逐步深入地了解一个复杂的系 统。
/
2020/7/9
25
数据流图的用途
1、画数据流图的基本目的是交流信息。 该种描绘方法简单清析,可提供有关人 员讨论、审查,也是分析设计的重要工 具。
2020/7前/一9 页
26
数据流图的用途
注意:在一张数据流程图上描述的处理超过 了5~9个,就比较难于理解,应分层 细化处理 。
如图2.6和图2.7: 图2.6描绘出系统的两个处理:处理事务和
数据字典的作用是为设计人员 提供关于数据的描述信息。
2020/7前/一9 页
31
数据字典的内容

数据字典应由对下列四类元素的定义

组成。对于数据处理的定义,用IPO(Input

Process Output)、PDL(Process Design Language)等更方便 。

①数据流
②数据流分量
零件入库或出库称为事务,通过放在仓库中的 CRT终端把事务报告给定货系统。当某种零件的库 存数量少于库存量临界值时就应该再次定货。
2020/7/9
14
数据流图有4种成分:源点或终点,处理,数据存储和数 据流。
第一步可以从问题描述中提取数据流图的4种成分:
首先考虑数据的源点和终点,从上面对系统的描述可以知道“采购部 每天需要一张定货报表”,“通过放在仓库中的CRT终端把事务报告给 定货系统”,所以采购员是数据终点,而仓库管理员是数据源点。
另外两个数据流,它们与数据存储相同。这是因 为从一个数据存储中取出来的或放进去的数据通常 和原来存储的数据相同,也就是说,数据存储和数 据流只不过是同样数据的两种不同形式。
在图中给处理和数据存储都加了编号,这样做的 目的是便于引用和追踪。
2020/7/9
18
定货系统的功能级数据流图
2020/7/9
11
有时数据的源点和终点相同——再重复画 一个同样的符号(正方形或立方体)表示数据 的终点。
有时数据存储也需要重复,以增加数据流 图的清晰程度。
为了避免可能引起的误解,如果代表同一 个事物的同样符号在图中出现在n个地方, 则在这个符号的一个角上画(n-1)条短斜线 做标记。
2020/7/9
12
数据流图的绘制
2020/7/9
22
(
为 数据流图的分量命名


流 • 名字(name)应代表整个数据流
或 的内容。
数 据
• 不要空洞、泛指,要有具体含
存 义。
储 •如果对某个数据流命名有困难
命 名
时,尝试重新分解。
)
2020/7前/9一页
23
为 处 理 命 名
2020/7前/9一页
数据流图的分量命名
通常应先为数据流命名再为与之相关的 处理命名 。
2020/7前/一9 页
39
成本/效益分析
经济效益通常表现为减少运行 费用或(和)增加收益。
2020/7前/一9 页
40
代码行技术
成 本 估 计
估计出有多少行的代码(code), 再乘以每行的开发成本(cost)和复 杂度(complexity),即可估算出开
2020/7前/一9 页
35
定义数据的方法
数 ▪ 通常使用上限和下限进一步注释表

示重复的花括号,如:


5
{ A } :表示A最少重复1次,最多重复
1
5次
2020/7/9
36
定义数据的符号举例
▪ 例: ▪ 标识符 = 字母字符 + 字母数字串 ▪ 字母数字串 = 0 { 字母或数字 } 7 ▪ 字母或数字 = [ 字母字符 | 数字字符 ]
接下来考虑处理,再一次阅读问题描述,“采购部需要报表”,显然 他们还没有这种报表,因此必须有一个用于产生报表的处理。事务的后 果是改变零件库存量,然而任何改变数据的操作都是处理,因此对事务 进行的加工是另一个处理。
最后,考虑数据流和数据存储:系统把定货报表送给采购部,因此定 货报表是一个数据流;事务需要从仓库送到系统中,显然事务是另一个 数据流。产生报表和处理事务这两个处理在时间上明显不匹配——每当 有一个事务发生时立即处理它,然而每天只产生一次定货报表。因此, 用来产生定货报表的数据必须存放一段时间,也就是应该有一个数据存 储
2020/7/9
15
定货系统的基本系统模型
2020/7/9
16
从基本系统模型这样非常高的层次开始画数据
流图是一个好办法。在这个高层次的数据流图上是 否列出了所有给定的数据源点/终点是一目了然的, 因此它是很有价值的通信工具。
2020/7/9
17
两个数据存储:处理事务需要“库存清单”数据; 产生报表和处理事务在不同时间,因此需要存储 “定货信息”。
▪ 系统处理描述:
▪ 由终端将零件数量的变化输入到计算机中, 程序1处理该变化并存储新的数据值,程序 2生成订货信息,形成订货报告。
2020/7/9
8
系统流程图举例
事务
库存清单程序
库存清单 主文件
报告生成程序
定货报告
2020/7/9
9
数据流图
数据流图(Data Flow Diagram)是 一种图形化技术,描绘信息流和数据 从输入移动到输出的过程中所经历的 变换,是系统的逻辑模型,可不考虑 具体的处理细节。
③数据存储 ④处理
2020/7前/一9 页
32
在数据字典中,除了对数据的定
数 义之外,还包含如下信息:
据 • 一般信息:名字、别名、描述等。
字 •定
义:数据类型、结构、长度等 。
典 • 使用特点:值的范围、使用频率、使用方式 (输入、输出、本地)、 条件
值等。
• 控制信息:来源、用户、使用的程序、使
名字应反映整个处理的功能而不是一部 分。
名字最好由一个具体的及物动词和一个 具体的宾语组成,如产生报表等。
通常名字中只包括一个动词。
如果对某个处理命名有困难时,应重新
分解 。
24
Βιβλιοθήκη Baidu
数据流图的分量命名
为 ▪ 为数据源点/终点命名时采用它们
数 据 源
在问题中习惯使用的名字即可, 如采购员等。

终 点 命 名
1. 是否继续该工程的开发的建议 2. 所选择解决方案的解法的说明 3. 比较仔细的成本/效益分析
重新定 义问题
是否符合 2020/7/9系统目标
导出和评价 供选择的解法
推荐行 动方针
草拟开 发计划
书写文档 提交审查
6
系统流程图
系统流程图:描绘物理系统的工具,其基本思想是用图形符号以黑盒子形式描绘 系统里面的每个部件(程序、文件、数据库、表格、人工过程等), 表达的是信息在系统各部件之间流动的情况。
用权限等。
• 分组信息:父结构、从属结构、物理位置
2020/7前/一9 页
(记录、文件、数据库等)等。 33
定义数据的方法
定义数据是按照自顶向下,逐层
数 分解,直至无须再细化的元素。由数 据 据元素组成数据有以下方式:
字 ① 顺序(sequence):以确定次序连接多个

分量。
② 选择(selection):从多个可能的元素中
2020/7/9
3
可行性研究的任务
▪ 回答是否可行
➢ 最短时间 ➢ 最小代价
▪ 目标
可行性(feasibility)研究是探讨在定义阶段所确定的问题是否有可行的 解。通过定义和分析问题,最终提出一个符合系统目标的高层次逻辑模型 (Logical Model)。
▪ 三个方面的可行性
➢ 技术可行性:使用现有的技术能否实现这个系统 。 ➢ 经济可行性:从成本和经济效益考虑是否值得开发 。 ➢ 操作可行性:系统的操作方式对用户是否可行。
38
数据字典的实现
目前实现数据字典有三种途径:全人工过 程,全自动化过程,混合过程。无论是何种 方式,都应具有以下特点:
数 ① 通过名字能够方便地查阅数据。
据 ② 没有冗余。
字 ③ 尽量不重复在规格说明的其他组成部分中

已经出现的信息。
④ 容易更新和修改。
⑤ 能单独处理描述每个数据元素的信息。
⑥ 定义的书写方法简单、方便、严密。
数据流图容易理解,是分析员和用户之间 很好的通信工具。
2020/7/9前一页
10
2020前/7一/9页
数据流图的符号
数据源点(source)/终点 (sink) 变换数据的处理(process) 数据存储 (data store) 数据流(data flow)
* 表示数据流之间是“与”关系; + 表示“或”关系; ⊕表示只能从中选一个。
选取一个。
③ 重复(repeat):把指定的分量重复多次。
④ 可选:一个分量是可有可无的(重复0次
或1次)。
2020/7前/一9 页
34
定义数据的方法
数 据 = 等价,定义为 字 + 表示和,连接两个分量 典 [ ] 表示或,从中选出一个分量
{ } 重复花括号中的分量,可用上下标表 示上下限
( ) 圆括号中的分量可有可无
2020/7/9
37
数据字典的用途
数据字典最重要的用途是作为分析
阶段的工具。在数据字典中建立一组
数 严密一致的定义,有助于分析员与用
据 户通信、交流,消除误解。

数据字典中的控制信息是很有价
典 值的,可以看出改变一个数据对系统
的影响。
数据字典是开发数据库很有价值 的第一步。
2020/7前/一9 页
2020/7/9
28
以批量方式更新库存清单
处理定货
2020/7前/一9 页
29
以联机方式更新库存清单
应 用 举 例
1.2
更新库存清单
2020/7前/一9 页
30
数据字典
数据字典(Data Dictionary)是 数据的信息的集合,即对数据流图 中 包 含 的 所 有 元 素 (element) 的 定 义的集合。
相关文档
最新文档