designing-systems について
designing-systemsは、システムアーキテクチャと技術的決定を文書化する設計スキルです。要件収集、図示、トレードオフ分析、リスク確認、概念実証による検証を導きます。
主な機能
- 01ADRとシステム設計書の使い分け
- 02機能要件と非機能要件の収集
- 03Mermaidによるコンポーネント図の作成
- 04データモデルとAPI契約の定義
- 05トレードオフ、リスク、検証の確認
活用シーン
- 01新しいシステムやコンポーネントの計画
- 02技術選択の根拠の文書化
- 03概念実証による高リスクコンポーネントの検証
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dralgorhythm/ claude-agentic-framework --skill designing-systemsインストール後、Claude Code で/designing-systemsを入力して読み込まれたか確認します。
同梱ファイルresources/adr.template.mdresources/system-design.template.md
詳細
システム設計
成果物の選択
- ADR(
./artifacts/adr_[topic].md、テンプレート):1 つの決定事項を記録します。代替案の中から選んだ理由と、その結果を示します。 - システム設計ドキュメント(
./artifacts/system_design_[component].md、テンプレート):システム全体またはコンポーネントを対象とし、アーキテクチャ、データモデル、API、NFR、段階的な計画を記載します。
新しいシステムでは、通常、両方が必要です。全体像を示すシステム設計ドキュメントに加え、個別に正当化する価値のある各決定事項について ADR を作成します(例:「DynamoDB ではなく Postgres を選ぶ理由」)。
ワークフロー
- 要件:機能要件と非機能要件を収集します
- 図:コンポーネントとその境界を示す Mermaid 図を作成します
- データと API:データモデル、ストレージ戦略、インターフェースの契約を定義します
- トレードオフ:主要な決定ごとに、選択肢 A と選択肢 B を表にまとめ、長所、短所、選択すべき状況を記載します
- リスク:単一障害点を特定します
- 技術戦略:すべての技術選択が
.claude/rules/tech-strategy.mdに準拠していることを確認します。明示的な指示がない限り、逸脱しないでください - ドキュメント化:該当するテンプレートに記入し、
./artifacts/に保存します
設計の検証サイクル
- テンプレートを使って成果物のドラフトを作成します
- ステークホルダーとレビューします
- 最もリスクの高いコンポーネントの POC を構築します
- POC で得た知見をもとに設計を改善します
- 成果物を完成させます
リソース
コメント
Markdown 対応