这个部分的目的是回答下面几类问题。
- 关键的外部接口是哪些?
- 比如,你的系统和其他系统之间的(不管它们在你的环境内部还是外部)。
- 比如,暴露出来用于消费的API。
- 比如,从你的系统导出的文件。
- 每个接口都从技术角度考虑过了吗?
- 接口的技术定义是什么?
- 如果使用了消息,哪些队列(点对点)和话题(发布-订阅)是用于通信的组件?
- 消息的格式是什么(比如,纯文本或DTD/Schema定义的XML)?
- 同步还是异步?
- 异步消息的连接有保障吗?
- 如果必要,人们会长期订阅吗?
- 消息能否打乱顺序接收,这是一个问题吗?
- 接口是否幂等?
- 接口是否总是可用,或者比如说你是否需要在本地缓存数据?
- 性能/可伸缩性/安全性/其他是如何满足的?
- 每个接口都从非技术角度考虑过了吗?
- 接口所有权属谁?
- 接口多久会有变化,版本怎么处理?
- 是否有服务级别的协议?