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
10
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
32
スクラムチームだけどエクセルで要件定義書を書くことにしました / Requirements-Specification-Document-in-Scrum
okamototakuyasr2
1
1.3k
合宿はいいぞ / Training camp is so good.
okamototakuyasr2
0
600
幸運を科学する ~アジャイルチームの成功を再現する方法~ / How to reproduce nice team at ESM webiner.
okamototakuyasr2
0
41
幸運を科学する ~アジャイルチームの成功を再現する方法~
okamototakuyasr2
0
1.4k
アジャイルと設計 / Design in Agile Development
okamototakuyasr2
0
39
なぜアジャイルをやるのですか
okamototakuyasr2
0
150
コミュニティと人の縁〜まずは楽しんで、そしてその先にあるもの〜
okamototakuyasr2
0
440
アジャイル開発の中の設計
okamototakuyasr2
0
820
Other Decks in Technology
See All in Technology
OpenAIの蒸留機能(Model Distillation)を使用して運用中のLLMのコストを削減する取り組み
pharma_x_tech
3
410
tokyo_re_Growth2024_yoshi
yoshi22
0
200
権威ドキュメントで振り返る2024 #年忘れセキュリティ2024
hirotomotaguchi
2
670
PHPからGoへのマイグレーション for DMMアフィリエイト
yabakokobayashi
1
140
リクルートのデータ基盤 Crois 年3倍成長!1日40,000コンテナの実行を支える AWS 活用とプラットフォームエンジニアリング
recruitengineers
PRO
2
320
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
230
AWS re:Invent 2024 ふりかえり
kongmingstrap
0
110
KubeCon NA 2024 Recap: Managing and Distributing AI Models Using OCI Standards and Harbor / Kubernetes Meetup Tokyo #68
pfn
PRO
0
220
KubeCon NA 2024 Recap / Running WebAssembly (Wasm) Workloads Side-by-Side with Container Workloads
z63d
1
220
Kubernetes環境のオブザーバビリティの次の一歩をOpenTelemetryで実現すると何がどうなるの? - CloudNative Days Winter 2024
katzchang
0
130
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
160
新機能Amazon GuardDuty Extended Threat Detectionはネ申って話
cmusudakeisuke
0
470
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Code Review Best Practice
trishagee
65
17k
Writing Fast Ruby
sferik
628
61k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
Six Lessons from altMBA
skipperchong
27
3.5k
A designer walks into a library…
pauljervisheath
204
24k
The Pragmatic Product Professional
lauravandoore
32
6.3k
4 Signs Your Business is Dying
shpigford
181
21k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
Building Adaptive Systems
keathley
38
2.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
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