量化设计空间 — 软件架构课程 Lecture-5

来源:田浩然上传的资料 / 0B105-SoftwareArchitecture / Lecture-5 / The quantified Design Space.pdf 作者:Toru Asada, Roy F. Swonger, Nadine Bounds, Paul Duerig 页数:21 页 | 格式:文字版 PDF | 提取方式:pdftotext

核心观点

量化设计空间(Quantified Design Space, QDS) 是一种将”设计空间”方法与”质量功能部署(QFD)“相结合的软件设计量化分析工具。它把系统需求转化为功能和结构设计备选方案,并以定量方式对这些方案进行分析、比较和选择。

核心命题:软件的质量取决于其设计的质量,因此需要系统化、定量化的设计分析工具。


两大基础概念

1. 设计空间(Design Space)

设计空间标识了在特定应用领域中构建设计所用到的关键功能维度和结构维度。

  • 维度(Dimensions):每个维度描述系统的一个特性或需求的变化范围(如”响应时间”维度有快/中/慢三档)。
  • 规则(Rules):以设计知识的形式封装不同维度中备选方案之间的关系(如”选择消息机制的系统响应时间较慢”)。
  • 一个系统设计就是在设计空间中各维度上的一组选择(即空间中的一个点)。

2. 质量功能部署(Quality Function Deployment, QFD)

QFD 是一种质量保证技术,帮助将客户需求转化为产品开发各阶段所需的技术需求。

  • 核心目标:“客户的声音”(Voice of the Customer) 必须体现在产品开发的每一步。
  • QFD 的结果可以作为后续开发阶段的输入,其机制也可在适当时直接实现。
  • 典型工具:质量屋(House of Quality) 矩阵,左墙为客户需求,右墙为需求权重,天花板为技术特性,房间为关系矩阵,屋顶为技术特性自相关,地板为技术特性目标值。

QDS 的结合方式

QDS 将设计空间与 QFD 两者融合:

来源贡献给 QDS 的要素
设计空间将设计分解为维度和备选方案;设计维度之间的正/负相关性
QFD将需求转化为实现机制;分析机制与需求之间的关系;加权评分方法

实现方式:将设计空间”植入”QFD 框架之上,形成量化设计空间。

两者的矩阵组织结构都非常适合用电子表格软件处理。

相关图示(PPT 中包含)

  • 图 5.5:量化设计空间矩阵示意图
  • 图 5.6:结构设计空间示例
  • 图 5.7:结构设计备选方案的相关性
  • 图 5.8:量化设计空间评分示例

四种分析技术

QDS 提供四类定量分析方法:

1. 频谱分析(Spectrum Analysis)

  • 分析设计空间中各备选方案在各维度上的分布范围。
  • 识别设计空间的”覆盖度”和空白区域。

2. 贡献分析(Contribution Analysis)

  • 分析每个设计决策对整体质量目标的贡献程度。
  • 找出关键设计杠杆点(哪些维度的选择对质量影响最大)。

3. 设计选择分析(Design Selection Analysis)

  • 基于加权评分,从多个备选方案中选择最优设计。
  • 类似 QFD 的质量屋评分机制。

4. 直接比较分析(Direct Comparison Analysis)

  • 对两个或多个具体设计方案进行逐项对比。
  • 识别各方案的相对优劣势。

COTS 产品考量

QDS 也适用于商用现成产品(COTS, Commercial Off-The-Shelf) 的选型评估——将 COTS 产品作为设计空间中的一个备选方案,用同样的量化框架评估其对需求的满足程度。

(PPT 中有专门一页讨论 COTS,但文本提取内容较简略。)


结论与价值

QDS 是一个强大的软件工程工具,支持软件开发的三个阶段:

  1. 需求获取:系统化地组织领域知识,明确需求与设计的映射。
  2. 设计构建:建立完善的 QDS 后,可通过选择得分最高的设计选项组合来构建模型设计。
  3. 设计评估:定量评估现有设计,识别需要改进的薄弱环节。

总结要点

  • 设计空间 = 组织应用领域知识的方法
  • 质量功能部署 = 将目标分解为加权子目标并用线性方程计算优先级的定量方法
  • QDS = 两者结合,兼具知识组织能力和定量分析能力

关联笔记