ここでは一般的に使われているものの意図的に使わなかった言葉とその理由を紹介しています。
TMという手法があります。
そこでは「日時」と続けられる言葉(請求、配属)はevent、それ以外(社員、会社)はresourceとして定義されています。
この記事では当初はeventとresourceに分割して説明をしようとしていたのですが、いくつかの問題が発生しました。
それは、eventとresourceでも全く同じ構造になってしまう場合がある、ということです。
idテーブルの依存関係を考えた時に、同じ構造なのにeventとresourceに分割して考えるのは無理があり、仮にeventとresourceに分割して考えたとしても得られるものがあまり無いことを発見しました。
classDiagram
direction TB
class employee
class department
class assignment
employee <|-- assignment
department<|-- assignment
この例では配属(assignment)のみがeventですが、全く同じ構造のresourceも存在します。
classDiagram
direction TB
class 母親
class 父親
class 子ども
母親<|-- 子ども
父親<|-- 子ども
この例では全てresourceになってしまっています。
このことから、resourceとはeventによって生成されたもの、と考えることができます。
flowchart LR
産まれる --> 生活する --> 死ぬ
この例では「産まれる」と「死ぬ」がeventで、「生活する」がresourceに分類されます。
つまり、焦点を当てるべき問題領域によってeventなのかresourceなのかが変わる、ということです。
この問題を説明するのはこの記事の対象外と感じたため、eventとresourceという言葉を使いませんでした。
この言葉は実務上よく使われていますが、定義が曖昧でした。
この言葉を使っている人にどのように使い分けているのか聞いたことがあるのですが、下記のような回答でした。
「複数のアプリケーションが参照できる共通のデータが格納されているテーブルのこと」