视频加载失败

课程

4481 字
约 13 分钟

02-feasibility-study

软件工程notes/se-review-obsidian·更新于 2026-09-15

可行性研究

目的:用最小代价在最短时间内确定问题是否能解决

实质:系统分析和设计过程的大大压缩和简化,在较高层次上以较为抽象的方式进行系统的分析和设计过程

任务

  • 系统问题:分析和澄清问题定义
  • 导出系统模型
    • 物理模型:系统流程图SFD
    • 逻辑模型:数据流图DFD、数据字典DD
  • 研究可行性
    • 技术可行性
    • 经济可行性
    • 操作可行性

步骤

  1. 复查系统规模和目标
  2. 研究在目前正在使用的系统
  3. 导出新系统的高层逻辑模型
  4. 进一步定义问题
  5. 导出和评价可供选择的解法
  6. 推荐行动方针
  7. 草拟开发计划
  8. 书写文档提交审查

结果:《可行性研究报告》

  1. 系统概述
  2. 可行性研究
  3. 拟定开发计划
  4. 结论意见

选择题

  1. 可行性研究是在系统开发的早期所做的一项重要的论证工作,它是该系统是否开发的决策依据,因此必须给出()的回答。
  • A 确定
  • ==B 行或不行==
  • C 正确
  • D 无二义
  1. 可行性研究要进行一次()需求分析。
  • A 详细的
  • B 全面的
  • ==C 简化的、压缩的==
  • D 彻底的
  1. 下列选项中,不属于可行性研究的任务是()。
  • ==A 概要设计==
  • B 经济可行性研究
  • C 技术可行性研究
  • D 开发方案的选择

系统流程图

定义:概括地描绘物理系统的图。表达数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程(自顶向下,从左到右)

常用符号: ![[assets/Pasted image 20260110180740.png|500]]

选择题

  1. 系统流程图是描绘()的传统工具。
  • A 逻辑系统
  • B 数据结构
  • C 状态变迁
  • ==D 物理系统==
  1. 系统流程图可用于可行性研究中的()的描述。
  • ==A 当前运行系统==
  • B 当前逻辑模型
  • C 目标系统
  • D 新系统

数据流图和数据字典

数据流图和数据字典共同构成系统的逻辑模型,适用于结构化分析阶段,包括需求分析

数据流图

定义:描绘信息流和数据从输入到输出过程所经受的变换的图

特点

  • 数据流图中没有具体的物理部件,只是描绘数据流动和被处理的逻辑过程
  • 数据流图是系统逻辑功能的图形表示,是分析员与用户之间极好的通信工具
  • 设计时只需要考虑系统必须完成的基本逻辑功能,不考虑具体实现

符号: ![[assets/Pasted image 20260110182504.png|550]]

![[assets/Pasted image 20260110183348.png|400]]

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

1、确定数据流图的四种成分

  • 源点和终点
  • 加工处理
  • 数据流
  • 数据存储

源点和终点:

  • 采购部每天需要一张订货报表,所以采购员是数据终点
  • 通过放在仓库中的CRT终端把事务报告给订货系统,所以仓库管理员是数据源点 加工处理:
  • 采购部需要报表,所以必须有一个用于产生订货报表的处理
  • 零件入库或出库称为事务,该事务由仓库管理员进行,事务的后果是改变零件库存量,因此处理事务也是一个处理 数据流:
  • 订单系统每天会把订单报表送给采购部,因此订货报表是一个数据流
  • 事务需要仓库管理员通过放在仓库中的CRT终端送到系统中,所以出入库事务是另一个数据流 数据存储:
  • 零件出入库事务存储时,需要有零件的库存等基本信息,因此必须要有库存清单的的数据存储
  • 订货报表每天会产生一次,产生的依据是“某种零件的库存数量少于库存量的临界值时就应该再次订货”,因此订货系统会在及时处理完出入库的事务后根据需要生成订货信息,再每天高内聚订货信息产生报表,所以订货信息也应该有一个数据存储

2、画数据流图

  • 1、画系统顶层数据流出:任何系统的基本模型,都由若干数据源点/终点以及一个处理组成,该处理代表系统对数据加工变换的基本功能 ![[assets/Pasted image 20260110185340.png|500]]
  • 2、细化基本模型,描绘系统主要功能:把基本系统模型细化,描绘系统的主要功能,为处理和数据存储添加编号 ![[assets/Pasted image 20260110190101.png|500]] 3、进一步细化功能级数据流图中描绘的系统主要功能 ![[assets/Pasted image 20260110201731.png|600]]

数据字典

定义:是关于数据的信息集合,即对数据流图中包含的所有元素定义的集合

内容:数据流、数据流分量(数据元素)、数据存储、处理

作用:作为分析阶段的工具,是开发数据库的第一步

定义数据的方法

  • 组成方式:顺序、选择、重复、可选
  • 符号
符号含义例子
=被定义为
+x=a+b,表示x由a和b组成
[]x=[a,b],表示x由a或b组成
{}重复x={a},表示x由0个或多个a组成
m{}n重复x=3{a}8,表示x中至少出现3次a,最多出现8次a
()可选x=(a),表示a在x中出现,也可以不出现
*…*注释符表示在两个*之间的内容为词条的注释

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

![[assets/Pasted image 20260110201731.png|600]]

数据字典

  • D1D_1库存信息 = 零件编号 + 零件名称 + 价格 + 主要供应者 + 次要供应者 + 库存数量
  • D2D_2订货信息 = 零件编号 + 订货数量 + 订货时间
  • 零件编号 = 8{字符}8
  • 订货数量 = 1{数字}5

实例:北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第一位数字不是0。校外电话又分为本市电话和外地电话两类。拨校外电话需要先拨0,若是本市电话则接着拨8位数字(第一位不是O),若是外地电话则拨3位区码后再拨8位电话号码(第一位不是0)。

数据字典

  • 电话号码 = [校内电话 | 校外电话]
  • 校内电话 = 非零数字 + 三位数字
  • 三位数字 = 3{数字}3
  • 数字 = [0|1|2|3|4|5|6|7|8|9]
  • 校外电话 = [本市电话 | 外地电话]
  • 本市电话 = 0 + 八位非零开头数字
  • 八位非零开头数字 = 非零数字 + 七位数字
  • 七位数字 = 7{数字}7
  • 外地电话 = 0 + 三位区码 + 八位非零开头数字
  • 三位区码 = 三位数字

选择题

  1. 数据流图中的基本符号有()。
  • A 变换、加工、数据流和存储
  • B 输入、输出、外部实体和加工
  • C 变换、数据存储、加工和数据流
  • ==D 数据的源点和终点、数据流、数据存储和加工==
  1. 在数据流图中,有名字及方向的成分是()。
  • A 控制流
  • B 信息流
  • ==C 数据流==
  • D 信号流
  1. 通过()可以完成数据流图的细化。
  • A 结构分解
  • ==B 功能分解==
  • C 数据分解
  • D 系统分解
  1. 数据字典是软件需求分析阶段最重要工具之一,其最基本的功能是()。
  • A 数据库设计
  • B 数据通信
  • ==C 数据定义==
  • D 数据维护
  1. DFD中的每个加工至少有()。
  • A 一个输入流或一个输出流
  • ==B 一个输入流和一个输出流==
  • C 一个输入流
  • D 一个输出流
  1. 不适用于作为数据流图处理(加工)框名称的是()。
  • A 人工校核工资数据
  • ==B 工资支票数据==
  • C 打印工资支票
  • D 计算职工工资

成本效益分析

目的:从经济角度分析新系统的开发是否能够盈利,帮助使用部门正确做出是否投资的决定

成本估算方法

  • 代码行技术软件成本=每行代码的平均成本源代码行数软件成本 = 每行代码的平均成本 * 源代码行数
  • 任务分解技术:分解任务,分别估算,累加得出总成本每个任务的成本 = 人力 * 人平均工资$$$$总成本 = \sum{独立任务的成本}
  • 自动估计成本技术:必须要有称其搜集的大量历史数据为基础,并且需要有良好的数据库系统支持

度量指标

  • 货币的时间价值
  • 纯收入
  • 投资回报期
  • 投资回收率

选择题

  1. 下列选项中,属于成本管理的主要任务的是()。
  • A 制定软件指令保证计划
  • ==B 估算软件项目的成本==
  • C 控制软件的质量
  • D 对软件阶段产品进行评审
  1. 研究开发所需的成本和资源是属于可行性研究中的()研究的一方面。
  • A 技术可行性
  • B 经济可行性
  • C 社会可行性
  • D 法律可行性
  1. 经济可行性研究的范围包括()。
  • A 资源有效性
  • B 管理制度
  • C 效益分析
  • D 开发风险
Profile Image of the Author
Sonder
好想要技术
这是公告标题
这只是一个公告
分类
标签
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.16.7
文章许可
CC BY-NC-SA 4.0
文章目录