当前位置: 首页 > news >正文

【软件工程】可行性研究

一、可行性研究

1. 可行性研究的任务与目的

  • 任务:用最小的代价在尽可能短的时间内确定问题是否能够解决。
    需从以下方面分析:
    • 经济可行性
    • 技术可行性
    • 运行可行性
    • 法律可行性
    • 开发方案可行性
  • 目的:在明确目标系统的限制和约束后,判断问题是否值得解决。

2. 可行性研究过程

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

二、系统流程图

1. 定义与作用

  • 定义:描绘物理系统的传统工具,用图形符号以黑盒子形式表示系统部件(程序、文件、数据库、人工过程等)。
  • 作用
    • 在可行性研究中描述现有系统或建议系统的物理模型。
    • 表达部件的信息流程(非控制过程)。

三、数据流图(DFD)

1. 定义与特征

  • 定义:从信息传递和加工角度,图形化描述数据流的移动变换过程。
  • 特征
    • 抽象性:去除物理细节,仅保留数据流动和加工。
    • 概括性:整合多业务处理过程形成总体视图。

2. 组成元素

  • 外部实体(与系统交互的人或单位)
  • 数据流
  • 处理(加工)
  • 数据存储

3. 绘制步骤

  1. 识别输入/输出,画顶层图(上下文图)。
  2. 画内部数据流、加工与文件,生成一级细化图。
  3. 逐步分解加工,生成二级细化图。

4. 注意事项

  1. 数据守恒:每个处理必须有流入和流出数据流。
  2. 数据存储:必须有流入或流出数据流(缺一为Warning,缺二为错误)。
  3. 数据流规则
    • 只能在处理、数据存储、外部实体之间流动。
    • 禁止数据存储/外部实体之间的直接流动。
  4. 分层分解:处理可均匀分解为多层子图。
  5. 命名规范:元素需明确命名。

5. 其他要点

  • 父图与子图需保持平衡(输入/输出数据流一致)。
  • 信息流类型:交换流、事务流。

四、系统流程图 vs 数据流图

对比项系统流程图数据流图(DFD)
模型类型物理模型逻辑模型
描述重点系统部件与信息流动数据加工与流动
抽象层级包含物理细节(硬件、人工等)仅关注数据与处理逻辑

五、数据字典

1. 定义与内容

  • 定义:对DFD中元素的详细说明,补充DFD的语义描述。
  • 内容
    • 数据流
    • 数据元素(分量)
    • 数据存储
    • 处理逻辑
    • 外部实体

2. 作用

  • 为用户提供数据明确定义。
  • 帮助分析员修改系统逻辑模型。

六、成本效益分析

1. 目的

从经济角度评估新系统是否值得投资。

2. 效益度量方法

  1. 货币的时间价值
  2. 投资回收期
  3. 纯收入

小结

  • DFD需分层绘制,父图与子图保持平衡。
  • 系统流程图用于物理设计,DFD用于逻辑建模。
  • 数据字典是DFD的补充,确保数据定义清晰。
http://www.lqws.cn/news/93439.html

相关文章:

  • Gradle依赖管理全面指南:从基础到高级实践
  • 对 `llamafactory-cli api -h` 输出的详细解读
  • YOLO学习笔记 | 一种用于海面目标检测的多尺度YOLO算法
  • 《数据挖掘》- 房价数据分析
  • Neo4j 备份与恢复:原理、技术与最佳实践
  • Neo4j 数据可视化与洞察获取:原理、技术与实践指南
  • LeetCode 300 最长递增子序列
  • MySQL关系型数据库学习
  • AWS VPC 网络详解:理解云上专属内网的关键要素
  • Windows 下彻底删除 VsCode
  • win11中使用grep命令
  • 【WPF】从普通 ItemsControl 到支持筛选的 ItemsControl:深入掌握 CollectionViewSource 用法
  • 大模型 提示模板 设计
  • 【快见刊】2025年应用材料、机械与制造工程国际会议(ICAMMME 2025)
  • 学习资料搜集-ARMv8 cache 操作
  • 《CF912E Prime Gift》
  • 破局与进阶:ueBIM 在国产 BIM 赛道的差距认知与创新实践
  • 默认网关 -- 负责转发数据包到其他网络的设备(通常是路由器)
  • 深度学习驱动的车牌识别:技术演进与未来挑战
  • C++:内存管理
  • JS对象——BOM
  • MySQL强化关键_019_索引优化
  • winrm登录失败,指定的凭据被服务器拒绝
  • 基于PyQt5的相机手动标定工具:原理、实现与应用
  • Python 数据分析与可视化实战:从数据清洗到图表呈现
  • Java IO
  • 黑马Java面试笔记之 集合篇(算法复杂度+ArrayList+)
  • WPS 利用 宏 脚本拆分 Excel 多行文本到多行
  • 题山采玉: Day1
  • 【AI Study】第三天,Python基础 - NumPy(1)