系统架构设计师-案例分析-软件系统设计

系统架构设计师-案例分析-软件系统设计

数据流图(DFD)

数据流图中的基本图形元素包括数据流、加工、数据存储和外部实体。

  • 数据流必须与加工有关
  • 一个加工可以有多个输入输出数据流,但至少有一个输入数据流和一个输出数据流。
  • "黑洞":加工有输入但没输出
  • "奇迹":加工没输入但有输出
  • "灰洞":加工输入不足以产生输出

数据流图的设计原则

  1. 数据平衡原则
    • 父图与子图平衡
      是指任何一张DFD子图边界上的输入/输出数据流必须与其父图中应加工的输入/输出数据流保持一致。
    • 每张图的图内平衡
      对于图内的每一个加工,要求既要有输入数据流,也要有输出数据流,避免出现黑洞、奇迹、灰洞。

数据字典(DD)

数据字典:就是为数据流图中的每个数据流、文件、加工,以及组成数据流或文件的数据项做出说明

  1. 数据字典的内容
    数据字典的4类条目:数据流、数据项、数据存储、基本加工。
  2. 加工逻辑描述(加工规格说明)
    常用的加工逻辑描述方法有:结构化语言、判定表(决策表)和判定树(决策树)三种。

E-R图

E-R模型,就是实体-联系模型,用来描述现实世界的概念模型,其中有三个主要的概念:实体、联系和属性。

E-R图中的主要构件

UML

UML中有四种关系:依赖、关联、泛化和实现。

UML中主要考查用例图、类图、顺序图、活动图和状态图

UML图形分类

用例图

描述了一组用例、参与者以及它们之间的关系。

用例之间的关系有3钟

1.包含关系:当可以从两个或两个以上的用例钟提取公共行为时,应该使用包含关系来表示它们,用《include》表示

  1. 扩展关系:如果一个用例明显混合了两种或两种以上的不同场景,即根据情况可能发生多种分支,则可以将这个用例分为一个基本用例和若干个扩展用例,用《extend》表示

  2. 泛化关系:当多个用例共同拥有一种雷瑟的结构和行为的时候,可以将它们的共性抽象成父用例,其他的用例作为泛化关系钟的子用例。

类图

描述类、类的特性以及类之间的关系。

顺序图

又称序列图,描述对象之间的交互,重点在于强调顺序,反映对象间消息的发送与接收。有同步消息、异步消息和返回消息三种。

活动图

描述过程行为和并行行为。它是一种特殊的状态图,展现了在系统内从一个活动到另一个活动的流程,对于系统的功能建模特别重要,并强调对象间的控制流程。

状态图

描述对象状态及其转换。就是一个状态机,由状态、转换、事件等组成。

状态是指对象在其生命周期的某个条件或状态。

转换可以通过事件触发,事件触发后相应的监护条件会进行检查。

系统项目管理

进度安排的常用图形描述方法有甘特图和项目计划评审技术图。

甘特图

Gannt图是一种简单的水平条形图,它以日历为基准描述项目任务。

优点:能清晰地描述每个任务从何时开始,到何时结束,任务的进展情况以及各个任务之间的并行性。

缺点:不能清晰地反映出各个任务之间的依赖关系,难以确定整个项目的关键所在,也不能反映计划中有潜力的部分。

项目活动图(PERT图)

描述一个项目中任务和任务之间的关系,顶点表示里程碑,连接顶点的边表示活动,边上的权重表示完成该活动所需要的事件。

  • 关键路径:从开始顶点到结束顶点之间距离最长的一条路径。关键路径上的长度就是完成整个工程项目的最短工期。
  • 松弛时间:最迟开始时间 - 最早开始时间,最迟开始时间从后往前推,最早开始时间从前往后推。


相关推荐
坐看风云变幻10 小时前
《系统架构师成长之路》第 8 期|微服务:单体拆分的时机、粒度与通信
微服务·架构·系统架构
Aman198412 小时前
优雅的红点系统:MV数据视图分离与全局集中管理
系统架构·游戏程序
96245616 小时前
餐饮 SaaS 优惠券系统架构演进(十三)券模板、发放批次与用户券数据模型:不可变快照、版本演进、状态归档与冷热分层
系统架构
艺杯羹17 小时前
告别大模型滥用与延迟失控:确定性优先法则与本地规则引擎实战
前端·人工智能·系统架构
burg_xun1 天前
【生命科学 Agent】推理平台(三)
人工智能·系统架构·1024程序员节
黄俊懿2 天前
【架构师从入门到进阶】第七章:缓存和存储的优化思路——第一节:缓存概述
数据结构·数据库·分布式·缓存·架构·系统架构·1024程序员节
江屿风2 天前
【Linux-System】【System V共享内存:从原理到实战的完整解析】流食般投喂
linux·运维·服务器·笔记·系统架构·1024程序员节
小马哥编程2 天前
【软考架构】内聚与耦合
系统架构
burg_xun2 天前
【生命科学 Agent】推理平台(二)
人工智能·程序人生·系统架构