データモデルとは

1.ユーザの業務を見える化する方法

 情報システムの構築に携わる方が最初に着手することは、ユーザの業務を見える化することでしょう。業務を見える化するためにはどのような方法があるでしょうか。
 まず挙がるのが「業務フロー図」ではないかと思います。業務フロー図の良さは業務の流れを直観的に捉えられることであり、情報システムに詳しくないユーザともコミュニケーションできる共通言語として、情報システム構築には必要不可欠なものです。
 業務フロー図は業務を動的な側面(プロセス)から捉えたものですが、一方で、業務を静的な側面(情報、データ)から捉えることも必要になってきます。どんな業務であれ、その過程で、帳票や画面などを通じて情報(データ)が伝達されます。例えば、一般的な「営業」という業務では「取引先」や「営業担当者(社員)」などの情報が該当します。この情報を対象に業務の意味を構造化(モデル化)する方法が「データモデル」となります。データモデルは業務での伝達情報を見える化すると共に、業務のルールも見える化することができるのですが、今から具体例を交えてその有効性を説明していきます。

2.データモデルを記述するメリット

 データモデルを記述する、または読み解くためには、データモデルの表記方法(文法)を理解することが必要です。理解すべき文法は多くないのですが、データモデルの記述や読解のためにはある程度の慣れも必要なため、情報システムに携わる方でも馴染みの薄い方、苦手意識をもつ方がいらっしゃるかもしれません。
  一方で、データモデルには、業務フロー図では表現が難しい業務のルールも正確に表現できるメリットがあります。シンプルな例で見てみましょう。とある企業で、営業担当者(社員)が取引先を訪問した実績を管理する業務のイメージです。業務フロー図で記述すると図1のようになるとします。

図1.取引先への訪問実績の管理を業務フロー図で記述した例

 

 同じ業務を対象に、情報やデータの側面からデータモデルで記述すると図2のようになるとします。

図2.取引先への訪問実績の管理をデータモデルで記述した例

 

 図2のデータモデルは TM(T字型ER手法) という表記法で記述しています。
 ①~④の長方形(「社員」、「取引先」、「訪問」、「担当」)はこの業務の管理対象となる情報です。それぞれ社員名簿、取引先台帳、訪問実績記録、取引先を担当する社員(営業担当者)の情報と捉えるとイメージしやすいかと思います。また、①~④のそれぞれを結ぶ、鳥の足のような線が各情報間の関係を表します。例えば、「社員」と「訪問」との関係(鳥の足)は「社員:訪問=1:N」であることを表します。すなわち、「1回の訪問で出向く社員は常にひとり」であるという、業務のルールを表しています。
 データモデルにより対象業務で管理する情報と各情報間の関係を表現し、現実の業務がデータモデルに正しく反映されているかをユーザとともに確認することで、情報システムに反映すべき業務におけるルールの漏れや認識の相違に気づくことができます。例えば、図2をもとにユーザに対し「社員」と「訪問」のルールを確認したところ、実際の業務では例外的に複数の社員が取引先に訪問することがあり、かつ訪問実績にもそのことが記録できなければならないことがわかった、などといったこともあるでしょう。

 対象業務におけるデータモデルを情報システム構築の上流工程で記述すれば、システムに反映すべき業務のルール(=情報システムに対する要件や仕様)の漏れや認識相違に早く気付くことができ、後工程で漏れや認識相違が発覚するよりも手戻りを減らすことができます。また、同じ情報を複数個所で多重管理せず一元管理することにも繋がり、システムで大量データを効率的に活用することができるようになります。結果的に、ユーザにとって高品質な情報システムを提供することに寄与するのです。

 データモデルを記述する意義がイメージ頂けましたでしょうか。 次回は「データモデルの分類」 について紹介いたします。