jpskill.com
🛠️ 開発・MCP コミュニティ

compare-architectures

コスト、期間、リスク、性能、保守性といった様々な観点から、最小限、中程度、完全刷新といった複数のシステム構成案を比較検討し、それぞれのメリット・デメリットを分析することで、最適なシステム構成や刷新戦略の意思決定を支援するSkill。

📜 元の英語説明(参考)

Generate and compare multiple architecture options (minimal, moderate, full modernization) with comprehensive trade-offs analysis across cost, timeline, risk, performance, and maintainability dimensions. Use when evaluating multiple architectural approaches or deciding between modernization strategies with different cost/risk trade-offs.

🇯🇵 日本人クリエイター向け解説

一言でいうと

コスト、期間、リスク、性能、保守性といった様々な観点から、最小限、中程度、完全刷新といった複数のシステム構成案を比較検討し、それぞれのメリット・デメリットを分析することで、最適なシステム構成や刷新戦略の意思決定を支援するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o compare-architectures.zip https://jpskill.com/download/9700.zip && unzip -o compare-architectures.zip && rm compare-architectures.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/9700.zip -OutFile "$d\compare-architectures.zip"; Expand-Archive "$d\compare-architectures.zip" -DestinationPath $d -Force; ri "$d\compare-architectures.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して compare-architectures.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → compare-architectures フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

アーキテクチャ比較スキル

目的

システム刷新または設計について、ユーザーが情報に基づいた意思決定を行えるよう、包括的なトレードオフ分析とともに、3つの異なるアーキテクチャオプションを生成します。各オプションは、詳細なコスト、タイムライン、リスク、および品質分析とともに、異なる投資レベル(最小限、中程度、最大限)を表します。

コア原則:

  • 3つの実行可能なオプションを提示する(完璧なソリューションは1つではない)
  • 正直なトレードオフ分析(文脈なしに「最良」のオプションはない)
  • 証拠に基づいた見積もり(コスト、タイムライン、リスク)
  • 正当な理由を伴う明確な推奨事項
  • 選択したオプションに対する実行可能な次のステップ

前提条件

  • 現在のシステムの理解(ブラウンフィールドの場合)
  • 明確な新しい要件または目標
  • 既知のユーザー制約(タイムライン、予算、チーム)
  • 出力ストレージ用の workspace/ ディレクトリが存在すること

ワークフロー

ステップ 1: 現在の状態と要件の分析

アクション: 意味のあるオプションを作成するために、現在のアーキテクチャと新しい要件を理解します。

主要な活動:

  1. 現在のアーキテクチャのロード(ブラウンフィールドの場合)

    # current_architecture パスが提供されている場合
    python .claude/skills/bmad-commands/scripts/read_file.py \
      --path {current_architecture} \
      --output json
    
    # 抽出:
    # - 現在のテクノロジースタック
    # - アーキテクチャパターン
    # - 既知の制限/問題点
    # - 本番環境対応度スコア(analyze-architecture からの場合)

    現在のアーキテクチャがテキストによる説明である場合は、以下を解析します。

    • テクノロジースタック(言語、フレームワーク、データベース)
    • アーキテクチャタイプ(モノリス、マイクロサービスなど)
    • スケール指標(ユーザー数、データ量、トラフィック)
    • 言及されている問題点
  2. 新しい要件の解析

    new_requirements から抽出:

    • 機能的な変更: 新しい機能、能力、統合
    • 非機能的な変更: パフォーマンス、スケーラビリティ、セキュリティのニーズ
    • ビジネス目標: これらの変更が重要な理由、期待される成果
    • 成功基準: 成功を測定する方法

    解析の例:

    入力: "リアルタイムチャットを追加、10K 同時ユーザーをサポート、モバイルアプリが必要"
    
    解析結果:
    - 機能的: リアルタイムチャット機能、モバイルサポート
    - 非機能的: 10K 同時ユーザーへのスケール (パフォーマンス要件)
    - 技術的な影響: WebSocket/SSE、モバイルフレームワークが必要
  3. 制約の特定

    constraints パラメータから:

    • タイムライン: いつまでに必要か? (週、月、年)
    • 予算: コスト感度 (低い、中程度、高い)
    • チーム規模: 利用可能な開発者の数
    • チームの専門知識: 現在のスキルセット、新しい技術を学ぶ意欲
    • リスク許容度: 保守的 (低リスク) vs. 積極的 (イノベーション)

    提供されていない場合のデフォルトの仮定:

    • タイムライン: 中程度 (3-6 ヶ月)
    • 予算: 中程度
    • チーム: 小規模 (2-5 人の開発者)
    • 専門知識: 中程度 (学ぶ意欲がある)
    • リスク許容度: 中程度
  4. プロジェクトタイプの検出 (提供されていない場合)

    現在のアーキテクチャと要件に基づいて:

    • フロントエンド: UI/UX が支配的、クライアント側の変更
    • バックエンド: API/サービス/データが支配的
    • フルスタック: フロントエンドとバックエンドの両方の変更

出力: オプション生成のための包括的なコンテキスト

参照: 詳細な解析手法については、references/requirement-analysis.md を参照してください。


ステップ 2: 3つのアーキテクチャオプションの生成

アクション: 異なる投資/変更レベルを表す3つの異なるオプションを作成します。

オプション生成戦略:

オプション A: 最小限の変更 (最も低いリスク、最速)

哲学: うまく機能するものは維持し、壊れているものを修正し、最小限に追加します。

アプローチ:

  • テクノロジー: 現在のスタックを維持し、バージョンをアップグレードします
  • アーキテクチャ: 最小限のパターン変更、対象を絞った修正
  • スコープ: 重要な問題点のみに対処し、あったら良いものは延期します
  • 統合: 新しい機能を既存のアーキテクチャにボルトオンします
  • 移行: 移行なし、段階的な追加

典型的な特徴:

  • タイムライン: 2-6 週間
  • コスト: $ (1x ベースライン)
  • リスク: 低い (最小限の変更、実績のある技術)
  • チームへの影響: 最小限の学習曲線
  • 技術的負債: わずかに増加する可能性あり (戦略的よりも戦術的)

例 (リアルタイムチャット要件):

## オプション A: 最小限の変更 - チャットのボルトオン

**アプローチ:** Socket.IO を既存の Express バックエンドに追加し、現在の UI にチャットウィジェットを埋め込みます。

**テクノロジースタック:**
- 維持: 現在の React フロントエンド、Express バックエンド、PostgreSQL
- 追加: Socket.IO (WebSocket)、Redis (pub/sub)

**アーキテクチャ:**
- チャットサービスを個別の Express ルートとして
- メッセージ用の共有 PostgreSQL
- サーバーインスタンス間の pub/sub 用の Redis

**必要な変更:**
- Socket.IO エンドポイントを Express に追加 (~500 LOC)
- チャット UI コンポーネントを React に追加 (~300 LOC)
- 水平スケーリング用の Redis を追加 (~100 LOC)

**長所:**
✅ 迅速な実装 (3-4 週間)
✅ 低リスク (最小限の変更)
✅ 移行は不要
✅ チームはスタックを知っている

**短所:**
❌ リアルタイムには最適なアーキテクチャではない
❌ 5K ユーザーを超えるスケーリングの課題がある可能性
❌ 技術的負債が増加する
❌ 共有データベースがボトルネックになる可能性

**コスト:** $15K-$25K (開発者の時間)
**タイムライン:** 3-4 週間
**リスク:** 低い

オプション B: 中程度のリファクタリング (バランスの取れたアプローチ)

哲学: 戦略的な改善、選択的な最新化、将来への備え。

アプローチ:

  • テクノロジー: 現在の技術と最新の技術の組み合わせ (段階的な移行)
  • アーキテクチャ: パターンを改善し、必要に応じて新しいパターンを導入します
  • スコープ: 現在のニーズに対処し、将来の成長に備えます
  • 統合: 主要な領域をリファクタリングし、新しい機能のために新しいサービスを導入します
  • 移行: 段階的 (ストランガーフィグパターン)

典型的な特徴:

  • タイムライン: 2-4 ヶ月
  • コスト: $$ (2-3x ベースライン)
  • リスク: 中程度 (いくつかの新しい技術、計画的な移行)
  • チームへの影響: 中程度の学習 (新しいパターン/ツール)
  • 技術的負債: 全体的に削減 (戦略的な改善)

例 (リアルタイムチャット要件):


## オプション B: 中程度のリファクタリング - 専用チャットサービス

**アプローチ:** チャットをマイクロサービスとして抽出します。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Compare Architectures Skill

Purpose

Generate three distinct architecture options with comprehensive trade-offs analysis to help users make informed decisions about system modernization or design. Each option represents a different investment level (minimal, moderate, full) with detailed cost, timeline, risk, and quality analysis.

Core Principles:

  • Present 3 viable options (not 1 perfect solution)
  • Honest trade-offs analysis (no "best" option without context)
  • Evidence-based estimates (cost, timeline, risk)
  • Clear recommendation with justification
  • Actionable next steps for chosen option

Prerequisites

  • Understanding of current system (if brownfield)
  • Clear new requirements or goals
  • User constraints known (timeline, budget, team)
  • workspace/ directory exists for output storage

Workflow

Step 1: Analyze Current State & Requirements

Action: Understand current architecture and new requirements to create meaningful options.

Key Activities:

  1. Load Current Architecture (if brownfield)

    # If current_architecture path provided
    python .claude/skills/bmad-commands/scripts/read_file.py \
      --path {current_architecture} \
      --output json
    
    # Extract:
    # - Current technology stack
    # - Architecture patterns
    # - Known limitations/pain points
    # - Production readiness score (if from analyze-architecture)

    If current architecture is textual description, parse for:

    • Technology stack (languages, frameworks, databases)
    • Architecture type (monolith, microservices, etc.)
    • Scale indicators (users, data volume, traffic)
    • Pain points mentioned
  2. Parse New Requirements

    Extract from new_requirements:

    • Functional changes: New features, capabilities, integrations
    • Non-functional changes: Performance, scalability, security needs
    • Business goals: Why these changes matter, expected outcomes
    • Success criteria: How to measure success

    Example parsing:

    Input: "Add real-time chat, support 10K concurrent users, mobile app needed"
    
    Parsed:
    - Functional: Real-time chat feature, mobile support
    - Non-functional: Scale to 10K concurrent (performance requirement)
    - Technical implications: Need WebSocket/SSE, mobile framework
  3. Identify Constraints

    From constraints parameter:

    • Timeline: How soon is this needed? (weeks, months, year)
    • Budget: Cost sensitivity (low, moderate, high)
    • Team size: How many developers available?
    • Team expertise: Current skill set, willingness to learn new tech
    • Risk tolerance: Conservative (low risk) vs. aggressive (innovation)

    Default assumptions if not provided:

    • Timeline: Moderate (3-6 months)
    • Budget: Moderate
    • Team: Small (2-5 developers)
    • Expertise: Moderate (willing to learn)
    • Risk tolerance: Moderate
  4. Detect Project Type (if not provided)

    Based on current architecture and requirements:

    • Frontend: UI/UX dominant, client-side changes
    • Backend: API/services/data dominant
    • Fullstack: Both frontend and backend changes

Output: Comprehensive context for option generation

See: references/requirement-analysis.md for detailed parsing techniques


Step 2: Generate Three Architecture Options

Action: Create three distinct options representing different investment/change levels.

Option Generation Strategy:

Option A: Minimal Changes (Lowest Risk, Fastest)

Philosophy: Keep what works, fix what's broken, add minimally.

Approach:

  • Technology: Stick with current stack, upgrade versions
  • Architecture: Minimal pattern changes, targeted fixes
  • Scope: Address critical pain points only, defer nice-to-haves
  • Integration: Bolt-on new features to existing architecture
  • Migration: No migration, incremental additions

Typical Characteristics:

  • Timeline: 2-6 weeks
  • Cost: $ (1x baseline)
  • Risk: Low (minimal changes, proven tech)
  • Team impact: Minimal learning curve
  • Technical debt: May increase slightly (tactical over strategic)

Example (Real-time Chat Requirement):

## Option A: Minimal Changes - Bolt-on Chat

**Approach:** Add Socket.IO to existing Express backend, embed chat widget in current UI.

**Technology Stack:**
- Keep: Current React frontend, Express backend, PostgreSQL
- Add: Socket.IO (WebSocket), Redis (pub/sub)

**Architecture:**
- Chat service as separate Express route
- Shared PostgreSQL for messages
- Redis for pub/sub between server instances

**Changes Required:**
- Add Socket.IO endpoints to Express (~500 LOC)
- Add chat UI component to React (~300 LOC)
- Add Redis for horizontal scaling (~100 LOC)

**Pros:**
✅ Fast implementation (3-4 weeks)
✅ Low risk (minimal changes)
✅ No migration needed
✅ Team knows the stack

**Cons:**
❌ Not optimal architecture for real-time
❌ May have scaling challenges >5K users
❌ Technical debt increases
❌ Shared database could become bottleneck

**Cost:** $15K-$25K (developer time)
**Timeline:** 3-4 weeks
**Risk:** Low

Option B: Moderate Refactor (Balanced Approach)

Philosophy: Strategic improvements, selective modernization, set up for future.

Approach:

  • Technology: Mix of current + modern (gradual migration)
  • Architecture: Improve patterns, introduce new where needed
  • Scope: Address current needs + position for future growth
  • Integration: Refactor key areas, new services for new features
  • Migration: Incremental (strangler fig pattern)

Typical Characteristics:

  • Timeline: 2-4 months
  • Cost: $$ (2-3x baseline)
  • Risk: Medium (some new tech, planned migration)
  • Team impact: Moderate learning (new patterns/tools)
  • Technical debt: Reduced overall (strategic improvements)

Example (Real-time Chat Requirement):

## Option B: Moderate Refactor - Dedicated Chat Service

**Approach:** Extract chat as microservice with modern real-time stack, keep core app.

**Technology Stack:**
- Keep: React frontend, Express API, PostgreSQL (core)
- New: Node.js + Socket.IO (chat service), MongoDB (chat messages), Redis (caching)

**Architecture:**
- Chat microservice (separate deployment)
- Event-driven communication (message bus)
- Dedicated database for chat (MongoDB)
- API gateway pattern for routing

**Changes Required:**
- Build chat microservice (~2K LOC)
- Integrate with existing auth (JWT sharing)
- Update frontend to connect to chat service
- Set up API gateway (Kong/Express Gateway)

**Pros:**
✅ Scales well (dedicated service)
✅ Better real-time performance
✅ Reduces technical debt
✅ Positions for future microservices
✅ Team learns modern patterns

**Cons:**
❌ More complex deployment
❌ Need to learn microservices patterns
❌ Operational overhead (monitoring, debugging)
⚠️  Migration period (running both)

**Cost:** $40K-$60K (developer time + infrastructure)
**Timeline:** 2-3 months
**Risk:** Medium

Option C: Full Modernization (Highest Quality, Longest Timeline)

Philosophy: Do it right, invest for long-term, modern best practices.

Approach:

  • Technology: Modern stack, latest frameworks and tools
  • Architecture: Best practices, scalable patterns from day 1
  • Scope: Solve current needs + future-proof for 3-5 years
  • Integration: Complete redesign, greenfield opportunity
  • Migration: Phased complete migration or parallel run

Typical Characteristics:

  • Timeline: 4-8 months
  • Cost: $$$ (4-6x baseline)
  • Risk: High (major changes, new tech, migration complexity)
  • Team impact: Significant learning (new ecosystem)
  • Technical debt: Near zero (clean slate)

Example (Real-time Chat Requirement):

## Option C: Full Modernization - Real-time First Architecture

**Approach:** Rebuild as real-time-first app with modern fullstack framework.

**Technology Stack:**
- Frontend: Next.js 15 (React 19, server components)
- Backend: tRPC + WebSocket, serverless functions
- Database: PostgreSQL (main) + Redis (cache/pub-sub)
- Real-time: Ably or Pusher (managed real-time infrastructure)
- Mobile: React Native (shared components with web)

**Architecture:**
- Fullstack monorepo (Turborepo)
- Real-time-first design (WebSocket primary, HTTP fallback)
- Serverless functions (auto-scaling)
- CDN edge functions for global performance
- Mobile + web from single codebase

**Changes Required:**
- Complete rebuild of frontend in Next.js (~8K LOC)
- Backend as tRPC API + WebSocket (~4K LOC)
- Real-time infrastructure setup (Ably/Pusher)
- Mobile app (React Native, ~3K LOC)
- Data migration from old to new system

**Pros:**
✅ Modern, maintainable codebase
✅ Excellent real-time performance
✅ Scales to 100K+ users easily
✅ Mobile + web unified
✅ Easy to hire developers (popular stack)
✅ Near-zero technical debt

**Cons:**
❌ Long timeline (4-6 months)
❌ High cost (significant investment)
❌ Team needs to learn new stack
❌ Complex migration from old system
❌ Risk of over-engineering

**Cost:** $120K-$180K (developer time + services)
**Timeline:** 4-6 months
**Risk:** High

Step 3: Perform Trade-offs Analysis

Action: Compare options across key dimensions to enable informed decision.

Key Dimensions:

1. Cost Analysis

Components:

  • Development time: Developer hours × hourly rate
  • Infrastructure: Hosting, services, licenses
  • Migration: Data migration, parallel running, cutover
  • Training: Team learning curve, external training
  • Opportunity cost: What else could team work on?

Comparison Matrix:

Dimension Option A: Minimal Option B: Moderate Option C: Full
Development 2-3 dev-weeks 8-12 dev-weeks 20-26 dev-weeks
Infrastructure +$50/mo +$200/mo +$500/mo
Migration None $5K-$10K $15K-$25K
Training None Moderate Significant
Total Cost $15K-$25K $40K-$60K $120K-$180K

2. Timeline Analysis

Factors:

  • Planning: Requirements, design, architecture
  • Development: Implementation time
  • Testing: QA, performance, security
  • Migration: Data migration, cutover, validation
  • Stabilization: Bug fixes, monitoring, optimization

Comparison Matrix:

Phase Option A: Minimal Option B: Moderate Option C: Full
Planning 1 week 2 weeks 3 weeks
Development 2-3 weeks 8-10 weeks 16-20 weeks
Testing 1 week 2 weeks 4 weeks
Migration None 1 week 2-3 weeks
Stabilization 1 week 2 weeks 3 weeks
Total Timeline 3-4 weeks 2-3 months 4-6 months

3. Risk Analysis

Risk Categories:

  • Technical risk: New tech, complex patterns, unknowns
  • Migration risk: Data loss, downtime, bugs
  • Team risk: Skill gaps, learning curve, velocity drop
  • Business risk: Opportunity cost, market timing, competition

Scoring (0-100, higher = riskier):

Risk Type Option A: Minimal Option B: Moderate Option C: Full
Technical 20 (known tech) 50 (some new) 75 (major changes)
Migration 10 (no migration) 40 (incremental) 70 (big bang)
Team 15 (no learning) 45 (moderate learn) 65 (steep curve)
Business 25 (low impact) 35 (moderate) 55 (high impact)
Overall Risk Low (18) Medium (43) High (66)

4. Performance & Scalability

Metrics:

  • Latency: Response time (p50, p95, p99)
  • Throughput: Requests per second
  • Concurrency: Concurrent users supported
  • Scalability: Horizontal/vertical scaling capability

Comparison:

Metric Option A: Minimal Option B: Moderate Option C: Full
Latency Good (<200ms) Very Good (<100ms) Excellent (<50ms)
Concurrency ~5K users ~25K users ~100K+ users
Scalability Limited (vertical) Good (horizontal) Excellent (elastic)
Score 60/100 80/100 95/100

5. Maintainability & Technical Debt

Factors:

  • Code quality: Readability, structure, patterns
  • Technical debt: Shortcuts, compromises, legacy code
  • Team velocity: How fast can team add features later?
  • Hiring: How easy to find developers?

Comparison:

Factor Option A: Minimal Option B: Moderate Option C: Full
Code Quality Fair (adds debt) Good (improves) Excellent (clean)
Tech Debt +10% increase -20% reduction -90% reduction
Future Velocity Slows over time Maintains Accelerates
Hiring Moderate Good Excellent
Score 50/100 75/100 95/100

Step 4: Generate Recommendation

Action: Recommend the best option based on user constraints and provide justification.

Recommendation Logic:

def recommend_option(constraints, user_priorities):
    # Score each option based on constraints
    scores = {
        "minimal": 0,
        "moderate": 0,
        "full": 0
    }

    # Timeline constraint
    if constraints.timeline == "urgent" (<2 months):
        scores["minimal"] += 40
        scores["moderate"] += 20
        scores["full"] += 0
    elif constraints.timeline == "moderate" (2-6 months):
        scores["minimal"] += 20
        scores["moderate"] += 40
        scores["full"] += 20
    else:  # Long-term (>6 months)
        scores["minimal"] += 10
        scores["moderate"] += 30
        scores["full"] += 40

    # Budget constraint
    if constraints.budget == "tight":
        scores["minimal"] += 40
        scores["moderate"] += 15
        scores["full"] += 0
    elif constraints.budget == "moderate":
        scores["minimal"] += 20
        scores["moderate"] += 40
        scores["full"] += 15
    else:  # generous
        scores["minimal"] += 10
        scores["moderate"] += 25
        scores["full"] += 40

    # Risk tolerance
    if constraints.risk_tolerance == "conservative":
        scores["minimal"] += 30
        scores["moderate"] += 20
        scores["full"] += 5
    elif constraints.risk_tolerance == "moderate":
        scores["minimal"] += 15
        scores["moderate"] += 35
        scores["full"] += 20
    else:  # aggressive
        scores["minimal"] += 5
        scores["moderate"] += 20
        scores["full"] += 40

    # User priorities
    if user_priorities.includes("long_term_quality"):
        scores["full"] += 20
        scores["moderate"] += 10
    if user_priorities.includes("speed_to_market"):
        scores["minimal"] += 20
        scores["moderate"] += 10
    if user_priorities.includes("scale_for_growth"):
        scores["full"] += 15
        scores["moderate"] += 10

    # Return highest scoring option
    return max(scores, key=scores.get)

Recommendation Format:

## My Recommendation: Option B - Moderate Refactor

**Confidence:** 85% (High)

**Why This Option:**

Given the constraints:
- Timeline: 3-4 months (moderate)
- Budget: $40K-$60K (moderate)
- Risk tolerance: Medium (willing to invest strategically)
- Priorities: Scale for growth + reduce technical debt

**Option B (Moderate Refactor) is the best fit because:**

1. **Balanced Investment:**
   - Not too fast/cheap (Option A would hit limits soon)
   - Not too slow/expensive (Option C might be over-engineering)
   - $40K-$60K is reasonable for 2-3 month project

2. **Addresses Core Needs:**
   - Solves real-time chat requirement properly (dedicated service)
   - Scales to 25K users (covers the 10K + growth trajectory)
   - Sets up for future microservices (if needed)

3. **Manageable Risk:**
   - Team can learn gradually (not all at once like Option C)
   - Incremental migration (lower risk than big bang)
   - Proven patterns (microservices, event-driven)

4. **Future-Proof:**
   - Reduces technical debt (20% improvement)
   - Easier to hire (modern but not bleeding edge)
   - Positions for growth (can add more services later)

**When to Consider Alternatives:**

- **Choose Option A if:** Timeline is critical (<6 weeks), budget is very tight (<$30K)
- **Choose Option C if:** Planning for 100K+ users, have 6+ months, budget >$120K

Confidence Scoring:

  • High (80-100%): Clear constraints, obvious best choice
  • Medium (60-79%): Trade-offs close, depends on priorities
  • Low (<60%): Need more information, similar options

Step 5: Create Comparison Document

Action: Generate comprehensive comparison document with all options, trade-offs, and recommendation.

Document Structure:

# Architecture Options Comparison: [Project Name]

**Date:** [YYYY-MM-DD]
**Prepared For:** [User/Stakeholder]
**Current State:** [Brief summary of existing architecture]
**New Requirements:** [What's being added/changed]

---

## Executive Summary

**Recommendation:** Option B - Moderate Refactor
**Confidence:** 85% (High)

**Why:** Balanced approach that meets the requirements, fits timeline/budget, and positions for future growth without over-engineering.

**Quick Comparison:**

| Factor | Option A | Option B ✅ | Option C |
|--------|----------|------------|----------|
| **Timeline** | 3-4 weeks | 2-3 months | 4-6 months |
| **Cost** | $15K-$25K | $40K-$60K | $120K-$180K |
| **Risk** | Low (18) | Medium (43) | High (66) |
| **Scale** | ~5K users | ~25K users | ~100K+ users |
| **Tech Debt** | +10% | -20% | -90% |

---

## Option A: Minimal Changes

[Detailed description from Step 2]

**Architecture Diagram:**
[ASCII or reference to diagram]

**Technology Stack:**
- [List with justifications]

**Implementation Plan:**
1. [High-level steps]
2. ...

**Pros & Cons:**
✅ [Pros]
❌ [Cons]

**Trade-offs Analysis:**
[Cost, timeline, risk, performance, maintainability details]

---

## Option B: Moderate Refactor ✅ RECOMMENDED

[Detailed description from Step 2]

[Same sections as Option A]

**Why This is Recommended:**
[Recommendation justification from Step 4]

---

## Option C: Full Modernization

[Detailed description from Step 2]

[Same sections as Option A]

---

## Side-by-Side Comparison

### Cost Comparison
[Detailed cost breakdown table]

### Timeline Comparison
[Gantt chart or timeline visualization]

### Risk Comparison
[Risk matrix or scoring table]

### Performance Comparison
[Performance metrics table]

### Maintainability Comparison
[Technical debt and code quality comparison]

---

## Recommendation Details

### Primary Recommendation: Option B

[Full justification from Step 4]

### Alternative Scenarios

**If timeline is critical (<6 weeks):**
→ Choose Option A, plan for Option B later

**If budget is generous (>$120K):**
→ Consider Option C for long-term investment

**If team is risk-averse:**
→ Start with Option A, evaluate results, then consider Option B

---

## Next Steps

### If You Choose Option A (Minimal):
1. [Implementation roadmap]
2. [Key decisions needed]
3. [Timeline with milestones]

### If You Choose Option B (Moderate) ✅:
1. **Week 1-2:** Architecture design finalization
2. **Week 3-4:** Chat microservice development
3. **Week 5-6:** API gateway setup + integration
4. **Week 7-8:** Frontend integration + testing
5. **Week 9-10:** Migration + stabilization

**Key Decisions Needed:**
- Message bus choice (RabbitMQ vs. Kafka vs. AWS SQS)
- API gateway (Kong vs. Express Gateway vs. AWS API Gateway)
- MongoDB hosting (self-managed vs. MongoDB Atlas)

**Success Criteria:**
- Chat supports 10K concurrent users
- p95 latency <100ms
- Zero downtime migration
- No data loss during migration

### If You Choose Option C (Full):
1. [Implementation roadmap]
2. [Key decisions needed]
3. [Timeline with milestones]

---

## Appendices

### Appendix A: Assumptions
- [List all assumptions made]

### Appendix B: Technology Comparison
- [Detailed tech stack comparison]

### Appendix C: Migration Strategy
- [For Option B and C, detailed migration approach]

### Appendix D: Risk Mitigation
- [For each identified risk, mitigation strategies]

---

**Prepared by:** Winston (Architecture Subagent)
**Review Status:** Ready for Stakeholder Review
**Next Action:** Decision on preferred option

File Location: docs/architecture-comparison-[timestamp].md


Reference Files

  • references/requirement-analysis.md - How to parse and analyze requirements
  • references/option-generation-patterns.md - Strategies for creating options
  • references/cost-estimation.md - How to estimate costs accurately
  • references/risk-assessment-framework.md - Risk scoring methodology
  • references/trade-offs-analysis.md - Comprehensive trade-offs evaluation

When to Escalate

Escalate to user when:

  • Requirements are vague or contradictory
  • Constraints are unrealistic (timeline too short for scope)
  • All options have critical risks
  • User priorities conflict (e.g., "fastest AND highest quality")

Escalate to architects when:

  • Complex architecture patterns needed
  • Novel technology choices required
  • Compliance/regulatory requirements unclear
  • Performance requirements extremely stringent

Success Criteria

A comparison is successful when:

Three viable options generated:

  • Each option is realistic and implementable
  • Clear differentiation between options
  • All options address core requirements

Comprehensive trade-offs:

  • All key dimensions analyzed (cost, timeline, risk, etc.)
  • Honest assessment (no "perfect" option)
  • Evidence-based estimates

Clear recommendation:

  • Based on user constraints and priorities
  • Well-justified with reasoning
  • Confidence level stated

Actionable next steps:

  • Implementation roadmap for each option
  • Key decisions identified
  • Success criteria defined

Part of BMAD Enhanced Planning Suite