📘

复杂系统 · 层次化设计

需求分解 从入门到实战 · 30章完整体系
📚 共 30 章节
01
课程导论 什么是复杂系统 · 为什么需要层次化设计
  • 复杂系统定义
  • 层次化设计价值
  • 课程目标与方法
02
需求工程基础 需求定义与分类 · 获取方法
  • 功能/非功能需求
  • 访谈
  • 问卷
  • 观察
03
需求分析与建模 用例图 · 用例描述
  • Use Case Diagram
  • 编写用例描述
  • 功能需求捕获
04
结构化分析方法 DFD · 数据字典 · 加工说明
  • 数据流图绘制
  • 数据字典构建
  • 结构化语言
  • 决策表
05
面向对象分析方法 类图 · 对象图 · 关系
  • 类图与对象图
  • 识别类/对象
  • 属性与操作
  • 关联/继承/聚合
06
需求优先级排序 MoSCoW · Kano · 价值排序
  • MoSCoW方法
  • Kano模型
  • 基于价值排序
07
需求文档化 SRS · IEEE 830 · 可追踪性
  • SRS结构
  • IEEE 830标准
  • 需求可追踪性
08
需求验证与确认 评审 · 原型 · 测试用例
  • 同行评审/走查
  • 原型验证
  • 测试用例推导
09
需求管理 变更控制 · 版本管理 · RTM
  • 变更控制流程
  • 需求版本管理
  • 追踪矩阵RTM
10
系统分解原则 模块化 · 高内聚低耦合 · 关注点分离
  • 模块化
  • 高内聚低耦合
  • 关注点分离
  • 信息隐藏
11
层次化设计概述 自顶向下 · 自底向上 · 混合策略
  • 自顶向下设计
  • 自底向上设计
  • 混合策略
12
架构风格与模式 分层 · 管道-过滤器 · 微服务
  • Layered Architecture
  • 管道-过滤器
  • 微服务架构
13
子系统划分 功能分解 · 业务领域 · 技术层次
  • 基于功能分解
  • 基于业务领域
  • 基于技术层次
14
接口设计 定义 · 规范 · 文档化
  • 接口定义
  • 语法与语义
  • 接口文档化
15
模块设计 职责分配 · 接口与实现分离 · 契约
  • 模块职责分配
  • 接口与实现分离
  • Design by Contract
16
设计模式入门 单例 · 工厂 · 观察者
  • 单例模式
  • 工厂模式
  • 观察者模式
17
数据设计 ER图 · 数据存储层次 · 数据访问层
  • 数据库设计(ER图)
  • 数据存储层次
  • 数据访问层设计
18
用户界面设计 UI层次 · 导航 · 原型工具
  • UI层次结构
  • 导航设计
  • 原型设计工具
19
并发与分布式设计 任务分解 · 进程/线程 · 通信
  • 任务分解
  • 进程/线程模型
  • 消息队列/RPC
20
安全性设计 安全需求分解 · STRIDE · 安全层次
  • 安全需求分解
  • 威胁建模STRIDE
  • 安全架构层次
21
性能设计 性能需求分解 · 负载均衡 · 缓存 · 异步
  • 性能需求分解
  • 负载均衡
  • 缓存策略
  • 异步处理
22
可扩展性设计 水平/垂直扩展 · 无状态 · 服务发现
  • 水平扩展与垂直扩展
  • 无状态设计
  • 服务发现
23
可维护性设计 代码分层 · 日志 · 配置 · 监控
  • 代码分层
  • 日志系统
  • 配置管理
  • 监控告警
24
设计评审 评审目标 · 检查单 · ATAM
  • 设计评审目标
  • 评审检查单
  • ATAM方法
25
从需求到设计的映射 需求追踪 · 设计决策记录
  • 需求追踪到设计元素
  • 设计决策记录ADR
26
案例研究(一) 电商系统需求分解与架构
  • 电商系统需求分解
  • 层次化架构设计
27
案例研究(二) 物联网平台需求分解与模块划分
  • 物联网平台需求
  • 模块划分
28
案例研究(三) 金融交易系统高可用与安全
  • 高可用设计
  • 安全设计
29
工具与实践 Jama · DOORS · EA · Draw.io · Git
  • 需求管理工具
  • 建模工具
  • 版本控制Git
30
课程总结与未来趋势 AI辅助 · 低代码 · 持续演进
  • AI辅助需求分析
  • 低代码平台影响
  • 持续演进架构