ユビキタス言語
開発に纏わる全ての場面で語彙を一致させる
実装としてコードに落とし込む時に使う語彙
設計書やタスク管理に用いる語彙
そのプロジェクトに関わっているとどこにでも登場する言語ということでユビキタス言語と呼ぶ
開発者側がdomainに対して誤った理解をしていることを正せる
議論と実装時の語彙がズレているといちいち翻訳が必要
メンバー全員に共有させるのも手間
ユビキタス言語に変更に加わった時、モデルにも変更が加わることを意味する
ユビキタス言語とモデルを一致させる
アナログな分野の現場の人にヒアリングして仕様に起こしていく時にいくつか感じることがあったmrsekut.icon
現場で使われている用語が曖昧すぎる問題
両方のケースがある
全く同じものを指して、人によって異なる呼び方をしている
実は異なる概念に対して、同じ呼び方をしている
こういうのは気付いたら、
Aとはなんですか?Bとはなんですか?
今は同じものに対してAやBと呼んでますね
今後はAと呼んでいきましょう
と伝えて修正していっている
名称が論理的でなさすぎ問題
具体例がないと伝わりづらいが、
長方形な概念に対して、〇〇幅と〇〇丈と対になってるべき呼称が、〇〇幅と△△丈みたいになってたり
根本の原因は、曖昧すぎる問題と近い
ただ、その足りない語彙で運用できているということは必ずしも必須ではないのかもしれない
フローの中に登場する状態を全部列挙すると、ある状態に対しては名称がなかったりする
その状態の存在に気付いていない
現場の人は直接必要でない語彙であることもある
関連する業者にとっては必要なのでシステム内では必要だったり
用語が足りないことで、整理に困ることがある
整理、設計していく中で気付く
ここに1個概念を追加するとスッキリ整理できるじゃん、というのを見出す
こういう命名に関する話は、それに比較的敏感なエンジニアにとっても高難度だと思うので、ちゃんと運用するのは難しそうmrsekut.icon