可行性研究的任务
不是解决问题,而是确定问题是否值得去解决。
- 分析可能的解法
- 判定系统规模和目标是否能够实现
- 效益是否可观
较高层次的系统分析和设计过程
- 技术可行性:开发此系统是可行的,是有好处的
- 经济可行性:根据系统目标衡量所需技术是否具备
- 操作可行性:系统是否易于使用并能够创造价值
- 法律可行性:是否存在侵犯、妨碍和责任等问题
可行性研究过程(understanding)
了解就好
复查系统规模和目标
- 改正含糊或不确切的叙述
- 清晰地描述限制和约束
- 确保分析员解决正确的问题
研究目前正在使用的系统
- 完成现有系统的基本功能分析
- 解决现有系统的问题
- 绘制高层系统数据流图
- 掌握与其他系统的接口
导出新系统的高层逻辑模型
- 现有物理系统 → 现有系统的逻辑模型 → 目标系统逻辑模型 → 新的目标系统
- 高层数据流图
- 初步的数据字典
进一步定义问题
- 以数据流图和数据字典为基础
- 复查问题定义、工程规模和目标
- 分析员和用户
- 重复1~4步,直至提出的逻辑模型完全符合系统目标
导出和评价供选择的解法
- 从技术角度出发,考虑解决问题的不同方案
- 技术可行性,排除不现实的系统
- 操作可行性,排除用户不能接受的方案
- 经济可行性,排除利润低的方案
- 制定进度表 (估算生命周期每个阶段的工作量)
推荐行动方针(是否做?)
- 分析员:如果值得开发,则选择最好的解法
- 用户:成本/效益分析
草拟开发计划
- 工程进度表
- 各类开发人员、各种资源需求情况
- 生命周期每个阶段的成本
- 下一个阶段详细进度表和成本估计
书写文档提交审查
- 用户、客户组织负责人、评审组审查
系统流程图 (understanding)
系统流程图概括描绘物理系统的传统工具用图形符号,以黑盒子形式描述组成系统的每个部件程序、文档、数据库、人工过程
- 符号:
- 栗子:
数据流图 (master)
数据流图(DFD) 描绘信息流和数据从输入移动到输出的过程中所经受的变换。
- 数据流图的四种基本符号:
- 加工中常见关系的符号表示:
- 注意:
- 信息的流动
- 信息流不能为动词
- 实体到实体的信息流动
- 处理要有输入输出
- 处理名不能为名词
- 确保层间的一致性(确保输入输出流的量是一致的)
命名:
- 数据流的名字应代表整个数据流(数据存储、处理)的内容,而不是仅仅某些成分。
- 不要使用空洞的、缺乏具体含义的名字(如“数据”、“信息”、“输入”之类)。
- 处理名字最好是一个具体的及物动词。
示例:出入库管理系统
- 0级数据流图
- 1级数据流图
- 2级数据流图
数据字典 (master)
- 数据字典是关于数据的信息的集合,即对设计图中包含的元素的定义。
- 数据字典的用途是供人查阅不了解的条目的解释,提供分析设计过程中关于数据的描述。
- 只有设计图和对应的元素的精确定义放在一起,才能构成系统完整的规格说明。
定义数据的方法
- = : 意思是等价于(或定义为);
- + : 意思是和(即,连接两个分量);
- [] : 意思是或(即,从方括弧内列出的若干个分量中选择一个),用“|”号分开供选择的分量;
- {} : 意思是重复(即,重复花括弧内的分量);
- () : 意思是可选(即,圆括弧里的分量可有可无);
- 使用上限和下限进一步注释表示重复的花括弧。
- 左边用上角标和下角标分别表明重复的上限和下限
- 左侧标明重复的下限,在闭括弧的右侧标明上限
- 例如:
举个栗子:
- 北京某高校可用的电话号码有以下几类:校内电话号码由4 位数字组成,第1位
数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电
话则再接着拨8位数字(第1位不是0),若是外地电话则拨3位区码再拨8
位电话号码
(第1位不是0)。请用上述提到的定义数据的方法,定义上述的电话号码。1
2
3
4
5
6
7
8
9
10
11电话号码 = [ 校内电话号码 | 校外电话号码 ]
校内电话号码 = 非零数字 + 3位数字
校外电话号码 = [ 本市电话号码 | 外地电话号码]
本市电话号码 = 数字零 + 8位数字
外地电话号码 = 数字零 + 3位数字 + 8位数字
非零数字 = [1|2|3|4|5|6|7|8|9]
3位数字 = 3{数字}3
数字零 = 0
8位数字 = 非零数字 + 7位数字
7位数字 = 7{数字}7
数字 = [0|1|2|3|4|5|6|7|8|9]
- 北京某高校可用的电话号码有以下几类:校内电话号码由4 位数字组成,第1位
数字字典的实现
- CASE工具
- 人工卡片
成本效益分析(了解)
成本/效益分析是客户从经济角度判断是否继续投资项目的主要依据。