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
haru860
December 03, 2025
Programming
0
330
モデル駆動設計をやってみよう ワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
Modeling Forum2025のワークショップの開催報告資料です。
https://umtp-japan.org/event-seminar/mf2025/76609
haru860
December 03, 2025
Tweet
Share
More Decks by haru860
See All by haru860
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
300
BPStudy#213〜ビジネスアナリシスとDDD(ドメイン駆動設計)パネルディスカッション資料 / BPStudy213-panel
haru860
0
530
見積り、計画の考え方や手法についてビープラウドの場合を紹介します/ introduce-the-concept-and-method-of-estimation-and-planning-in-the-case-of-BeProud
haru860
8
3.5k
U理論で深まる匠Method のモデリングプロセス / the modeling process of the Takumi Method deepened by theory-U
haru860
3
370
匠Methodで価値創造をファシリーテートする〜イノベーション創造プロセスのU理論をベースに
haru860
0
250
BPStudyの200回を中心にIT業界を振り返る。そしてこれから
haru860
4
3.2k
匠MethodとRDRAとICONIXとDDDで実現する一気通貫オブジェクト指向開発
haru860
4
5.7k
私の積読解消法
haru860
0
240
将棋を上達しようとおもった2つのショックと上達の取り組み
haru860
0
220
Other Decks in Programming
See All in Programming
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
7.3k
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.3k
AI Agent の開発と運用を支える Durable Execution #AgentsInProd
izumin5210
7
2.3k
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
1
230
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
6
1.8k
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
190
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
200
AI巻き込み型コードレビューのススメ
nealle
1
150
Apache Iceberg V3 and migration to V3
tomtanaka
0
160
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
開発者から情シスまで - 多様なユーザー層に届けるAPI提供戦略 / Postman API Night Okinawa 2026 Winter
tasshi
0
200
Featured
See All Featured
30 Presentation Tips
portentint
PRO
1
210
Side Projects
sachag
455
43k
Optimizing for Happiness
mojombo
379
71k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
320
Between Models and Reality
mayunak
1
180
Building the Perfect Custom Keyboard
takai
2
680
Scaling GitHub
holman
464
140k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
140
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
450
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
36k
Writing Fast Ruby
sferik
630
62k
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