2015年底,一部关于IBM软件架构的秘籍流落于江湖,这就是IBM杰出工程师(Distinguished Engineer, DE,大神)蒂拉克·米特拉写得《Practical Software Architecture: Moving from System Context to Deployment》,2017年初,机械工业出版社也翻译出版为《实用软件架构:从系统环境到软件部署》。通过这本书,大家可以一窥IBM专业完整的软件架构设计,博主在此摘录其中的实例,供大家赏析。如果要学习秘籍的细节,还请拜读原著。
Requirement 需求
Best West Manufacturers (BWM), Inc., a heavy equipment manufacturing company, has primarily been in the legacy business of manufacturing machinery and heavy equipment with an established customer base. BWM would be offering more value-added services along with the sales of the equipment itself. The value-added services would be targeted at helping the customers maximize their production through efficient use of the machines, reducing unplanned maintenance downtimes, and predicting failures well ahead of their actual occurrences.
Primarily Business Use Cases:
- Real-Time Processing and Monitoring of Machine Operations -- 实时采集数据后计算状态/性能指标,做综合展示
- Seamless Activation of Services for New Machines -- 新机器无缝激活服务
- Generation of Work Orders -- 如需维修则自动生成工单
- Minimal Latency Glitches for Customers Worldwide -- 分布于全球的顾客都可以快速访问服务
看来这是一个IOT项目。
System Context 系统上下文
Architecture Overview 总架构图
和直观的理解不同,IBM认为架构概览并不是一张图,而是面对不同的项目干系人,有着不同视角的展现。常用的视角有:
总架构图1 —— 企业视角
总架构图2 —— IT视角
Architecture Decisions 架构决策
Functional Model 功能性模型
逻辑级别
子系统识别
组件识别
组件协作关系图
规格级别
组件责任矩阵
接口规格
数据域模型(数据实体与子系统的所属关系)
分层模型(组件在分层架构中的定位)
物理级别
Operational Model 部署模型
概念部署模型
规格部署模型
物理部署模型