软件架构设计之概念架构设计任务以及流程

软件架构设计之概念架构是直指目标的设计思想和重大选择。概念架构界定系统的高层组件、以及它们之间的关系,是对系统进行适当分解,而不是具体细节设计。管理人员、市场人员、用户等非技术人员可以基于概念架构进行交流。那么,对于架构设计人员而言,概念架构的设计任务或者设计成果包括哪些呢?设计任务将以什么顺序完成呢?本文将重点解答以上两个问题。

从设计任务、设计成果上看,概念架构设计要明确“1个决定、4个选择”的任务目标,其设计任务包括以下五个方面,如下图所示:

软件架构设计之概念架构设计任务以及流程_第1张图片
概念架构设计任务

概念架构设计首先要决定如何划分顶级子系统,然后是架构风格选型、开发技术选型、二次开发技术选型以及集成技术选型。

那么,在项目实践中,上述五项设计任务应该以什么顺序完成呢?具体顺序如下图所示:

软件架构设计之概念架构设计任务以及流程_第2张图片
概念架构设计流程

首先,选择架构风格、划分顶级子系统。这2项设计任务是相互影响、相辅相成的。

然后,开发技术选型、集成技术选型、二次开发技术选型。这3项设计任务紧密相关、同时进行。另外,可能不需要集成技术支持,也可以决定不支持二次开发。

为什么要这样设计?有没有其他设计方式?这都是架构师经常存在的疑问。在概念架构设计早期阶段,设计任务不是一蹴而就的,必须考虑备选概念架构设计方案。任何没有备选概念架构的设计是极其危险的,可能会造成未来架构设计返工工作频繁,甚至于造成架构设计失败的严重后果。因此,建议必须提供备选概念架构,且概念架构设计的最后一个环节是要对备选概念架构进行评审和择优。

你可能感兴趣的:(软件架构设计之概念架构设计任务以及流程)