唯爱小粽子:软件架构的条件(architecture prerequisite)

软件架构(software architecture)是软件设计的高层部分,是用于支撑更细节的设计的框架。架构也称为“系统架构(system architecture)”、“高层设计(high-level design)”、“顶层设计(top-level design)”。通常会用一份独立的文档描述架构,这份文档称为“架构规格书(architecture specification)”或者“顶层设计”。

为什么要把架构作为前期准备呢?因为架构的质量决定了系统的“概念完整性”。后者继而决定了系统的最终质量。一个经过慎重考虑的架构为“从顶层设计到底层维护系统的概念完整性”提供了必备的结构和体系,它为程序员提供了指引-其细节程度与程序员的技能和手边的工作相配。它将工作分为几个部分,使多个开发者或者开发团队可以独立工作。

好的机构使得构建活动变得更容易。糟糕的架构则使构建活动几乎寸步难行。

在构建期间或者更晚的时候进行架构变更,代价也是高昂的。修复软件架构中的错误所需的时间与修复需求错误所需的时间处于同一数量级,多于修复编码错误所需的时间。架构变更如同需求变更一样,看起来一个很小的改动,影响也许是非常深远的。无论为了修正错误还是改进设计而引发的架构变更,越早识别出变更越好。

你可能感兴趣的:(架构,系统架构)