# 機能設計書 257-Update-Dbatools

## 概要

本ドキュメントは、dbatools PowerShellモジュールにおける`Update-Dbatools`コマンドレットの機能設計書です。dbatoolsモジュールを最新バージョンに更新します（非推奨）。

### 本機能の処理概要

`Update-Dbatools`コマンドは、現在インストールされているdbatoolsモジュールを削除し、最新バージョンをPowerShell GalleryまたはGitHubからインストールするコマンドでしたが、**現在は非推奨**となっており、PowerShell標準の`Install-Module`および`Update-Module`コマンドの使用が推奨されています。

**業務上の目的・背景**：dbatoolsモジュールは頻繁に更新され、バグ修正や新機能が追加されます。以前は専用の更新コマンドが必要でしたが、PowerShellのモジュール管理機能の改善により、標準コマンドで十分な管理が可能になりました。本機能は下位互換性のために残されていますが、非推奨の警告を表示して終了するのみとなっています。

**機能の利用シーン**：
- 本機能は非推奨のため、使用は推奨されません
- 代わりに `Update-Module dbatools` を使用してください

**主要な処理内容**：
1. 非推奨警告メッセージの表示
2. 処理終了（実際の更新は行わない）

**関連システム・外部連携**：なし（非推奨のため処理を実行しない）

**権限による制御**：なし

## 関連画面

| 画面No | 画面名 | 関連種別 | 関連する操作・処理 |
|--------|--------|----------|------------------|
| - | - | - | 本機能はPowerShellコマンドレットであり、関連するGUI画面はありません |

## 機能種別

モジュール管理（非推奨）

## 入力仕様

### 入力パラメータ

| パラメータ名 | 型 | 必須 | 説明 | バリデーション |
|-------------|-----|-----|------|---------------|
| Development | switch | No | GitHubの開発ブランチからインストール | エイリアス: dev, devbranch |
| Cleanup | switch | No | 古いバージョンの削除 | - |
| EnableException | switch | No | 例外を有効にする | - |
| WhatIf | switch | No | 実行内容のプレビュー | SupportsShouldProcess |
| Confirm | switch | No | 実行前確認 | SupportsShouldProcess |

### 入力データソース

本機能は入力を処理せず、非推奨警告を表示して終了します。

## 出力仕様

### 出力データ

本コマンドは出力を生成しません。コンソールに警告メッセージを表示するのみです。

### 出力先

- コンソール（警告メッセージ）

## 処理フロー

### 処理シーケンス

```
1. 関数開始
   └─ Write-Warningで非推奨メッセージ出力
2. 関数終了
```

### フローチャート

```mermaid
flowchart TD
    A[開始] --> B[Write-Warning 非推奨メッセージ]
    B --> C[終了]
```

## ビジネスルール

### 業務ルール

| ルールNo | ルール名 | 内容 | 適用条件 |
|---------|---------|------|---------|
| BR-001 | 非推奨 | 標準のPowerShellコマンド使用を推奨 | 常に |

### 推奨される代替コマンド

```powershell
# 安定版への更新
Update-Module dbatools

# または新規インストール
Install-Module dbatools -Force

# 開発版のインストール（GitHubから）
Install-Module dbatools -AllowPrerelease
```

## データベース操作仕様

本機能はデータベース操作を行いません。

## エラー処理

本機能はエラー処理を行いません（警告表示のみ）。

## トランザクション仕様

本機能はトランザクションを使用しません。

## パフォーマンス要件

即座に完了します。

## セキュリティ考慮事項

本機能は処理を実行しないため、セキュリティ上の考慮は不要です。

## 備考

- 本コマンドは後方互換性のために残されています
- 実際の更新は行われません
- PowerShellモジュールの更新には以下を使用してください：
  - `Update-Module dbatools` - モジュールの更新
  - `Install-Module dbatools -Force` - モジュールの再インストール

---

## コードリーディングガイド

本機能を理解するために参照すべきファイルと、推奨する読み解き順序を以下に示す。

### 推奨読解順序

#### Step 1: 関数定義全体を理解する

| 順序 | ファイル | パス | 読解ポイント |
|-----|---------|------|-------------|
| 1-1 | Update-Dbatools.ps1 | `public/Update-Dbatools.ps1` | 関数全体（61行のみ） |

**主要処理フロー**:
1. **52-59行目**: パラメータ定義（使用されない）
2. **60行目**: 非推奨警告メッセージ出力

**読解のコツ**:
- パラメータは定義されているが、実際には使用されない
- 関数本体は1行のWrite-Warningのみ

### プログラム呼び出し階層図

```
Update-Dbatools
    │
    └─ Write-Warning
           └─ "This command is deprecated..."
```

### データフロー図

```
[入力]                    [処理]                              [出力]

(パラメータは無視) ───▶ Write-Warning ───▶ コンソール警告出力
```

### 関連ファイル一覧

| ファイル | パス | 種別 | 役割 |
|---------|------|------|------|
| Update-Dbatools.ps1 | `public/Update-Dbatools.ps1` | ソース | メイン関数定義（非推奨） |
