头脑风暴Skill brainstorming

头脑风暴技能是一种系统化的设计辅助方法,用于在软件或系统开发初期,将模糊的想法转化为清晰、可行的设计方案。它通过三阶段流程(理解、探索、设计呈现),运用结构化提问、多方案对比和渐进式验证,帮助用户明确需求、权衡利弊并形成完整架构。关键词:头脑风暴、设计思维、需求分析、架构设计、方案探索、决策支持、软件开发流程、原型验证。

架构设计 0 次安装 0 次浏览 更新于 3/2/2026

名称:头脑风暴 描述:在编写代码或实施计划之前,用于创建或开发任何事物时——通过结构化的苏格拉底式提问、替代方案探索和渐进式验证,将粗略的想法提炼为完整的设计方案

将想法转化为设计

概述

通过结构化提问和替代方案探索,将粗略的想法转化为完整的设计方案。

核心原则: 通过提问来理解、探索替代方案、逐步呈现设计以进行验证。

在会话开始时宣布使用此技能。

何时使用此技能

在以下情况下激活此技能:

  • 请求包含“我有一个关于…的想法”或“我想构建…”
  • 用户询问“帮我设计…”或“…的最佳方法是什么”
  • 需求模糊或高度概括
  • 可能有多种方法可行
  • 在编写任何代码或实施计划之前

三阶段流程

阶段 关键活动 工具使用 输出
1. 理解 提问(一次一个) 使用 AskUserQuestion 进行选择 目的、约束、成功标准
2. 探索 提出 2-3 种方法 使用 AskUserQuestion 进行方法选择 包含权衡的架构选项
3. 设计呈现 以 200-300 字为单位呈现 开放式问题 包含验证的完整设计

阶段 1:理解

目标: 收集目的、约束和成功标准。

流程:

  • 检查工作目录中的当前项目状态
  • 一次提出一个问题以完善想法
  • 呈现多项选择选项时使用 AskUserQuestion 工具
  • 收集:目的、约束、成功标准

工具使用: 使用 AskUserQuestion 提出包含 2-4 个清晰选项的澄清性问题。

示例:“身份验证数据应存储在哪里?”选项包括会话存储、本地存储、Cookie,每个都附带权衡描述。

完整阶段 1 示例请参见 references/example-session-auth.md

阶段 2:探索

目标: 提出 2-3 种不同的架构方法,并明确说明其权衡。

流程:

  • 提出 2-3 种不同的方法
  • 对于每种方法:核心架构、权衡、复杂性评估
  • 使用 AskUserQuestion 工具将方法呈现为结构化选择
  • 在有用时包含权衡比较表

权衡格式:

方法 优点 缺点 复杂性
选项 1 好处 缺点 低/中/高
选项 2 好处 缺点 低/中/高
选项 3 好处 缺点 低/中/高

完整阶段 2 示例请参见 references/example-session-dashboard.md,其中包含 SSE、WebSockets 和轮询的比较。

阶段 3:设计呈现

目标: 逐步呈现完整设计,并验证每个部分。

流程:

  • 以 200-300 字为单位呈现
  • 涵盖:架构、组件、数据流、错误处理、测试
  • 每个部分后询问:“到目前为止看起来对吗?”
  • 使用开放式问题以允许自由形式的反馈

典型部分:

  1. 架构概述
  2. 组件详情
  3. 数据流
  4. 错误处理
  5. 安全考虑
  6. 实施优先级

验证模式: 每个部分后,在继续下一部分之前暂停以获取反馈。

工具使用指南

使用 AskUserQuestion 工具用于:

  • 阶段 1:包含 2-4 个清晰选项的澄清性问题
  • 阶段 2:架构方法选择(2-3 种替代方案)
  • 任何具有明确、互斥选择的决策
  • 当选项有明确的权衡需要解释时

好处:

  • 结构化呈现选项及其描述
  • 清晰的权衡可见性
  • 强制明确选择(防止模糊的“可能两者都”的回答)

使用开放式问题用于:

  • 阶段 3:设计验证
  • 当需要详细反馈或解释时
  • 当用户应描述自己的需求时
  • 当结构化选项会限制创造性输入时

非线性进展

灵活性是关键。 需要时返回——不要强制线性进展。

返回阶段 1 当:

  • 用户在阶段 2 或 3 中揭示新的约束
  • 验证显示需求存在根本性差距
  • 某些内容不合理

返回阶段 2 当:

  • 用户在阶段 3 中质疑所选方法
  • 新信息表明其他方法会更好

继续前进当:

  • 所有需求都清晰
  • 所选方法已验证
  • 没有新的约束出现

关键原则

原则 应用
一次一个问题 阶段 1:每条消息一个单一问题,使用 AskUserQuestion 进行选择
结构化选择 使用 AskUserQuestion 工具呈现 2-4 个包含权衡的选项
无情地应用 YAGNI 从所有设计中移除不必要的功能
探索替代方案 在确定之前始终提出 2-3 种方法
渐进式验证 分部分呈现设计,验证每个部分
灵活进展 需要时返回——灵活性 > 刚性

头脑风暴完成后

考虑以下可选后续步骤:

  • 在项目的设计文档中记录设计
  • 将设计分解为可操作的实施任务
  • 为隔离开发创建 git 分支或工作区

使用 assets/design-doc-template.mdassets/decision-matrix-template.md 中的模板进行结构化文档记录。

示例

完整头脑风暴会话:

  • references/example-session-auth.md - 身份验证存储设计(JWT vs Session vs Cookies)
  • references/example-session-dashboard.md - 实时仪表板设计(SSE vs WebSockets vs Polling)

输出模板:

  • assets/design-doc-template.md - 结构化设计文档格式
  • assets/decision-matrix-template.md - 加权决策比较格式