データベース設計のヒント

データベースを設計するときには、まず、申請管理変更管理などの任意の別のビジネス領域 (モジュール) について検討する必要があります。次に、個別の件名 (ビジネス オブジェクト) として保持する情報を分解し、これらのビジネス オブジェクトが相互に関連付けられる方法をデータベースに指示します。この方法で、適切な情報を必要なときに提供できます。

データベースの目的の定義 – データベース設計の最初のステップでは、データベースの目的と使用方法を定義します。これにより、データベースに必要な情報を明確にできます。

必要なモジュールを決定する – データベースの明確な目的があるときには、申請管理変更管理などの必要な別のビジネス領域 (モジュール) を決定する必要があります。

必要なビジネス オブジェクトを決定する – モジュールを決定した後には、事実を格納する必要がある個別の主題に情報を分類できます。これらはビジネス オブジェクトといいます。システムから取得する必要がある情報を検討し、ユーザ問題CIなどの基本主題に分類します。これらの主題はすべてビジネス オブジェクトとして最適です。

必要な属性の定義 – 各ビジネス オブジェクトについて記録する必要がある情報を定義します。これらは属性です。

関係の定義 – 表現する情報を検討し、1 つのビジネス オブジェクトのデータを他のビジネス オブジェクトのデータに関連付ける方法を定義します。

一般的な設計上の問題

データベースの設計時には、複数の一般的な問題点が発生する可能性があります。このような問題により、情報の使用と管理が困難になる可能性があります。次の兆候があった場合は、データベース設計を再評価してください。

  • 1 つのビジネス オブジェクトに多数の属性があり、それぞれが同じ主題に関連していない。たとえば、ユーザに関する属性と問題情報を含む属性が、1 つのビジネス オブジェクトに含まれることが考えられます。各ビジネス オブジェクトには、必ず 1 つの主題のみ関連する情報が含まれるようにしてください。
  • ビジネス オブジェクト インスタンスに該当しないため、多数のビジネス オブジェクト インスタンスで意図的に空白になっている属性がある。通常、属性が別のビジネス オブジェクトに属していることを意味します。
  • 多数のビジネス オブジェクトがあり、そのほとんどに同じ属性が含まれる。たとえば、1 月の売上と 2 月の売上、またはローカル顧客とリモート顧客で個別のビジネス オブジェクトがあり、同じ情報を格納する場合があります。1 つのビジネス オブジェクトには、1 つの主題に関連するすべての情報を統合するようにしてください。また、売上日など、属性を追加し、インスタンスのタイプを識別する必要があります。