Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
モデル駆動設計への道
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
増田 亨
PRO
December 08, 2021
Technology
7.7k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
モデル駆動設計への道
・XXコードとの格闘の日々
・混沌からの脱出を目指して
・ICONIXとの出会い
・よい設計・よいモデルをもとめて
・モデル駆動設計
・コードで実践
増田 亨
PRO
December 08, 2021
More Decks by 増田 亨
See All by 増田 亨
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
12
6.2k
今こそ聞きたいソフトウェア設計 ドメイン駆動設計再入門
masuda220
PRO
18
8.5k
データエンジニアリングとドメイン駆動設計
masuda220
PRO
17
3.4k
AI 時代のソフトウェア設計の学び方
masuda220
PRO
31
15k
SCSD:事業価値を生み出すソフトウェア開発の実践技法
masuda220
PRO
4
390
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
10
1.6k
競争優位を生み出す戦略的内製開発の実践技法
masuda220
PRO
5
890
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
30
25k
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
38
18k
Other Decks in Technology
See All in Technology
FinOps Agentが生んだ技術負債:コスト自動調査の落とし穴と解消までの道のり
oasis1994liveforever
2
140
日本語に強いオープンな大規模言語モデル「LLM-jp」
odashi
5
1.2k
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
820
パスキーの自動テストはどこまでいけるのか
teamlab
PRO
0
280
DevelopersIO 2026 知識の地図を描く ─ オントロジーとは何か?
ishikawa_satoru
1
1.7k
Benchmarking Disaggregated Serving on vLLM + Dynamo with a Real Coding-Agent Workload
nttcom
1
200
オントロジーって 結局なにもの? AI エージェントに「意味」を渡す知識設計の話
greenmidori
0
230
触りたくないデータに、どう触るか AI時代のRBACアクセスガバナンス
ivry_presentationmaterials
0
280
初海外で注意すべきこと12選!!!安全快適なre:invent生活にするために
yuuuuuuu168
1
180
AIカンパニーへの転換を支えた、エンジニアの仕事の再定義
kworkdev
PRO
2
1.3k
PHPカンファレンス関西の招待状 / Invitation to PHP Conference Kansai
ykanoh
0
210
古い指輪から広がった JAVA コミュニティ とのつながり
yamad
0
130
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
600
Paper Plane (Part 1)
katiecoart
PRO
2
12k
Navigating Team Friction
lara
192
16k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Designing Experiences People Love
moore
143
24k
The Invisible Side of Design
smashingmag
301
52k
It's Worth the Effort
3n
188
29k
Color Theory Basics | Prateek | Gurzu
gurzu
1
490
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Transcript
モデル駆動設計への道 2021年12月8日 有限会社システム設計 増田 亨 現場から学ぶモデル駆動設計 #6 ユースケース駆動開発をやってみた
XXコードとの格闘の日々 バグだらけ・性能障害・セキュリティ事故多発の 大炎上プロダクトの火消し役の依頼 おおいなる混沌からの脱出の手がかりを求めて…
ちゃんと設計しよう! しかし… • 大量のドキュメントを作るほど予算の余裕も時間の余裕もない • 設計できる貴重な人材は火消しに忙殺されている • 設計できる人材を育てる余裕はない • 設計できる人材を外に求めても簡単には採用できない
ICONIXとの出会い 必要最小限のステップで、実用的な設計を、視覚的にできる
ICONIXでやってみた 必要最小限のステップで、実用的な設計を、視覚的にできる そもそも ユースケース をどうやって 見つけるの? ロジック(代替コース/ コントロール)って何? 概念モデルが そのまま
クラスになるの?
よい設計・よいモデルを求めて モデルベース要件定義 ドメインモデル イミュータブルデータモデル 契約による設計 本も書いてみた システム間連携
モデル駆動設計 現在の取り組み
取引先 顧客 商品 サービス 在庫 部門 部門 業務 業務 ビジネスユースケース
(業務バリエーション) 業務フロー ビジネスルールの言語化 システム境界 (インタフェース) ユースケース 画面 外部接続 情報モデル 状態遷移 ドメインモデルの設計と実装 事実の記録(不変) 状態の表現(可変) データベースの設計と実装 業務機能クラス データ操作クラス 画面制御クラス API制御クラス 収益構造 事業方針 アプリケーションの設計と実装 要件のモデル(RDRA) 事業活動の 仕組と決め事 クラスで表現 区分 計算式 条件 判定表 分類 提示 予定 実行 申込 手配 約束 金額 数量 区分 範囲 集合 判定表 文脈 方針 日付 一覧 履歴 契約 計画 約束 結果 事業活動のモデル(ビジネスコンテキスト)
JIG-ERD コードで 実践