update-oo-component-documentation について
このスキルは、現在のソースコードと照合して既存のOOコンポーネント文書を更新する開発者や保守担当者向けです。文書構成を保ちながら、アーキテクチャ、インターフェース、品質属性、言語別の確認項目を示します。
主な機能
- 01コンポーネントコードと既存文書の確認
- 02アーキテクチャとAPIの変更特定
- 03インターフェースと使用例の更新
- 04品質属性と依存関係の再確認
- 05文書構成と履歴の維持
活用シーン
- 01コンポーネント文書を現行コードに整合
- 02APIや依存関係の変更を記録
- 03アーキテクチャ図と設計パターンの更新
- 04セキュリティと信頼性の記述を確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ github/ awesome-copilot --skill update-oo-component-documentationインストール後、Claude Code で/update-oo-component-documentationを入力して読み込まれたか確認します。
詳細
標準 OO コンポーネントのドキュメントを更新する
対応するコンポーネントコードを分析し、既存のドキュメントファイル ${file} を更新してください。
既存ドキュメントのフロントマターにある component_path フィールドからコンポーネントのパスを抽出するか、ドキュメントの内容から推定してください。現在のコンポーネント実装を分析し、それに応じてドキュメントを更新してください。
ドキュメント標準:
- DOC-001:C4 モデルのドキュメントレベル(コンテキスト、コンテナー、コンポーネント、コード)に従います
- DOC-002:Arc42 ソフトウェアアーキテクチャドキュメントテンプレートに準拠します
- DOC-003:IEEE 1016 ソフトウェア設計記述標準に準拠します
- DOC-004:アジャイルドキュメントの原則(価値をもたらす必要最小限のドキュメント)に従います
- DOC-005:主な対象読者を開発者と保守担当者とします
分析手順:
- ANA-001:既存のドキュメントを読み、コンポーネントのコンテキストと構成を把握します
- ANA-002:フロントマターまたはコンテンツの分析からコンポーネントのパスを特定します
- ANA-003:現在のソースコードファイルを調べ、クラス構造と継承を確認します
- ANA-004:既存のドキュメントと現在の実装を比較します
- ANA-005:デザインパターンとアーキテクチャの変更を特定します
- ANA-006:公開 API、インターフェース、依存関係を更新します
- ANA-007:新規または変更された生成・構造・振る舞いに関するパターンを確認します
- ANA-008:メソッドのパラメーター、戻り値、例外を更新します
- ANA-009:パフォーマンス、セキュリティ、信頼性、保守性を再評価します
- ANA-010:統合パターンとデータフローを更新します
言語固有の最適化:
- LNG-001:C#/.NET - async/await、依存性注入、構成、破棄処理
- LNG-002:Java - Spring フレームワーク、アノテーション、例外処理、パッケージング
- LNG-003:TypeScript/JavaScript - モジュール、非同期パターン、型、npm
- LNG-004:Python - パッケージ、仮想環境、型ヒント、テスト
更新方針:
- UPD-001:既存のドキュメント構成と形式を維持します
- UPD-002:
last_updatedフィールドを現在の日付に更新します - UPD-003:フロントマターにバージョン履歴がある場合は維持します
- UPD-004:コンポーネントが大幅に拡張されている場合は、新しいセクションを追加します
- UPD-005:非推奨の機能や破壊的変更を明記します
- UPD-006:現在の API を反映するように例を更新します
- UPD-007:依存関係の一覧とバージョンを更新します
- UPD-008:現在のアーキテクチャを反映するように Mermaid 図を更新します
エラー処理:
- ERR-001:ドキュメントファイルが存在しない場合は、ファイルの場所に関する案内を提示します
- ERR-002:ドキュメント内にコンポーネントのパスが見つからない場合は、確認を求めます
- ERR-003:ソースコードが移動している場合は、更新後のパスを提案します
- ERR-004:アーキテクチャに大幅な変更がある場合は、破壊的変更を強調します
- ERR-005:ソースへのアクセスが不十分な場合は、制限事項を記載します
出力形式:
既存の Markdown ファイルの構成を維持しながら、現在の実装に合うように内容を更新してください。書式、見出し階層、既存の構成上の方針を維持してください。
必須ドキュメント構成:
同じテンプレート構成に従って既存のドキュメントを更新し、すべてのセクションが現在の実装を反映するようにしてください。
---
title: [Component Name] - Technical Documentation
component_path: [Current component path]
version: [Updated version if applicable]
date_created: [Original creation date - preserve]
last_updated: [YYYY-MM-DD - update to current date]
owner: [Preserve existing or update if changed]
tags: [Update tags as needed based on current functionality]
---
# [Component Name] Documentation
[Update introduction to reflect current component purpose and capabilities]
## 1. Component Overview
### Purpose/Responsibility
- OVR-001: Update component's primary responsibility
- OVR-002: Refresh scope (included/excluded functionality)
- OVR-003: Update system context and relationships
## 2. Architecture Section
- ARC-001: Update design patterns used (Repository, Factory, Observer, etc.)
- ARC-002: Refresh internal and external dependencies with current purposes
- ARC-003: Update component interactions and relationships
- ARC-004: Update visual diagrams (UML class, sequence, component)
- ARC-005: Refresh mermaid diagram showing current component structure, relationships, and dependencies
### Component Structure and Dependencies Diagram
Update the mermaid diagram to show current:
- **Component structure** - Current classes, interfaces, and their relationships
- **Internal dependencies** - How components currently interact within the system
- **External dependencies** - Current external libraries, services, databases, APIs
- **Data flow** - Current direction of dependencies and interactions
- **Inheritance/composition** - Current class hierarchies and composition relationships
```mermaid
[Update diagram to reflect current architecture]
3. インターフェースのドキュメント
- INT-001:すべての公開インターフェースと現在の使用パターンを更新します
- INT-002:メソッド/プロパティのリファレンステーブルを現在の API に合わせて更新します
- INT-003:イベント/コールバック/通知の仕組みを更新します
| メソッド/プロパティ | 目的 | パラメーター | 戻り値の型 | 使用上の注意 |
|---|---|---|---|---|
| [現在の API に合わせてテーブルを更新] |
4. 実装の詳細
- IMP-001:主要な実装クラスと現在の責務を更新します
- IMP-002:構成要件と初期化パターンを更新します
- IMP-003:主要なアルゴリズムとビジネスロジックを更新します
- IMP-004:パフォーマンス特性とボトルネックを更新します
5. 使用例
基本的な使い方
// Update basic usage example to current API
高度な使用方法
// Update advanced configuration patterns to current implementation
- USE-001: 基本的な使用例を更新する
- USE-002: 高度な設定パターンを更新する
- USE-003: ベストプラクティスと推奨パターンを更新する
6. 品質属性
- QUA-001: セキュリティ(認証、認可、データ保護)を更新する
- QUA-002: パフォーマンス(特性、スケーラビリティ、リソース使用量)を更新する
- QUA-003: 信頼性(エラー処理、耐障害性、リカバリ)を更新する
- QUA-004: 保守性(標準、テスト、ドキュメント)を更新する
- QUA-005: 拡張性(拡張ポイント、カスタマイズオプション)を更新する
7. 参考情報
- REF-001: 依存関係を現在のバージョンと目的に合わせて更新する
- REF-002: 設定オプションのリファレンスを更新する
- REF-003: テストガイドラインとモックの設定を更新する
- REF-004: トラブルシューティング(一般的な問題、エラーメッセージ)を更新する
- REF-005: 関連ドキュメントのリンクを更新する
- REF-006: この更新の変更履歴と移行に関する注意事項を追加する
コメント
Markdown 対応