细化架构
概念架构是难以支持并行开发的,如果要支持开发组相对独立地工作,必须要提供指导和限制作用更明确的“规约”一级的设计。
多视图的方法不仅仅是架构归档技术,更是指导我们进行架构设计的思维方法。
越是复杂的系统,越是需要从多个方面进行架构设计,这样才能把问题研究和表达清楚,而提供不同的软件架构视图也便于交流和传递设计思想。
架构设计图是一种设计架构、描述架构的核心手段和方法。通过架构视图作为分而治之的手段,使架构师可以分别专注于架构的不同方面、相对独立分析和设计不同子问题。
一次成功的软件设计,架构一定要大,思想一定要深,考虑一定要细,步骤一定要全。
架构,不能说是方案的全部,架构,只能说是问题探索的一部分的角度,他并不全面,却适合特定的目的。
方案的制定,一定要多方参与,也因此,架构显得十分复杂。
就像是一本哈姆雷特,一千个人,有一千本哈姆雷特,不同的职位,看待同一件事,同一个任务,使用一个方案的角度不同,看到的细节也就不一样,这就不得不使用多视图。
一个合格的多视图,能将一个具体工作,更加贴合实际,更加全面而详细。
这世间之事,逃不过一阴一阳,分分合合,孤阴不长,孤阳不生,阴中有阳,阳中有阴,才能事半功倍。
运用多视图的方法,一定要明白,视图不是阶段,逻辑架构考虑到的是逻辑上的考虑方面,物理架构考虑的是表层观测的方面。
多视图的方法是从不同角度,分割、交互。
常用分类可谓:逻辑视图、开发视图、运行视图、物理视图、数据视图。
分别立足于:职责划分、程序单元组织、控制流组织、物理节点安排、持久化设计。
从逻辑架构开始,我们要站在系统的功能角度,开始横向、纵向的深化、分割、再寻找关联、整合。
在思考中一定要去质疑,去寻找问题,粉碎它,把它一分二,二分三,三分无穷。
在整理中要去探寻,看看他们能否合作,能否完成一个工作。
物理架构着重考虑运行软件的计算机、网络、硬件设施等情况。
运行架构在优化关键资源使用效率的多条控制流并发执行或并行时,提供支持。
开发架构让开发人员遵守架构的基本设计。
数据架构:独立、集中、分区、复制、子集、重组六种策略,采用数据分部储存、处理手段来实现系统数据产生、使用、管理。