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
モデル図の難しさについて
Search
kawakawa
December 22, 2023
Programming
1
290
モデル図の難しさについて
モデル図を道具として、現実(業務など)をみるときに生じる難しさとはなにか。
何をすれば現実を見る手助けとなるのかを考えてみました。
kawakawa
December 22, 2023
Tweet
Share
More Decks by kawakawa
See All by kawakawa
キーワードで振り返る暗黙知の次元
kawakawa
0
470
オブジェクト指向の「語る」と「示す」
kawakawa
9
23k
心理的安全性ゲームをやってみよう
kawakawa
2
3k
ドメインオブジェクトとユースケースの関係について
kawakawa
10
3.9k
Other Decks in Programming
See All in Programming
技術を改善し続ける
gumioji
0
180
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
1.1k
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
120
kintone開発を効率化するためにチームで試した施策とその結果を大放出!
oguemon
0
340
JAWS Days 2025のインフラ
komakichi
1
330
Kotlinの開発でも AIをいい感じに使いたい / Making the Most of AI in Kotlin Development
kohii00
5
1.9k
React 19アップデートのために必要なこと
uhyo
8
1.6k
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
1.2k
たのしいSocketのしくみ / Socket Under a Microscope
coe401_
8
1.4k
5分で理解する SOLID 原則 #phpcon_nagoya
shogogg
1
410
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
260
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
160
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
Bash Introduction
62gerente
611
210k
Adopting Sorbet at Scale
ufuk
75
9.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Code Review Best Practice
trishagee
67
18k
A better future with KSS
kneath
238
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Site-Speed That Sticks
csswizardry
4
420
Building Adaptive Systems
keathley
40
2.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Transcript
モデル図の難しさに ついて IT勉強会宴会 <年忘れLT宴会in新大阪> @kawakawa
モデル図と現実の関係性 2 現実世界 (業務やら) モデル図 抽象化 解釈化 理解 活用
モデル図と現実の関係性 3 現実世界 (業務やら) モデル図 抽象化 解釈化 理解 活用 目的ごとに、現実
を理解するために 抜きだしたものだ から理解はラク。
モデル図と現実の関係性 4 現実世界 (業務やら) モデル図 抽象化 解釈化 理解 活用 こっちが
大変!
モデル図➔現実の難しさ 5 ここで例を1つ。 皆さん、 野球のルールは知っていますか?
モデル図➔現実の難しさ 6 では、 野球のルールだけで、野球を語れますか?
モデル図➔現実の難しさ 7 では、 野球のルールだけで、野球を語れますか? WBC世界一をルールだけで説明できます?
モデル図➔現実の難しさ 8 野球はルールに従って成り立っています。 しかし、ルールだけでは野球を説明できま せん。 これはモデルにも同じことが言えます。 モデルに記載された内容だけでは、 現実を理解できません。 解釈の❝糸口❞になるだけです。
モデルが示しているのも 9 では、 モデルがすべてを記していなくても、 現実の解釈の糸口になる例を考えてみま しょう。
ひとつ問題を出してみたいと思います。 将棋に新しい「銅(どう)」というコマを 追加したいと思います。 「銅」はどのように動きますか? 10 銅
おそらく、動けるマスの多さが、 金・銀 > 銅 > 桂馬 となるように 考えた方は多かったのではないでしょうか。 例えば、こんな感じに。 11
銅 縦横 斜め 銅 銅 縦横&斜め
逆に、次のような振る舞いを考えた人は 少なかったと思います。 (1)他の種類の駒とまったく同じ動き (2)金や銀より多くのマスに動ける (3)好きなマスにワープできる!! 新しい駒の動きを自由に考えてよいのに、 なにかの制約を受けてしまったようです。 その制約の正体とは何でしょうか。 12
今回の場合、 (1)駒ごとに動きが異なることを知っている (2)金、銀、銅の貴金属価値、オリンピック などに見られる上下関係を、動けるマス数 にも当てはめている (3)将棋が破綻するような能力は、そもそも 想定から除外している などが考えられます。 13
(2)の金銀銅のメタファーが、動けるマス数に 金銀 > 銅 と制約を与えているこれが、 示すの良い例となります。 直接、動けるマス数を金銀より少なくしたい と指定しているわけではないのに、 金銀銅のメタファーを使うことで、 直接は記していない規則を示すことができるの
です。 14
(2)の金銀銅のメタファーが、動けるマス数に 金銀 > 銅 と制約を与えているこれが、 示すの良い例となります。 直接、動けるマス数を金銀より少なくしたい と指定しているわけではないのに、 金銀銅のメタファーを使うことで、 直接は記していない規則を示すことができるの
です。 15 これがモデル➔現実の難しさ となります。
良きメタファーを活用できるかが、 モデル➔現実世界を理解するうえの、 難しさにつながっているのです。 メタファー例 ・赤黒処理(情報は常に追記) ・色味(青=安全、黄=注意、赤=エラー) ・新幹線(のぞみ、ひかり、こだま) などなど 16
17 まとめ
モデル図は2段構成で出来ています。 記載している個所と、 記載していない箇所です。 モデル図が成り立つ前提は、 記載している箇所だけでなく、 記載していない箇所にも多く存在します。 「メタファ」をうまく活用することで、 記載していない箇所の概念を認知して もらうことができます。 18
「理解できるモデル図」から 「理解できてしまうモデル図」へ より良きモデル図への探求は まだまだ続きます。 19