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

📘 结构化分析SA

思想

  • 自顶向下:像剥洋葱一样,层层深入,大问题拆成小问题,再拆成更小的问题。
    在这里插入图片描述

核心模型

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

外部包含模型

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

数据流图(DFD)

主要作用

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

基本符号

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

层次

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

如何画DFD

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

检查和修改的准则

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

状态转换图 STD

适用场景

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

状态

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

数据字典 DD

条目

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

作用

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

总结 🧐

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

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


http://www.ppmy.cn/news/1526216.html

相关文章

音视频开发常见的开源项目汇总

FFmpeg 地址:https://ffmpeg.org/介绍:FFmpeg 是一个非常强大的开源多媒体框架,它可以用来处理视频和音频文件。它支持多种格式的转换、编码、解码、转码、流处理等。FFmpeg 包括了 libavformat、libavcodec、libavutil、libswscale、libpos…

实时监控分析广告数据跳转统计平台源码

广告跳转实时分析页面统计系统,可选择生成html页面样式,可自定义设置页面域名后缀,可指定跳转指定网址, 可记录单个页面的访问记录,可对生成的单个链接进行备注,自定义等待时间进行跳转。 源码下载&#…

GitHub上克隆项目

从GitHub上克隆项目是一个简单且直接的过程,它允许你将远程仓库中的项目复制到你的本地计算机上,以便进行进一步的开发、测试或学习。以下是一个详细的步骤指南,帮助你从GitHub上克隆项目。 一、准备工作 1. 安装Git 在克隆GitHub项目之前…

uni-app开发微信小程序

Uni-app 是一个使用 Vue.js 开发跨平台应用的框架,支持构建微信小程序、H5、iOS、Android 等多种平台的应用。以下是使用 Uni-app 开发微信小程序的基本步骤和一些实用技巧。 1. 环境准备 安装 HBuilderX HBuilderX 是 DCloud 提供的 IDE,支持 Uni-app …

网站优化与服务器:性能提升的双重奏

在互联网高速发展的今天,网站的响应速度和用户体验直接影响着用户的留存率和转化率。而服务器作为网站运行的基石,其性能和配置对网站优化起着至关重要的作用。 服务器对网站性能的影响 服务器的响应速度、稳定性和处理能力直接影响网站的加载时间和运行…

使用EXPORT_SYMBOL

在Linux内核里,我们编写驱动程序时,如果遇到的驱动太大,需要在各个模块之间共享一些变量或函数等,此时就需要用到内核里的EXPORT_SYMBOL宏了,其在include/linux/export.h文件中定义,而最常用的有如下两个: #define EXPORT_SYMBOL(sym) …

Pytorch+Anaconda+Pycharm+Python

0 python知识 0.1 os库常见用法 os 库提供了许多用于操作操作系统功能的函数。常见用法包括: 文件和目录操作: os.listdir(path):列出指定路径下的所有文件和目录。os.mkdir(path):创建新目录。os.remove(path):删除…

滚雪球学SpringCloud[3.2讲]:Hystrix:熔断与降级详解

全文目录: 前言1. Hystrix的基本原理与作用1.1 熔断器模式1.2 服务降级1.3 线程池隔离1.4 请求缓存与批处理 2. Hystrix的熔断器配置与使用2.1 基本配置2.2 熔断器参数调整 3. Hystrix Dashboard的监控与可视化3.1 配置与启动Dashboard3.2 Dashboard的价值 4. 实战案…

路由等保测评

1.身份鉴别 应对登录的用户进行身份标识和鉴别, 身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换。 可以使用“ service password-encryption"命令对存储在配置文件中的所有口令和类似数据进行加密, 以避免攻击者通过读取配…

信息安全数学基础(14)欧拉函数

前言 在信息安全数学基础中,欧拉函数(Eulers Totient Function)是一个非常重要的概念,它与模运算、剩余类、简化剩余系以及密码学中的许多应用紧密相关。欧拉函数用符号 φ(n) 表示,其中 n 是一个正整数。 一、定义 欧…

【JavaScript】LeetCode:36-40

文章目录 36 两数相加37 删除链表的倒数第n个节点38 两两交换链表中的节点39 k个一组翻转链表40 随机链表的复制 36 两数相加 创建一个新的链表(哨兵节点指向),这个链表用来表示两个数相加后的和。从个位开始相加,每次都向新链表尾…

.NET/C#⾯试题汇总系列:多线程

1.根据线程安全的相关知识,分析以下代码,当调⽤test⽅法时i>10时是否会引起死锁?并简 要说明理由。 public void test(int i) {lock(this){if (i>10){i--;test(i);}} } 不会发⽣死锁,(但有⼀点int是按值传递的&#xff0…

秃姐学AI系列之:实战Kaggle比赛:狗的品种识别(ImageNet Dogs)

目录 前置准备 整理数据集 图片增广 读取数据集 微调预训练模型 训练函数 训练和验证模型 Kaggle提交结果 前置准备 常规导包 import os import torch import torchvision from torch import nn from d2l import torch as d2l 使用小规模数据样本 d2l.DATA_HUB[dog…

GIS在线监测SF6密度微水传感器免焊接格兰头航插插头

概述 GIS(气体绝缘金属封闭开关设备)中的SF6(六氟化硫)气体密度微水传感器航插技术是指在GIS设备中安装SF6气体密度和微水传感器,以实现对SF6气体状态的在线监测。这些传感器能够实时监测SF6气体的密度、微水含量以及其…

鸿蒙交互事件开发04——手势事件

1 概 述 手势事件是移动应用开发中最常见的事件之一,鸿蒙提供了一些方法来绑定手势事件。通过给各个组件绑定不同的手势事件,并设计事件的响应方式,当手势识别成功时,ArkUI框架将通过事件回调通知组件手势识别的结果。 …

AI创意引擎:优化Prompt提示词的高效提问技巧

AI内容创作的精髓:提示词(Prompt) 在AI领域中,提示词(Prompt)是与模型沟通的关键工具。提示词不仅决定了AI生成内容的方向和质量,还在优化模型输出、提升用户体验中扮演着至关重要的角色。因此…

【机器学习】迁移学习的实践

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 迁移学习的实践迁移学习的常见框架1. 特征提取器微调(Fine-tuning the Feature …

获取某宝拍立淘API接口:深度学习图像实现匹配和检索

1. 总体概述 拍立淘的核心技术在于图像识别与检索,融合了深度学习、计算机视觉、大数据处理等多个领域的先进技术1。通过构建大规模的商品图像数据库,并利用深度学习算法提取图像特征,实现高效的图像匹配与检索1。 2. 具体技术环节 &#…

Unity 第一人称游戏的武器被其他物体覆盖解决方案

在第一人称游戏的时候,会出现渲染过程中,主角的手持武器可能会被其他物体挡住。 解决方法 在主摄像机下再创建一个摄像机,负责渲染不同图层 Main Camera的参数:我们这个摄像机不渲染equipable层(自定义武器为equipab…

从ANN到SNN的转换:实现、原理及两种归一化方法【MINIST、实战】

从ANN到SNN的转换:实现、原理及两种归一化方法 引言 随着神经形态计算的迅猛发展,脉冲神经网络(Spiking Neural Networks, SNNs)作为一种仿生神经计算模型,逐渐展现出其在低功耗和事件驱动计算领域的巨大潜力。不同于…