# Product Context

**Project**: XLSM2Spec
**Last Updated**: 2025-12-12
**Version**: 1.0

---

## Product Vision

**Vision Statement**: レガシーExcelアプリケーションの知識を失わせない

> Excel VBAで構築された業務システムは多くの企業で稼働していますが、開発者の退職や時間経過により、その仕様やロジックが失われつつあります。XLSM2Specは、これらのレガシー資産から仕様書を自動生成し、業務知識を文書化・保存することを目指します。

**Mission**: VBAコードを解析し、人間が理解できる仕様書に変換する

> AIと静的解析を組み合わせ、ExcelファイルとVBAマクロを読み込み、処理フロー・データ構造・ビジネスロジックを抽出し、構造化された仕様書として出力します。

---

## Product Overview

### What is XLSM2Spec?

XLSM2Specは、ExcelのxlsファイルとVBAマクロを解析し、仕様書を自動生成するCLIツールです。

レガシーシステムの保守・移行プロジェクトにおいて、既存のExcelマクロの動作を理解することは大きな課題です。ドキュメントが存在しない、または古いケースが多く、コードを一行ずつ読み解く必要があります。

XLSM2Specは、VBAコードの静的解析とAIによる意味理解を組み合わせ、以下を自動で抽出・文書化します：
- モジュール・プロシージャの一覧と構造
- 各プロシージャの処理フロー
- セル参照とデータフロー
- 条件分岐とビジネスロジック
- 外部参照（ファイル、API、DB接続）

### Problem Statement

**Problem**: Excel VBAのレガシーシステムはドキュメントがなく、理解・保守が困難

> 多くの企業では、Excel VBAで構築された重要な業務システムが稼働しています。しかし：
> - 開発者が退職・異動し、知識が失われている
> - ドキュメントが存在しないか、実装と乖離している
> - コードが複雑で、新しい開発者の理解に時間がかかる
> - モダンシステムへの移行時に仕様が不明確

### Solution

**Solution**: AI駆動の静的解析による仕様書自動生成

> XLSM2Specは：
> 1. xls/xlsmファイルを読み込み、VBAコードを抽出
> 2. 静的解析によりコード構造を解析
> 3. AIによりビジネスロジックの意味を理解
> 4. 構造化されたMarkdown仕様書として出力
> 
> これにより、数時間〜数日かかる手動解析を、数分で完了できます。

---

## Target Users

### Primary Users

#### User Persona 1: システムエンジニア（SE）

**Demographics**:

- **Role**: 業務システム開発・保守担当
- **Organization Size**: 中〜大企業
- **Technical Level**: 中級〜上級

**Goals**:

- レガシーExcelマクロの動作を迅速に理解したい
- システム移行のための仕様書を作成したい
- 既存システムのドキュメントを整備したい

**Pain Points**:

- VBAコードが複雑で読み解くのに時間がかかる
- 元の開発者がいないため質問できない
- ドキュメントがないか古い

**Use Cases**:

- レガシーExcelシステムの調査・分析
- システム移行プロジェクトの事前調査
- 保守引き継ぎ資料の作成

---

#### User Persona 2: ITコンサルタント

**Demographics**:

- **Role**: DX推進・システム刷新コンサルタント
- **Organization Size**: コンサルティングファーム
- **Technical Level**: 中級

**Goals**:

- クライアントのレガシー資産を迅速に評価したい
- 移行計画の工数見積もりに必要な情報を得たい
- 提案資料に使える仕様概要を作成したい

**Pain Points**:

- 短期間で多数のExcelファイルを評価する必要がある
- クライアントもシステムの詳細を把握していない
- 手動分析では工数がかかりすぎる

**Use Cases**:

- クライアント資産の初期評価
- DX提案の事前調査
- 移行工数の見積もり

---

### Secondary Users

#### 業務担当者・エンドユーザー

- Excelマクロを日常的に使用しているが、内部動作を把握したい
- 異動・退職する開発者から知識を引き継ぎたい

---

## Key Features

### 1. Excel/VBA読み込み（P0: MVP必須）

- xls, xlsx, xlsm形式のサポート
- 複数シートの解析
- VBAプロジェクトの抽出
- パスワード保護されたVBAプロジェクトの警告

### 2. 静的コード解析（P0: MVP必須）

- モジュール・プロシージャ構造の解析
- 変数・定数の追跡
- セル参照の特定
- 制御フロー解析（If/For/Do/Select Case）
- 関数呼び出しグラフ

### 3. AI仕様生成（P1: 高優先度）

- 処理目的の推論
- ビジネスロジックの説明
- 日本語での仕様記述
- コメントからのコンテキスト抽出

### 4. 仕様書出力（P0: MVP必須）

- Markdown形式での出力
- プロシージャごとの詳細説明
- モジュール一覧と依存関係
- 処理フロー図（Mermaid形式）

### 5. バッチ処理（P1: 高優先度）

- フォルダ内の複数ファイル処理
- 統合レポート生成

---

## Success Metrics

| Metric | Target | Description |
|--------|--------|-------------|
| 解析精度 | 90%+ | VBAコードの正確な構造解析 |
| 処理時間 | <5分 | 標準的なExcelファイル（〜1000行VBA） |
| ユーザー満足度 | 4.0/5.0 | 生成仕様書の有用性評価 |
| 工数削減 | 80%+ | 手動分析と比較した工数削減率 |

---

## Non-Goals (Out of Scope)

- VBAコードの自動修正・リファクタリング
- Excelファイルの実行・シミュレーション
- 他言語への自動変換（Python、C#等）
- リアルタイムExcel監視
- Excel 365 / Google Sheets対応

---

## Competitive Analysis

| Tool | Strengths | Weaknesses | Our Differentiation |
|------|-----------|------------|---------------------|
| 手動分析 | 精度が高い | 時間がかかる | 自動化で工数削減 |
| VBA IDE | コード表示・デバッグ | 仕様書なし | 仕様書自動生成 |
| ドキュメントツール | 汎用的 | VBA非対応 | VBA特化 |
| Code Documenters | 汎用コード対応 | VBA対応弱い | VBA特化・日本語対応 |

---

## Roadmap

### Phase 1: MVP (v0.1) - 1ヶ月

- [x] プロジェクト初期化
- [ ] xls/xlsm読み込みライブラリ
- [ ] VBAコード抽出
- [ ] 基本的な静的解析（モジュール・プロシージャ）
- [ ] Markdown仕様書出力
- [ ] CLI インターフェース

### Phase 2: Enhanced Analysis (v0.2) - 1ヶ月

- [ ] 複雑な制御フロー解析
- [ ] セル参照トレース
- [ ] 関数呼び出しグラフ
- [ ] 依存関係図（Mermaid）

### Phase 3: AI Integration (v0.3) - 1ヶ月

- [ ] AI による仕様説明生成
- [ ] ビジネスロジック推論
- [ ] カスタム出力テンプレート

### Phase 4: Enterprise (v1.0) - 2ヶ月

- [ ] バッチ処理（複数ファイル）
- [ ] 統合レポート
- [ ] Web UI（オプション）
- [ ] パフォーマンス最適化

---

## Technical Constraints

- Excelファイルはxls（BIFF8）およびxlsm（OOXML）形式
- VBAプロジェクトはパスワード保護されていない前提（保護時は警告）
- CLIツールとしてクロスプラットフォーム対応（Windows/macOS/Linux）
- オフライン動作可能（AIは外部API利用時のみ）

---

**Last Updated**: 2025-12-12
**Maintained By**: MUSUBI SDD Workflow
