
系统建模 | 55
过于冗长的日志 用户错误
开发者错误
内部恶意人员
(
开发者
)
备用代码路径
不可信组件
内部恶意人员
配置错误
用户界面混乱
数据泄露
秘密通道
图 1-26:鱼骨图样本,第 3 步:次要原因
1.3 如何构建系统模型
创建系统模型的基本过程是从识别系统中的主要构造块开始的
—
可以是应用
程序、服务器、数据库或数据存储等。然后识别每个主要构建块之间的连接:
·
应用程序是否支持 API 或用户界面?
·
服务器是否有监听端口?如果是的话,使用的是什么协议?
·
什么在与数据库通信?与它通信的内容是什么?是仅读取数据,还是也可以
写入数据?
·
数据库如何控制访问?
保持跟进会话的线程,并遍历模型中此上下文层的每个实体,直到完成所有必
要的连接、接口、协议和数据流。
下一步,选择其中一个实体(通常是应用程序或服务器元素),其中可能包含你
需要发现的其他详细信息,以便识别出需要关注的区域并将其进一步细分。在
查看组成应用程序或服务器的子部分时,请着重关注与应用程序之间的入口点
和出口点以及这些信道的连接位置。
还应考虑各个子部分之间如何进行通信,包括通信信道、协议以及跨信道传递
的数据类型。你将要根据添加到模型中的形状类型添加任何相关信息(在本章