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
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) ...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
haru860
December 03, 2025
Programming
390
0
Share
モデル駆動設計をやってみよう ワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
Modeling Forum2025のワークショップの開催報告資料です。
https://umtp-japan.org/event-seminar/mf2025/76609
haru860
December 03, 2025
More Decks by haru860
See All by haru860
匠Method Agentのご紹介 / Introducing Takumi Method Agent
haru860
0
74
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
340
BPStudy#213〜ビジネスアナリシスとDDD(ドメイン駆動設計)パネルディスカッション資料 / BPStudy213-panel
haru860
0
540
見積り、計画の考え方や手法についてビープラウドの場合を紹介します/ introduce-the-concept-and-method-of-estimation-and-planning-in-the-case-of-BeProud
haru860
8
3.6k
U理論で深まる匠Method のモデリングプロセス / the modeling process of the Takumi Method deepened by theory-U
haru860
3
390
匠Methodで価値創造をファシリーテートする〜イノベーション創造プロセスのU理論をベースに
haru860
0
270
BPStudyの200回を中心にIT業界を振り返る。そしてこれから
haru860
4
3.4k
匠MethodとRDRAとICONIXとDDDで実現する一気通貫オブジェクト指向開発
haru860
4
5.7k
私の積読解消法
haru860
0
250
Other Decks in Programming
See All in Programming
Everything Claude Code OSS詳細 — 5層構造の中身と導入方法
targe
0
160
Nuxt Server Components
wattanx
0
240
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
800
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
340
L’IA au service des devs : Anatomie d'un assistant de Code Review
toham
0
200
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
2
150
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
1
300
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.4k
KagglerがMixSeekを触ってみた
morim
0
370
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.3k
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
Coding as Prompting Since 2025
ragingwind
0
710
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Fireside Chat
paigeccino
42
3.9k
Why Our Code Smells
bkeepers
PRO
340
58k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
The Pragmatic Product Professional
lauravandoore
37
7.2k
Chasing Engaging Ingredients in Design
codingconduct
0
160
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
260
Odyssey Design
rkendrick25
PRO
2
560
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
310
Amusing Abliteration
ianozsvald
1
150
Agile that works and the tools we love
rasmusluckow
331
21k
sira's awesome portfolio website redesign presentation
elsirapls
0
210
Transcript
モデル駆動設計をやってみよう ワークショップ開催報告 UMTP モデリングフォーラム 2025
ワークショップ開催報告 アジェンダ • 講師、日時/会場/進行/ワークショップの様子 • ワークショップの内容 • ワークショップアンケート結果 • 開催しての感想
2
ワークショップ開催報告 アジェンダ • 講師、日時/会場/進行/ワークショップの様子 • ワークショップの内容 • ワークショップアンケート • 開催しての所感
3
講師 4
日時/会場/進行 2025年11月17日(月) 13:00-17:00 会場:NEC様 本社 • ワークショップ内容説明 13:00〜13:15 • モデリング
13:15〜16:15 • 増田亨さんレビュー(3組) 16:15〜17:00 5
ワークショップの様子 6 2〜4人のテーブルに分かれてワーク& 議論
ワークショップの様子 7 2〜4人のテーブルに分かれてワーク& 議論
ワークショップ開催報告 アジェンダ • 講師、日時/会場/進行/ワークショップの様子 • ワークショップの内容 • ワークショップアンケート結果 • 開催しての所感
8
9 導入部:モデリング駆動設計とは
10 候補日 佐藤さん 鈴木さん 高橋さん 12月3日 〇 〇 × 12月7日
〇 〇 〇 12月8日 × 〇 〇 12月7日に決定! なぜ? モデリングテーマの説明:日程調整
テーマ(シンプル版) 12月7日に決定するルールを、プログラミング言語で 表現してください ① 判断の元になる情報(日程調整表)を、プログラミン グ言語でどう表現するか? ② 判定結果を、プログラミング言語でどう表現するか? ③ 判定ロジックをどう記述するか?
11
日程の決定ルールを少しずつ複雑に a. 全員参加できる候補日が複数あった場合の決定ルール (例えば、最早)を追加 b. 出欠回答に△(出席可能だができれば避けたい)を追 加し、◦△×を重みづけし参加可能人数の期待値が最 大の候補日に決定するルールを追加 c. 最大の期待値が一定以下の場合は再調整と判定する
ルールを追加 12
ワークショップ開催報告 アジェンダ • 講師、日時/会場/進行/ワークショップの様子 • ワークショップの内容 • ワークショップアンケート結果 • 開催しての所感
13
申込、出席数(アンケート回収数) • 申込者数:26 • 出席者数:23 • アンケート回収数:15 14
ワークショップアンケート 15
ワークショップアンケート 16 経験あり 経験なし
ワークショップアンケート 17 3年以上 1〜3年 1年未満 なし
ワークショップアンケート 18
ワークショップアンケート 19
ワークショップアンケート 20 非常に満足 満足 普通 不満
何を使ってモデリングしたか 21 • Java:10 • Go :5 • UML:5 •
C#:3 • Python:2 • Ruby:2 • Mermeid:2
参加者のコメント要約(プラス) 22 • 最後の増田さんの講評が非常に良かった。 • 他の人のモデリングへの意見や解釈、感覚を知れたのが収穫 • 人間が何となく見て分かる表からモデル、コードに落とし込む作業が予 想以上に大変で勉強になった •
モデル(仕様)をコードで表現するという観点を強く意識する機会となっ た • 集中して取り組む時間になった
参加者のコメント要約(伸びしろ) 23 • 増田さんならどのようなコードになるのかを見てみたかった • 増田さんの講評を受けたかった(講評の時間を長くしてほしい) • コードによるモデリング方法の具体的な説明がなく、モデル駆動設計の解像度が上がらなかった。 • コードのみでドメインのルールがわかるようにというのは全面的に同意するが、モデル駆動では
ないのでは • コードではなくても(例:クラス図)、レビューしてほしかった • チーム分けで得られるものが異なる。同じ境遇の人が多く、同じような設計になってしまった • テーブル以外のメンバーと話す機会がなかった • スタッフのおしゃべりが気になる時があった
ワークショップ開催報告 アジェンダ • 講師、日時/会場/進行/ワークショップの様子 • ワークショップの内容 • ワークショップアンケート結果 • 開催しての所感
24
開催しての感想 25 • モデリングを「頭で理解する」のと「体得」の間には崖がある • モデリングの「体得」のきっかけとしてワークショップは価値がある • モデリングを「体得」する必要があるのか
(DDDの)モデル駆動開発のポイント 26 モデル = コード モデル=コードである
モデル=コード 27
(DDDの)モデル駆動開発のポイント 28 事業、業務を表現する 事業、業務を表現する モデル = コード
モデル=コードにするテクニック(DDD) 29 モデル = コード 事業、業務を エンティティ、値オブジェクト、 ユビキタス言語(同じ言葉) で表現する 事業、業務を表現する
「モデル=コード」では無くなる時 30 手続き型で 処理を記述する 事業、業務を表現する モデル ≠ コード
モデリングを「頭で理解する」のと「体得」の間には崖がある 実践してみると・・・(今回のワークショップでのレビュー指摘事項の例) ・コードが意図を語っていない(処理は書いてある) ・重要概念がクラスではなく、プリミティブ型の変数で表現されている ・コメントで重要概念を説明しているが、コード上では表現されていない やってみると 頭で理解
モデリングのワークショップは、 体得のきっかけとして価値がある 実践 ・ワークショップで実践 ・自分で書いてみる ・実プロジェクトで実装 ・師に習う 頭で理解 体得
生成AIがモデリングをするにしても、 人が体得することは必要 生成AIがモデリング ↓ AIがつくったモデルの良し悪しを判断できない ↓ 知らぬうちに、歪んだ設計がソフトウェアに埋め込まれる(AIで動くものはつくれる) ↓ ソフトウェアの内側から劣化する。 ↓
開発生産性や品質が低下し、事業に悪影響
生成AIがモデリングをするにしても、 人が体得することは必要 生成AIがモデリング ↓ AIがつくったモデルの良し悪しを判断し、最終的に受け入れ判断 ↓ ソフトウェアの内側が、きれいに保たれる ↓ 変更容易性が高まり、開発生産性が上がり、事業に貢献
参加者の方々、会場を貸していただいたNEC様、 UMTP運営の方々、ワークショップを告知頂いた方々.. ありがとうございました! 35