Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AI活用時代のUML再評価/UML collaborate with AI

AI活用時代のUML再評価/UML collaborate with AI

2024/11/30
TeckBoost LT大会発表資料

岡本卓也

November 29, 2024
Tweet

More Decks by 岡本卓也

Other Decks in Technology

Transcript

  1. © 2024 ESM, Inc. Tech Boost LT大会 AI活用時代のUML再評価 1 2024年11月30日

    永和システムマネジメント Agile Studio 岡本 卓也
  2. © 2024 ESM, Inc. 自己紹介 • 岡本 卓也 • EM@AgileStudio

    • スクラムコーチ兼開発者 ◦ ガチWF :15 年 ◦ 過渡期 :5年 ◦ Agile :5年 • アジャイル開発導入支援 WFからの移行支援 • X:@haraguro3 好きなものはアジャイルとモデリングとトムデマルコ。 • note:https://note.com/haraguro3 • mail:[email protected] 2
  3. © 2024 ESM, Inc. マイブーム AIに仕事を手伝ってもらう • 調査 • 設計

    • コーディング • レビュー • テスト • デバッグ • 不具合対応 • 情報整理 • アジェンダ作成 • スライド作成 3
  4. © 2024 ESM, Inc. はじめに 背景 • UML(Unified Modeling Language)はかつて開発設計の中心だったが

    時代とともにその役割が薄れた。 • その原因には「コード自動生成の失敗」や「利用目的の曖昧さ」が挙げられる。 新たな視点 • 近年、AI技術が急速に進化し、UMLの再評価が可能になった。 AIがUMLを「読む」「書く」能力を持ち、これをどう活用できるか? 5
  5. © 2024 ESM, Inc. UMLの過去と現在 かつてのUMLの目的 • 人間同士の設計コミュニケーションのためのツール。 • 自動コード生成への挑戦(例:MDA

    - Model-Driven Architecture)も 試みられたが、大規模な失敗に終わった。 現在の状況 • 利用頻度は減少し、特定の開発分野や学術的な場で使われる程度に。 • UMLはオワコン。 6
  6. © 2024 ESM, Inc. AIによるUMLの新しい可能性 AIがUMLを読み書きできる時代 • AIモデル(例:ChatGPT、GPT-4など)は、UMLのモデルを解析し、 それに基づいてコードや設計文書を生成可能。 •

    人間が手書きしたUMLを画像として提供しても認識可能なマルチモーダル能力。 厳密性を提供するツール • MermaidやPlantUMLのような記述形式なら、AIは曖昧さなくモデルを理解し、 意図を正確に再現できる。 7
  7. © 2024 ESM, Inc. AIと協業する観点でUMLを再評価 人間 vs. AI:UMLの利用目的が変わる • これまでは「人間同士」のコミュニケーション手段として利用されていた。

    • これからは「AIが理解しやすい設計モデル」としての価値が出てくる。 実際の利用シナリオ • UMLを設計ツールとして使い、AIにコード生成やデバッグ支援を依頼。 8
  8. © 2024 ESM, Inc. 実験結果(その2) • 自然言語からほぼ完璧に意図を理解することができる • 入力にない情報も文脈を汲み取って補完してくれる •

    PlantUMLによる出力が可能 • プログラム言語による出力が可能(コードの自動生成が実用レベル) 32
  9. © 2024 ESM, Inc. 完全に実用レベル 34 人間 設計 実装 思考

    自然言語 モデル ソースコード 生成 生成 解析 説明
  10. © 2024 ESM, Inc. AIと協業する観点でUMLを再評価 AIの利用シナリオ • AIを設計アシスタントとして使い、レビューとフィードバックを依頼。 • AIをドキュメントライターとして使い、設計ドキュメント作成を依頼。

    • AIを高級コンパイラとして使い、コード生成を依頼。 • AIをコードレビュアーとして使い、レビューとフィードバックを依頼。 • AIをデバッグ要員として使い、エラーの調査と修正を依頼。 UMLの価値 • 設計/実装のための中間言語として用いることで、高精度なAI支援を受ける • プロジェクト/プロダクトの文脈を与えることで、高精度なAI支援を受ける 35
  11. © 2024 ESM, Inc. AIがやっている仕事 • 利用する技術やライブラリの調査 • 実験用のサンプルコード生成 •

    アーキテクチャのレビュー • プロダクトコードの生成(80点くらい) • テストコードの生成(90点くらい) • コードレビュー 44
  12. © 2024 ESM, Inc. AIと働いてみて Good • 開発チームにシニアエンジニアが加わった感じ • Googleによる検索を完全に置き換えた

    • 思いつき→調査→実装して実験、のサイクルが爆速になる • 結果として、エンジニアとしての学習速度が爆上がりする Note • AIはエンジニアの力を0→1ではなく、1→10とか10→100にしてくれる • 地力の強いエンジニアほどAIのメリットを多く受けられる • AIの使い方は明瞭期、しかし今トライしないと確実に取り残される 45