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
170
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
68
スクラムチームだけどエクセルで要件定義書を書くことにしました / Requirements-Specification-Document-in-Scrum
okamototakuyasr2
2
2k
合宿はいいぞ / Training camp is so good.
okamototakuyasr2
0
760
幸運を科学する ~アジャイルチームの成功を再現する方法~ / How to reproduce nice team at ESM webiner.
okamototakuyasr2
0
72
幸運を科学する ~アジャイルチームの成功を再現する方法~
okamototakuyasr2
0
1.7k
アジャイルと設計 / Design in Agile Development
okamototakuyasr2
0
56
なぜアジャイルをやるのですか
okamototakuyasr2
0
200
コミュニティと人の縁〜まずは楽しんで、そしてその先にあるもの〜
okamototakuyasr2
0
500
アジャイル開発の中の設計
okamototakuyasr2
0
1k
Other Decks in Technology
See All in Technology
Node-REDのFunctionノードでMCPサーバーの実装を試してみた / Node-RED × MCP 勉強会 vol.1
you
PRO
0
130
CursorによるPMO業務の代替 / Automating PMO Tasks with Cursor
motoyoshi_kakaku
2
800
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
1.3k
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
220
AWS テクニカルサポートとエンドカスタマーの中間地点から見えるより良いサポートの活用方法
kazzpapa3
2
610
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
370
Should Our Project Join the CNCF? (Japanese Recap)
whywaita
PRO
0
300
「Chatwork」の認証基盤の移行とログ活用によるプロダクト改善
kubell_hr
1
240
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
5
4.6k
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
220
KubeCon + CloudNativeCon Japan 2025 Recap
ren510dev
1
300
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
1.3k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Visualization
eitanlees
146
16k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Building an army of robots
kneath
306
45k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
800
Building Applications with DynamoDB
mza
95
6.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
How to train your dragon (web standard)
notwaldorf
94
6.1k
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