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本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
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
$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. 下の青いボタンを押して
compare-architectures.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
compare-architecturesフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
アーキテクチャ比較スキル
目的
システム刷新または設計について、ユーザーが情報に基づいた意思決定を行えるよう、包括的なトレードオフ分析とともに、3つの異なるアーキテクチャオプションを生成します。各オプションは、詳細なコスト、タイムライン、リスク、および品質分析とともに、異なる投資レベル(最小限、中程度、最大限)を表します。
コア原則:
- 3つの実行可能なオプションを提示する(完璧なソリューションは1つではない)
- 正直なトレードオフ分析(文脈なしに「最良」のオプションはない)
- 証拠に基づいた見積もり(コスト、タイムライン、リスク)
- 正当な理由を伴う明確な推奨事項
- 選択したオプションに対する実行可能な次のステップ
前提条件
- 現在のシステムの理解(ブラウンフィールドの場合)
- 明確な新しい要件または目標
- 既知のユーザー制約(タイムライン、予算、チーム)
- 出力ストレージ用の workspace/ ディレクトリが存在すること
ワークフロー
ステップ 1: 現在の状態と要件の分析
アクション: 意味のあるオプションを作成するために、現在のアーキテクチャと新しい要件を理解します。
主要な活動:
-
現在のアーキテクチャのロード(ブラウンフィールドの場合)
# current_architecture パスが提供されている場合 python .claude/skills/bmad-commands/scripts/read_file.py \ --path {current_architecture} \ --output json # 抽出: # - 現在のテクノロジースタック # - アーキテクチャパターン # - 既知の制限/問題点 # - 本番環境対応度スコア(analyze-architecture からの場合)現在のアーキテクチャがテキストによる説明である場合は、以下を解析します。
- テクノロジースタック(言語、フレームワーク、データベース)
- アーキテクチャタイプ(モノリス、マイクロサービスなど)
- スケール指標(ユーザー数、データ量、トラフィック)
- 言及されている問題点
-
新しい要件の解析
new_requirementsから抽出:- 機能的な変更: 新しい機能、能力、統合
- 非機能的な変更: パフォーマンス、スケーラビリティ、セキュリティのニーズ
- ビジネス目標: これらの変更が重要な理由、期待される成果
- 成功基準: 成功を測定する方法
解析の例:
入力: "リアルタイムチャットを追加、10K 同時ユーザーをサポート、モバイルアプリが必要" 解析結果: - 機能的: リアルタイムチャット機能、モバイルサポート - 非機能的: 10K 同時ユーザーへのスケール (パフォーマンス要件) - 技術的な影響: WebSocket/SSE、モバイルフレームワークが必要 -
制約の特定
constraintsパラメータから:- タイムライン: いつまでに必要か? (週、月、年)
- 予算: コスト感度 (低い、中程度、高い)
- チーム規模: 利用可能な開発者の数
- チームの専門知識: 現在のスキルセット、新しい技術を学ぶ意欲
- リスク許容度: 保守的 (低リスク) vs. 積極的 (イノベーション)
提供されていない場合のデフォルトの仮定:
- タイムライン: 中程度 (3-6 ヶ月)
- 予算: 中程度
- チーム: 小規模 (2-5 人の開発者)
- 専門知識: 中程度 (学ぶ意欲がある)
- リスク許容度: 中程度
-
プロジェクトタイプの検出 (提供されていない場合)
現在のアーキテクチャと要件に基づいて:
- フロントエンド: 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:
-
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
-
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 -
Identify Constraints
From
constraintsparameter:- 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
-
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 requirementsreferences/option-generation-patterns.md- Strategies for creating optionsreferences/cost-estimation.md- How to estimate costs accuratelyreferences/risk-assessment-framework.md- Risk scoring methodologyreferences/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