(57)【特許請求の範囲】
【請求項１】
トップダウン設計機能を備えたデータベース設計システムであって、
キー定義データと当該キー定義データに対応するデータ項目とで構成されたエンティティ、当該エンティティのエンティティタイプ、及びエンティティ間のリレーションシップを示す予め作成されたＥＲモデル図情報に基づいて、当該ＥＲモデル図情報で使用されている前記エンティティの情報を登録する登録手段と、
キー定義データと当該キー定義データに対応するデータ項目とを含んで構成され、前記ＥＲモデル図に対応して予め作成された複数の入力フォーム情報の各々を、キー定義データと当該キーデータに対応するデータ項目とに仕訳して、各入力フォーム情報で使用されているエンティティを抽出する抽出手段と、
前記登録手段に登録した前記ＥＲモデル図情報で使用されているエンティティと、前記抽出手段によって抽出した前記入力フォーム情報で使用されているエンティティとの間の不整合を検出する検出手段と、
前記入力フォーム情報で使用されているエンティティが前記登録手段に未登録であるという不整合が前記検出手段により検出された場合には、当該未登録のエンティティを前記登録手段による登録結果に追加登録することにより修正し、前記入力フォーム情報で使用されているエンティティを構成するデータ項目が前記登録手段に未登録であるという不整合が前記検出手段により検出された場合には、当該未登録のデータ項目を前記登録手段に登録された対応するエンティティのデータ項目に追加登録することにより修正し、前記登録手段に登録されたエンティティが前記入力フォーム情報に未使用であるという不整合が前記検出手段により検出された場合には、当該未使用エンティティを前記入力フォーム情報に追加または当該未使用エンティティを非実装に設定し、前記登録手段に登録されたエンティティを構成しているデータ項目が前記入力フォーム情報に未使用であるという不整合が前記検出手段により検出された場合には、当該未使用データ項目を前記入力フォーム情報に追加または当該未使用データ項目を非実装に設定することにより、前記登録手段の登録結果と前記抽出手段の抽出結果とを整合させる整合手段と、
を有するデータベース設計システム。
【請求項２】
前記ＥＲモデル図情報を入力するためのＥＲモデル図情報入力手段を更に有する、
ことを特徴とする請求項１に記載のデータベース設計システム。
【請求項３】
前記入力フォーム情報を入力するための入力フォーム情報入力手段を更に有する、
ことを特徴とする請求項１または請求項２に記載のデータベース設計システム。
【請求項４】
前記抽出手段は、前記登録手段によって登録した前記エンティティの情報を使用して仕訳する、
ことを特徴とする請求項１〜請求項３のいずれか１項に記載のデータベース設計システム。
【請求項５】
前記整合手段は、前記未登録のエンティティを追加登録した場合に、当該追加登録したエンティティと共にエンティティタイプを登録する、
ことを特徴とする請求項１〜請求項４のいずれか１項に記載のデータベース設計システム。
【請求項６】
前記整合手段は、前記未使用エンティティを前記入力フォーム情報に追加した場合に、前記ＥＲモデル図情報から前記未使用エンティティとのリレーションシップが示されているエンティティを検索し、当該検索したエンティティが使用されている前記入力フォーム情報に前記未使用エンティティを追加する、
ことを特徴とする請求項１〜請求項５のいずれか１項に記載のデータベース設計システム。
【請求項７】
前記整合手段は、前記ＥＲモデル図情報から前記未使用データ項目を構成要素に含むエンティティを検索し、当該検索したエンティティが使用されている前記入力フォーム情報を報知する、
ことを特徴とする請求項１〜請求項６のいずれか１項に記載のデータベース設計システム。
【請求項８】
前記整合手段による整合後に登録されているエンティティと、前記入力フォーム情報との対応関係情報を作成する対応関係情報生成手段と、
前記対応関係情報と、前記ＥＲモデル図情報及び前記エンティティタイプの少なくとも一方とに基づいて、前記入力フォーム情報毎に、当該入力フォーム情報に使用されている前記エンティティ間のリレーションシップを示すリレーションシップ情報を作成するリレーションシップ情報作成手段と、
前記リレーションシップ情報作成手段により作成された前記リレーションシップ情報に基づいて、前記入力フォーム情報単位の部分ＥＲモデル図を作成する部分ＥＲモデル図作成手段と、
を更に有することを特徴とする請求項１〜請求項７のいずれか１項に記載のデータベース設計システム。
【請求項９】
前記リレーションシップ情報作成手段は、前記対応関係情報に基づいて、各前記入力フォーム情報において使用されている前記エンティティを検索し、当該検索したエンティティ間のリレーションシップを前記ＥＲモデル図情報から抽出する、
ことを特徴とする請求項８に記載のデータベース設計システム。
【請求項１０】
前記リレーションシップ情報作成手段は、前記整合手段によって追加登録された前記エンティティが使用されている前記入力フォーム情報については、前記エンティティタイプに基づいて予め設定されているエンティティ間の関係に基づいて、前記追加登録されたエンティティに係わるエンティティ間のリレーションシップ情報を作成する、
ことを特徴とする請求項８または請求項９に記載のデータベース設計システム。
【請求項１１】
前記リレーションシップ情報作成手段は、作成したリレーションシップの削除を指示するコマンドが入力された場合に、当該入力フォーム情報のリレーションシップ情報から削除指示された前記リレーションシップを削除する、
ことを特徴とする請求項８〜請求項１０のいずれか１項に記載のデータベースシステム。
【請求項１２】
前記リレーションシップ情報作成手段は、前記整合手段によって追加登録された前記エンティティが使用されている前記入力フォーム情報を報知する、
ことを特徴とする請求項８〜請求項１１のいずれか１項に記載のデータベース設計システム。
【請求項１３】
前記入力フォーム情報の追加、又は削除、又は内容変更、又は前記ＥＲモデル図情報の内容変更を指示するコマンドが入力された場合に、前記対応関係情報及び前記リレーションシップ情報の少なくとも一方に基づいて、前記登録結果、前記対応関係情報、前記リレーションシップ情報、前記入力フォーム情報、及び前記ＥＲモデル図の少なくとも１つを変更する変更手段を有する、
ことを特徴とする請求項８〜請求項１２のいずれか１項に記載のデータベース設計システム。
【請求項１４】
前記ＥＲモデル図情報及び前記入力フォーム情報を同時に表示する表示手段を更に有する、
ことを特徴とする請求項１〜請求項１３のいずれか１項に記載のデータベース設計システム。
【請求項１５】
前記表示手段は、前記検出手段によって不整合を検出した場合、或いは前記整合手段によって修正した場合に、表示している前記ＥＲモデル図情報及び前記入力フォーム情報の少なくとも一方の上で当該不整合個所或いは修正個所を報知する、
ことを特徴とする請求項１４に記載のデータベース設計システム。
【請求項１６】
前記表示手段は、前記ＥＲモデル図情報及び前記入力フォーム情報と共に、前記対応関係情報、前記リレーションシップ情報、前記部分ＥＲ図の少なくとも１つを同時に表示する、
ことを特徴とする請求項１４または請求項１５に記載のデータベース設計システム。
【請求項１７】
前記表示手段は、前記入力フォーム毎に予め定められた１つの表示枠内に、前記入力フォーム情報を表示すると共に、当該入力フォーム情報のタイトルを当該表示枠に隣接して表示する、
ことを特徴とする請求項１４〜請求項１６のいずれか１項に記載のデータベース設計システム。
【請求項１８】
前記表示手段は、前記表示枠内に、前記キー定義データ及び前記データ項目をエンティティ毎に区分して表示する、
ことを特徴とする請求項１７に記載のデータベース設計システム。
【請求項１９】
前記表示手段は、前記表示枠内をキー定義データ表示用コラムとデータ項目表示用コラムとに分けて、前記キー定義データ表示用コラム及びデータ項目表示用コラムに、前記キー定義データ及び前記データ項目を前記エンティティ毎に区分して表示する、
ことを特徴とする請求項１８に記載のデータベース設計システム。
【請求項２０】
前記入力フォーム情報が、画面、帳票、機能仕様書、またはテーブル設計書の情報である、
ことを特徴とする請求項１〜請求項１９のいずれか１項に記載のデータベース設計システム。
【請求項２１】
トップダウン設計機能を備えたデータベース設計システムにおけるデータベース設計方法であって、
キー定義データと当該キー定義データに対応するデータ項目とで構成されたエンティティ、当該エンティティのエンティティタイプ、及びエンティティ間のリレーションシップを示す予め作成されたＥＲモデル図情報に基づいて、当該ＥＲモデル図情報で使用されている前記エンティティの情報を登録し、
キー定義データと当該キー定義データに対応するデータ項目とを含んで構成され、前記ＥＲモデル図に対応して予め作成された複数の入力フォーム情報の各々を、キー定義データと当該キーデータに対応するデータ項目とに仕訳して、各入力フォーム情報で使用されているエンティティを抽出し、
登録した前記ＥＲモデル図情報で使用されているエンティティと、抽出した前記入力フォーム情報で使用されているエンティティとの間の不整合を検出し、
前記入力フォーム情報で使用されているエンティティが未登録であるという不整合が検出された場合には、当該未登録のエンティティを登録結果に追加登録することにより修正し、前記入力フォーム情報で使用されているエンティティを構成するデータ項目が未登録であるという不整合が検出された場合には、当該未登録のデータ項目を登録された対応するエンティティのデータ項目に追加登録することにより修正し、登録されたエンティティが前記入力フォーム情報に未使用であるという不整合が検出された場合には、当該未使用エンティティを前記入力フォーム情報に追加または当該未使用エンティティを非実装に設定し、登録されたエンティティを構成しているデータ項目が前記入力フォーム情報に未使用であるという不整合が検出された場合には、当該未使用データ項目を前記入力フォーム情報に追加または当該未使用データ項目を非実装に設定することにより、登録結果と抽出結果とを整合させる、
ことを特徴とするデータベース設計方法。
【請求項２２】
整合後に登録されているエンティティと前記入力フォーム情報との対応関係情報を作成し、
前記対応関係情報と、前記ＥＲモデル図情報及び前記エンティティタイプの少なくとも一方とに基づいて、前記入力フォーム情報毎に、当該入力フォーム情報に使用されている前記エンティティ間のリレーションシップを示すリレーションシップ情報を作成し、
作成された前記リレーションシップ情報に基づいて、前記入力フォーム情報単位の部分ＥＲモデル図を作成する、
ことを特徴とする請求項２１に記載のデータベース設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データベース設計システム、データベース設計方法、及び表示方法に係わり、特に、トップダウン設計機能を備えたデータベース設計システム、データベース設計方法、及び表示方法に関する。
【０００２】
【従来の技術】
システム設計は、ボトムアップ設計とトップダウン設計の２つに大きく分類される。
【０００３】
ボトムアップ設計では、まず、業務プロセスを中心とする設計（ＰＯＡ：Process Oriented Approach）により、現状の業務フロー等に基づいて、入出力画面（以下、単に「画面」という）、帳票、或いは機能仕様書（データ項目間の演算により他のデータ項目を定義するもの）の内容を設計する。そして、画面・帳票・機能仕様書のデータを中心とする設計（ＤＯＡ：Data Oriented Approach）により、画面・帳票・機能仕様書内データを正規化してエンティティを作成して、エンティティ間のリレーションシップを作成し、ＥＲ(Entity Relationship)モデル図を作成する。
【０００４】
このとき、ＤＯＡでは、ＤＡ（Data Administrator）やＳＥ（System Engineer）が設計を担当するのが一般的であるが、画面・帳票・機能仕様書の数が１００〜２００以上になる場合もあり、これらを手作業で行うには限界がある。このため、本出願人により、コンピュータを用いて自動的にデータベースの正規化設計を行ってＥＲモデル図を作成すると共に、作成したＥＲモデル図の統合・抽出や、画面・帳票・機能仕様書の追加・削除・内容変更を効率的且つ正確に行うデータベース設計システムが提案されている（特願２０００−２３４６６３）。
【０００５】
一方、トップダウン設計では、まず、ＤＯＡにより、設計対象の業務システムのエンティティを捕捉して、エンティティ間のリレーションシップを作成し、ＥＲモデル図を作成する。そして、ＰＯＡにより、業務分析を行って、作成したＥＲモデル図に対応する画面、帳票、或いは機能仕様書の内容を設計する。このとき、設計されたシステムには、ＤＯＡのＥＲモデル図から得られるエンティティと、ＰＯＡの画面・帳票・機能仕様書から得られるエンティティとの間に整合性があることが求められる。
【０００６】
【発明が解決しようとする課題】
しかしながら、従来は、トップダウン設計に対応したデータベース設計システムがなく、設計者の目視でしかエンティティの整合性の検証を行うことができず、また不整合があった場合は当該不整合を手作業でしか補正できなかったため、作業効率が悪かった。
【０００７】
本発明は上記問題点を解消するためになされたもので、トップダウン設計において、ＤＯＡから得られたエンティティとＰＯＡから得られたエンティティとを簡単に整合させることができるデータベース設計システム、データベース設計方法、及び表示方法を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、請求項１に記載の発明は、トップダウン設計機能を備えたデータベース設計システムであって、キー定義データと当該キー定義データに対応するデータ項目とで構成されたエンティティ、当該エンティティのエンティティタイプ、及びエンティティ間のリレーションシップを示す予め作成されたＥＲモデル図情報に基づいて、当該ＥＲモデル図情報で使用されている前記エンティティの情報を登録する登録手段と、キー定義データと当該キー定義データに対応するデータ項目とを含んで構成され、前記ＥＲモデル図に対応して予め作成された複数の入力フォーム情報の各々を、キー定義データと当該キーデータに対応するデータ項目とに仕訳して、各入力フォーム情報で使用されているエンティティを抽出する抽出手段と、前記登録手段によって登録した前記ＥＲモデル図情報で使用されているエンティティと、前記抽出手段によって抽出した前記入力フォーム情報で使用されているエンティティとの間の不整合を検出する検出手段と、前記検出手段により不整合を検出した場合に、前記登録手段の登録結果及び前記抽出手段の抽出結果の少なくとも一方を修正して整合させる整合手段と、を有する。
【０００９】
請求項１に記載の発明によれば、予め作成されたＥＲモデル図情報で使用されているエンティティの情報が登録手段に登録され、抽出手段によって、このＥＲモデル図情報に対応して予め作成された複数の入力フォーム情報の各々を、キー定義データと当該キー定義データに対応するデータ項目とに仕訳して、各入力フォーム情報で使用されているエンティティが抽出される。
【００１０】
なお、請求項２に記載されているように、ＥＲモデル図情報を入力するためのＥＲモデル図情報入力手段を更に有し、ＥＲモデル図情報入力手段によって、直接、又はネットワーク等を介して、データベース設計システムにＥＲモデル図情報が入力されるようにしてもよい。
【００１１】
また、請求項３に記載されているように、入力フォーム情報を入力するための入力フォーム情報入力手段を更に有し、入力フォーム情報入力手段によって、直接、又はネットワーク等を介して、データベース設計システムに入力フォーム情報が入力されるようにしてもよい。なお、この入力フォーム情報は、画面、帳票、機能仕様書、またはテーブル設計書の情報とするとよい。また、抽出手段は、請求項４に記載されているように、前記登録手段によって登録した前記エンティティの情報を使用して仕訳するようにすれば、仕訳が簡単に行え、処理の高速化を図ることができる。
【００１２】
検出手段は、このようにして登録手段に登録したＥＲモデル図情報で使用されているエンティティ（以下、「ＤＯＡエンティティ」という）と、抽出手段によって抽出した入力フォーム情報で使用されているエンティティ（以下、「ＰＯＡエンティティ」という）との間の不整合が検出される。検出手段によってＰＯＡエンティティとＤＯＡエンティティの間に不整合が検出されたら、整合手段によって、登録手段の登録結果及び抽出手段の抽出結果、すなわちＰＯＡエンティティ及びＤＯＡエンティティの少なくとも一方が修正されて、ＰＯＡエンティティとＤＯＡエンティティとが整合される。
【００１３】
すなわち、設計者が目視でＤＯＡエンティティとＰＯＡエンティティとの整合が取られているかを確認せずとも、自動的に不整合があれば検出され、不整合が検出された場合は、整合させるように修正されるので、作業効率を向上させることができる。
【００１４】
詳しくは、整合手段は以下のように修正することによって、ＤＯＡエンティティとＰＯＡエンティティとを整合させることができる。すなわち、前記整合手段は、前記入力フォーム情報で使用されているエンティティが前記登録手段に未登録である場合に、当該未登録のエンティティを前記登録手段に追加登録することによって修正する。このとき、前記整合手段は、前記未登録のエンティティを追加登録した場合に、当該追加登録したエンティティのエンティティタイプを設定するとよい。
【００１５】
また、前記整合手段は、前記入力フォーム情報で使用されているエンティティを構成するデータ項目が前記登録手段に未登録である場合に、当該未登録のデータ項目を前記登録手段に登録された対応するエンティティのデータ項目に追加登録することによって修正する。
【００１６】
また、前記整合手段は、前記登録手段に登録されたエンティティが前記入力フォーム情報に未使用である場合に、当該未使用エンティティを前記入力フォーム情報に追加、或いは、当該未使用エンティティを非実装に設定することにより修正する。なお、非実装とは、データベースを構築した際に実装しないことを示し、整合性の判断の対象外とされる。
【００１７】
このとき、前記整合手段は、前記未使用エンティティの前記入力フォーム情報への追加する際に、前記ＥＲモデル図情報から前記未使用エンティティとのリレーションシップが示されているエンティティを検索し、当該検索したエンティティが使用されている前記入力フォーム情報に前記未使用エンティティを追加するようにするとよい。
【００１８】
また、前記整合手段は、前記登録手段に登録されたエンティティを構成しているデータ項目が前記入力フォーム情報に未使用である場合に、当該未使用データ項目を前記入力フォーム情報に追加、或いは、当該未使用データ項目を非実装に設定することで修正する。このとき、設計者が未使用データ項目の追加先に適している入力フォーム情報を容易に把握できるように、前記整合手段は、前記ＥＲモデル図情報から前記未使用データ項目を構成要素に含むエンティティを検索し、当該検索したエンティティが使用されている前記入力フォーム情報を報知するとよい。
【００１９】
請求項８に記載の発明は、請求項１〜請求項７のいずれか１項に記載の発明において、前記整合手段による整合後に登録されているエンティティと、前記入力フォーム情報との対応関係情報を作成する対応関係情報生成手段と、前記対応関係情報と、前記ＥＲモデル図情報及び前記エンティティタイプの少なくとも一方とに基づいて、前記入力フォーム情報毎に、当該入力フォーム情報に使用されている前記エンティティ間のリレーションシップを示すリレーションシップ情報を作成するリレーションシップ情報作成手段と、前記リレーションシップ情報作成手段により作成された前記リレーションシップ情報に基づいて、前記入力フォーム情報単位の部分ＥＲモデル図を作成する部分ＥＲモデル図作成手段と、を更に有することを特徴としている。
【００２０】
請求項８に記載の発明によれば、整合手段によってＰＯＡエンティティとＤＯＡエンティティの間の整合が取られたら（ＰＯＡエンティティ＝ＤＯＡエンティティ）、対応関係情報生成手段によって、登録されているエンティティ（すなわちＰＯＡエンティティだが、ＤＯＡエンティティも同じであるので、以下では単に「エンティティ」と称す）と入力フォーム情報との対応関係情報が生成される。この対応関係情報により、各エンエンティティが何れの入力フォーム情報で使用されているのか、言いかえると、各入力フォーム情報に何れのエンティティが使用されているのかを把握することができる。
【００２１】
リレーションシップ作成手段は、この対応関係情報と、ＥＲモデル図情報とエンティティタイプの少なくとも一方とに基づいて、入力フォーム情報毎に、当該入力フォーム情報に使用されているエンティティ間のリレーションシップを示すリレーションシップ情報を作成する。リレーションシップ情報が入力フォーム情報毎に作成されるので、部分ＥＲモデル図作成手段によって、簡単に入力フォーム情報単位の部分ＥＲモデル図を作成することができる。
【００２２】
詳しくは、リレーションシップ情報作成手段は以下のように動作することによって、入力フォーム情報毎にリレーションシップ情報を作成することができる。すなわち、請求項１３に記載されているように、前記リレーションシップ作成手段は、前記対応関係情報に基づいて、各前記入力フォーム情報において使用されている前記エンティティを検索し、当該検索したエンティティ間のリレーションシップを前記ＥＲモデル図情報から抽出する。
【００２３】
また、前記リレーションシップ作成手段は、前記整合手段によって追加登録された前記エンティティが使用されている前記入力フォーム情報については、前記エンティティタイプに基づいて予め設定されているエンティティ間の関係に基づいて、前記追加登録されたエンティティに係わるエンティティ間のリレーションシップを作成する。
【００２４】
このとき、前記リレーションシップ作成手段は、作成したリレーションシップの削除を指示するコマンドが入力された場合に、当該入力フォーム情報のリレーションシップ情報から削除指示された前記リレーションシップを削除するようにすれば、設計者は、ビジネスルールに則って、不要なリレーションシップを削除することができる。また、前記リレーションシップ作成手段は、前記整合手段によって追加登録された前記エンティティが使用されている前記入力フォーム情報を報知すれば、設計者が不要なリレーションシップの有無や、不要なリレーションシップの削除を忘れることを防止することができる。
【００２５】
請求項１３に記載の発明は、請求項８〜請求項１２のいずれか１項に記載の発明において、前記入力フォーム情報の追加、又は削除、又は内容変更、又は前記ＥＲモデル図情報の内容変更を指示するコマンドが入力された場合に、前記対応関係情報及び前記リレーションシップ情報の少なくとも一方に基づいて、前記登録結果、前記対応関係情報、前記リレーションシップ情報、前記入力フォーム情報、及び前記ＥＲモデル図の少なくとも１つを変更する変更手段を有することを特徴としている。
【００２６】
請求項１３に記載の発明によれば、入力フォーム情報の追加、又は削除、又は内容変更、又はＥＲモデル図情報の内容変更を指示するコマンドが入力された場合には、変更手段によって、当該入力されたコマンドに応じて、対応関係情報及びリレーションシップ情報に基づいて、登録手段の登録結果、対応関係情報、リレーションシップ情報、入力フォーム情報、及びＥＲモデル図の少なくとも１つが変更される。すなわち、データベースの設計では、入力フォーム情報の追加、削除、内容変更、ＥＲモデル図情報の内容変更といった試行錯誤を繰り返すが、対応関係情報やリレーションシップ情報を用いることで、このような試行錯誤にも簡単に対応して、登録手段の登録結果、対応関係情報、リレーションシップ情報、入力フォーム情報、ＥＲモデル図の編集が可能である。
【００２７】
請求項１４に記載の発明は、請求項１〜請求項１３のいずれか１項に記載の発明において、前記ＥＲモデル図情報及び前記入力フォーム情報を同時に表示する表示手段を更に有することを特徴としている。
【００２８】
請求項１４に記載の発明によれば、表示手段によって、ＥＲモデル図情報及び入力フォーム情報が同時に表示されるので、設計者はＥＲモデル図情報及び入力フォーム情報の両方を同時に確認しながら作業することができ、作業効率の向上につながる。
【００２９】
このとき、前記表示手段は、前記検出手段によって不整合を検出した場合、或いは前記整合手段によって修正した場合に、表示している前記ＥＲモデル図情報及び前記入力フォーム情報の少なくとも一方の上で当該不整合個所或いは修正個所を報知するようにするとよい。具体的には、表示している前記ＥＲモデル図情報及び前記入力フォーム情報の少なくとも一方の上で、不整合個所や修正個所に対応する部分を、色を変えたり、文字の種類を変えたりして表示することで報知することができる。
【００３０】
また、前記表示手段は、前記ＥＲモデル図情報及び前記入力フォーム情報と共に、前記対応関係情報、前記リレーションシップ情報、前記部分ＥＲ図の少なくとも１つを同時に表示するようにすれば、対応関係情報、リレーションシップ情報、部分ＥＲ図の作成結果が適切であるか否かの確認作業を容易に行うことができる。
【００３１】
また、前記表示手段は、前記入力フォーム毎に予め定められた１つの表示枠内に、前記入力フォーム情報を表示すると共に、当該入力フォーム情報のタイトルを当該表示枠に隣接して表示するようにすれば、入力フォーム情報が複数の場合の確認作業を容易に行うことができる。
【００３２】
請求項２１に記載の発明は、トップダウン設計機能を備えたデータベース設計システムにおけるデータベース設計方法であって、キー定義データと当該キー定義データに対応するデータ項目とで構成されたエンティティ、当該エンティティのエンティティタイプ、及びエンティティ間のリレーションシップを示す予め作成されたＥＲモデル図情報に基づいて、当該ＥＲモデル図情報で使用されている前記エンティティの情報を登録し、キー定義データと当該キー定義データに対応するデータ項目とを含んで構成され、前記ＥＲモデル図に対応して予め作成された複数の入力フォーム情報の各々を、キー定義データと当該キーデータに対応するデータ項目とに仕訳して、各入力フォーム情報で使用されているエンティティを抽出し、登録した前記ＥＲモデル図情報で使用されているエンティティと、抽出した前記入力フォーム情報で使用されているエンティティとの間の不整合を検出し、不整合を検出した場合に、登録結果及び抽出結果の少なくとも一方を修正して整合させる、ことを特徴としている。
【００３３】
請求項２１に記載の発明によれば、予め作成されたＥＲモデル図情報で使用されているエンティティの情報を登録し、このＥＲモデル図情報に対応して予め作成された複数の入力フォーム情報の各々を、キー定義データと当該キー定義データに対応するデータ項目とに仕訳して、各入力フォーム情報で使用されているエンティティを抽出する。そして、この登録したＥＲモデル図情報で使用されているエンティティ（ＤＯＡエンティティ）と、抽出した入力フォーム情報で使用されているエンティティ（ＰＯＡエンティティ）との間の不整合が検出される。
【００３４】
ＰＯＡエンティティとＤＯＡエンティティの間に不整合が検出されたら、登録結果及び抽出結果、すなわちＰＯＡエンティティ及びＤＯＡエンティティの少なくとも一方が修正されて、ＰＯＡエンティティとＤＯＡエンティティとが整合される。すなわち、設計者が目視でＤＯＡエンティティとＰＯＡエンティティとの整合が取られているかを確認せずとも、自動的に不整合があれば検出され、整合するように修正されるので、作業効率を向上させることができる。
【００３５】
このとき、整合後に登録されているエンティティと前記入力フォーム情報との対応関係情報を作成し、前記入力フォーム情報毎に、当該入力フォーム情報に使用されている前記エンティティ間のリレーションシップを示すリレーションシップ情報を作成し、作成された前記リレーションシップ情報に基づいて、前記入力フォーム情報単位の部分ＥＲモデル図を作成するようにすれば、簡単に入力フォーム情報単位の部分ＥＲモデル図を作成することができる。
【００３６】
また、前記表示手段は、キー定義データと該キー定義データに対応するデータ項目とで構成されたエンティティ、当該エンティティのエンティティタイプ、及びエンティティ間のリレーションシップを示す予め作成されたＥＲモデル図情報と、キー定義データと該キー定義データに対応するデータ項目とを含んで構成された入力フォーム情報との整合させてデータベースを設計するトップダウン設計時の表示方法であって、前記ＥＲモデル図情報と前記入力フォーム情報とを同時に表示する、ことを特徴としている。
【００３７】
これにより、トップダウン設計時に、ＥＲモデル図情報及び入力フォーム情報が同時に表示されるので、設計者はＥＲモデル図情報及び入力フォーム情報の両方を同時に確認しながら作業することができ、作業効率の向上につながる。
【００３８】
このとき、前記入力フォーム情報毎に定められた１つの表示枠内に、前記入力フォーム情報を表示すると共に、当該入力フォーム情報のタイトルを該表示枠に隣接して表示するようにすれば、入力フォーム情報毎に、該入力フォーム情報に含まれているキー定義データやデータ項目を容易に確認することができる。具体的には、前記表示枠内に、前記キー定義データ及び前記データ項目をエンティティ毎に区分して表示するとよい（所謂１コラム方式）。また、前記表示枠内をキー定義データ表示用コラムとデータ項目表示用コラムとに分けて、前記キー定義データ表示用コラム及びデータ項目表示用コラムに、前記キー定義データ及び前記データ項目を前記エンティティ毎に区分して表示するようにしてもよい（所謂２コラム方式）。
【００３９】
【発明の実施の形態】
次に、図面を参照して本発明に係る実施形態の１例を詳細に説明する。
【００４０】
（システム構成）
図１には、本発明が適用されたデータベース設計システムの全体構成図が示されている。図１に示されるように、データベース設計システム１０は、本システムを駆動させるための各種プログラムを格納する補助記憶装置１２、補助記憶装置１２から各種プログラムを読み出して実行するＣＰＵ１４、ＣＰＵ１４による各種処理実行結果を格納するデータベース１６、ユーザ（設計者）からの各種要求・指示を入力するためのマウスやキーボード等の入力・操作装置３４、入力・操作装置３４の操作に基づくＣＰＵ１４の処理結果等を表示するモニタ３６、及び当該処理結果等をプリントするプリント出力装置３８が備えられている。
【００４１】
補助記憶装置１２には、データベース設計ツールの起動プログラム１８とともに、トップダウン設計及びボトムアップ設計でデータベースを設計するための各種サブシステムの起動プログラム２０、及びデータベース管理プログラム２２が格納されている。なお、本実施の形態では、ボトムアップ設計の詳細な説明は省略し、トップダウン設計について説明する。
【００４２】
ＣＰＵ１４は、補助記憶装置１２からデータベース設計ツールの起動プログラム１８を読み出し（起動し）、この起動プログラム１８に従ってプログラム２０を適宜読み出して実行するようになっている。
【００４３】
ＣＰＵ１４は、プログラム２０の実行することによって手作業で作成されたＥＲモデル図からエンティティ（「ＤＯＡエンティティ」という）を抽出してデータベース１６に登録する機能、入力フォーム情報として、画面、帳票、或いは機能仕様書（以下、これらを総称して「フォーム」という）のデータから当該フォームを構成しているデータ項目を抽出してエンティティ（「ＰＯＡエンティティ」という）単位に仕訳する機能、ＤＯＡエンティティとＰＯＡエンティティの整合性を検証する機能、エンティティとフォームとの対応関係を示す対応関係情報を作成する機能、エンティティ間のリレーションシップを示すリレーションシップ情報を作成する機能、ＥＲモデル図から各フォームに係わる部分を各々抽出して部分ＥＲモデル図を作成する機能を構成する。
【００４４】
すなわち、ＣＰＵ１４が、本発明の抽出手段、検出手段、整合手段、対応関係情報生成手段、リレーションシップ情報生成手段、部分ＥＲモデル図作成手段として機能する。また、データベース１６が、本発明の登録手段に対応する。
【００４５】
なお、本実施の形態では、対応関係情報として、エンティティとフォームとの対応関係を示すマトリックステーブル（以下、「対応マトリックステーブル」という）２８（図２９参照）、及び各エンティティを構成するキー定義データ及びデータ項目とフォームとの関係を示すマトリックステーブル（以下、「詳細マトリックステーブル」という）２９（図３０参照）を作成し、リレーションシップ情報として、フォーム毎にエンティティ間のリレーションシップを示すマトリックステーブル（以下、「関係マトリックステーブル」という）３０（図３１参照）を作成する。
【００４６】
データベース１６は、登録された各エンティティのキー定義データとデータ項目の対応を含むアイデンティファイア・アトリビュート仕様２６、対応マトリックステーブル２８、詳細マトリックステーブル２９、関係マトリックステーブル３０、ＥＲモデル図３２等の情報を含んで構成され、ＣＰＵ１４による各処理実行により生成される結果が格納されるようになっている。なお、対応マトリックステーブル２８、関係マトリックステーブル３０は、本実施形態では自動的に生成される。
【００４７】
また、補助記憶装置１２には、フォームの追加・削除、ＥＲモデル図３２の統合・抽出等のための各種の編集プログラム２４も格納されている。
【００４８】
ＣＰＵ１４は、補助記憶装置１２からデータベース設計ツールの起動プログラム１８を読み出し（起動し）、この起動プログラム１８に従って各編集プログラム２４を読み出すことができるようになっている。そしてＣＰＵ１４は、読み出した編集プログラム２４に従って、フォームの追加・削除に基づいて対応マトリックステーブル２８、詳細マトリックステーブル２９、関係マトリックステーブル３０を修正（変更）し、ＥＲモデル図３２を修正することができる。また、作成した複数のＥＲモデル図３２の統合処理、作成したＥＲモデル図３２から任意のフォームに対応するＥＲモデル図３２の抽出処理等も行うことができる。
【００４９】
なお、これらの起動プログラム１８、２０、及び編集プログラム２４は、ＣＤ−ＲＯＭ、ＦＤ等の外部の記録媒体３５から読み出されて、補助記憶装置１２に記憶（インストール）される。
【００５０】
また、ＣＰＵ１４は、起動プログラム１８、２０、及び編集プログラム２４に従って、モニタ３６による表示やプリント出力装置３８によるプリント出力も制御する。特に、モニタ３６の表示によって、ユーザへの各種情報の報知も行われる。
【００５１】
モニタ３６の具体的な表示項目としては、ＥＲモデル図３２（図４参照）、フォームから抽出したデータ項目やその仕訳結果を表示するために用いられるフォーム・データ項目表示枠５０（図２１参照）、対応マトリックステーブル２８を表示するための対応マトリックステーブル画面５４（図２９参照）、詳細マトリックステーブル２９を表示するための詳細マトリックステーブル画面６２（図３０参照）、関係マトリックステーブル３０を表示するための関係マトリックステーブル画面６４（図３１参照）、及びユーザが各種指示を入力するためのメニュー項目を備えたメイン画面４０がある。すなわち、モニタ３６が、本発明の表示手段に対応する。
【００５２】
また、本実施の形態では、ユーザは、ＧＵＩ（Graphical User Interface）環境下で、各種要求や設定を行うことができるようになっている。具体的には、ユーザが入力・操作装置３４を操作することによって、データベース設計ツールの起動が指示された場合には、ＣＰＵ１４によってデータベース設計ツールの起動プログラム１８が読み出されて実行され、すなわちデータベース設計ツールが起動され、モニタ３６にメイン画面４０が表示されるようになっている。
【００５３】
また、ユーザは、入力・操作装置３４を操作することによって、ＧＵＩ環境下で、予め作成したＥＲモデル図３２やフォームのデータを入力したり、処理結果のマニュアル修正や各種データのマニュアル追加・削除を行うことも可能となっている。すなわち、入力・操作装置３４が本発明のＥＲモデル図情報入力手段、入力フォーム情報入力手段に対応する。
【００５４】
（作用）
次に、本実施の形態の作用として、トップダウン設計処理について説明する。図２、図３には、トップダウン設計時にＣＰＵ１４で実行される処理ルーチンが示されている。
【００５５】
なお、本実施の形態では、データベース設計システム１０を用いてトップダウン設計を行うに際して、ユーザ（設計者）は、入力・操作装置３４を操作してデータベース設計ツールの起動を指示する。これにより、ＣＰＵ１４はデータベース設計ツールの起動プログラム１８を読み出して実行し、すなわちＣＰＵ１４によってデータベース設計ツールを起動して、メイン画面４０をモニタ３６に表示する。そして、ユーザが入力・操作装置３４を操作して、このメイン画面４０のメニュー項目（図示省略）から各処理ステップの実行を指示する項目を選択することによって、ＣＰＵ１４によって図２、図３の処理が実行されるようになっている。
【００５６】
また、ユーザは、予め、設計対象の業務システムのエンティティを捕捉して、手書きでＥＲモデル図を作成し、業務分析を行って、作成したＥＲモデル図に対応するフォーム（画面、又は帳票、又は機能仕様書、又はこれらの組合せ）を設計しておく。なお、ここでいう「手書き」とは、コンピュータによる自動作成ではなく、ユーザが任意に作成するという意味であり、コンピュータを用いて作成してもよい。
【００５７】
以下では、具体例として、ユーザにより図４に示すＥＲモデル図３２が作成され、このＥＲモデル図３２に基づいて図５〜図２０に示す画面が設計されている場合について説明する。
【００５８】
なお、図４のＥＲモデル図３２では、エンティティとして、当該エンティティを構成するキー定義データ及びデータ項目を表示するエンティティ表示枠５３が描かれている。このエンティティ表示枠５３では、上段に名称（エンティティ名）、下段左欄にキー定義データ（アイデンティファイア）、下段右欄にデータ項目（アトリビュート）が表示されている。また、エンティティ名の右側には、該エンティティのリソース（Ｒ）とイベント（Ｅ）の種別が示されている。
【００５９】
なお、リソースとイベントの種別は、エンティティの名称に対して「〜する」という活用が有効であるものをイベント、有効でないものとリソースとしている。例えば、「入札」エンティティについては、「入札する」という活用が有効であるためイベントとして分類できるが、「発注者」エンティティについては、「発注者する」という活用は意味をなさないためリソースとして分類することができる。
【００６０】
また、図４のＥＲモデル図３２では、エンティティ間のリレーションシップがエンティティ表示枠５３間を接続する接続線７２によって示されており、この接続線７２において、上流側のエンティティに黒点を付けることにより、エンティティ間の上流／下流の関係を区別している。また、リソースとリソースのリレーションシップの場合は対照表７４を作成し、リソースとイベントの場合にはイベントにリソースの参照キー（Ｒ）を代入している。イベントとイベントのリレーションシップの場合は、上流、下流の関係が１：１または１：Ｎの場合には下流のエンティティに参照キーを代入し、上流、下流の関係がＮ：１またはＮ：Ｎの場合には対応表を作成する。
【００６１】
例えば、リソースである「部門」エンティティと「社員」エンティティの間にリレーションシップを作成した場合は、上述したように対照表が作成されるため、対照表７４が作成されている。また、イベントである「営業活動」エンティティや「設計作業工数」エンティティについては、リソースである「営業社員」エンティティ、「設計社員」エンティティと上流、下流の１：Ｎの関係にあるので上流の参照キーである営業社員コード、設計社員コードがそれぞれ代入される。
【００６２】
また、図５は「部門」画面、図６は「担当者」画面、図７は「得意先」画面、図８は「設計事務所」画面、図９は「発注者」画面、図１０は「施主」画面、図１１は「記載記事」画面、図１２は「営業案件」画面、図１３は「営業活動」画面、図１４は「設計見積」画面、図１５は「設計作業工数」画面、図１６は「見積作業工数」画面、図１７は「決済」画面、図１８は「入札」画面、図１９は「施工」画面、図２０は「作業所」画面の例である。
【００６３】
図２に示すように、トップダウン設計では、まずステップ１００において、手書きのＥＲモデル図３２のデータを読み込み、読取り結果、すなわちＥＲモデル図３２をモニタ３６に表示する。そして次のステップ１０２において、読取った手書きのＥＲモデル図３２のデータから、当該ＥＲモデル図３２を構成しているエンティティ（以下、「ＤＯＡエンティティ」という）の情報を抽出し、データベース１６に登録する。
【００６４】
これにより、具体的には、図４のＥＲモデル図のデータから以下の２１個のエンティティが抽出され、ＤＯＡエンティティとして、各々の名称、エンティティタイプ、キー定義データ、データ項目の情報がデータベース１６に登録される。
【００６５】
「部門」エンティティ
タイプ：リソース、キー定義データ：部門コード、データ項目：部門名
「社員」エンティティ
タイプ：リソース、キー定義データ：社員コード、データ項目：社員名
「設計事務所」エンティティ
タイプ：リソース、キー定義データ：設計事務所コード、データ項目：設計事務所名
「設計社員」エンティティ
タイプ：リソース、キー定義データ：設計社員コード、データ項目：なし
「見積社員」エンティティ
タイプ：リソース、キー定義データ：見積社員コード、データ項目：なし
「発注者」エンティティ
タイプ：リソース、キー定義データ：発注者、データ項目：企業イメージ、発注者名
「営業社員」エンティティ
タイプ：リソース、キー定義データ：営業社員コード、データ項目：なし
「年月日」エンティティ
タイプ：リソース、キー定義データ：年月日、データ項目：なし
「営業活動」エンティティ
タイプ：イベント、キー定義データ：なし、データ項目：作業時間
「施主」エンティティ
タイプ：リソース、キー定義データ：施主コード、データ項目：施主名、
「記載連」エンティティ
タイプ：イベント、キー定義データ：記載連番号、データ項目：掲載日、掲載誌名、記事概要、記入日、受注可能度、受注時期、予想工事費、施工場所、用途、建築概要、敷地面積、建物面積
「案件」エンティティ
タイプ：イベント、キー定義データ：案件番号、データ項目：案件名、案件成熟度、参照キー：記事連番号、営業社員コード、年月日、設計番号、設計社員コード、見積社員コード
「工事」エンティティ
タイプ：イベント、キー定義データ：工事番号、データ項目：工事名称、工期、純工事費、利益見込み、電話番号、工事名、施工場所、予算、実績、工事金額、参照キー：決済番号、作業所コード、工事社員コード、施主コード
「設計」エンティティ
タイプ：イベント、キー定義データ：設計番号、データ項目：記入日、工期、要望事項、見積精度、見積額、見積提出日、設計名称、設計提出日、参照キー：設計社員コード、年月日、見積社員コード
「作業所」エンティティ
タイプ：リソース、キー定義データ：作業所コード、データ項目：電話番号、作業所住所
「工事社員」エンティティ
タイプ：リソース、キー定義データ：工事社員コード、データ項目：なし
「決済者社員」エンティティ
タイプ：リソース、キー定義データ：決済者社員コード、データ項目：なし
「設計作業工数」エンティティ
タイプ：イベント、キー定義データ：なし、データ項目：作業時間
「見積作業工数」エンティティ
タイプ：イベント、キー定義データ：なし、データ項目：作業時間
「決済」エンティティ
タイプ：イベント、キー定義データ：決済番号、データ項目：利益見込み、支払条件、共同事業体、決算日、参照キー：入札番号、決算者社員コード、設計番号
「入札」エンティティ
タイプ：イベント、キー定義データ：入札番号、データ項目：入札金額、入札場所、入札他社
続いて、ステップ１０４において、予め手書きのＥＲモデル図３２に基づいて設計された全フォームのデータを読み込み、各フォームにどのようなデータ（フォーム内データ項目）が含まれているかを分析してフォーム内データ項目を抽出し、この抽出結果をモニタ３６にフォーム単位で表示する。このとき、各フォームには、識別情報として、互いに異なる番号（以下、「フォームＩＤ」）が付与される。
【００６６】
なお、本実施の形態では一例として、図５〜図２０の画面から抽出したフォーム内データ項目は、図２１に示される各画面毎のフォーム・データ項目表示枠５０内に表示され、各画面にはフォームＩＤとして３桁の数字「ＸＸＸ」が付与されるようになっている（なお、フォームＩＤの桁数はこれに限定されず、何桁でもよい）。
【００６７】
このフォーム・データ項目表示枠５０の上部は、タイトル名として対応する画面の名前が表示され、その下部領域が左右２分割され、当該画面から抽出されたフォーム内データ項目が表示されるようになっている。また、フォーム・データ項目表示枠５０の上方には、当該画面に付与されたフォームＩＤが表示されるようになっている。なお、左領域は空欄であるが、この領域には後述するように右領域に表示されたフォーム内データ項目のなかからキー定義データを移動させることになる。ユーザは、このフォーム・データ項目表示枠５０から各画面に以下のようなフォーム内データ項目が使用されていることを容易に把握することができる。
【００６８】
フォームＩＤ：１０１「部門」
部門コード、部門名
フォームＩＤ：１０２「担当者」
社員コード、社員名、部門コード
フォームＩＤ：１０３「得意先」
得意先コード、得意先名
フォームＩＤ：１０４「設計事務所」
設計事務所コード、設計事務所名
フォームＩＤ：１０５「発注者」
発注者コード、発注者名、企業イメージ
フォームＩＤ：１０６「施主」
施主コード、施主名
フォームＩＤ：１０７「掲載記事」
記事連番号、掲載日、掲載誌名、記事概要、案件番号
フォームＩＤ：１０８「営業案件」
案件番号、案件名、記入日、営業社員コード、得意先コード、案件成熟度、受注可能度、発注時期、予想工事費、施工場所、用途、建築概要、敷地面積、建物面積、掲載日、記事連番号
フォームＩＤ：１０９「営業活動」
営業社員コード、年月日、案件番号、作業時間
フォームＩＤ：１１０「設計見積」
設計番号、設計名称、案件番号、記入日、工期、要望事項、設計提出日、設計社員コード、見積精度、見積額、見積提出日、見積社員コード
フォームＩＤ：１１１「設計作業工数」
設計社員コード、年月日、設計番号、作業時間
フォームＩＤ：１１２「見積作業工数」
作業時間、見積社員コード、年月日、設計番号
フォームＩＤ：１１３「決済」
決済番号、工事名称、入札金額、利益見込み、支払条件、決済日、入札番号、共同事業体、決済者社員コード、設計番号、工事番号
フォームＩＤ：１１４「入礼」
入札番号、入札日、入札場所、入札他社、提出書類
フォームＩＤ：１１５「施工」
工事番号、工事名、作業所コード、工期、純工事費、利益見込み、電話番号、決済番号
フォームＩＤ：１１６「作業所」
作業所コード、作業所住所、電話番号。
【００６９】
なお、モニタ３６には、前述のステップ１００で手書きのＥＲモデル図３２も表示されているので、図４のＥＲモデル図３２と、フォームのデータ、すなわち図２１の各フォーム毎のフォーム・データ項目表示枠５０が同時に表示されることになる。
【００７０】
次のステップ１０６では、ステップ１０４で抽出したフォーム項目データをキー定義データとそのデータ項目に自動的に仕訳して、仮エンティティを作成する。具体的には、フォーム項目データの中で、ｘｘ番号（ＮＯ、但し電話番号は除く）やｘｘコード（ＣＤ）という名称が付されているデータについては「キー定義データ」に区分し、その他のデータについては「データ項目」に区分することで行われるが、このとき前述のステップ１０２で手書きのＥＲモデル図３２から抽出して登録したＤＯＡエンティティを使用することにより処理の高速化を図っている。
【００７１】
例えば、ＤＯＡエンティティには「部門」エンティティがあり、この「部門」エンティティは、キー定義データ：部門コード、データ項目：部門名で構成されている（図４参照）。一方、フォームＩＤ：００１の「部門」画面のフォーム項目データは、部門コード、部門名であり、「部門」エンティティの情報を用いて、キー定義データ：部門コード、データ項目：部門名と簡単に仕訳することができる。
【００７２】
また、例えば、フォームＩＤ：１０３の「得意先」画面のフォーム項目データの「得意先コード」及び「得意先名」には、対応するＤＯＡエンティティが無いが、上記のルールに従って、キー定義データ：得意先コード、データ項目：得意先名と自動的に仕訳される。また、フォームＩＤ：１１４の「入札画面」のフォーム項目データの「入札日」及び「提出書類」にも対応するＤＯＡエンティティが無く、上記のルールでも仕訳できないので、両方ともデータ項目とされる。
【００７３】
この自動仕訳結果はモニタ３６に表示されているフォーム・データ項目表示枠５０に反映され、図２１から図２２のように表示が変わる。すなわち、図２１では空欄だった右側領域にキー定義データが移動され、エンティティ毎に仕切られる。
【００７４】
また、ＤＯＡエンティティでは仕訳できなかったフォーム内データ項目（フォームＩＤ：１０３の「得意先」画面の「得意先コード」及び「得意先名」、フォームＩＤ：１１４の「入札画面」の「入札日」及び「提出書類」）については、各フォーム・データ項目表示枠５０内の上位に表示し、ユーザが容易に確認できるようになっている。なお、色を変えたり、文字の書体を変えたり、マークを付与したりしてもよい。
【００７５】
ユーザは、このフォーム・データ項目表示枠５０から各画面に使用されているフォーム内データ項目が以下のように自動仕訳されたことを容易に把握することができる。
【００７６】
フォームＩＤ：１０１「部門」
キー定義データ：部門コード、データ項目：部門名
フォームＩＤ：１０２「担当者」
キー定義データ：社員コード、データ項目：社員名
キー定義データ：部門コード
フォームＩＤ：１０３「得意先」
キー定義データ：得意先コード、データ項目：得意先名
フォームＩＤ：１０４「設計事務所」
キー定義データ：設計事務所コード、データ項目：設計事務所名
フォームＩＤ：１０５「発注者」
キー定義データ：発注者コード、データ項目：企業イメージ、発注者名
フォームＩＤ：１０６「施主」
キー定義データ：施主コード、データ項目：施主名
フォームＩＤ：１０７「記載記事」
キー定義データ：記事連番号、データ項目：記載日、記載紙名、記事概要
キー定義データ：案件番号
フォームＩＤ：１０８「営業案件」
キー定義データ：案件番号、データ項目：案件名、案件成熟度、
キー定義データ：営業社員コード
キー定義データ：記事連番号、データ項目：掲載日、記入日、受注可能度、発注時期、予想工事費、施工場所、用途、建築概要、敷地面積、建物面積
キー定義データ：得意先コード
フォームＩＤ：１０９「営業活動」
キー定義データ：なし、データ項目：作業時間
キー定義データ：営業社員コード
キー定義データ：年月日
キー定義データ：案件番号
フォームＩＤ：１１０「設計見積」
キー定義データ：設計番号、データ項目：記入日、工期、要望事項、見積精度、見積額、見積提出日、設計名称、設計提出日
キー定義データ：案件番号
キー定義データ：設計社員コード
キー定義データ：見積社員コード
フォームＩＤ：１１１「設計作業工数」
キー定義データ：なし、データ項目：作業時間
キー定義データ：設計社員コード
キー定義データ：年月日
キー定義データ：設計番号
フォームＩＤ：１１２「見積作業工数」
キー定義データ：なし、データ項目：作業時間
キー定義データ：見積社員コード
キー定義データ：年月日
キー定義データ：設計番号
フォームＩＤ：１１３「決済」
キー定義データ：決済番号、データ項目：利益見込み、支払条件、共同企業体決済日
キー定義データ：入札番号、データ項目：入札金額
キー定義データ：決済者社員コード
キー定義データ：設計番号
キー定義データ：工事番号、データ項目：工事名称
フォームＩＤ：１１４「入札」
キー定義データ：なし、データ項目：入札日、提出書類
キー定義データ：入札番号、データ項目：入札場所、入札他社、
フォームＩＤ：１１５「施工」
キー定義データ：工事番号、データ項目：工期、純工事費、利益見込み、電話番号、工事名
キー定義データ：作業所コード
キー定義データ：決済番号
フォームＩＤ：１１６「作業所」
キー定義データ：作業所コード、データ項目：作業所住所、電話番号。
【００７７】
なお、機能仕様書のように、同一のフォーム内に同一のキー定義データやデータ項目が複数含まれる場合は、各フォームにおいて、同一のキー定義データ又はデータ項目を１つに集約して（重複を排除する）から仮エンティティを作成するようにするとよい。
【００７８】
次のステップ１０８では、フォームデータで使用されているエンティティ（以下、「ＰＯＡエンティティ」という）を決定する。
【００７９】
詳しくは、ユーザがモニタ３６に表示されている各画面のフォーム・データ項目表示枠５０から自動仕訳結果を確認し、必要であれば修正を行って、入力・操作装置３４のキーボードに備えられているＥｎｔｅｒキーを押下する等によって、ＯＫを示すコマンドを入力する。このＯＫを示すコマンドの入力を受けて、ＣＰＵ１４では、当該時点で表示されているフォーム・データ項目表示枠５０の仕訳結果を最終仕訳結果として、ＰＯＡエンティティを決定する。
【００８０】
具体的に本実施の形態では、ユーザは、図２２の自動仕訳結果からＤＯＡエンティティでは仕訳できなかったフォーム内データ項目、すなわちフォームＩＤ：１０３の「得意先」画面の「得意先コード」及び「得意先名」、フォームＩＤ：１１４の「入札画面」の「入札日」及び「提出書類」が正しく仕訳されているかを確認する。そして、「入札日」及び「提出書類」は、キー定義データ「入札番号」に属するデータ項目であるので、ユーザは、入力・操作装置３４を操作して「入札番号」に属するデータ項目の領域に移動し、図２３のように変更して、ＯＫを示すコマンドを入力する。これにより、ユーザによるマニュアル修正後の仕訳結果（図２３）が最終仕訳結果となる。
【００８１】
次のステップ１１０では、図３に示す整合性検出処理を実行する。整合性検出処理では、まず、ステップ１２０でＰＯＡエンティティとＤＯＡエンティティとを比較し、次のステップ１２２でＰＯＡエンティティとＤＯＡエンティティが完全に一致しているか否かを判断し、完全に一致している場合は（ＰＯＡ＝ＤＯＡ）、ＰＯＡエンティティとＤＯＡエンティティとが整合しているとして整合性検出処理を終了して、図２のメインルーチンに戻る。
【００８２】
一致していない場合は、ＰＯＡエンティティとＤＯＡエンティティとの間に不整合を検出したと判断される。そして、不整合として、ＰＯＡエンティティに、ＤＯＡエンティティに含まれない、すなわちＤＯＡエンティティに登録されていないエンティティ（以下、「未登録エンティティ」という）やデータ項目（以下、「未登録データ項目」という）の存在を検出した場合（ＰＯＡ＞ＤＯＡ）は、ステップ１２４からステップ１２６に進む。
【００８３】
ステップ１２６では、未登録エンティティがあった場合は、当該未登録エンティティをＤＯＡエンティティに追加登録すると共に、ユーザにエンティティタイプの設定を促し、ユーザが入力・操作装置３４を操作してエンティティタイプを設定したら、当該設定されたエンティティタイプを追加登録したＤＯＡエンティティのエンティティタイプに決定する。すなわち、未登録エンティティと共に決定されたエンティティタイプの情報が登録される。
【００８４】
また、ステップ１２６では、未登録データ項目があった場合は、当該未登録データ項目を対応するＤＯＡエンティティを構成するデータ項目に追加登録する。
【００８５】
これにより、フォームデータに使用されているＰＯＡエンティティに、手書きのＥＲモデル図３２で使用されていないエンティティやデータ項目があり、ＤＯＡエンティティとして未登録であった場合に、当該未登録エンティティや未登録データ項目がＤＯＡエンティティやＤＯＡエンティティを構成するデータ項目に追加されて整合が図られる。
【００８６】
具体的には、図２３の各フォームで使用されているＰＯＡエンティティのうち、フォームＩＤ：１０３の「得意先」画面で使用されているキー定義データ：得意先コード、データ項目：得意先名のＰＯＡエンティティが未登録エンティティとして検出され、「得意先」エンティティと名付けられて、ＤＯＡエンティティに追加登録される。また、「得意先」エンティティは、「〜する」という活用が有効でないので、ユーザによってリソースに設定され、エンティティタイプがリソースとなる。
【００８７】
また、図２３のフォームＩＤ：１１４の「入札」画面で使用されているキー定義データ：入札番号のＰＯＡエンティティを構成しているデータ項目「入札日」及び「提出書類」は、対応するＤＯＡエンティティである「入札」エンティティ（ＤＯＡエンティティ）に含まれていないため、未登録データ項目として検出され、「入札」エンティティ（ＤＯＡエンティティ）のデータ項目に追加登録される。
【００８８】
この結果を受けて、モニタ３６のＥＲモデル図３２の表示が図４から図２４のように変更される。すなわち、図４のＥＲモデル図３２に対して新規登録された「得意先」エンティティ（タイプ：リソース、キー定義データ：得意先コード、データ項目：得意先名）のエンティティ表示枠５３が追加される（矢印Ａ参照）。また、「入札」エンティティのエンティティ表示枠５３内に、「入札日」及び「提出書類」のデータ項目が追加される（矢印Ｂ参照）。
【００８９】
なお、このときＥＲモデル図３２に追加されたエンティティ表示枠５３やデータ項目は、色を変えたり、文字の書体を変える等して、ユーザが容易に判別できるようにするとよく、本実施の形態では、斜体（イタリック）文字で表示するようになっている。
【００９０】
また、不整合として、ＤＯＡエンティティに、ＰＯＡエンティティに含まれていないエンティティ、すなわちフォームデータに使用されていないエンティティ（以下、「未使用エンティティ」という）やデータ項目（以下、「未使用データ項目」という）の存在を検出した場合は（ＰＯＡ＜ＤＯＡ）、ステップ１２８からステップ１３０に進む。
【００９１】
ステップ１３０では、未使用エンティティがあった場合は、当該未使用エンティティをフォームデータ、すわなちＰＯＡエンティティに追加するか、或いは非実装とするかの選択をユーザに促す。そして、ユーザが入力・操作装置３４を操作してフォームデータを指定してＰＯＡエンティティに追加することを選択したら、当該指定されたフォームデータに未使用エンティティを追加し、ユーザが入力・操作装置３４を操作して非実装にすることを選択したら、当該未使用エンティティを非実装とする。
【００９２】
また、ステップ１３０では、未使用データ項目があった場合は、当該未使用データ項目をフォームデータ、すわなちＰＯＡエンティティのデータ項目に追加するか、或いは非実装とするかの選択をユーザに促し、ユーザが入力・操作装置３４を操作してフォームデータ及びＰＯＡエンティティを指定してＰＯＡエンティティのデータ項目に追加することを選択したら、当該指定されたフォームデータのＰＯＡエンティティに未使用データ項目を追加し、ユーザが入力・操作装置３４を操作して非実装にすることを選択したら、当該未使用データ項目を非実装とする。
【００９３】
なお、非実装とは、実際にデータベースを構築した際に実装させないということである。ユーザは、将来的には必要となるが、現段階では不要なエンティティやデータ項目については、非実装に設定する。
【００９４】
これにより、手書きのＥＲモデル図３２に使用されているＤＯＡエンティティやＤＯＡエンティティを構成するデータ項目に、フォームデータで使用されていないエンティティやデータ項目があった場合に、当該未使用エンティティや未使用データ項目をフォームデータに追加、すなわちＰＯＡエンティティやＰＯＡエンティティを構成するデータ項目にしたり、非実装にして整合が図られる。
【００９５】
具体的には、図４のＥＲモデル図３２で使用されている（ＥＲモデル図３２から抽出され登録された）ＤＯＡエンティティのうち「工事社員」エンティティ（タイプ：リソース、キー定義データ：工事社員コード、データ項目：なし）が、図２３で示されている何れのフォームにも使用されていないので、未使用エンティティとして検出される。そして、図２５に示すように、検出した未使用エンティティのみで構成されたフォーム・データ項目表示枠５０を作成して、フォームＩＤ：１１７としてモニタ３６に追加表示する（矢印Ｃ参照）ことで、ユーザに検出した未使用エンティティを報知する。なお、このとき追加表示されたフォーム・データ項目表示枠５０は、色を変えたり、文字の書体を変える等して、ユーザが容易に判別できるようにするとよく、本実施の形態では、斜体（イタリック）文字で表示するようになっている。
【００９６】
ユーザは、未使用エンティティの「工事社員」エンティティを確認したら、当該「工事社員」エンティティは、フォームＩＤ：１１５の「施工」画面に追加するのが適当であるので、フォームＩＤ：１１５を指定して、ＰＯＡエンティティに追加することを選択する。これにより、図２６のように、フォームＩＤ：１１５に、「工事社員」エンティティの情報が追加される（矢印Ｄ参照）。なお、このとき追加された情報は、色を変えたり、文字の書体を変える等して、ユーザが容易に判別できるようにするとよく、本実施の形態では、斜体（イタリック）文字で表示するようになっている。
【００９７】
なお、未使用エンティティは、当該未使用エンティティと関連するエンティティが使用されているフォームデータに追加するようにするとよい。このために、例えば、ＥＲモデル図３２から、未使用エンティティとリレーションシップが貼られているＤＯＡエンティティを検索し、当該検索されたＤＯＡエンティティが使用されているフォームデータを追加先の候補としてユーザに報知するようにするとよい。
【００９８】
例えば、「工事社員」エンティティは、図２４のＥＲモデル図から「工事」エンティティとリレーションシップが貼られている。図２５のフォームデータ（フォーム・データ項目表示枠５０）において、この「工事」エンティティが使用されているフォームデータは、フォームＩＤ：１１３とフォームＩＤ：１１５であるので、追加先の候補として、フォームＩＤ：１１３とフォームＩＤ：１１５とをユーザに報知する。例えば、フォームＩＤ：１１３とフォームＩＤ：１１５のフォーム・データ項目表示枠５０の色を変えたり、或いは、追加先候補を表示する専用の画面をモニタ３６に新たに表示する等して報知することができる。
【００９９】
ユーザは、入力・操作装置３４を操作して、報知された追加先の候補から、ビジネスルール等により未使用エンティティを追加するのに適切なフォームデータを選択する。ＣＰＵ１４は、当該選択されたフォームデータに未使用エンティティを追加すれば、当該未使用エンティティと関連するエンティティが使用されているフォームデータに追加することができる。
【０１００】
また、追加先候補のフォームデータが１つだけであった場合には、自動的に当該フォームデータに追加するようにしてもよい。この場合、フォーム・データ項目表示枠５０において、追加したエンティティの情報の色を変えたり、文字の書体を変える等して、ユーザが容易に判別できるようにするとよい。
【０１０１】
一方、ユーザによって未使用エンティティの「工事社員」エンティティを非実装とすることが選択された場合は、当該「工事社員」エンティティを非実装に設定し、整合性を図る処理の対象外とする。このときモニタ３６の表示において、対応するフォーム・データ項目表示枠５０やＥＲモデル図３２上の対応するエンティティ表示枠５３の色を変えたり、文字の書体を変えたり、所定のマークを付与する等して、非実装に設定したことをユーザが容易に判別できるようにするとよい。本実施の形態では、一例として、図２７に示すようにフォームＩＤ：１１７のフォーム・データ項目表示枠５０に「×」印を付けると共に、図２８に示すようにＥＲモデル図３２の「工事社員」エンティティのエンティティ表示枠５３にも「×」印を付けて表示するようになっている。
【０１０２】
また、未使用データ項目が検出された場合は、未使用エンティティと同様の処理を行えばよく、ここでは説明を省略する。
【０１０３】
すなわち、整合性検出処理では、ＰＯＡエンティティとＤＯＡエンティティとの間に非整合がある場合には、当該非整合が自動的に検出されるので、整合性の検証の作業効率を向上させることができる。また、非整合が検出された場合には、検出した非整合（未登録エンティティ／未登録データ項目／未使用エンティティ／未使用データ項目）に応じて、ステップ１２６、ステップ１３０の処理を試行錯誤することによって、ＰＯＡエンティティとＤＯＡエンティティとを完全一致（ＰＯＡ＝ＤＯＡ）させて整合を取ることができる。また、ＥＲモデル図とフォームデータ（フォーム・データ項目表示枠５０）が同時にモニタに表示されるので、ユーザによる非整合の検出結果の確認、及びユーザによる整合を取るための修正及び修正結果の確認作業が行い易くなっている。
【０１０４】
このようにして、ＰＯＡエンティティとＤＯＡエンティティとの間の整合が取られたら、図３の整合性検出処理を終了して、図２のメインルーチンに戻る。
【０１０５】
なお、以下では、未使用エンティティとして検出された「工事社員」エンティティをＰＯＡエンティティに追加した場合を例に説明する。すなわち、図２４のＥＲモデル図３２及び図２６のフォーム・データ項目表示枠５０が、ＤＯＡエンティティとＰＯＡエンティティの整合結果となっている。
【０１０６】
図２のメインルーチンに戻ると、ステップ１１２に移行し、エンティティとフォームデータとの対応関係情報として、対応マトリックステーブル２８及び詳細マトリックステーブル２９を作成し、その結果をモニタ３６に表示する。
【０１０７】
図２９には、このときモニタ３６に表示される対応マトリックステーブル画面５４の一例が示されている。図２９に示されるように、対応マトリックステーブル画面５４の上部には、作成された対応マトリックステーブル２８が表示されており、列はフォームデータを示し、行は最上行に完了フラグ、その下の行からはエンティティを示している。
【０１０８】
対応マトリックステーブル２８には、整合が取られたＰＯＡエンティティとＤＯＡエンティティに基づいて、すなわち、修正後のＥＲモデル図３２（図２４）とフォームデータ（図２６）に基づいて、各エンティティの行と、当該エンティティを使用しているフォームの列が交差する欄に「○」印が表示されている。
【０１０９】
ユーザは、この対応マトリックステーブル２８から、各フォームに使用されているエンティティを確認することができる。例えば、フォームＩＤ：１０１の「部門」画面には「部門」エンティティが使用されており、フォームＩＤ：１０７の画面（「掲載記事」画面）には「記載連」エンティティと「案件」エンティティが使用されている。また、反対に、各エンティティが使用されているフォームを確認することもでき、例えば、「部門」エンティティはフォームＩＤ：１０１の「部門」画面とフォームＩＤ：１０２の「担当者」画面に使用されている。
【０１１０】
なお、対応マトリックステーブル２８の完了フラグの欄は、後述するリレーションシップ作成処理のために設けられており、各フォームに使用されているエンティティの個数（「○」印の個数）を各々カウントし、１つのエンティティしか使用されていないフォームの完了フラグの欄には「１」印が表示されるようになっている。
【０１１１】
また、対応マトリックステーブル画面５４の下部には、「ＯＫ」ボタン５６とともに、正規化エンティティ毎の詳細マトリックスを表示するための「詳細マトリックス」ボタン５８と、後述する関係マトリックステーブル３０を表示するための「関係マトリックス」ボタン６０が設けられている。
【０１１２】
ユーザは、エンティティ名の欄をクリックする等により任意のエンティティを選択して、「詳細マトリックス」ボタン５８を押下することにより、当該エンティティの詳細マトリックステーブル２９をモニタ３６に表示させることができるようになっている。
【０１１３】
図３０には、このとき表示される詳細マトリックステーブル画面６２の例が示されている。図３０に示されるように、詳細マトリックステーブル画面６２の上部には、列がフォームを示し、行が当該エンティティを構成しているフォームデータ項目（キー定義データ項目及びそれに属するデータ項目の総称）を示す詳細マトリックステーブル２９が表示されている。
【０１１４】
詳細マトリックステーブル２９には、整合が取られたＰＯＡエンティティとＤＯＡエンティティに基づいて、すなわち、修正後のＥＲモデル図３２（図２４）とフォームデータ（図２６）に基づいて、当該エンティティを構成している各フォームデータ項目と、当該データ項目が使用されているフォームの行が交差する欄に「○」印が表示されている。なお、図１０では、「部門」エンティティの詳細マトリックステーブル画面６２を示している。
【０１１５】
ユーザはこの詳細マトリックステーブル画面６２から、当該エンティティを構成している各フォームデータ項目が使用されているフォームを確認することができる。例えば、「部門」エンティティを構成しているフォームデータ項目の「部門コード」（キー定義データ）は、フォームＩＤ：１０１、１０２の画面に用いられ、「部門名」（データ項目）は、フォームＩＤ：１０１の画面に用いられている。
【０１１６】
ユーザは対応マトリックステーブル２８、詳細マトリックステーブル２９を確認し、必要であれば修正を施す。このとき、モニタ３６には、ＥＲモデル図３２及びフォームデータ（フォーム・データ項目表示枠５０）が既に表示されており、本ステップ１１２の対応関係情報作成処理によって、これらと共に対応マトリックステーブル２８、詳細マトリックステーブル２９が表示されることになるので、ユーザは、対応マトリックステーブル２８、詳細マトリックステーブル２９が適切なものであるか否かを容易に確認できる。
【０１１７】
続いて、ステップ１１４でエンティティ間のリレーションシップを作成する。詳しくは、対応マトリックステーブル２８に基づいて各フォームデータで使用しているエンティティを検索し、修正後のＥＲモデル図３２（図２４）から当該エンティティ間のリレーションシップを抽出することによって、フォームデータ毎にエンティティ間のリレーションシップを作成する。ユーザは、データの業務内容、すなわちビジネスルールに則って、不要なリレーションシップがあれば当該リレーションシップを削除する。
【０１１８】
なお、１つのエンティティのみで構成されているフォームデータ、すなわち対応マトリックステーブル２８の完了フラグの欄に「１」が記されているフォームデータについては、当然ながらリレーションシップは作成されない。具体的には、フォームＩＤが１０１、１０３、１０４、１０５、１０６、１１４、１１６についてはリレーションシップが作成されず、フォームＩＤが１０２、１０７、１０８、１０９、１１０、１１１、１１２、１１３、１１５についてリレーションシップが作成される。
【０１１９】
ここで、前述の整合検出処理によって追加登録されたエンティティについては、図２４のＥＲモデル図からも分かるようにどのエンティティともリレーションシップが貼られておらず、ＥＲモデル図３２からリレーションシップを抽出できない。このため、追加登録されたエンティティが使用されているフォームデータについては、リレーションシップを再作成する。なお、追加登録されたエンティティが使用されているフォームデータでも、追加登録されたエンティティに関連するもの以外については、ＥＲモデル図３２から抽出したリレーションシップを用いることができる。
【０１２０】
このリレーションシップの再作成は、詳しくは、まず、追加登録されたエンティティとその他の各エンティティとの間で、実際の業務の流れにおけるリソースの順序やイベント処理の実行順序より各エンティティの上流、下流の判定を行う。なお、実行順序の早いものが上流、実行の遅いものが下流とする。
【０１２１】
次に、追加登録されたエンティティとその他の各エンティティとが、リソースとリソースのリレーションシップの場合は対照表を作成し、リソースとイベントの場合にはイベントにリソースの参照キーを代入する。イベントとイベントのリレーションシップの場合は、上流、下流の関係が１：１または１：Ｎの場合には下流のエンティティに参照キーを代入し、上流、下流の関係がＮ：１またはＮ：Ｎの場合には対応表を作成する。
【０１２２】
なお、繰り返し項目（所謂ディテール部分）が含まれるフォームデータについては、本出願人により出願されているように（特願２０００−２３４６６３）、処理時間短縮のために、当該フォームデータを構成しているエンティティをＨＤＲ（ヘッダ）エンティティ（ＨＤＲ部分）とＤＴＬ（ディテール）エンティティ（ＤＴＬ部分）に分割して、リレーションシップを作成するとよい。
【０１２３】
また、より詳細なリレーションシップに関しては、特開平９−１４６８０５号公報の図２に記載されており、このようなエンティティの種類毎のリレーションシップの関係を予めテーブルとして記憶させておくことにより、ＣＰＵ１４では容易にエンティティ間のリレーションを規定することができ、処理時間の短縮を図ることができる。
【０１２４】
そして、ユーザは、ビジネスルールに則って、追加登録されたエンティティとその他の各エンティティとの間に作成されたリレーションシップの中から、不要なリレーションシップを全て削除する。
【０１２５】
このリレーションシップの再作成は自動的に実行されるようにしてもよいが、ユーザが不要なリレーションシップの削除する作業を忘れることを防止するために、本実施の形態では、図２９に示すように、対応マトリックステーブル画面５４において、対応マトリックステーブル２８の各エンティティの名称の先頭に順番に付与された番号を、前述の整合検出処理によって追加登録されたエンティティティのみ、すなわち「得意先」エンティティのみ丸付き数字にし、ユーザが追加登録されたエンティティであることを容易に判別できるようになっている。
【０１２６】
なお、対応マトリックステーブル２８の追加登録されたエンティティに対応する行や文字の色を変えたり、文字の書体を変えたり、所定のマークを付与する等でもよい。
【０１２７】
ユーザは、対応マトリックステーブル画面５４から追加登録されたエンティティの存在を確認したら、当該追加登録されたエンティティが使用されているフォームデータを選択して、「関係マトリックス」ボタン６０を押下すると、上記で説明した如くリレーションシップが再作成される。そして、ＣＰＵ１４は、当該フォームデータのリレーションシップ情報として、関係マトリックステーブル３０を作成して、関係マトリックステーブル画面６４をモニタ３６に表示し、ユーザにリレーションシップ再作成結果の確認と不要なリレーションシップの削除を促す。
【０１２８】
具体的には、図２９からも分かるように、「得意先」エンティティは、フォームＩＤ：１０３とフォームＩＤ：１０８のフォームデータに使用されているが、フォームＩＤ：１０３のフォームデータは、完了フラグの欄に「１」が記されており、「得意先」エンティティのみで構成されているフォームデータであるため、リレーションシップを作成する必要がない。従って、ユーザは、対応マトリックステーブル画面５４上でフォームＩＤ：１０８を選択して、「関係マトリックス」ボタン６０を押下する。
【０１２９】
図３１には、これによりモニタ３６に表示される関係マトリックステーブル画面６４の一例が示されている。図３１に示されているように、関係マトリックステーブル画面６４の上部には、作成された関係マトリックステーブル３０が表示されており、列は下流エンティティを示し、行は上流エンティティを示している。作成されたエンティティ間のリレーションシップを示す符号（ＲＦ：参照キー）が下流エンティティの列及び上流エンティティの行が交差した欄に記入されている。また、関係マトリックステーブル画面６４の下部には、ＯＫボタン６６、削除ボタン６８、変更ボタン７０等が設けられている。
【０１３０】
ユーザは、関係マトリックステーブル３０を確認し、不要なリレーションシップがあった場合は、当該不要なリレーションシップの欄を選択して、削除ボタン６８を押下する。これにより、ＣＰＵ１４によって、当該不要なリレーションシップが削除され、削除後の表示に変更される。ユーザが確認してＯＫである場合には「ＯＫ」ボタン６６を押下する。
【０１３１】
これを受けて、ＣＰＵ１４は、当該フォームデータのリレーションシップを決定し、モニタ３６に表示されている対応マトリックステーブル画面５４の当該フォームデータの完了フラグの欄に、リレーションシップの再作成済みを示す符号「Ｒ」を表示させる。また、モニタ３６に表示されているＥＲモデル図３２も、リレーションシップの再作成結果に基づいて変更する。具体的には、図３２のように、追加登録された「得意先」エンティティにリレーションシップが貼られたＥＲモデル図３２がモニタ３６に表示されることになる。
【０１３２】
なお、上記で作成した対応関係情報を解析すれば、例えば、各エンティティの列の「○」をカウントすることで、各々のエンティティが幾つのフォームデータに使用されているかを把握できる。また、フォームデータ毎に作成したリレーションシップ情報を解析すれば、例えば、各エンティティ間のリレーションシップが作成されているフォームデータの個数をカウントすることで、各々のエンティティ間のリレーションシップが幾つ貼られているのかを把握できる。このように対応関係情報やリレーションシップ情報から得られる情報（以下、「個数情報」という）を、フォームデータの追加、又は削除、又は内容変更、又はＥＲモデル図３２の内容変更（エンティティやリレーションシップの追加、削除等）を指示するコマンドが入力された際に利用すれば、当該コマンドでの指示に応じて、簡単に対応関係情報、リレーションシップ、ＥＲモデル図、フォームデータ、登録エンティティの情報等の編集を行うことができる。また、対応関係情報及びリレーションシップ情報と共に各々から得られた個数情報を記憶させておいてもよい。
【０１３３】
リレーションシップが作成されたら、次のステップ１１６に移行し、図３２のＥＲモデル図３２から各フォームデータ毎にエンティティ及びリレーションシップを切り出し、部分ＥＲモデル図を作成して、処理を終了する。
【０１３４】
詳しくは、各フォームデータ毎に作成されたリレーションシップ情報、すなわち関係マトリックステーブル３０を読出し、ＥＲモデル図３２から当該関係マトリックステーブル３０で表示されているエンティティとリレーションシップ、すなわち当該フォームデータに使用されているエンティティ及び作成されたリレーションシップに対応するエンティティ表示枠５３と接続線７２を切り出す（抽出する）ことで部分ＥＲモデル図を作成することができる。
【０１３５】
作成された部分ＥＲモデル図の一例として、図３３には、フォームＩＤ１０２の「担当者」画面に対応する部分ＥＲモデル図（Ａ）と、フォームＩＤ：１１０の「設計見積」画面に対応する部分ＥＲモデル図（Ｂ）が示されている。図３３からも分かるように、部分ＥＲモデル図からは、該フォームデータに使用されているエンティティ、エンティティ間の関係、及び各エンティティのキー定義データとデータ項目等の情報を得ることができ、概念設計のプログラム仕様書として利用することができる。
【０１３６】
なお、上記では、フォーム・データ項目表示枠５０の下部領域を左右２つの領域に分割し、キー定義データ項目を表示するコラムとデータ項目を表示するコラムに分けた所謂２コラム方式のフォーム・データ項目表示枠を例に説明したが、本発明はこれに限定されるものではない。各フォームデータに使用されているキー定義データ及びそのデータ項目をエンティティ毎に区分けして表示することができればよい。
【０１３７】
例えば、図３４に示すように１コラム方式として、フォームデータ読込み時に抽出されたフォーム内データ項目をフォーム・データ項目表示枠５０Ａの下部領域に表示し（Ａ）、ＰＯＡエンティティ（又は仮エンティティ）に仕訳した場合は、フォーム・データ項目表示枠５０Ａの下部領域をＰＯＡエンティティ毎に区分けし、区分けされた各ＰＯＡエンティティ毎の領域において、当該ＰＯＡエンティティのキー定義データを最上行に表示し、その下の行にキー定義データに対応するデータ項目を順に表示している（Ｂ）。なお、図３３は、フォームＩＤ：１１５の「施行」画面のフォーム・データ項目表示枠５０Ａを示している。
【０１３８】
【発明の効果】
上記に示したように、本発明は、トップダウン設計において、ＤＯＡから得られたエンティティとＰＯＡから得られたエンティティとを簡単に整合させることができるという優れた効果を有する。
【図面の簡単な説明】
【図１】本発明の実施形態におけるデータベース設計システムの構成図である。
【図２】本発明の実施形態におけるトップダウン設計処理のフローチャート（メインルーチン）である。
【図３】本発明の実施形態における整合性検出処理のフローチャート（サブルーチン）である。
【図４】手書きのＥＲモデル図の一例である。
【図５】「部門」画面の例を示す図である。
【図６】「担当者」画面の例を示す図である。
【図７】「得意先」画面の例を示す図である。
【図８】「設計事務所」画面の例を示す図である。
【図９】「発注者」画面の例を示す図である。
【図１０】「施主」画面の例を示す図である。
【図１１】「記載記事」画面の例を示す図である。
【図１２】「営業案件」画面の例を示す図である。
【図１３】「営業活動」画面の例を示す図である。
【図１４】「設計見積」画面の例を示す図である。
【図１５】「設計作業工数」画面の例を示す図である。
【図１６】「見積作業工数」画面の例を示す図である。
【図１７】「決済」画面の例を示す図である。
【図１８】「入札」画面の例を示す図である。
【図１９】「施工」画面の例を示す図である。
【図２０】「作業所」画面の例を示す図である。
【図２１】図５〜図２０の各画面のフォーム・データ項目表示枠である（フォームデータ読込み時）。
【図２２】図５〜図２０の各画面のフォーム・データ項目表示枠である（仮エンティティ作成時）。
【図２３】図５〜図２０の各画面のフォーム・データ項目表示枠である（最終仕訳時）。
【図２４】整合検出処理によって未登録エンティティ・未登録データ項目が検出された場合の、修正後のＥＲモデル図である。
【図２５】整合検出処理によって未使用エンティティが検出された場合の、当該検出結果を表示するフォームデータ表示枠が追加されたことを示す図である。
【図２６】未使用エンティティをフォームデータに追加した場合のフォームデータ表示枠を示す図である。
【図２７】未使用エンティティを非実装にした場合のフォームデータ表示枠を示す図である。
【図２８】未使用エンティティの非実装設定に応じた修正後のＥＲモデル図である。
【図２９】対応マトリックステーブル画面の例である。
【図３０】詳細マトリックステーブル画面の例である。
【図３１】関係マトリックステーブル画面の例である。
【図３２】リレーションシップの再作成に応じた修正後のＥＲモデル図である。
【図３３】作成された部分ＥＲモデル図の例であり、（Ａ）はフォームＩＤ：１０２、（Ｂ）はフォームＩＤ：１１０の部分ＥＲモデル図である。
【図３４】フォーム・データ項目表示枠のその他の例であり、（Ａ）はフォームデータ読込み時、（Ｂ）は仮エンティティ毎に仕訳後のフォーム・データ項目表示枠である。
【符号の説明】
１０ データベース設計システム
１２ 補助記憶装置
１４ ＣＰＵ
１６ データベース
２６ アイデンティファイア・アトリビュート仕様
２８ 対応マトリックステーブル
２９ 詳細マトリックステーブル
３０ 関係マトリックステーブル
３２ ＥＲモデル図
３４ 入力・操作装置
３５ 記録媒体
３６ モニタ
３８ プリント出力装置
５０ フォーム・データ項目表示枠
５４ 対応マトリックステーブル画面
６２ 詳細マトリックステーブル画面
６４ 関係マトリックステーブル画面
【図１】
0004653320.tif 000002
【図２】
0004653320.tif 000003
【図３】
0004653320.tif 000004
【図４】
0004653320.tif 000005
【図５】
0004653320.tif 000006
【図６】
0004653320.tif 000007
【図７】
0004653320.tif 000008
【図８】
0004653320.tif 000009
【図９】
0004653320.tif 000010
【図１０】
0004653320.tif 000011
【図１１】
0004653320.tif 000012
【図１２】
0004653320.tif 000013
【図１３】
0004653320.tif 000014
【図１４】
0004653320.tif 000015
【図１５】
0004653320.tif 000016
【図１６】
0004653320.tif 000017
【図１７】
0004653320.tif 000018
【図１８】
0004653320.tif 000019
【図１９】
0004653320.tif 000020
【図２０】
0004653320.tif 000021
【図２１】
0004653320.tif 000022
【図２２】
0004653320.tif 000023
【図２３】
0004653320.tif 000024
【図２４】
0004653320.tif 000025
【図２５】
0004653320.tif 000026
【図２６】
0004653320.tif 000027
【図２７】
0004653320.tif 000028
【図２８】
0004653320.tif 000029
【図２９】
0004653320.tif 000030
【図３０】
0004653320.tif 000031
【図３１】
0004653320.tif 000032
【図３２】
0004653320.tif 000033
【図３３】
0004653320.tif 000034
【図３４】
0004653320.tif 000035