架构使用视图来说明,有4+1和5+1之说:
4是逻辑视图,开发视图,进程(或称运行)视图,物理(或称布署)视图
1是场景视图
5比4多的是数据视图
架构的5种视图(按5+1来说)对应着相应的任务:
逻辑架构设计:模块划分+接口定义+领域模型
开发架构设计:技术选型+文件划分+编译关系
物理架构设计:硬件分布+软件布署+方案优化
运行架构设计:技术选型+控制流划分+同步关系
数据架构设计:技术选型+存储格式+数据分布
架构设计在了解关键需求(流程的,功能的,和非功能的)后开始,首先确定架构风格并划分顶级子系统,然后做出技术选型。
模块划分最先开始于功能树,即纵向的功能划分,然后根据一般性的分离关注点的需求做分层的水平划分,再根据非功能性的需求做分类的划分。