ここでは一般的に使われているものの意図的に使わなかった言葉とその理由を紹介しています。

eventとresource

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という言葉を使いませんでした。

マスターテーブルとトランザクションテーブル

この言葉は実務上よく使われていますが、定義が曖昧でした。

この言葉を使っている人にどのように使い分けているのか聞いたことがあるのですが、下記のような回答でした。

「複数のアプリケーションが参照できる共通のデータが格納されているテーブルのこと」