この記事はLITALICO Engineers Advent Calendar 2025 カレンダー4 の 2日目の記事です
はじめに
2025年12月17日、UMLモデリングツールとして長年LITALICOで愛用させていただいているastah Professionalのバージョン11がリリースされました。今回の目玉は何と言ってもAI連携機能の実装です。「モデリングツールとAI」というと、一見すると相性が悪そうに思えますが、実際に触ってみると「これは本当に必要だった機能だ」と感じさせる仕上がりでした。
これまでのワークアラウンド:XMLエクスポート方式
実は、私はこれまでastahのXMLエクスポート機能を使ってモデル情報を出力し、それを生成AI(Copilot)に読み込ませて分析するという方法を使っていました(参考記事)。これはこれで有用でしたが、以下のような課題がありました
- 手作業が多い:モデルを変更するたびにXMLをエクスポート→AIにアップロード→回答を確認、というステップが必要
- コンテキストの断絶:astahとAIツールを行き来するため、作業の流れが途切れる
- 双方向性がない:AIの提案を反映する際も、手動でastahに戻って修正が必要
- XMLの可読性:AIに渡すデータがXML形式なので、構造化されすぎて自然な対話がしづらい
正直なところ、「いつかastahに直接AI機能が組み込まれないかな」と思っていたので、今回のv11のリリースは待望でした。
本記事では、astah 11で追加された3つのAI連携機能について、その特徴と使い所をレビューします。
astah 11で追加された3つのAI機能
astah 11では、以下の3つのAI連携機能が追加されました
- AI Chat Copilot - astah内蔵のAIチャット
- MCP Server - 外部AIツールとの連携
- AI Code Reverse - AIによるコードからのダイアグラム生成
それぞれ見ていきましょう。
1. AI Chat Copilot:ダイアグラム編集中にAIと対話
概要
AI Chat Copilotは、astahのエディタ内に直接組み込まれたチャット機能です。ダイアグラムを編集しながら、AIに質問したり、設計のレビューを依頼したりできます。
特徴
- コンテキストを保持したまま対話できる:astahから離れずに、作成中のモデルについてAIと議論できる
- 自然言語でモデリングをサポート:「このクラス図の設計で抜けている視点はないか?」といった質問が可能
- 設計思考の補助:設計の妥当性確認や、代替案の提示を受けられる
使い所
- クラス図設計時の関連性チェック
- ER図のテーブル設計・正規化レビュー
- ステートマシン図の状態遷移網羅性検証
- DFDのデータフロー最適化提案
- シーケンス図の処理フロー検証
- ユースケース図の網羅性確認
- 設計パターンの適用提案
所感
モデリング作業中に「この設計で本当に良いのか?」と迷う瞬間は誰にでもあります。従来はWebブラウザでChatGPTを開いて質問していたところが、astah内で完結できるようになったのは大きな生産性向上です。
特に、モデルのコンテキストを理解した上でのレビューが受けられる点は、単なるチャットツールの埋め込み以上の価値があります。
XMLエクスポート方式との比較:
以前使っていたXMLエクスポート→AI分析という方法と比べて、以下の点が劇的に改善されました
| 項目 | XMLエクスポート方式(旧) | AI Chat Copilot(新) |
|---|---|---|
| 作業の流れ | astah → XMLエクスポート → ブラウザでAI → astahで修正 | astah内で完結 |
| 即時性 | 数分〜数十分かかる | 数秒でレスポンス |
| 双方向性 | 一方向(AI → 人間) | 対話形式で詳細確認可能 |
| コンテキスト保持 | 毎回XMLを再アップロード | 連続した対話が可能 |
| 使い勝手 | 手間がかかる | シームレス |
特に即時性とコンテキスト保持の改善は大きく、設計中の思考の流れを止めずにAIと対話できるのは、私が長年待ち望んでいた機能でした。
2. MCP Server:外部AIツールとastahをつなぐ
概要
MCP (Model Context Protocol) Serverは、astahのモデル情報を外部のAIツールから利用できるようにする機能です。IDEや他のAIエージェントから、astahのモデルにアクセスできます。
特徴
- 好みのAIツールで作業できる:VS CodeのCopilotやClaude、その他のAIツールから利用可能
- 既存ワークフローへの統合:普段使っているIDE環境を離れずにastahのモデル情報を活用できる
- モデル情報の取得と操作:外部ツールからastahのモデル情報を読み取り、操作を実行できる
使い所
- コード実装とモデルの同期確認
- IDE上でのモデル参照
- AIエージェントによる自動モデル生成・更新
- CI/CDパイプラインへの組み込み
所感
これは開発フローの変革を予感させる機能です。従来、設計フェーズと実装フェーズは明確に分離されていましたが、MCP Serverによって、コーディング中にリアルタイムでモデルを参照・更新できるようになります。
特に、VS Codeなどのエディタから直接astahのモデルにアクセスできるのは、「設計書を見ながらコーディング」という作業を自然にサポートしてくれます。
3. AI Code Reverse:コードから図を自動生成
概要
既存のコードリバース機能をAIで強化し、クラス図に加えてシーケンス図の自動生成が可能になりました。
特徴
- シーケンス図の自動生成:メソッド呼び出しの流れを追ってシーケンス図を作成
- 対応言語:Java、C#、C++に対応(公式ドキュメントで明記)
- 既存システムの可視化:ドキュメントがない既存コードの理解を支援
使い所
- レガシーコードのリバースエンジニアリング
- 複雑な処理フローの可視化
- コードレビュー時の動作確認
- ドキュメント作成の効率化
所感
シーケンス図の自動生成は画期的です。従来、複雑な処理フローを理解するためには、コードを追いながら手動でシーケンス図を描く必要がありましたが、これが自動化されるインパクトは計り知れません。
特に、保守性の低いレガシーコードの解析や、大規模システムの理解においては、この機能がゲームチェンジャーになるでしょう。
その他の改善点
AI機能以外にも、astah 11では以下のような改善が施されています
- Java 25(LTS)の採用:最新の長期サポート版Javaへの対応
- Apple Silicon(ARM64)ネイティブサポート:M1/M2/M3 Macでのパフォーマンス向上
- データフロー図(DFD)のトレーサビリティマップ対応:DFDからも関連モデルを追跡可能に
- 定義ノート表示の改善:属性や操作の定義をまとめて表示可能
macOSユーザーとしては、Apple Siliconネイティブ対応は地味に嬉しいアップデートです。
また、設計フェーズでデータフロー図を良く作成するので、トレーサビリティマップ対応も利便性が向上しました。
AI機能を使う上での注意点
astah 11のAI機能を使う際に、いくつか留意すべき点があります
1. AIの回答の妥当性確認
AI Chat Copilotの提案は必ずしも最適解とは限りません。最終的な設計判断は、開発者自身が行う必要があります。
2. セキュリティとプライバシー
外部AIサービスを利用する場合、モデル情報が外部に送信される可能性があります。機密プロジェクトでの利用には注意が必要です。
3. 対応言語の確認(AI Code Reverse)
AI Code Reverseは現時点でJava、C#、C++への対応が明記されています。PHP、Python、TypeScript等の言語を使用している場合は、事前に動作確認をおすすめします。対応していない言語では、期待した結果が得られない可能性があります。
4. 外部ツールとの連携制約
esa、Notion、Googleスプレッドシート等の外部ツールとの直接連携機能は現時点では提供されていません。これらのツールで管理している情報とastahモデルの整合性は、手動で確保する必要があります。
将来的にMCP Serverを活用したカスタム連携の可能性はありますが、現状では複数ツールをまたぐトレーサビリティの確保には工夫が必要です。
5. 過度な依存の回避
AI支援は便利ですが、モデリングの基礎知識や設計力を疎かにしてはいけません。AIはあくまで補助ツールです。
実際のチーム環境での適用可能性
私のチームでは、astahでER図、ステートマシン図、DFDを作成しています。一方で、シーケンス図はesa、要件定義書はGoogleスプレッドシートで管理しており、開発言語はサーバサイドにPHPを使っています。この環境でastah 11のAI機能がどう活用できるか、検証してみました。
活用できる機能
1. AI Chat CopilotによるER図レビュー
効果が高いと感じた使い方
- テーブル設計時の正規化チェック
- リレーションシップの妥当性確認
- インデックス設計の提案
- 命名規則の一貫性チェック
ER図は業務ロジックの要であり、AI Copilotに「このER図で想定される業務フローに問題はないか?」と聞くことで、見落としていた視点が見つかりました。
2. ステートマシン図の状態遷移検証
特に有用だったのは
- 状態遷移の網羅性チェック(デッドロック、到達不可能な状態の検出)
- エッジケースの洗い出し
- 遷移条件の曖昧さの指摘
ステートマシン図は複雑になりがちですが、AIに「この状態遷移で考慮漏れはないか?」と確認することで、品質が向上しました。
3. DFDのデータフロー分析
DFDは新たにトレーサビリティマップに対応したこともあり、AI Chat Copilotと組み合わせることで
- データストアの適切性確認
- データフローの最適化提案
- 外部エンティティとの連携チェック
が効率的に行えるようになりました。
現時点での制約事項
1. PHPコードのリバースエンジニアリング
AI Code Reverseは、公式ドキュメントでは**Java、C#、C++**への対応が明記されており、PHPは現時点では対応していません。
- サーバサイドのPHPコードから直接クラス図やシーケンス図を生成できない
- Laravel、Symfony等のフレームワークも未対応
また、フレームワークレベルでの対応も限定的です。Javaであっても、Spring Boot等の複雑なフレームワーク固有の構造(DI、AOP等)を完全に理解した図が生成されるかは、実際の検証が必要でしょう。
今後のバージョンアップでPHPやその他の言語、フレームワークへの対応が拡充される可能性はありますが、現時点では対応言語が限定的という点を理解した上で導入判断する必要があります。ただし、MCP Serverを経由して外部AIツール(Claude等)でコード解析を行い、その結果をastahに反映させるという代替手段は検討の余地があります。
2. 外部ツール(esa、Googleスプレッドシート)との連携
現時点では、esaのシーケンス図やGoogleスプレッドシートの要件定義書とastahモデルを直接連携する機能はありません。
- esaで管理しているシーケンス図をastahにインポートできない
- Googleスプレッドシートの要件とastahのモデルを自動同期できない
- 各ツール間で手動による整合性確保が必要
MCP Serverについての補足:
MCP Serverは「外部AIツールからastahにアクセスする」ための仕組みであり、esaやスプレッドシートとastahを直接つなぐ機能ではありません。
ただし、理論的には以下のような間接的な連携は可能かもしれません
- MCP Server経由でAIエージェント(Claude等)がastahモデルにアクセス
- 同じAIエージェントがesa APIやGoogle Sheets APIにもアクセス
- AIが両者の情報を仲介して整合性チェックや同期をサポート
これは公式機能ではなく、カスタム開発が必要になりますが、MCP Serverの登場により、こうした統合の可能性は開かれたと言えます。現時点では、これらのツールをまたいだトレーサビリティの確保は、引き続き人手による管理が中心となるでしょう。
それでも価値がある理由
制約はあるものの、以下の点で導入価値は高いと考えています
- ER図・ステートマシン図・DFDの品質向上:AI Chat Copilotによるレビューで、設計の抜け漏れが大幅に減少
- 設計議論の活性化:AIの提案をたたき台に、チーム内での設計議論が深まる
- ドキュメント保守の負担軽減:自動生成機能により、図の更新作業が効率化
- 将来の統合可能性:MCP ServerとAIエージェントを組み合わせることで、esa/スプレッドシートとの間接的な連携の道が開かれる(カスタム開発が必要)
実践的な活用方法
私のチームでは、以下のようなワークフローで活用しています
- 設計初期段階:AI Chat Copilotと対話しながらER図・ステートマシン図を作成
- レビュー段階:AIに設計の妥当性を確認してもらい、指摘事項をチームで検討
- 実装段階:esa・スプレッドシートの情報を参照しつつ、astahのモデルと手動で整合性確認
- 保守段階:DFDのトレーサビリティマップで影響範囲を追跡
どんな人におすすめか
astah 11のAI機能は、以下のような方に特におすすめです
- ER図やステートマシン図を頻繁に作成する人:AI Chat Copilotによる設計レビューで、見落としを防げます
- レガシーシステムの保守担当者:AI Code Reverse(Java/C#/C++の場合)で既存コードの理解が加速します
- 複数ツールを併用している人:astahでカバーする範囲のモデリング品質を高められます
- チームでの設計共有を重視する人:自動生成された図やAIの提案をベースに議論できます
まとめ:モデリングツールの進化の方向性
astah 11のAI連携機能は、単なる「流行りのAI機能を追加しました」というものではありません。モデリング作業の本質的な課題にアプローチしています
- 設計の孤独さの解消(AI Chat Copilot)
- 設計と実装の分断の解消(MCP Server)
- ドキュメント作成の労力削減(AI Code Reverse)
これらは、長年モデリングツールを使ってきた人なら誰もが感じていた課題でしょう。
個人的な感慨:待望の機能が実装された
私自身、以前からastahのXMLエクスポート機能を使ってモデル情報を外部AIに渡すというワークアラウンドを使っていました。これでもそれなりに有用でしたが、やはり手間がかかり、作業の流れが途切れる問題がありました。
今回のAI Chat Copilotの実装により、「モデリングツールとAIの統合」という、多くのユーザーが求めていたであろう機能がネイティブに実現されました。これは、astahチームがユーザーのペインポイントをしっかり理解している証拠だと思います。
特に、単にAI機能を追加しただけでなく、MCP Serverで拡張性も確保している点が秀逸です。これにより、将来的にさまざまな外部ツールとの統合が可能になる土台が築かれました。
現実的な期待値設定を
ただし、万能ではないという点も理解しておく必要があります
- AI Code ReverseはJava/C#/C++のみ対応(PHP等は現時点では未対応)
- esa、Googleスプレッドシート等の外部ツールとの直接連携は未提供
- 複数ツールをまたぐ統合管理には依然として工夫が必要
それでも、astahでカバーする範囲のモデリング品質は確実に向上します。特にER図、ステートマシン図、DFDを中心に使っているチームにとっては、AI Chat Copilotによる設計レビュー機能だけでも導入価値は十分にあるでしょう。
今後の発展に期待
個人的には、特にMCP Serverの可能性に期待しています。これが普及すれば
- AIエージェントを介してesa/スプレッドシートとの間接的な連携が実現できるかもしれない(カスタム開発が必要)
- 「設計書は古くて参照されない」という問題が解決され、Living Documentationに近づく
- チーム独自のワークフローに最適化されたAI連携が可能になる
astahは既に無料トライアル版が提供されているので、まずは自分のチームの環境で試してみることをおすすめします。対応言語や既存ツールとの相性を確認した上で、導入判断するのが良いでしょう。
参考リンク
本記事は、2025年12月25日時点の情報に基づいています。