Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AI活用時代のUML再評価/UML collaborate with AI
Search
岡本卓也
November 29, 2024
Technology
0
110
AI活用時代のUML再評価/UML collaborate with AI
2024/11/30
TeckBoost LT大会発表資料
岡本卓也
November 29, 2024
Tweet
Share
More Decks by 岡本卓也
See All by 岡本卓也
私が好きなUMLダイアグラム / The UML Diagrams I Love.
okamototakuyasr2
0
59
スクラムチームだけどエクセルで要件定義書を書くことにしました / Requirements-Specification-Document-in-Scrum
okamototakuyasr2
2
1.7k
合宿はいいぞ / Training camp is so good.
okamototakuyasr2
0
710
幸運を科学する ~アジャイルチームの成功を再現する方法~ / How to reproduce nice team at ESM webiner.
okamototakuyasr2
0
64
幸運を科学する ~アジャイルチームの成功を再現する方法~
okamototakuyasr2
0
1.6k
アジャイルと設計 / Design in Agile Development
okamototakuyasr2
0
49
なぜアジャイルをやるのですか
okamototakuyasr2
0
190
コミュニティと人の縁〜まずは楽しんで、そしてその先にあるもの〜
okamototakuyasr2
0
480
アジャイル開発の中の設計
okamototakuyasr2
0
950
Other Decks in Technology
See All in Technology
AWSLambdaMCPServerを使ってツールとMCPサーバを分離する
tkikuchi
1
3k
Cursor AgentによるパーソナルAIアシスタント育成入門―業務のプロンプト化・MCPの活用
os1ma
13
4.6k
LiteXとオレオレCPUで作る自作SoC奮闘記
msyksphinz
0
590
Would you THINK such a demonstration interesting ?
shumpei3
1
220
MCPを活用した検索システムの作り方/How to implement search systems with MCP #catalks
quiver
11
6.4k
AWS全冠芸人が見た世界 ~資格取得より大切なこと~
masakiokuda
5
5.9k
はてなの開発20年史と DevOpsの歩み / DevOpsDays Tokyo 2025 Keynote
daiksy
6
1.5k
Webアプリを Lambdaで動かすまでに考えること / How to implement monolithic Lambda Web Application
_kensh
7
1.3k
Amazon CloudWatch を使って NW 監視を行うには
o11yfes2023
0
150
Road to Go Gem #rubykaigi
sue445
0
390
クォータ監視、AWS Organizations環境でも楽勝です✌️
iwamot
PRO
1
290
AIコーディングの最前線 〜活用のコツと課題〜
pharma_x_tech
1
870
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
90
6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.2k
Six Lessons from altMBA
skipperchong
27
3.7k
Building Flexible Design Systems
yeseniaperezcruz
329
38k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
660
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
For a Future-Friendly Web
brad_frost
176
9.7k
YesSQL, Process and Tooling at Scale
rocio
172
14k
GitHub's CSS Performance
jonrohan
1030
460k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Visualization
eitanlees
146
16k
Transcript
© 2024 ESM, Inc. Tech Boost LT大会 AI活用時代のUML再評価 1 2024年11月30日
永和システムマネジメント Agile Studio 岡本 卓也
© 2024 ESM, Inc. 自己紹介 • 岡本 卓也 • EM@AgileStudio
• スクラムコーチ兼開発者 ◦ ガチWF :15 年 ◦ 過渡期 :5年 ◦ Agile :5年 • アジャイル開発導入支援 WFからの移行支援 • X:@haraguro3 好きなものはアジャイルとモデリングとトムデマルコ。 • note:https://note.com/haraguro3 • mail:
[email protected]
2
© 2024 ESM, Inc. マイブーム AIに仕事を手伝ってもらう • 調査 • 設計
• コーディング • レビュー • テスト • デバッグ • 不具合対応 • 情報整理 • アジェンダ作成 • スライド作成 3
© 2024 ESM, Inc. 今日のお話 4
© 2024 ESM, Inc. はじめに 背景 • UML(Unified Modeling Language)はかつて開発設計の中心だったが
時代とともにその役割が薄れた。 • その原因には「コード自動生成の失敗」や「利用目的の曖昧さ」が挙げられる。 新たな視点 • 近年、AI技術が急速に進化し、UMLの再評価が可能になった。 AIがUMLを「読む」「書く」能力を持ち、これをどう活用できるか? 5
© 2024 ESM, Inc. UMLの過去と現在 かつてのUMLの目的 • 人間同士の設計コミュニケーションのためのツール。 • 自動コード生成への挑戦(例:MDA
- Model-Driven Architecture)も 試みられたが、大規模な失敗に終わった。 現在の状況 • 利用頻度は減少し、特定の開発分野や学術的な場で使われる程度に。 • UMLはオワコン。 6
© 2024 ESM, Inc. AIによるUMLの新しい可能性 AIがUMLを読み書きできる時代 • AIモデル(例:ChatGPT、GPT-4など)は、UMLのモデルを解析し、 それに基づいてコードや設計文書を生成可能。 •
人間が手書きしたUMLを画像として提供しても認識可能なマルチモーダル能力。 厳密性を提供するツール • MermaidやPlantUMLのような記述形式なら、AIは曖昧さなくモデルを理解し、 意図を正確に再現できる。 7
© 2024 ESM, Inc. AIと協業する観点でUMLを再評価 人間 vs. AI:UMLの利用目的が変わる • これまでは「人間同士」のコミュニケーション手段として利用されていた。
• これからは「AIが理解しやすい設計モデル」としての価値が出てくる。 実際の利用シナリオ • UMLを設計ツールとして使い、AIにコード生成やデバッグ支援を依頼。 8
© 2024 ESM, Inc. 実験してみました 9
© 2024 ESM, Inc. お題 こんなシステムを作るとしたら? • レンタルビデオショップのシステムを設計します。 • このシステムでは、利用者がビデオを借りたり返却したりする操作を管理します。
• ショップのスタッフは、ビデオの在庫を確認したり、新しいビデオを追加したりする ことができます。 10
© 2024 ESM, Inc. クラス図を読んで要件を理解する 11 実験その1
© 2024 ESM, Inc. 人間がクラス図を書いた 12
© 2024 ESM, Inc. この画像を読み込ませてみる 13
© 2024 ESM, Inc. 理解できたこと 14
© 2024 ESM, Inc. 理解できたこと 15
© 2024 ESM, Inc. 理解できたこと 16
© 2024 ESM, Inc. 理解できたこと 17
© 2024 ESM, Inc. 理解できたこと 18
© 2024 ESM, Inc. 理解できたことをクラス図に戻してみる 19
© 2024 ESM, Inc. AIが書いたクラス図 20 オリジナル
© 2024 ESM, Inc. 実験結果(その1) • 画像からほぼ完璧に意図を理解することができる • 入力にない情報も文脈を汲み取って補完してくれる •
PlantUMLによる出力が可能 21
© 2024 ESM, Inc. 要件を理解してクラス図を書く 22 実験その2
© 2024 ESM, Inc. 要件を提示する 23
© 2024 ESM, Inc. AIが書いたクラス図 24 オリジナル
© 2024 ESM, Inc. コードの自動生成にチャレンジ 25
© 2024 ESM, Inc. AIが実装したコード 26
© 2024 ESM, Inc. AIが実装したコード 27
© 2024 ESM, Inc. AIが実装したコード 28
© 2024 ESM, Inc. AIが実装したコード 29
© 2024 ESM, Inc. AIが実装したコード 30
© 2024 ESM, Inc. AIが実装したコード 31
© 2024 ESM, Inc. 実験結果(その2) • 自然言語からほぼ完璧に意図を理解することができる • 入力にない情報も文脈を汲み取って補完してくれる •
PlantUMLによる出力が可能 • プログラム言語による出力が可能(コードの自動生成が実用レベル) 32
© 2024 ESM, Inc. わかったこと 33
© 2024 ESM, Inc. 完全に実用レベル 34 人間 設計 実装 思考
自然言語 モデル ソースコード 生成 生成 解析 説明
© 2024 ESM, Inc. AIと協業する観点でUMLを再評価 AIの利用シナリオ • AIを設計アシスタントとして使い、レビューとフィードバックを依頼。 • AIをドキュメントライターとして使い、設計ドキュメント作成を依頼。
• AIを高級コンパイラとして使い、コード生成を依頼。 • AIをコードレビュアーとして使い、レビューとフィードバックを依頼。 • AIをデバッグ要員として使い、エラーの調査と修正を依頼。 UMLの価値 • 設計/実装のための中間言語として用いることで、高精度なAI支援を受ける • プロジェクト/プロダクトの文脈を与えることで、高精度なAI支援を受ける 35
© 2024 ESM, Inc. でも所詮は、レンタルビデオの 簡単なサンプルでしょ? と思った人 36
© 2024 ESM, Inc. 実開発でもバリバリに使っています 37 実例
© 2024 ESM, Inc. 実装レベルの設計(クラス図) 38
© 2024 ESM, Inc. 39
© 2024 ESM, Inc. 設計レビュー 40
© 2024 ESM, Inc. 41
© 2024 ESM, Inc. 42
© 2024 ESM, Inc. 43
© 2024 ESM, Inc. AIがやっている仕事 • 利用する技術やライブラリの調査 • 実験用のサンプルコード生成 •
アーキテクチャのレビュー • プロダクトコードの生成(80点くらい) • テストコードの生成(90点くらい) • コードレビュー 44
© 2024 ESM, Inc. AIと働いてみて Good • 開発チームにシニアエンジニアが加わった感じ • Googleによる検索を完全に置き換えた
• 思いつき→調査→実装して実験、のサイクルが爆速になる • 結果として、エンジニアとしての学習速度が爆上がりする Note • AIはエンジニアの力を0→1ではなく、1→10とか10→100にしてくれる • 地力の強いエンジニアほどAIのメリットを多く受けられる • AIの使い方は明瞭期、しかし今トライしないと確実に取り残される 45
© 2024 ESM, Inc. おしまい 46