系统架构设计师 需求分析篇一

📘 结构化分析SA

思想

  • 自顶向下 :像剥洋葱一样,层层深入,大问题拆成小问题,再拆成更小的问题。

核心模型

  • 数据字典 📔:记录数据元素的点点滴滴,从属性到使用方式,无所不包。

外部包含模型

  • 数据模型 📊:用ER图描绘数据元素及其关系的家族树。
  • 功能模型 🔄:DFD,系统功能的流水线,数据流向的导航图。
  • 行为模型 🔄:STD,系统状态的日记本,事件的行程表。

数据流图(DFD)

主要作用

  • 理解与表达需求 🔍:需求分析的望远镜,内部逻辑的显微镜。
  • 描述系统逻辑 📝:需求分析的成果展示,开发计划的档案馆。

基本符号

  • 数据流 📈:箭头。
  • 加工 🛠️:圆圈。
  • 数据存储 💾:直线段。
  • 外部实体 🌐:带名字方框。

层次

  • 顶层图 🏢:系统的鸟瞰图,最高层的结构概览。
  • 逐层分解 🔎:顶层图的放大镜,细节的逐步展开。

如何画DFD

  1. 画输入和输出 📐:先确定系统的边界,画出信息的进出口。
  2. 画DFD内部 🔗:连接系统的输入、输出,构建内部的流程图。
  3. 命名数据流和加工 📝:为每个元素赋予名字,让它们有身份证。
  4. 检查和修改 🔍:确保图形符号和元素命名的准确性,像校对文章一样细致。

检查和修改的准则

  • 图形符号限制 📏:只使用四种基本图形元素,保持DFD的纯粹性。
  • 元素命名 🏷️:每个元素都要有名有姓,便于识别。
  • 加工的输入输出 🔄:数量守恒,每个加工至少有一个输入和一个输出。
  • 加工编号 📑:按层级编号,保持加工的秩序。
  • 子图与上层加工对应 🔗:子图与上层加工一一对应,保持数据流的一致性。
  • 数据存储的读写 📘:读写平衡,每个数据存储都要有读写的机会。
  • 物质流和控制流 🚚:物质流可以加入,帮助理解;🚫 控制流则不可混入。

状态转换图 STD

适用场景

  • 实时控制系统 🕒:事件驱动的实时反应,状态的快速转换。

状态

  • 状态 🌀:系统行为的快照,观察系统的不同面貌。
  • 初始状态 🔵:实心圆的起点,一切的开始。
  • 最终状态 🔴:同心圆的终点,旅程的结束。

数据字典 DD

条目

  • 数据元素 📘:数据的基本单位,构成数据结构的砖石。
  • 数据结构 🔗:数据元素的组合,形成数据的框架。
  • 数据流 📈:数据的流动路径,信息的传输带。
  • 数据存储 💾:数据的存储空间,信息的仓库。
  • 加工逻辑 🛠️:数据加工的规则,信息处理的逻辑。
  • 外部实体 🌐:系统与外界的接口,数据交换的桥梁。

作用

  • 工作依据 📚:确保数据的完整性和一致性,数据管理的宝典。

总结 🧐

  • 记忆口诀 🎓:SA分析,像剥洋葱,DFD画图,像搭积木,STD状态,像翻日记,DD字典,像查百科。😄
  • 辅助记忆 🧠:
    • 结构化分析SA:分析的大树,层层深入。
    • 数据流图DFD:数据的河流,流向清晰。
    • 状态转换图STD:状态的时钟,时刻转换。
    • 数据字典DD:数据的宝典,一应俱全。

参与点评
读者朋友们,如果您在阅读过程中,对文章的质量、易理解性有任何建议,欢迎在评论区指出,我会认真改进。

相关推荐
小马过河R10 分钟前
tRPC-GO 框架Helloworld实践初体验
开发语言·分布式·后端·架构·golang·gin·beego
小小工匠12 分钟前
大规模数据处理:12_Kappa架构剖析与Kafka在大规模流式数据处理中的应用实践
架构·kafka·kappa
年小个大7 小时前
优化App启动时间?startup-coroutine是什么?
性能优化·架构·kotlin
JienDa8 小时前
JienDa聊PHP:CSDN博客仿站实战中PHP框架的协同架构方略
java·架构·php
刘一说10 小时前
Nacos 与 Spring Cloud Alibaba 集成详解:依赖、配置、实战与避坑指南
spring boot·spring cloud·微服务·架构
周杰伦_Jay11 小时前
【Go 语言主流 Web】 框架详细解析
开发语言·后端·微服务·架构·golang
闲人编程11 小时前
Django微服务架构:单体应用拆分解耦实践
微服务·架构·消息队列·django·api·通信·codecapsule
颜颜yan_12 小时前
基于CANN多Stream异步执行的智能推理管道:突破传统串行瓶颈
运维·架构·stream·昇腾·cann
吴法刚13 小时前
Gemini cli 源码分析之-Agent分析-Agent架构系统分析
架构·agent·ai编程·gemini
拾忆,想起13 小时前
Dubbo服务超时与重试策略配置指南:构建 resilient 微服务架构
服务器·网络·微服务·云原生·架构·dubbo