(57)【要約】      （修正有）【課題】従来のシステム開発支援ツールに比べて、生産性の高いシステム開発支援ツールを提供する。【解決手段】（１）任意の部品区分関連情報１６ｄの選択を受け付け、（２）選択された部品区分関連情報１６ｄを読み出し、読み出した部品区分関連情報１６ｄに関連付けが定義されている部品区分情報１６ｂを特定し、（３）特定した部品区分情報１６ｂに関連付いている部品情報識別情報１６ｃを読み出して出力し、（４）出力した部品情報識別情報１６ｃについて関連付けの選択を受け付け、（５）入力された部品情報識別情報１６ｃの関連付けを、（２）で読み出した部品区分関連情報１６ｄに関連付けて、コンピュータプログラムの設計情報として記憶させる。【選択図】図５３
2006172036.tif 000002
【特許請求の範囲】
【請求項１】
情報を記憶する記憶手段と、情報を処理する処理手段と、利用者からの命令を受けつける入力手段と、利用者に情報を出力する出力手段とを備えたコンピュータシステムにおいて、
コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムであって、
前記記憶手段は、
前記外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報が属する区分を識別する部品区分情報と、個々の前記部品情報を識別する部品情報識別情報とを関連付けて記憶すると共に、
前記一貫したコンピュータプログラムの設計のために必要となる、複数の前記部品区分情報についての関連付けが定義されている部品区分関連情報とを記憶し、
前記処理手段が、
（１）任意の前記部品区分関連情報の選択を、前記入力手段を介して受け付けること、
（２）当該選択された部品区分関連情報を前記記憶手段から読み出すと共に、当該読み出した部品区分関連情報に関連付けが定義されている前記部品区分情報を特定すること、
（３）当該特定した部品区分情報に関連付いている前記部品情報識別情報を、前記記憶手段から読み出して前記出力手段に出力すること、
（４）当該出力した部品情報識別情報について関連付けの選択を、前記入力手段を介して受け付けること、
（５）当該入力された部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて、前記コンピュータプログラムの設計情報として前記記憶手段に記憶させること、
（６）前記（１）〜（５）の設計処理を繰り返すことにより、前記コンピュータプログラムの設計情報を前記記憶手段に記憶させていくこと、
（７）任意の前記部品情報識別情報の選択を、前記入力手段を介して受け付けること、
（８）前記記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接関連付いている設計情報と、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報とを、特定のコンピュータプログラムの設計情報として前記記憶手段に記憶させること、
を、前記処理手段に行わせることを特徴とする設計コンピュータプログラム。
【請求項２】
情報を記憶する記憶手段と、情報を処理する処理手段と、利用者からの命令を受けつける入力手段と、利用者に情報を出力する出力手段とを備えたコンピュータシステムにおいて、
コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムであって、
前記記憶手段は、
前記外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報が属する区分を識別する部品区分情報と、個々の前記部品情報を識別する部品情報識別情報とを関連付けて記憶すると共に、
前記一貫したコンピュータプログラムの設計のために必要となる、複数の前記部品区分情報についての関連付けが定義されている部品区分関連情報と、複数の前記部品情報識別情報についての関連付けであるコンピュータプログラムの設計情報とを関連付けて記憶し、
前記処理手段が、
（１）任意の前記部品区分関連情報の選択を、前記入力手段を介して受け付けること、
（２）当該選択された部品区分関連情報を前記記憶手段から読み出すと共に、当該読み出した部品区分関連情報に関連付いている前記設計情報を特定すること、
（３）当該特定した設計情報と、前記読み出した部品区分関連情報に含まれる部品区分情報に関連付いている前記部品情報識別情報とを、前記記憶手段から読み出して前記出力手段に出力すること、
（４）当該出力した部品情報識別情報について関連付けの選択を、前記入力手段を介して受け付けること、
（５）前記（３）で読み出した設計情報に代わる設計情報として、当該入力された部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて前記記憶手段に記憶させること、
（６）任意の前記部品情報識別情報の選択を、前記入力手段を介して受け付けること、
（７）前記記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接関連付いている設計情報と、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報とを、特定のコンピュータプログラムの設計情報として前記記憶手段に記憶させること、
を、前記処理手段に行わせることを特徴とする設計コンピュータプログラム。
【請求項３】
情報を記憶する記憶手段と、情報を処理する処理手段と、利用者からの命令を受けつける入力手段と、利用者に情報を出力する出力手段とを備えたコンピュータシステムにおいて、
コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムであって、
前記記憶手段は、
前記外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報が属する区分を識別する部品区分情報と、個々の前記部品情報を識別する部品情報識別情報とを関連付けて記憶すると共に、
前記一貫したコンピュータプログラムの設計のために必要となる、複数の前記部品区分情報についての関連付けが定義されている部品区分関連情報とを記憶し、
更に、当該記憶手段は、前記設計プログラムの利用者を区分する利用者区分情報と前記部品情報識別情報を前記出力手段に出力する際の名称である名称情報との関連付けを、１の前記部品情報識別情報に対して２以上関連付けて記憶しており、
前記処理手段が、
（０）任意の前記利用者区分情報の入力を、前記入力手段を介して受け付けること、
（１）任意の前記部品区分関連情報の選択を、前記入力手段を介して受け付けること、
（２）当該選択された部品区分関連情報を前記記憶手段から読み出すと共に、当該読み出した部品区分関連情報に関連付けが定義されている前記部品区分情報を特定すること、
（３）前記記憶手段において、当該特定した部品区分情報に関連付いている前記部品情報識別情報を特定し、当該特定した部品情報識別情報に関連付いている前記利用者区分情報と前記名称情報との関連付けから、前記（０）で入力された利用者区分情報と一致する利用者区分情報に関連付いている名称情報を前記記憶手段から読み出して、前記出力手段に出力すること、
（４）当該出力した名称情報について関連付けの選択を、前記入力手段を介して受け付けること、
（５）前記記憶手段に記憶されている部品情報識別情報と名称情報との関連付けに基づいて、当該入力された名称情報の関連付けを前記部品情報識別情報の関連付けに変換すること、
（６）当該変換した部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて、前記コンピュータプログラムの設計情報として前記記憶手段に記憶させること、
（７）前記（１）〜（６）の設計処理を繰り返すことにより、前記コンピュータプログラムの設計情報を前記記憶手段に記憶させていくこと、
（８）前記入力手段を介して、任意の前記部品情報識別情報の選択を受け付けること、
（９）前記記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接関連付いている設計情報と、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報とを、特定のコンピュータプログラムの設計情報として前記記憶手段に記憶させること、
を、前記処理手段に行わせることを特徴とする設計コンピュータプログラム。
【請求項４】
情報を記憶する記憶手段と、情報を処理する処理手段と、利用者からの命令を受けつける入力手段と、利用者に情報を出力する出力手段とを備えたコンピュータシステムにおいて、
コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムであって、
前記記憶手段は、
前記外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報が属する区分を識別する部品区分情報と、個々の前記部品情報を識別する部品情報識別情報とを関連付けて記憶すると共に、
前記一貫したコンピュータプログラムの設計のために必要となる、複数の前記部品区分情報についての関連付けが定義されている部品区分関連情報と、複数の前記部品情報識別情報についての関連付けであるコンピュータプログラムの設計情報とを関連付けて記憶し、
更に、当該記憶手段は、前記設計プログラムの利用者を区分する利用者区分情報と前記部品情報識別情報を前記出力手段に出力する際の名称である名称情報との関連付けを、１の前記部品情報識別情報に対して２以上関連付けて記憶しており、
前記処理手段が、
（０）任意の前記利用者区分情報の入力を、前記入力手段を介して受け付けること、
（１）任意の前記部品区分関連情報の選択を、前記入力手段を介して受け付けること、
（２）当該選択された部品区分関連情報を前記記憶手段から読み出すと共に、当該読み出した部品区分関連情報に関連付いている前記設計情報を特定すること、
（３）前記記憶手段において、当該読み出した部品区分関連情報に含まれる部品区分情報に関連付いている前記部品情報識別情報を特定し、当該特定した部品情報識別情報に関連付いている前記利用者区分情報と前記名称情報との関連付けから、前記（０）で入力された利用者区分情報と一致する利用者区分情報に関連付いている名称情報を前記記憶手段から読み出すこと、
（４）前記（２）で特定した設計情報を前記記憶手段から読み出し、前記記憶手段に記憶されている部品情報識別情報と名称情報との関連付けに基づいて、当該読み出した設計情報を、前記（３）で読み出した名称情報の関連付けに変換すること、
（５）前記（３）で読み出した名称情報と、当該変換した名称情報の関連付けとを、前記出力手段に出力すること、
（６）当該出力した名称情報について関連付けの選択を、前記入力手段を介して受け付けること、
（７）前記記憶手段に記憶されている部品情報識別情報と名称情報との関連付けに基づいて、当該入力された名称情報の関連付けを前記部品情報識別情報の関連付けに変換すること、
（８）前記（４）で読み出した設計情報に代わる設計情報として、当該変換した部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて前記記憶手段に記憶させること、
（９）任意の前記部品情報識別情報の選択を、前記入力手段を介して受け付けること、
（１０）前記記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接関連付いている設計情報と、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報とを、特定のコンピュータプログラムの設計情報として前記記憶手段に記憶させること、
を、前記処理手段に行わせることを特徴とする設計コンピュータプログラム。
【請求項５】
前記記憶手段に複数存在する部品区分情報の１つとして、データ項目情報が存在し、
前記記憶手段に記憶されている部品区分関連情報には、前記データ項目情報と当該データ項目情報以外の他の前記部品区分情報との関連付けが定義されている部品区分関連情報が含まれていること、
を特徴とする、請求項１乃至４のいずれか１記載の設計コンピュータプログラム。
【請求項６】
前記記憶手段は、更に、
コンピュータプログラムの設計に関する管理書類の区分を識別する管理書類区分情報と、１以上の前記部品区分関連情報とを関連付けて記憶し、
前記処理手段が、
（１１）任意の前記管理書類区分情報の選択を、前記入力手段を介して受け付けること、
（１２）当該選択された管理書類区分情報に関連付いている１以上の前記部品区分関連情報を前記記憶手段から特定すること、
（１３）当該特定した１以上の部品区分関連情報に関連付いている設計情報を前記記憶手段から読み出し、管理書類データとして前記記憶手段に記憶させること、
を、前記処理手段に行わせることを特徴とする、請求項１乃至４のいずれか１記載の設計コンピュータプログラム。
【請求項７】
前記記憶手段に複数存在する部品区分情報の１つとして、プロセス項目情報が存在し、
当該プロセス項目情報に関連付いて前記記憶手段に記憶されている部品情報識別情報には、前記部品情報としてのプログラム情報が関連付けられて前記記憶手段に記憶され、
前記データ項目情報に関連付いて前記記憶手段に記憶されている部品情報識別情報には、前記部品情報としてのデータ情報が関連付けられて前記記憶手段に記憶されており、
前記記憶手段に記憶されている部品区分関連情報には、前記データ項目情報と前記プロセス項目情報との関連付けを含んで定義されているプログラム部品区分関連情報が含まれ、
当該プログラム部品区分関連情報には、前記コンピュータプログラムの設計情報が関連付けて前記記憶手段に記憶されており、
前記処理手段が、
（１４）前記記憶手段に記憶されているプログラム部品区分関連情報に関連付いている設計情報から取得された設計情報が、前記記憶手段に記憶された特定のコンピュータプログラムの設計情報に含まれているか否かを判断すること、
（１５）含まれていると判断した場合に、当該プログラム部品区分関連情報に関連付いている設計情報から取得された設計情報に含まれる部品情報識別情報を特定し、当該特定した部品情報識別情報に関連付いている前記プログラム情報と前記データ情報とを前記記憶手段から読み出すこと、
（１６）前記特定した部品情報識別情報に基づき、当該読み出したプログラム情報とデータ情報とを前記特定のコンピュータプログラムの設計情報に関連付けて前記記憶手段に記憶させることにより、特定のコンピュータプログラムを生成すること、
を、前記処理手段に行わせることを特徴とする、請求項５記載の設計コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラムの設計を行うための、設計コンピュータプログラムに係り、特に、コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムに関するものである。
【背景技術】
【０００２】
従来のコンピュータソフトウェアの開発手法としては、ウォーターフォールモデルやスパイラルモデル等が存在する。これらは、開発の手順が異なるものの、基本計画（要件定義）、外部設計、内部設計、プログラム設計、プログラミング、のように、段階的な詳細化を進めることにより開発が進む点では共通している。すなわち、前工程の成果物を、次工程で詳細化していくことにより、信頼性やメンテナンスに優れたソフトウェアを開発しようとするものである。
【０００３】
そして、コンピュータソフトウェアの開発を支援するツールとしては、ＣＡＳＥツール等のシステム開発支援ツール（ソフトウェア）が存在する。このシステム開発支援ツールでは、ＵＭＬ言語やＧＵＩ画面を用い、人間が理解しやすいグラフィカルな図を使用して、仕様書等の設計書類を作成するのが良いとされている。また、一般的には、各工程（基本計画、外部設計、内部設計、プログラム設計）の設計に対して１のシステム開発支援ツールが存在しており、前工程の成果物の設計情報を設計者が目視により確認して、次工程のシステム開発支援ツールに設計者が入力することにより、設計情報を段々と詳細化していくことが行われている。
【０００４】
また、製造業において製品を企画又は開発する場合に、製品仕様の決定等を製品の品質特性の側面から行うための手法の一つに、品質機能展開（ＱＦＤ）がある。
【０００５】
本技術に関係する先行文献としては、以下の文献が存在する。
【特許文献１】特開２００２−３５８３３２号公報
【特許文献２】特開２００１−１９５２４３号公報
【特許文献３】特開２０００−２２２１９３号公報
【特許文献４】特開平０８−２８６８９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、ＵＭＬ言語やＧＵＩ画面を用いた、人間が理解しやすいグラフィカルな設計書類を成果物として作成すると、次工程のシステム開発支援ツールに当該成果物を設計情報として渡すことが困難である。すなわち、グラフィカルな図等を使用した成果物は、設計者が目視により確認する際には便利であるが、コンピュータに対する設計情報として、共通した形式により表現する事が困難なのである。よって、前工程の成果物であるグラフィカルな設計書類に沿った内容を、設計者がコンピュータを利用して次工程のシステム開発支援ツールに入力しなければならない。これは、設計作業について考えると、二度手間であり、設計作業に余分な時間がかかってしまうという問題がある。
【０００７】
また、各工程のシステム開発支援ツールの利用方法等について、設計者が学習して覚える必要があり、ある程度の業務経験がなければ使いこなすのが難しいという問題がある。前記のように、上流から下流までの設計工程ごとにシステム開発支援ツールが存在するため、当該設計工程の数だけシステム開発支援ツールが存在し、この労力が必要となる。
【０００８】
さらに、従来のシステム開発支援ツールでは、「前工程の成果物を、次工程で詳細化していく」という開発思想をふまえて作成されているため、上流工程と下流工程とを並行して開発することが難しいという問題がある。なぜならば、下流工程の設計作業を先に進めると、上流工程の設計情報と論理的な整合性をとるのが非常に難しいからである。
【０００９】
また、同様の理由から、下流工程の作業中に上流工程での設計手戻り作業が発生した場合は、上流工程の設計情報を修正してから、当該修正を下流工程に全て反映させる必要があるという問題がある。
【００１０】
さらに、前記品質機能展開（ＱＦＤ）は、製造業の品質管理のために開発されたものであり、ソフトウェアの製造に関しては、そのまま適用する事が困難であるという問題がある。
【課題を解決するための手段】
【００１１】
１、そこで、上記課題を解決するため、本発明に係る設計コンピュータプログラムは、情報を記憶する記憶手段と、情報を処理する処理手段と、利用者からの命令を受けつける入力手段と、利用者に情報を出力する出力手段とを備えたコンピュータシステムにおいて、コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムである。
【００１２】
また、前記コンピュータシステムの前記記憶手段は、前記外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報が属する区分を識別する部品区分情報と、個々の前記部品情報を識別する部品情報識別情報とを関連付けて記憶すると共に、前記一貫したコンピュータプログラムの設計のために必要となる、複数の前記部品区分情報についての関連付けが定義されている部品区分関連情報とを記憶している。
【００１３】
そして、前記コンピュータシステムの前記処理手段が、（１）任意の前記部品区分関連情報の選択を、前記入力手段を介して受け付けること、（２）当該選択された部品区分関連情報を前記記憶手段から読み出すと共に、当該読み出した部品区分関連情報に関連付けが定義されている前記部品区分情報を特定すること、（３）当該特定した部品区分情報に関連付いている前記部品情報識別情報を、前記記憶手段から読み出して前記出力手段に出力すること、（４）当該出力した部品情報識別情報について関連付けの選択を、前記入力手段を介して受け付けること、（５）当該入力された部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて、前記コンピュータプログラムの設計情報として前記記憶手段に記憶させること、（６）前記（１）〜（５）の設計処理を繰り返すことにより、前記コンピュータプログラムの設計情報を前記記憶手段に記憶させていくこと、（７）任意の前記部品情報識別情報の選択を、前記入力手段を介して受け付けること、（８）前記記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接関連付いている設計情報と、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報とを、特定のコンピュータプログラムの設計情報として前記記憶手段に記憶させること、を、前記処理手段に行わせることを特徴とする設計コンピュータプログラムである。
【００１４】
ここで、「記憶手段」とは、ＲＡＭ、ＲＯＭ、ＨＤＤ等のコンピュータシステムにおける記憶装置が該当する。「処理手段」とは、ＣＰＵ等のコンピュータシステムにおける演算装置が該当する。「入力手段」とは、キーボード、マウス、タッチパネル等のコンピュータシステムにおける入力装置が該当する。「出力手段」とは、ディスプレイ、プリンタ等のコンピュータシステムにおける出力装置が該当する。
【００１５】
また、「コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行う」とは、設計処理の結果、これらの各設計工程についての設計情報が、関連付けを有することを表す。すなわち、各設計工程についての設計情報が、関連付けを有するため、上流から下流までの設計工程について一貫した設計情報を取得できるのである。
【００１６】
「部品区分情報」の種類としては、例えば、会社や組織単位におけるシステム管理の部品区分情報である「プロジェクト」、システムの機能の最小単位を表す部品区分情報である「アクティビティ」、管理するデータの最小単位を表す部品区分情報である「項目」、データベースのテーブルと同様のものを表わす部品区分情報である「エンティティ」（エンティティはエンティティ関連図のノードにも該当する）、ＷＥＢブラウザ等で表示される１画面を表す部品区分情報である「画面」、部品情報としてのプログラムを管理する部品区分情報である「プログラム」、ユーザーからのリクエストやシステムからのリクエストによって発生する処理を表す部品区分情報である「イベント」、等がある。
【００１７】
また、「部品情報」とは、外部設計、内部設計、及びプログラム設計の部品となる情報であり、データやプログラム、定義情報等が該当する。「部品情報識別情報」とは、前記部品情報を識別するための情報であり、管理番号・コードや識別番号・コード等の識別子が該当する。
【００１８】
「部品区分情報」と「部品情報識別情報」とを関連付けて記憶することにより、「部品情報識別情報」が表す「部品情報」が、どの「部品区分情報」に属しているかを特定する事ができる。
【００１９】
また、「部品区分関連情報」とは、複数の前記部品区分情報についての関連付けが定義されており、個々の「複数の前記部品区分情報についての関連付け」は、プログラムの設計情報を関連付けて管理する単位となっている。
【００２０】
「部品情報識別情報について関連付けの選択を、前記入力手段を介して受け付ける」とは、出力手段（ディスプレイ等）に出力された複数の部品情報識別情報について、情報の関連付けの選択を、入力手段（マウス、キーボード、タッチパネル等）を介して受け付けるという意味である。
【００２１】
前記のように、部品情報識別情報の関連付けがプログラムの設計情報となるが、「当該選択された部品情報識別情報に直接関連付いている設計情報」とは、当該選択された部品情報識別情報を、直接関連付けに含んでいる設計情報のことである。一方、「当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報」とは、当該選択された部品情報識別情報を直接含んでいる設計情報ではないが、複数の設計情報に含まれている部品情報識別情報の関連付けの結果、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して（関連付けの結果として）、間接的に当該選択された部品情報識別情報に関連付いている設計情報をいう。概念的には、当該選択された部品情報識別情報に関連付いている設計情報を、芋づる式に特定し、当該特定した設計情報の集合を、特定のコンピュータプログラムの設計情報として記憶させるのである。よって、１の「特定のコンピュータプログラムの設計情報」は、２以上の「コンピュータプログラムの設計情報」から取得（生成）されるという関係にある。
【００２２】
以上の定義は、以下の発明にも適用される。
【００２３】
前記（１）〜（５）の設計処理により、前記一貫したコンピュータプログラムの設計のために必要となる部品区分関連情報の定義に基づいて、部品情報識別情報の関連付けである設計情報が記憶手段に記憶されていく。そして、当該設計処理を繰り返すことにより、コンピュータプログラムの設計を行ってゆき、記憶手段に記憶されている設計情報のうち、任意の部品情報識別情報に直接的、間接的に関連付いている設計情報を、特定のコンピュータプログラムの設計情報として記憶手段に記憶させる。
【００２４】
本発明を利用すると、設計者にとっては、入力手段を介して部品区分関連情報の選択を行い、処理手段が出力手段に出力した部品情報識別情報についての関連付けの選択を、入力手段を介して行うだけで、コンピュータプログラムの設計情報が記憶手段に記憶されていく。よって、従来のシステム開発支援ツールよりも操作が容易であり、使用方法について学習の手間も少ない。さらに、外部設計、内部設計、プログラム設計に関する設計情報を、何れかの部品区分に属する部品情報識別情報についての関連付けとして記憶していくため、前工程の成果物としての設計情報を、次工程に即座に活用する事ができるのである。また、設計者は、部品区分関連情報の選択を行い、処理手段が出力手段に出力した部品識別情報についての関連付けの選択を行うだけであるため、上流と下流との設計作業を複数の設計者が並行して進めることもできるのである。さらに、設計者が任意の部品情報識別情報を選択すれば、記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接的、間接的に関連付いている設計情報を、特定のコンピュータプログラムの設計情報として容易に特定、取得する事ができる。また、設計者が、記憶手段に記憶されている全ての部品区分関連情報について、処理手段が出力手段に出力した部品情報識別情報についての関連付けの選択を行えば、設計作業が終了する。よって、従来の設計作業に比較して、設計作業に伴い設計者が判断に迷う要素が格段に少なくなるため、設計作業の大幅な効率化を実現する事ができるのである。
【００２５】
２、また、他の発明に係る設計コンピュータプログラムは、情報を記憶する記憶手段と、情報を処理する処理手段と、利用者からの命令を受けつける入力手段と、利用者に情報を出力する出力手段とを備えたコンピュータシステムにおいて、コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムである。
【００２６】
また、前記コンピュータシステムの前記記憶手段は、前記外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報が属する区分を識別する部品区分情報と、個々の前記部品情報を識別する部品情報識別情報とを関連付けて記憶すると共に、前記一貫したコンピュータプログラムの設計のために必要となる、複数の前記部品区分情報についての関連付けが定義されている部品区分関連情報と、複数の前記部品情報識別情報についての関連付けであるコンピュータプログラムの設計情報とを関連付けて記憶している。
【００２７】
そして、前記コンピュータシステムの前記処理手段が、（１）任意の前記部品区分関連情報の選択を、前記入力手段を介して受け付けること、（２）当該選択された部品区分関連情報を前記記憶手段から読み出すと共に、当該読み出した部品区分関連情報に関連付いている前記設計情報を特定すること、（３）当該特定した設計情報と、前記読み出した部品区分関連情報に含まれる部品区分情報に関連付いている前記部品情報識別情報とを、前記記憶手段から読み出して前記出力手段に出力すること、（４）当該出力した部品情報識別情報について関連付けの選択を、前記入力手段を介して受け付けること、（５）前記（３）で読み出した設計情報に代わる設計情報として、当該入力された部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて前記記憶手段に記憶させること、（６）任意の前記部品情報識別情報の選択を、前記入力手段を介して受け付けること、（７）前記記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接関連付いている設計情報と、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報とを、特定のコンピュータプログラムの設計情報として前記記憶手段に記憶させること、を、前記処理手段に行わせることを特徴とする設計コンピュータプログラムである。
【００２８】
ここで、「前記（３）で読み出した設計情報に代わる設計情報として、当該入力された部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて前記記憶手段に記憶させる」とは、設計情報を更新する処理が該当する。この更新処理は、旧の設計情報（前記（３）で読み出した設計情報）を上書きすることにより更新してもよいし、旧の設計情報（前記（３）で読み出した設計情報）を削除せずに別に保存する事によって、最新の設計情報として管理することにより、更新してもよい。
【００２９】
以上の定義は、以下の発明にも適用される。
【００３０】
本発明を利用すると、設計者にとっては、入力手段を介して部品区分関連情報の選択を行い、処理手段が出力手段に出力した設計情報及び部品情報識別情報を元にして、当該部品情報識別情報についての新たな関連付けの選択を、入力手段を介して行うだけで、コンピュータプログラムの設計情報を更新することができる。よって、既存のコンピュータプログラムの設計情報を活用して、新たなコンピュータプログラムの設計を、簡便に行えるのである。また本発明では、複数の部品情報識別情報の関連付けをコンピュータプログラムの設計情報として記憶手段に記憶しており、２以上の設計情報から１の「特定のコンピュータプログラムの設計情報」が取得（生成）されるという関係にある。よって、例えば、上流の設計工程を表す部品区分関連情報に関連付いている設計情報を更新すれば、下流の設計情報を全て再利用して、新たなコンピュータプログラムの設計が行え、結果として開発工数を大幅に削減できる。よって、設計情報をテンプレート化することも可能となり、テンプレート化した設計情報の流通・販売も実現する事ができる。
【００３１】
３、また、他の発明に係る設計コンピュータプログラムは、情報を記憶する記憶手段と、情報を処理する処理手段と、利用者からの命令を受けつける入力手段と、利用者に情報を出力する出力手段とを備えたコンピュータシステムにおいて、コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムである。
【００３２】
また、前記コンピュータシステムの前記記憶手段は、前記外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報が属する区分を識別する部品区分情報と、個々の前記部品情報を識別する部品情報識別情報とを関連付けて記憶すると共に、前記一貫したコンピュータプログラムの設計のために必要となる、複数の前記部品区分情報についての関連付けが定義されている部品区分関連情報とを記憶している。
【００３３】
更に、前記コンピュータシステムの当該記憶手段は、前記設計プログラムの利用者を区分する利用者区分情報と前記部品情報識別情報を前記出力手段に出力する際の名称である名称情報との関連付けを、１の前記部品情報識別情報に対して２以上関連付けて記憶している。
【００３４】
そして、前記コンピュータシステムの前記処理手段が、（０）任意の前記利用者区分情報の入力を、前記入力手段を介して受け付けること、（１）任意の前記部品区分関連情報の選択を、前記入力手段を介して受け付けること、（２）当該選択された部品区分関連情報を前記記憶手段から読み出すと共に、当該読み出した部品区分関連情報に関連付けが定義されている前記部品区分情報を特定すること、（３）前記記憶手段において、当該特定した部品区分情報に関連付いている前記部品情報識別情報を特定し、当該特定した部品情報識別情報に関連付いている前記利用者区分情報と前記名称情報との関連付けから、前記（０）で入力された利用者区分情報と一致する利用者区分情報に関連付いている名称情報を前記記憶手段から読み出して、前記出力手段に出力すること、（４）当該出力した名称情報について関連付けの選択を、前記入力手段を介して受け付けること、（５）前記記憶手段に記憶されている部品情報識別情報と名称情報との関連付けに基づいて、当該入力された名称情報の関連付けを前記部品情報識別情報の関連付けに変換すること、（６）当該変換した部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて、前記コンピュータプログラムの設計情報として前記記憶手段に記憶させること、（７）前記（１）〜（６）の設計処理を繰り返すことにより、前記コンピュータプログラムの設計情報を前記記憶手段に記憶させていくこと、（８）前記入力手段を介して、任意の前記部品情報識別情報の選択を受け付けること、（９）前記記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接関連付いている設計情報と、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報とを、特定のコンピュータプログラムの設計情報として前記記憶手段に記憶させること、を、前記処理手段に行わせることを特徴とする設計コンピュータプログラムである。
【００３５】
ここで、「利用者区分情報」とは、設計プログラムの利用者を区分する情報であり、当該利用者区分としては、例えば、システムのユーザ企業、国内のＳＩ会社、国内の２次請けシステム会社、海外（例えば、中国、インド等）のシステム会社、設計作業担当者、等が考えられる。また、「名称情報」とは、前記部品情報識別情報を前記出力手段に出力する際の名称であり、設計プログラムの利用者が設計作業で目視により認識する名称を表す。この「名称情報」の例として、ソフトウェア開発の現場で通常用いられるような業務的、システム的な名称（管理コード等）や、システムユーザが理解しやすい名称（日本語で表現された名称）等が考えられる。
【００３６】
「利用者区分情報と名称情報との関連付けを、１の前記部品情報識別情報に対して２以上関連付けて記憶している」ので、１の前記部品情報識別情報について、利用者区分に応じて利用者に表示するための名称情報を変化させることができる。
【００３７】
ここで、「当該特定した部品情報識別情報に関連付いている前記利用者区分情報と前記名称情報との関連付けから、前記（０）で入力された利用者区分情報と一致する利用者区分情報に関連付いている名称情報」とは、前記のように利用者区分情報と名称情報との関連付けを、１の前記部品情報識別情報に対して２以上関連付けて記憶しているので、当該特定した部品情報識別情報と前記（０）で入力された利用者区分情報とから特定できる１の名称情報のことを表す。
【００３８】
「前記記憶手段に記憶されている部品情報識別情報と名称情報との関連付けに基づいて、当該入力された名称情報の関連付けを前記部品情報識別情報の関連付けに変換する」とは、当該名称情報の関連付けに含まれる名称情報を、当該名称情報に関連付いている部品情報識別情報に置換え、情報の関連付けについては維持する。これにより、名称情報の関連付けを前記部品情報識別情報の関連付けに変換することができるのである。
【００３９】
以上の定義は、以下の発明にも適用される。
【００４０】
一般的に、中規模から大規模なコンピュータプログラム（システム）の設計作業には、複数の企業が関与することが多い。例えば、基本計画（要件定義）はシステムのユーザ企業が、外部設計は国内のＳＩ会社が、内部設計やプログラム設計は国内の２次請けシステム会社が、プログラミングは海外（例えば、中国、インド等）のシステム会社が、夫々行うというようなことも珍しくない。そして、設計情報としては、ユーザ企業等が分かりやすい名称（例えば、Ａ会社販売管理システム等）で管理されているのが望ましい。一方、外注先の企業（２次請けシステム会社や海外のシステム会社等）には、ユーザ企業等を特定できる情報を設計情報に含めて渡してしまうのは、設計情報の漏洩の危険性があるため、望ましくない。また、現実に稼動しているシステムに関する既存の設計情報について再利用ができれば便利であるが、当該システムのユーザ企業以外が当該設計情報にアクセスした際に、ユーザ企業を特定できる名称で表示されるのは設計情報の漏洩の観点からやはり好ましくない。
【００４１】
本発明では、同一の部品情報識別情報に対して設計を行う場合であっても、設計コンピュータプログラムの利用者の区分に応じて、当該部品情報識別情報の表示名称である名称情報を変化する。よって、設計コンピュータプログラムの利用者の区分（ユーザ企業、国内のＳＩ会社、国内の２次請けシステム会社、海外のシステム会社、等）に応じて名称情報を異なるように、適切な設定をしておけば、設計情報の漏洩を未然に防ぐことができる。これにより、システム設計作業を分割して、当該分割した設計作業をユーザ企業が安心して外注すること等ができるため、コストを抑制でき、非常に有益である。
【００４２】
４、また、他の発明に係る設計コンピュータプログラムは、情報を記憶する記憶手段と、情報を処理する処理手段と、利用者からの命令を受けつける入力手段と、利用者に情報を出力する出力手段とを備えたコンピュータシステムにおいて、コンピュータプログラムの設計のうち、外部設計、内部設計、及びプログラム設計を一貫して行うための設計プログラムである。
【００４３】
また、前記コンピュータシステムの前記記憶手段は、前記外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報が属する区分を識別する部品区分情報と、個々の前記部品情報を識別する部品情報識別情報とを関連付けて記憶すると共に、前記一貫したコンピュータプログラムの設計のために必要となる、複数の前記部品区分情報についての関連付けが定義されている部品区分関連情報と、複数の前記部品情報識別情報についての関連付けであるコンピュータプログラムの設計情報とを関連付けて記憶している。
【００４４】
更に、前記コンピュータシステムの当該記憶手段は、前記設計プログラムの利用者を区分する利用者区分情報と前記部品情報識別情報を前記出力手段に出力する際の名称である名称情報との関連付けを、１の前記部品情報識別情報に対して２以上関連付けて記憶している。
【００４５】
そして、前記コンピュータシステムの前記処理手段が、（０）任意の前記利用者区分情報の入力を、前記入力手段を介して受け付けること、（１）任意の前記部品区分関連情報の選択を、前記入力手段を介して受け付けること、（２）当該選択された部品区分関連情報を前記記憶手段から読み出すと共に、当該読み出した部品区分関連情報に関連付いている前記設計情報を特定すること、（３）前記記憶手段において、当該読み出した部品区分関連情報に含まれる部品区分情報に関連付いている前記部品情報識別情報を特定し、当該特定した部品情報識別情報に関連付いている前記利用者区分情報と前記名称情報との関連付けから、前記（０）で入力された利用者区分情報と一致する利用者区分情報に関連付いている名称情報を前記記憶手段から読み出すこと、（４）前記（２）で特定した設計情報を前記記憶手段から読み出し、前記記憶手段に記憶されている部品情報識別情報と名称情報との関連付けに基づいて、当該読み出した設計情報を、前記（３）で読み出した名称情報の関連付けに変換すること、（５）前記（３）で読み出した名称情報と、当該変換した名称情報の関連付けとを、前記出力手段に出力すること、（６）当該出力した名称情報について関連付けの選択を、前記入力手段を介して受け付けること、（７）前記記憶手段に記憶されている部品情報識別情報と名称情報との関連付けに基づいて、当該入力された名称情報の関連付けを前記部品情報識別情報の関連付けに変換すること、（８）前記（４）で読み出した設計情報に代わる設計情報として、当該変換した部品情報識別情報の関連付けを、前記（２）で読み出した部品区分関連情報に関連付けて前記記憶手段に記憶させること、（９）任意の前記部品情報識別情報の選択を、前記入力手段を介して受け付けること、（１０）前記記憶手段に記憶されている設計情報のうち、当該選択された部品情報識別情報に直接関連付いている設計情報と、当該選択された部品情報識別情報とは異なる他の部品情報識別情報を介して当該選択された部品情報識別情報に間接的に関連付いている設計情報とを、特定のコンピュータプログラムの設計情報として前記記憶手段に記憶させること、を、前記処理手段に行わせることを特徴とする設計コンピュータプログラムである。
【００４６】
ここで、「前記（２）で特定した設計情報を前記記憶手段から読み出し、前記記憶手段に記憶されている部品情報識別情報と名称情報との関連付けに基づいて、当該読み出した設計情報を、前記（３）で読み出した名称情報の関連付けに変換する」とは、前記のように設計情報は部品情報識別情報についての関連付けであるため、当該設計情報に含まれる部品情報識別情報を、当該部品情報識別情報に関連付いている名称情報に置換え、情報の関連付けについては維持する。これにより、設計情報を名称情報の関連付けに変換することができるのである。但し、１の部品情報識別情報には、２以上の名称情報が関連付いているため、「前記（３）で読み出した名称情報」という限定を付すことにより、１の部品情報識別情報に対応する１の名称情報を特定することができるのである。
【００４７】
以上の定義は、以下の発明にも適用される。
【００４８】
本発明では、既に作成している設計情報を利用して設計を行う場合であっても、設計コンピュータプログラムの利用者の区分に応じて、部品情報識別情報の表示名称である名称情報を変化する。よって、設計コンピュータプログラムの利用者の区分（ユーザ企業、国内のＳＩ会社、国内の２次請けシステム会社、海外のシステム会社、等）に応じて名称情報を異なるように、適切な設定をしておけば、設計情報の漏洩を未然に防ぐことができる。更に、現実に稼動しているシステムに関する既存の設計情報についても、当該システムのユーザ企業と、それ以外の企業等で異なる利用者区分を割当てておけば、設計情報の漏洩を防ぎつつ、既存の設計情報についての再利用を円滑にすることができる。これは、ある企業のシステムに関する既存の設計情報を、他企業が利用して開発を短縮化すること等が可能であり、この場合でも、当該他企業は前記ある企業を特定する事ができないのである。これにより、あらゆる企業のシステムにおいても、既存の設計情報をテンプレート化して流通・販売させることができる可能性が生じるのである。
【００４９】
５、また、他の発明に係る設計コンピュータプログラムは、前記コンピュータシステムの前記記憶手段に複数存在する部品区分情報の１つとして、データ項目情報が存在し、前記記憶手段に記憶されている部品区分関連情報には、前記データ項目情報と当該データ項目情報以外の他の前記部品区分情報との関連付けが定義されている部品区分関連情報が含まれていること、を特徴とする、設計コンピュータプログラムである。
【００５０】
ここで、「データ項目情報」とは、データ項目に関する部品情報が属する部品区分情報であり、この「データ項目」は、１レコードにおけるフィールドのような小さな単位としてもよいし、複数のフィールドの集合のような大きな単位としてもよい。
【００５１】
以上の定義は、以下の発明にも適用される。
【００５２】
ＤＯＡ（データ中心アプローチ）の考え方によると、コンピュータソフトウェアをデータとプロセスに分離した場合、データは対象業務の特性に応じて安定した構造を持つのに対し、プロセスは組織構造、技術動向、業務改革などにより頻繁に変更されるという特徴がある。よって、安定した構造を持つデータに着目してシステムを設計する事が、システムの安定性、拡張性を保証するためには重要なのである。
【００５３】
上流工程と下流工程の設計作業を並行して行った場合、最も起きやすい不具合は、上流工程で作成した設計情報が下流工程では全く使用されていなかったり、逆に、下流工程で作成した設計情報が上流工程では全く定義されていなかったり、等の論理的な不整合が発生することである。しかし、本発明によると、部品区分関連情報に、データ項目情報と当該データ項目情報以外の他の前記部品区分情報との関連付けが定義されている部品区分関連情報が含まれており、上流工程と下流工程の論理的整合性を、当該データ項目情報を利用することによって担保することができる。すなわち、コンピュータプログラムは、どんな複雑なものであっても、データとプロセスに分解することができ、データは安定した構造を持つ。よって、上流工程でデータ項目情報に属する部品情報識別情報を設計情報として使用していながら、下流工程で当該部品情報識別情報を設計情報として使用していない場合は、当該上流工程における設計情報と当該下流工程における設計情報とを関連付けることにより、論理的な不整合が生じていることがはっきりとわかるのである。この逆の、下流工程でデータ項目情報に属する部品情報識別情報を設計情報として使用しているのに、上流工程では当該部品情報識別情報を設計情報として使用してない場合も、同様である。
【００５４】
６、また、他の発明に係る設計コンピュータプログラムでは、前記コンピュータシステムの前記記憶手段は、更に、コンピュータプログラムの設計に関する管理書類の区分を識別する管理書類区分情報と、１以上の前記部品区分関連情報とを関連付けて記憶している。
【００５５】
そして、前記コンピュータシステムの前記処理手段が、（１１）任意の前記管理書類区分情報の選択を、前記入力手段を介して受け付けること、（１２）当該選択された管理書類区分情報に関連付いている１以上の前記部品区分関連情報を前記記憶手段から特定すること、（１３）当該特定した１以上の部品区分関連情報に関連付いている設計情報を前記記憶手段から読み出し、管理書類データとして前記記憶手段に記憶させること、を、前記処理手段に行わせることを特徴とする、設計コンピュータプログラムである。
【００５６】
ここで、「管理書類区分情報」とは、コンピュータプログラムの設計に関する管理書類の区分を識別する情報であり、この管理書類の区分の例として、エンティティとエンティティ間のリレーションシップとを表す管理書類の区分である「エンティティ関連図」、データフローダイアグラムを表す管理書類の区分である「データフロー図」、表示される画面の遷移を表す管理書類の区分である「画面遷移図」、ボタンや入出力項目等が実際に画面上でどのように配置・表示されるかを表す管理書類の区分である「画面モックアップ図」、等が考えられる。「管理書類データ」とは、１以上の設計情報から構成される情報であり、管理書類として出力する為の元データである。
【００５７】
以上の定義は、以下の発明にも適用される。
【００５８】
一般的には、「エンティティ関連図」、「データフロー図」、「画面遷移図」、「画面モックアップ図」等のシステム設計に関する管理書類を事前に作成し、当該管理書類に沿って実際の設計作業をすることが行われている。この場合、バグの発生などにより先に設計情報に修正を行う際には、管理書類も併せて修正する必要があり、不整合が生じてしまう可能性がある。しかし、本発明によると、既に設計された設計情報を元にして、管理書類データを生成することができるため、このような不整合が生じる可能性を大幅に減らす事ができる。また、わざわざ管理書類を更新する手間が省けるため、システムメンテナンスも容易になり、システムメンテナンスの工数を削減する事ができる。
【００５９】
７、また、他の発明に係る設計コンピュータプログラムでは、前記コンピュータシステムの記憶手段に複数存在する部品区分情報の１つとして、プロセス項目情報が存在し、当該プロセス項目情報に関連付いて前記記憶手段に記憶されている部品情報識別情報には、前記部品情報としてのプログラム情報が関連付けられて前記記憶手段に記憶されている。また、前記データ項目情報に関連付いて前記記憶手段に記憶されている部品情報識別情報には、前記部品情報としてのデータ情報が関連付けられて前記記憶手段に記憶されており、前記記憶手段に記憶されている部品区分関連情報には、前記データ項目情報と前記プロセス項目情報との関連付けを含んで定義されているプログラム部品区分関連情報が含まれている。また、当該プログラム部品区分関連情報には、前記コンピュータプログラムの設計情報が関連付けて前記記憶手段に記憶されている。
【００６０】
そして、前記コンピュータシステムの前記処理手段が、（１４）前記記憶手段に記憶されているプログラム部品区分関連情報に関連付いている設計情報から取得された設計情報が、前記記憶手段に記憶された特定のコンピュータプログラムの設計情報に含まれているか否かを判断すること、（１５）含まれていると判断した場合に、当該プログラム部品区分関連情報に関連付いている設計情報から取得された設計情報に含まれる部品情報識別情報を特定し、当該特定した部品情報識別情報に関連付いている前記プログラム情報と前記データ情報とを前記記憶手段から読み出すこと、（１６）前記特定した部品情報識別情報に基づき、当該読み出したプログラム情報とデータ情報とを前記特定のコンピュータプログラムの設計情報に関連付けて前記記憶手段に記憶させることにより、特定のコンピュータプログラムを生成すること、を、前記処理手段に行わせることを特徴とする設計コンピュータプログラムである。
【００６１】
前記「データ項目情報」に区分されている部品情報として「データ情報」が存在し、当該「データ情報」はデータ項目に関する部品情報である。また、この「データ情報」には部品情報の属性情報が含まれ、この属性情報の例として、ｈｔｍｌファイルにおけるタグの属性（ＴＥＸＴ、ＳＥＬＥＣＴ、ＢＵＴＴＯＮ等）を表す「デフォルトタグ」、当該「デフォルトタグ」以外の属性（文字サイズ等）を表す「タグの付加属性」、等が考えられる。この「デフォルトタグ」や「タグの付加属性」は目的に合わせて２つ以上の「デフォルトタグ」や「タグの付加属性」を持つことができる。例えば、システムの管理者が顧客マスタに登録を行うための顧客情報の新規登録画面と、顧客自らが顧客マスタに登録を行うための顧客情報の新規登録画面とは、同じ顧客マスタのテーブルに新規レコードを挿入する処理画面である。しかし、利用者の立場が異なる為、画面の項目の表示方法や入力方法を、夫々の利用者に応じて変化させた方が良い場合がある。従って「デフォルトタグ」を目的により複数登録しておいて、「デフォルトタグ」を目的に合わせて切り替えれば目的に合った操作性の高い画面を簡単に作成できる。これを実現するには、「データ情報」に、「デフォルトタグ」と「タグの付加属性」との関連付けを複数有していればよい。
【００６２】
そして、「データ情報」が表すデータ項目に対する処理、命令、定義に関する部品情報が「プログラム情報」である。そして、当該「プログラム情報」が属する部品区分情報として、「プロセス項目情報」が存在する。「データ情報」が表すデータ項目に対する処理、命令、定義とは、例えば、Ａデータ項目の値＋Ｂデータ項目の値＝Ｃデータ項目の値、Ａデータ項目の値×１．０５の結果の値をＢデータ項目に出力する、Ａデータ項目の値とＢデータ項目の値とを比較して、高いほうの値をＣデータ項目に格納する、等である。
【００６３】
「プログラム部品区分関連情報」とは、前記部品区分関連情報の1つであり、少なくとも、前記部品区分としての「データ項目情報」と「プロセス項目情報」との関連付けを含んで定義されている。この「プログラム部品区分関連情報」に関連付いているコンピュータプログラムの設計情報は、「データ情報」と「プログラム情報」との関連付けを含んでいるため、コンピュータプログラムをどのように生成すればよいかを特定できるのである。すなわち、コンピュータプログラムは、データ中心の思想（ＤＯＡ）によると、データ項目から取得したデータを利用・加工したデータを、他のデータ項目に格納する処理（プロセス）として把握する事ができる。よって、「データ情報」が表すデータ項目に対する処理、命令、定義を、どのデータ項目に対して行うかということが特定できれば、コンピュータプログラムのソースを生成することができるのである。
【００６４】
図８を使用してこれを詳しく説明する。同図は、（１）画面を介して動作するプログラム、（２）帳票としてデータを出力するプログラム、（３）バッチ処理として動作するプログラム、の概念図を示したものである。まず、同図の中段の（２）帳票としてデータを出力するプログラム、について説明する。データの最小管理単位としてデータ項目「項目」が存在し、当該データ項目の集合として「テーブル」が存在する。そして、この「テーブル」を管理単位として、ＤＢの形式により、ＨＤＤ等の記憶装置に情報が記憶されている。帳票としてデータを出力するプログラムは、この「テーブル」から「ルール」に従って情報を取得する。「ルール」とは、例えば、「テーブルから１００レコードの情報を読み出す」や、「ＡテーブルのＢ項目のうち、値が１００以上のものを取得する」、等の規則である。そして、ＤＢから実際に情報を取得するには、「クエリー」を利用して読み出す。読み出した情報は、また「ルール」によって、情報加工して、「帳票」に出力する。「帳票」に出力する際の「ルール」の例としては、「Ａ項目の値＋Ｂ項目の値＝Ｃ項目の値」や、「帳票のレイアウトとして、Ｃ項目、Ｂ項目、Ａ項目、の順に表示する」、等の規則である。この「帳票」もまた、データ項目の集合として表現することができる。
【００６５】
次に、同図の下段の（３）バッチ処理として動作するプログラム、について説明する。（２）帳票と同様に、「クエリー」を利用して「項目」の集合である「テーブル」から読み出した情報を、「ルール」に従って情報加工し、「項目」の集合である「ファイル」という形式でアウトプットする。逆に、「ファイル」から取得した情報を、「ルール」に従って情報加工し、「クエリー」を利用して「項目」の集合である「テーブル」に格納することもできる。さらに、「ファイル」から取得した情報を、「ルール」に従って情報加工し、違った「ファイル」として情報を出力することもできる。
【００６６】
最後に、同図の上段の（１）画面を介して動作するプログラム、について説明する。（２）帳票や、（３）バッチ処理とほとんど同様なのであるが、（１）画面を介して動作するプログラムは、オンラインでの対話型で処理をするという違いがある。よって、画面上に配置された入力項目（テキストボックス）や表示項目（ラベル）等の「項目」の集合である「外部データ源」と、ユーザにより画面上に配置されたボタンが押下されたことなどの、処理のトリガーを表す「イベント」とが、含まれている。しかしながら、「外部データ源」も「ファイル」や「帳票」と同じく「項目」の集合として把握することができるし、「イベント」についても、当該「イベント」がなんらかの処理のトリガーとなるため、処理の振り分けの役割を果たすものとして把握できる。よって、何らかの「イベント」が発生した場合は、対応する「ルール」に従って情報加工等を行えばよい。
【００６７】
以上、図８を使用して説明したが、（１）オンライン系（画面）のプログラムも、（２）帳票に出力するプログラムも、（１）バッチのプログラムも、全て、所定のデータ項目から取得したデータを利用・加工したデータを、他のデータ項目に格納する処理（プロセス）として把握する事ができるのである。よって、どのデータ（「項目」）に対してどのようなプロセス（「ルール」）を行うか、ということが分かれば、コンピュータプログラムの生成ができるのである。
【００６８】
本発明によると、前記プログラム部品区分関連情報に関連付いているコンピュータプログラムの設計情報に基づいて、前記記憶手段に記憶されているプログラム情報とデータ情報とを特定する。そして、当該特定したプログラム情報とデータ情報とを前記特定のコンピュータプログラムに関連付けることにより、特定のコンピュータプログラムを生成する。よって、設計コンピュータプログラムにより設計した設計情報を元にして、コンピュータプログラムの生成が行えるため、利用者にとっては、コンピュータプログラムの設計を行うだけで、コンピュータプログラムのソースを取得することができる。また、外部設計、内部設計、及びプログラム設計に関する設計情報を事前に作成しておけば、コンピュータプログラムの生成までが可能であるので、上流の設計工程から下流の実装までを、共通した開発環境で提供できるのである。さらに、プログラム情報とデータ情報とを、コンピュータプログラム言語（ＶＢ、Ｃ、ＣＯＢＯＬ等）毎に用意しておけば、設計情報は共通のものであっても、異なるコンピュータプログラム言語でのコンピュータプログラムのソース生成が可能である。このように、従来に比して、開発環境の生産性を高める事ができるのである。
【発明の効果】
【００６９】
以上のように、本発明を利用すると、設計者にとっては、入力手段を介して部品区分関連情報の選択を行い、処理手段が出力手段に出力した部品情報識別情報についての関連付けの選択を、入力手段を介して行うだけで、コンピュータプログラムの設計情報が記憶手段に記憶されていく。よって、従来のシステム開発支援ツールよりも操作が容易であり、使用方法について学習の手間も少ない等の、上記記載した従来の設計コンピュータプログラムに比較した有利な効果を奏するという、従来にない優れた設計コンピュータプログラムを提供することができるのである。
【００７０】
このような従来に比べて優れている、本発明に係るソフトウェア開発手法を、ＯＤＭ（オープン化開発メソドロジー）と名付けることとした。オープン化開発メソドロジー（Open Development Methodology: ODM）とは、上記説明したように、Ｗｅｂアプリケーション開発専用のデータフローから運用・保守までをカバーするオープンな開発環境を提供するもので、標準化、開発工数・期間の短縮を可能とするものである。従来ソフトウェア業界は建築業のような揺るぎのない設計手法が存在しなかったが、本発明はソフトウェアの設計開発に仕様を単純で且つ強固な設計構造を確立させることを目的としたものであり、ＯＤＭの柱となるツールとして実現した発明である。本発明の保護及び利用により、産業の発達という、特許法の法目的が達成されるものと思料する。
【発明を実施するための最良の形態】
【００７１】
以下、本発明の実施形態を、図面を参照しつつ説明する。
【００７２】
１、本発明の実施の構成について
【００７３】
（１）図５１は、本発明に係る設計コンピュータプログラムを含むコンピュータシステムが、複数存在する場合の全体構成図である。同図に示すように、複数のコンピュータシステム１は、通信ネットワーク２を介して接続されている。本発明に係る設計コンピュータプログラムは、ローカルのコンピュータシステム１のみでの実行（設計作業）も可能であるが、このような構成とすることで、設計作業を複数の拠点で同時並行的に行うことができるのである。例えば、特定のコンピュータプログラムについて、上流設計工程は日本で行い、下流設計工程は中国で行う、等の実施も可能である。設計作業を複数の拠点で同時並行的に行う場合は、後述するコンピュータプログラムの設計情報を１のコンピュータシステム１で集中管理し、他のコンピュータシステム１は当該集中管理されている設計情報を共有して利用すればよい。これにより、設計作業における成果物としての設計情報の、論理的整合性が担保される。
【００７４】
図５１における構成要素を更に詳述すると、コンピュータシステム１は、パーソナルコンピュータ、サーバコンピュータ等のコンピュータシステムである。また、通信ネットワーク２は、インターネットやフレームリレー、無線通信網等の、電気的な通信を行うことができるネットワークである。
【００７５】
（２）次に、図５２に基づいて、図５１のコンピュータシステム１のハードウェア構成について説明する。コンピュータシステム１は同図に示すように、通信インターフェースであるＮＩＣ１１と、出力装置であるディスプレイ１２と、入力装置であるキーボード等１５と、記憶装置であるメモリ１４及びハードディスク１６と、これらを制御する演算装置（コンピュータ）であるＣＰＵ１３とから構成されている。これら各構成要素はバス１７により接続されており、相互に通信を行えるように構成されている。また、ハードディスク１６には、ＯＳ・アプリケーションプログラム１６ａと、部品区分情報１６ｂと、部品情報識別情報１６ｃと、部品区分関連情報１６ｄと、コンピュータプログラムの設計情報１６ｅと、利用者区分情報１６ｆと、名称情報１６ｇと、管理書類区分情報１６ｈと、設計コンピュータプログラム１６ｉとを、ファイルやデータベースの形式により記憶している。
【００７６】
そして、ＣＰＵ１３が、ハードディスク１６に記憶されている各情報（１６ａ〜１６ｉ）を、ハードディスク１６からメモリ１４に読み込むことにより、プログラムやデータの解釈・実行を行なう。このＣＰＵ１３が、ＯＳ・アプリケーションプログラム１６ａを解釈し、実行する事により、コンピュータシステム１は動作する。また、ＣＰＵ１３が、設計コンピュータプログラム１６ｉを解釈し、実行する事により、本発明に係る設計処理が行なわれるのである。そして、プログラムの実行結果等を表示する際には、ＣＰＵ１３が当該実行結果をディスプレイ１２に表示することにより行う。更に、利用者からの指示命令は、キーボード等１５を介してＣＰＵ１３が受け付ける。また、コンピュータシステム１が他のコンピュータシステム１と通信する際には、ＣＰＵ１３の命令により、通信インターフェースであるＮＩＣ１１を介して通信を行なう。ここで、キーボード等１５は、一般的にコンピュータシステムにおいて使用されているマウス等を含む。また、ＯＳ・アプリケーションプログラム１６ａは、コンピュータシステム１を動作させるためのＯＳと、各種機能（他システムとの通信機能、ディスプレイへの表示機能等）を利用者に提供する為のアプリケーションプログラムを表している。さらに、当該ＯＳ・アプリケーションプログラム１６ａには、各種アプリケーションプログラムが使用するデータの情報も含まれる。
【００７７】
（３）続いて、記憶装置であるハードディスク１６に記憶されている各情報（１６ｂ〜１６ｈ）の相互の関連付けについて、図５３を使用して説明する。
【００７８】
「部品情報識別情報１６ｃ」は、外部設計、内部設計、及びプログラム設計に関して使用するプログラム開発の部品としての部品情報を識別する情報である。そして、「部品情報識別情報１６ｃ」には、部品情報が属する区分を識別する「部品区分情報１６ｂ」が関連付けて記憶されており、この関連付けにより「部品情報識別情報１６ｃ」が属する「部品区分情報１６ｂ」を特定することができる。例えば、図５３において、「Ａ」の「部品区分情報１６ｂ」には、「ａ１、ａ２、ａ３」の「部品情報識別情報１６ｃ」が属しており、「Ｂ」の「部品区分情報１６ｂ」には、「ｂ１、ｂ２、ｂ３」の「部品情報識別情報１６ｃ」が属していることが分かる。
【００７９】
また、「利用者区分情報１６ｆ」と「名称情報１６ｇ」との関連付けが、１の「部品情報識別情報１６ｃ」に対して２以上関連付けて記憶されている。「利用者区分情報１６ｆ」とは、設計コンピュータプログラムの利用者を区分する情報であり、「名称情報１６ｇ」とは、部品情報識別情報を出力手段に出力する際の名称である。この関連付けにより、「部品情報識別情報１６ｃ」と「利用者区分情報１６ｆ」とを特定することによって、１の「名称情報１６ｇ」を特定することができる。また、１の「部品情報識別情報１６ｃ」であっても、「利用者区分情報１６ｆ」に応じて、異なった「名称情報１６ｇ」を関連付けることができる。例えば、図５３において、「ａ１」の「部品情報識別情報１６ｃ」には、「利用者１」の「利用者区分情報１６ｆ」と「名称１」の「名称情報１６ｇ」との関連付けと、「利用者２」の「利用者区分情報１６ｆ」と「名称２」の「名称情報１６ｇ」との関連付けと、が関連付いていることがわかる。
【００８０】
「部品区分情報１６ｂ」についての関連付けを定義しているのが「部品区分関連情報１６ｄ」である。そして、「部品区分関連情報１６ｄ」に定義されている複数の「部品区分情報１６ｂ」についての関連付けは、外部設計、内部設計、及びプログラム設計について一貫したコンピュータプログラムの設計のために必要となるものである。例えば、図５３において、「ＡＢ」の「部品区分関連情報１６ｄ」には、「Ａ」の「部品区分情報１６ｂ」と「Ｂ」の「部品区分情報１６ｂ」との関連付けが定義されており、「ＢＣＤ」の「部品区分関連情報１６ｄ」には、「Ｂ」の「部品区分情報１６ｂ」と「Ｃ」の「部品区分情報１６ｂ」と「Ｄ」の「部品区分情報１６ｂ」との関連付けが定義されていることがわかる。
【００８１】
また、この「部品区分関連情報１６ｄ」には、「コンピュータプログラムの設計情報１６ｅ」が関連付けて記憶されている。この「コンピュータプログラムの設計情報１６ｅ」は、複数の「部品情報識別情報１６ｃ」についての関連付けである。例えば、図５３において、「ＡＢ」の「部品区分関連情報１６ｄ」には、「ａ１−ｂ１、ａ１−ｂ２、ａ２−ｂ３」の「コンピュータプログラムの設計情報１６ｅ」が関連付けられており、「ＢＣＤ」の「部品区分関連情報１６ｄ」には、「ｂ１−ｃ１、ｂ１−ｃ２、ｂ３−ｃ３、ｃ１−ｄ１、ｃ２−ｄ２、ｃ２−ｄ３」の「コンピュータプログラムの設計情報１６ｅ」が関連付けられていることがわかる。
【００８２】
「管理書類区分情報１６ｈ」とは、コンピュータプログラムの設計に関する管理書類の区分を識別する情報であり、当該「管理書類区分情報１６ｈ」は１以上の「部品区分関連情報１６ｄ」と関連付いている。例えば、図５３において、「ＡＢ・ＢＣＤ」の「管理書類区分情報１６ｈ」には、「ＡＢ」の「部品区分関連情報１６ｄ」と「ＢＣＤ」の「部品区分関連情報１６ｄ」とが関連付けられていることがわかる。
【００８３】
（４）続いて、記憶装置であるハードディスク１６に記憶されている各情報（１６ｂ〜１６ｈ）の具体的な例について、更に説明する。
【００８４】
（５）図１及び図２は、「部品区分情報１６ｂ」と、当該「部品区分情報１６ｂ」についての関連付けを定義している「部品区分関連情報１６ｄ」との、具体的な例である。このうち、図１では、上流設計工程であるコンピュータプログラムの論理設計（主に外部設計と内部設計）についての構造図を、図２では、下流設計工程であるコンピュータプログラムの物理設計（主にプログラム設計）についての構造図を、夫々図示した。図１における、「プロジェクト」、「サブシステム」、「機能」、「アクティビティ」、…等の四角で囲まれている文字が、個々の「部品区分情報１６ｂ」を表す。また、これら個々の「部品区分情報１６ｂ」を関連付けている線が、「部品区分関連情報１６ｄ」を概念的に表したものである。この記載方法は、図２においても同様で、「画面プログラム」、「ルール」、「状態」、「アクション」、…等の四角で囲まれている文字が、個々の「部品区分情報１６ｂ」を表し、これら個々の「部品区分情報１６ｂ」を関連付けている線が、「部品区分関連情報１６ｄ」を概念的に表したものである。
【００８５】
図１における上流設計工程である論理設計と、図２における下流設計工程である物理設計とは、それぞれ独立しているのではなく、共通している「部品区分情報１６ｂ」を介して、両設計情報は関連付けを有している。すなわち、図１及び図２では、「項目」、「画面」、「帳票」、「ファイル」、「アクション」、「状態」、「ルール」、…という共通している「部品区分情報１６ｂ」が存在しているため、これら「部品区分情報１６ｂ」を介して両設計情報は関連付いているのである。よって、図１における上流設計工程である論理設計から、図２における下流設計工程である物理設計までの設計を行うことにより、外部設計、内部設計、及びプログラム設計に関して論理的に一貫した設計が行われることになるのである。
【００８６】
図１及び図２における「部品区分情報１６ｂ」として、どのような項目を採用すべきかであるが、例えば、図１及び図２では、「機能」、「誰が」、「何が」、「何を」、…のように、５Ｗ１Ｈを基本として、「部品区分情報１６ｂ」を任意に設定している。すなわち、基本的には、「部品情報識別情報１６ｃ」を区分して管理したい任意の「部品区分情報１６ｂ」を採用してよい。但し、前述したように、ＤＯＡ（データ中心アプローチ）の考え方によると、コンピュータソフトウェアをデータとプロセスに分離した場合、データは対象業務の特性に応じて安定した構造を持つプロセスは組織構造、技術動向、業務改革などにより頻繁に変更されるという特徴がある。よって、データに関する「部品区分情報１６ｂ」を、図１における上流設計工程である論理設計と、図２における下流設計工程である物理設計との、共通する「部品区分情報１６ｂ」として設定しておくと、上流工程と下流工程の論理的整合性を、当該データに関する「部品区分情報１６ｂ」を利用することによって担保することができる。図１及び図２におけるデータに関する「部品区分情報１６ｂ」としては、「項目」が該当する。また、図１及び図２における「部品区分情報１６ｂ」として、どのような項目を採用すべきか、については、図９〜図１３に図示する資料をまとめ、その結果として図１及び図２に示す項目を採用した。すなわち、図９及び１０については、論理設計の構造マトリックスにより、システムを分析し、物理設計の構造マトリックスにより、システムを分析したものである。この結果、図１及び図２における「部品区分情報１６ｂ」としての項目が適切であると判断し、決定した。
【００８７】
また、「部品区分情報１６ｂ」としての項目には、属性の情報を含ませて設定してもよい。例として、図１における「部品区分情報１６ｂ」としての項目（「プロジェクト」、「サブシステム」、「機能」、「アクティビティ」、「ロール」、「画面」、「画面遷移」、…）に属性と、属性項目を設定したものである。同図に示すように、様々な属性（業種、業務、対象領域、利用頻度、対象データ、…）について、属性項目（金融、販売、製造、…）を設定することにより、既作成の設計情報を簡便に検索できるようになるのである。すなわち、「部品区分情報１６ｂ」に属性と属性項目とを含ませる事により、検索キーとして利用できるのである。
【００８８】
（６）図３〜６は、図１及び図２における「部品区分情報１６ｂ」についての関連付けを定義している「部品区分関連情報１６ｄ」の、具体的な例である。そして、図１の論理設計における「部品区分情報１６ｂ」についての関連付けを定義している「部品区分関連情報１６ｄ」を図３及び４に図示し、図２の物理設計における「部品区分情報１６ｂ」についての関連付けを定義している「部品区分関連情報１６ｄ」を図５及び６に図示している。図３〜６に示すように、図１及び図２における「部品区分情報１６ｂ」のうち、２つの「部品区分情報１６ｂ」が関連付いて１の「部品区分関連情報１６ｄ」が構成されている。図３、４における、Ｌ１、Ｌ２、Ｌ３、…、が個々の「部品区分関連情報１６ｄ」を表しており、図５、６における、Ｐ１、Ｐ２、Ｐ３、…、が個々の「部品区分関連情報１６ｄ」を表している。例えば、図３におけるＬ１の「部品区分関連情報１６ｄ」では、「プロジェクト」という「部品区分情報１６ｂ」と「サブシステム」という「部品区分情報１６ｂ」との関連付けを定義しており、Ｌ２の「部品区分関連情報１６ｄ」では、「サブシステム」という「部品区分情報１６ｂ」と「機能」という「部品区分情報１６ｂ」との関連付けを定義している。このように、「部品区分関連情報１６ｄ」には「部品区分情報１６ｂ」の関連付けが定義されており、１の「部品区分情報１６ｂ」を複数の「部品区分関連情報１６ｄ」において定義されているため、「部品区分関連情報１６ｄ」を通じて、各「部品区分情報１６ｂ」が関連付いているのである。
【００８９】
（７）図１３〜２０は、図３及び４に図示した論理設計における「部品区分関連情報１６ｄ」と、当該「部品区分関連情報１６ｄ」に関連付いている「コンピュータプログラムの設計情報１６ｅ」とを図示している。図１３〜２０における、Ｌ１、Ｌ２、Ｌ３、…、は、「部品区分関連情報１６ｄ」を表しており、図３及び４に図示した、Ｌ１、Ｌ２、Ｌ３、…、の「部品区分関連情報１６ｄ」と同じものを表現している。すなわち、図３及び４に図示した「部品区分関連情報１６ｄ」を更に詳細に図示しているのが、図１３〜２０なのである。
【００９０】
例として、図１３におけるＬ１の「部品区分関連情報１６ｄ」について説明する。図３と同様に、Ｌ１の「部品区分関連情報１６ｄ」では、「プロジェクト」という「部品区分情報１６ｂ」と「サブシステム」という「部品区分情報１６ｂ」との関連付けを定義していることが図１３に示されている。これに加え、「プロジェクト」という「部品区分情報１６ｂ」には、「販売管理」という「部品情報識別情報１６ｃ」が関連付いており、「サブシステム」という「部品区分情報１６ｂ」には、「受注管理」という「部品情報識別情報１６ｃ」と「発注管理」という「部品情報識別情報１６ｃ」とが関連付いていることが、図示されている。そして、当該「販売管理」という「部品情報識別情報１６ｃ」と、「受注管理」及び「発注管理」という「部品情報識別情報１６ｃ」との、マトリックス上に「〇」印が存在しているため、これら「部品情報識別情報１６ｃ」について関連付けが存在している事がわかる。この「部品情報識別情報１６ｃ」について関連付けが、「コンピュータプログラムの設計情報１６ｅ」なのである。
【００９１】
以上より、図１３におけるＬ１からは、当該Ｌ１の「部品区分関連情報１６ｄ」には「プロジェクト」という「部品区分情報１６ｂ」と「サブシステム」という「部品区分情報１６ｂ」との関連付けを定義されており、「プロジェクト」という「部品区分情報１６ｂ」には「販売管理」という「部品情報識別情報１６ｃ」が属しており、「サブシステム」という「部品区分情報１６ｂ」には「受注管理」及び「発注管理」という「部品情報識別情報１６ｃ」が属していることが分かる。さらに、当該Ｌ１の「部品区分関連情報１６ｄ」には、「販売管理」という「部品情報識別情報１６ｃ」と、「受注管理」及び「発注管理」という「部品情報識別情報１６ｃ」との関連付けである「コンピュータプログラムの設計情報１６ｅ」を、関連付けて記憶していることが分かる。
【００９２】
図１３〜２０におけるＬ１以外の、Ｌ２、Ｌ３、…、の「部品区分関連情報１６ｄ」についても同様である。このようにして、上流設計工程から下流設計工程まで、複数の「部品区分関連情報１６ｄ」が存在し、共通する「部品区分情報１６ｂ」を介して、一貫した「コンピュータプログラムの設計情報１６ｅ」が管理、記憶できるのである。図１３におけるＬ１においては、「部品情報識別情報１６ｃ」に関してのマトリックス上に「〇」印が存在する事により、「部品情報識別情報１６ｃ」の関連付けを表現していたが、図１３のＬ６やＬ７のように、「登録」、「参照」、「更新」、「出力」と「ＣＲＵＤ」というような、更に具体的に当該関連付けを表現することもできる。「登録」とはデータを登録する関係にあることを、「参照」とはデータを参照する関係にあることを、「更新」とはデータを更新する関係にあることを、「出力」とはデータを出力する関係にあることを、「ＣＲＵＤ」とはデータを登録、参照、更新と削除する関係にあることを、夫々表している。同様に、図１５のＬ１２のように、「部品情報識別情報１６ｃ」の関連付けを「−」で表現したり、図１７のＬ１７のように、「入出力」、「コマンドボタン」、「隠れ」というようにして「部品情報識別情報１６ｃ」の関連付けを具体的に表現することもできる。さらに、図１７のＬ２４のように、「Ｚ：１」、「１：Ｎ」、というデータ関係を「部品情報識別情報１６ｃ」の関連付けとして、表現することもできる。ここで表現の「Ｚ：１」はゼロ個以上対１を意味し、「１：Ｎ」は１対１個以上を意味する。「入出力」とはデータを入出力する関係にあることを、「コマンドボタン」とはコマンドボタンとして画面上に配置される関係にあることを、「隠れ」とは画面上には表示されない関係にあることを、夫々表している。
【００９３】
（８）図２２は、「管理書類区分情報１６ｈ」に基づいて生成した管理書類データを概念的に表現したものであり、（ａ）データフロー図と、（ｂ）画面遷移、（ｃ）エンティティ関連図、（ｄ）画面モックアップ、の各書類がある。（ａ）データフロー図については、Ｌ６とＬ２０との夫々の「部品区分関連情報１６ｄ」に関連付いている「コンピュータプログラムの設計情報１６ｅ」から生成できる。すなわち、Ｌ２０の「部品区分関連情報１６ｄ」に関連付いている「コンピュータプログラムの設計情報１６ｅ」から特定の「エンティティ関係範囲定義」に関連付いている「エンティティ」を特定し、当該特定した「エンティティ」に関連付いている「アクティビティ」をＬ６から特定することにより、図２２の（ａ）データフロー図を生成する管理書類データが取得できるのである。よって、（ａ）データフロー図を生成する管理書類データを取得する為には、Ｌ６とＬ２０との「部品区分関連情報１６ｄ」と、「データフロー」という「管理書類区分情報１６ｈ」が関連付いていればよい。
【００９４】
（ａ）データフロー図と同様に、（ｂ）画面遷移は、Ｌ１９とＬ２３との夫々の「部品区分関連情報１６ｄ」に関連付いている「コンピュータプログラムの設計情報１６ｅ」から生成できる。よって、（ｂ）画面遷移を生成する管理書類データを取得する為には、Ｌ１９とＬ２３との「部品区分関連情報１６ｄ」と、「画面遷移」という「管理書類区分情報１６ｈ」が関連付いていればよい。また、（ｃ）エンティティ関連図は、Ｌ２０とＬ２４との夫々の「部品区分関連情報１６ｄ」に関連付いている「コンピュータプログラムの設計情報１６ｅ」から生成できる。よって、（ｃ）エンティティ関連図を生成する管理書類データを取得する為には、Ｌ２０とＬ２４との「部品区分関連情報１６ｄ」と、「画面遷移」という「管理書類区分情報１６ｈ」が関連付いていればよい。
【００９５】
（ｄ）画面モックアップは、Ｌ１２とＬ１７との夫々の「部品区分関連情報１６ｄ」に関連付いている「コンピュータプログラムの設計情報１６ｅ」から生成できる。よって、（ｄ）画面モックアップを生成する管理書類データを取得する為には、Ｌ１２とＬ１７との「部品区分関連情報１６ｄ」と、「画面遷移」という「管理書類区分情報１６ｈ」が関連付いていればよい。この（ｄ）画面モックアップを生成する管理書類データを取得する処理について、図２１のフローを元にして、更に説明する。まず、Ｌ１２の「画面」の「部品区分情報１６ｂ」に属している画面の「部品情報識別情報１６ｃ」を選択し（Ｓ２１０１）、選択した画面の「部品情報識別情報１６ｃ」に関連付いている「項目」の「部品区分情報１６ｂ」に属する「部品情報識別情報１６ｃ」と「画面レイアウト」の「部品区分情報１６ｂ」に属する「部品情報識別情報１６ｃ」とをＬ１２とＬ１７とから特定し、取得する（Ｓ２１０２ａ、ｂ）。そして、Ｌ１７で特定した「画面レイアウト」の「部品区分情報１６ｂ」に属する「部品情報識別情報１６ｃ」について、Ｓ２１０３〜Ｓ２１０８までの処理を繰り返す事により、（ｄ）画面モックアップを生成する管理書類データを取得できる。基本的には、Ｌ１７で特定した「画面レイアウト」の「部品区分情報１６ｂ」に属する「部品情報識別情報１６ｃ」の指定（例えば、単数横線なし、単数横、複数横、等）どおりに画面を展開していけばよい。この「単数横線なし」とは、図２２における（ｄ）画面モックアップの「タイトル」のように、囲み線がなく横文字であることを表し、「単数横」とは、図２２における（ｄ）画面モックアップの「顧客コード」のように、囲み線がある横文字であることを表し、「複数横」とは、図２２における（ｄ）画面モックアップの「受注明細番号」のように、囲み線がある横文字で、かつ、複数行のレコードが存在することを表す。また、Ｌ１７のコンピュータプログラムの設計情報としての、「部品情報識別情報１６ｃ」の関連付けが表しているように、「コマンドボタン」、「入出力」、「隠れ」、「参照」、についても、夫々が表しているように、図２２における（ｄ）画面モックアップが表示されている。
【００９６】
（９）図２８〜３５は、図５及び６に図示した物理設計における「部品区分関連情報１６ｄ」と、当該「部品区分関連情報１６ｄ」に関連付いている「コンピュータプログラムの設計情報１６ｅ」との一部を図示している。図２８〜３５における、Ｐ８、Ｌ３２、Ｌ３７、…、は、「部品区分関連情報１６ｄ」を表しており、図５及び６に図示した、Ｐ８、Ｌ３２、Ｌ３７、…、の「部品区分関連情報１６ｄ」と同じものを表現している。すなわち、図５及び６に図示した「部品区分関連情報１６ｄ」を更に詳細に図示しているのが、図２８〜３５なのである。
【００９７】
また、図２４〜２７は、図２８〜３５に図示した「部品区分関連情報１６ｄ」に含まれている「部品区分情報１６ｂ」に属する「部品情報識別情報１６ｃ」に、どのような内容の部品情報が関連付いているかを図示している。この図２４〜３５についての、「部品区分関連情報１６ｄ」と「部品情報識別情報１６ｃ」との関連は、図２３に図示している。
【００９８】
２、本発明のフローについて
【００９９】
（１）続いて、本発明に係る設計コンピュータプログラム１６ｉを、コンピュータシステム１のＣＰＵ１３が解釈・実行して行う設計処理の動作フローについて説明する。まず、コンピュータプログラムの設計情報１６ｅを新規作成する場合について説明する。
【０１００】
まず、ＣＰＵ１３が、任意の利用者区分情報１６ｆの入力を、入力装置であるキーボード等１５を介して受け付ける（Ｓ０）。この利用者区分情報１６ｆとして、利用者認証用のＩＤ・パスワードのうち、ＩＤの情報を利用することが考えられる。ここでは、「利用者１」という利用者区分情報１６ｆが入力されたこととする。次に、ＣＰＵ１３が、任意の部品区分関連情報の選択を、入力装置であるキーボード等１５を介して受け付ける（Ｓ１）。例えば、図３〜６に図示されているような、部品区分関連情報１６ｄのうち、任意の部品区分関連情報１６ｄの選択を、コンピュータシステム１の利用者が行うのである。
【０１０１】
続いて、ＣＰＵ１３は、当該選択された部品区分関連情報１６ｄを記憶装置であるハードディスク１６から読み出すと共に、当該読み出した部品区分関連情報１６ｄに関連付けが定義されている部品区分情報１６ｂを特定する（Ｓ２）。例えば、図３における「プロジェクト」と「サブシステム」との関連付けが定義されている部品区分関連情報１６ｄにおいては、「プロジェクト」と「サブシステム」という部品区分情報１６ｂを特定できる。また、図５３におけるハードディスク１６の、「ＡＢ」という部品区分関連情報１６ｄにおいては、「Ａ」と「Ｂ」という部品区分情報１６ｂを特定できる。
【０１０２】
続いて、ＣＰＵ１３は、記憶装置であるハードディスク１６において、当該特定した部品区分情報１６ｂに関連付いている部品情報識別情報１６ｃを特定し、当該特定した部品情報識別情報１６ｃに関連付いている利用者区分情報１６ｆと名称情報１６ｇとの関連付けから、Ｓ０で入力された利用者区分情報１６ｆと一致する利用者区分情報１６ｆに関連付いている名称情報１６ｇを記憶装置であるハードディスク１６から読み出して、出力装置であるディスプレイ１２に出力する（Ｓ３）。例えば、図５３におけるハードディスク１６において、当該特定した部品区分情報１６ｂが「Ａ」である場合に、関連付いている部品情報識別情報１６ｃである「ａ１」、「ａ２」、「ａ３」、を特定し、当該特定した部品情報識別情報１６ｃである「ａ１」、「ａ２」、「ａ３」に関連付いている利用者区分情報１６ｆと名称情報１６ｇとの関連付けである「利用者１−名称１」、「利用者２−名称２」、「利用者１−名称３」、「利用者２−名称４」、…、から、Ｓ０で入力された利用者区分情報１６ｆである「利用者１」と一致する利用者区分情報１６ｆである「利用者１」に関連付いている名称情報１６ｇ「利用者１−名称１」と「利用者１−名称３」をハードディスク１６から読み出して、出力装置であるディスプレイ１２に出力する。
【０１０３】
続いて、ＣＰＵ１３は、当該出力した名称情報１６ｇについて関連付けの選択を、入力装置であるキーボード等１５を介して受け付ける（Ｓ４）。例えば、例えば、図１３における「プロジェクト」と「サブシステム」との関連付けが定義されている部品区分関連情報１６ｄにおいては、出力した名称情報１６ｇである「販売管理」と、出力した名称情報１６ｇである「受注管理」と「発注管理」と、についての関連付けがされたことを、「〇」印により表している。図１３に示すように、この名称情報１６ｇについて関連付けの選択は、ディスプレイ１２にマトリックス上に表示させて、利用者がキーボード等１５で任意の当該マトリックス上の□をクリックすれば、関連付けの指示をＣＰＵ１３に与えられるように構成するとよい。このようにすることによって、グラフィカルな設計操作が可能となり、設計作業の効率化が図れるのである。
【０１０４】
そして、ＣＰＵ１３は、記憶装置であるハードディスク１６に記憶されている部品情報識別情報１６ｃと名称情報１６ｇとの関連付けに基づいて、当該入力された名称情報１６ｇの関連付けを部品情報識別情報１６ｃの関連付けに変換する（Ｓ５）。例えば、図５３におけるハードディスク１６に記憶されている部品情報識別情報１６ｃと名称情報１６ｇとの関連付け（「ａ１」と「名称１」及び「名称２」、「ａ３」と「名称３」及び「名称４」）に基づいて、当該入力された名称情報１６ｇの関連付け（例えば、「名称１」と「名称３」）を部品情報識別情報１６ｃの関連付け（例えば、「ａ１」と「ａ３」）に変換する。
【０１０５】
次に、ＣＰＵ１３は、当該変換した部品情報識別情報１６ｃの関連付け（例えば、「ａ１」と「ａ３」）を、前記Ｓ２で読み出した部品区分関連情報１６ｄ（例えば、「ＡＢ」）に関連付けて、コンピュータプログラムの設計情報１６ｅ（この場合、「ａ１−ａ３」）として記憶装置であるハードディスク１６に記憶させる（Ｓ６）。
【０１０６】
このようにして、１の部品区分関連情報１６ｄに関連付けるコンピュータプログラムの設計情報１６ｅを作成することができるのである。そして、ＣＰＵ１３は、前記Ｓ１〜Ｓ６の設計処理を繰り返すことにより、コンピュータプログラムの設計情報１６ｅを記憶装置であるハードディスク１６に記憶させていく（Ｓ７）。これにより、図３〜６に図示するような部品区分関連情報１６ｄ（Ｌ１、Ｌ２、…、Ｐ１、Ｐ２、…）について、順次設計処理を繰り返し、それぞれの部品区分関連情報１６ｄに関連付けたコンピュータプログラムの設計情報１６ｅを作成していくのである。図３及び４に図示する部品区分関連情報１６ｄに関連付けて作成したコンピュータプログラムの設計情報１６ｅの例を、図１３〜２０に図示している。同図に示すように、単なる部品情報識別情報１６ｃの関連付け（例えば、「〇」、「−」、等）として設計を行っている設計情報１６ｅもあり、更なる付加情報を加えた部品情報識別情報１６ｃの関連付け（例えば、「入力」、「参照」、「登録」、「出力」、等）として設計を行っている設計情報１６ｅもある。同様に、図５及び６に図示する部品区分関連情報１６ｄに関連付けて作成したコンピュータプログラムの設計情報１６ｅの一部の例を、図２８〜３５に図示している。
【０１０７】
そして、ＣＰＵ１３は、入力装置であるキーボード等１５を介して、任意の部品情報識別情報１６ｃの選択を受け付ける（Ｓ８）。例えば、図３における「プロジェクト」と「サブシステム」との関連付けが定義されているＬ１の部品区分関連情報１６ｄから、「プロジェクト」に属する任意の部品情報識別情報１６ｃを選択する。
【０１０８】
これを受けてＣＰＵ１３は、記憶装置であるハードディスク１６に記憶されている設計情報１６ｅのうち、当該選択された部品情報識別情報１６ｃに直接関連付いている設計情報１６ｅと、当該選択された部品情報識別情報１６ｃとは異なる他の部品情報識別情報１６ｃを介して当該選択された部品情報識別情報１６ｃに間接的に関連付いている設計情報１６ｅとを、特定のコンピュータプログラムの設計情報として記憶装置であるハードディスク１６に記憶させる（Ｓ９）。例えば、図３におけるＬ１、Ｌ２、Ｌ３、Ｌ４、…の部品区分関連情報１６ｄから、「プロジェクト」に属する任意の部品情報識別情報１６ｃを選択された場合、当該選択された部品情報識別情報１６ｃに直接関連付いている設計情報１６ｅと、当該選択された部品情報識別情報１６ｃに間接的に関連付いている設計情報１６ｅとを、特定のコンピュータプログラムの設計情報とするのである。すなわち、図３〜６における設計情報１６ｅは、部品区分関連情報１６ｄの定義に基づき、互いに関連付いているので、芋づる式に設計情報１６ｅが取得できるのである。
【０１０９】
このように、設計者にとっては、部品区分関連情報１６ｄの選択を行い、名称情報１６ｇについての関連付けの選択を行うだけで、コンピュータプログラムの設計情報１６ｅが記憶されていく。よって、従来のシステム開発支援ツールよりも操作が容易であり、使用方法について学習の手間も少ない。さらに、同一の部品情報識別情報１６ｃに対して設計を行う場合であっても、設計コンピュータプログラム１６ｉの利用者の区分情報１６ｆに応じて、部品情報識別情報１６ｃの表示名称である名称情報１６ｇを変化する。よって、設計コンピュータプログラム１６ｉの利用者の区分（ユーザ企業、国内のＳＩ会社、国内の２次請けシステム会社、海外のシステム会社、等）に応じて名称情報１６ｇを異なるように、適切な設定をしておけば、設計情報１６ｅの漏洩を未然に防ぐことができる。これにより、システム設計作業を分割して、当該分割した設計作業をユーザ企業が安心して外注すること等ができるため、コストを抑制でき、非常に有益である。
【０１１０】
（２）続いて、既存のコンピュータプログラムの設計情報１６ｅを元にして、新たなコンピュータプログラムの設計情報１６ｅを作成する場合について説明する。
【０１１１】
先に説明したコンピュータプログラムの設計情報１６ｅを新規作成する場合におけるＳ０〜Ｓ９のうち、Ｓ２とＳ３の部分の処理が異なるだけであるので、当該Ｓ２とＳ３の変わりに行う処理を説明する。この説明には、図５３を使用する。
【０１１２】
まず、ＣＰＵ１３は、前記Ｓ１で選択された部品区分関連情報１６ｄ（例えば、「ＡＢ」）を記憶装置であるハードディスク１６から読み出すと共に、当該読み出した部品区分関連情報１６ｄ（「ＡＢ」）に関連付いているコンピュータプログラムの設計情報１６ｅ（「ａ１−ｂ１」、「ａ１−ｂ２」、「ａ２−ｂ３」）を特定する（Ｓ２、１）。
【０１１３】
そして、ＣＰＵ１３は、ハードディスク１６において、当該読み出した部品区分関連情報１６ｄ（「ＡＢ」）に含まれる部品区分情報１６ｂ（「Ａ」、「Ｂ」）に関連付いている部品情報識別情報１６ｃ（「ａ１」、「ａ２」、「ａ３」、「ｂ１」、「ｂ２」、「ｂ３」）を特定し、当該特定した部品情報識別情報１６ｃに関連付いている利用者区分情報１６ｆと名称情報１６ｇとの関連付け（「利用者１−名称１」、「利用者２−名称２」、「利用者１−名称３」、「利用者２−名称４」、…）から、前記Ｓ０で入力された利用者区分情報１６ｆ（例えば、「利用者１」）と一致する利用者区分情報１６ｆに関連付いている名称情報１６ｇ（「名称１」、「名称３」）をハードディスク１６から読み出す（Ｓ２、２）。
【０１１４】
さらに、ＣＰＵ１３は、前記Ｓ２、１で特定した設計情報１６ｅ（「ａ１−ｂ１」、「ａ１−ｂ２」、「ａ２−ｂ３」）をハードディスク１６から読み出し、ハードディスク１６に記憶されている部品情報識別情報１６ｃと名称情報１６ｇとの関連付け（「ａ１−名称１」、「ａ１−名称２」、「ａ３−名称３」、「ａ３−名称４」、…）に基づいて、当該読み出した設計情報１６ｅ（「ａ１−ｂ１」、「ａ１−ｂ２」、「ａ２−ｂ３」）を、前記Ｓ２、２で読み出した名称情報１６ｇの関連付け（例えば「名称１−名称３」等）に変換する（Ｓ３、１）。
【０１１５】
そして、ＣＰＵ１３は、前記Ｓ２、２で読み出した名称情報１６ｇと、当該Ｓ３、１で変換した名称情報１６ｇの関連付けとを、出力装置であるディスプレイ１２に出力する（Ｓ３、２）。そして、前記Ｓ４のように名称情報１６ｇの関連付けの選択が行われ、当該名称情報１６ｇの関連付けは、部品情報識別情報１６ｃの関連付けに変換されて、コンピュータプログラムの設計情報１６ｅとして記憶される。
【０１１６】
このようにして、既存のコンピュータプログラムの設計情報１６ｅを活用して、新たなコンピュータプログラムの設計を、簡便に行えるのである。例えば、上流の設計工程を表す部品区分関連情報１６ｄに関連付いている設計情報１６ｅを更新すれば、下流の設計情報１６ｅを全て再利用して、新たなコンピュータプログラムの設計が行え、結果として開発工数を大幅に削減できる。よって、設計情報１６ｅをテンプレート化することも可能となり、テンプレート化した設計情報１６ｅの流通・販売も実現する事ができる。
【０１１７】
（３）前記説明したハードディスク１６に複数存在する部品区分情報１６ｂの１つとして、データ項目情報が存在し、ハードディスク１６に記憶されている部品区分関連情報１６ｄには、データ項目情報と当該データ項目情報以外の他の部品区分情報１６ｂとの関連付けが定義されている部品区分関連情報１６ｄが含まれていると、更に有益である。すなわち、この「データ項目情報」の例として、図３〜６に複数回登場する「項目」というデータ項目に関する部品情報が属する部品区分情報１６ｂが考えられる。
【０１１８】
上流工程と下流工程の設計作業を並行して行った場合、最も起きやすい不具合は、上流工程で作成した設計情報が下流工程では全く使用されていなかったり、逆に、下流工程で作成した設計情報が上流工程では全く定義されていなかったり、等の論理的な不整合が発生することである。しかし、部品区分関連情報１６ｄに、データ項目情報と当該データ項目情報以外の他の部品区分情報１６ｂとの関連付けが定義されている部品区分関連情報１６ｄが含まれており、上流工程と下流工程の論理的整合性を、当該データ項目情報を利用することによって担保することができるのである。
【０１１９】
（４）また、ＣＰＵ１３が、任意の管理書類区分情報１６ｈの選択を、キーボード等１５を介して受け付け（Ｓ１１）、当該選択された管理書類区分情報１６ｈに関連付いている１以上の部品区分関連情報１６ｄをハードディスク１６から特定する（Ｓ１２）。そして、当該特定した１以上の部品区分関連情報１６ｄに関連付いている設計情報１６ｅをハードディスク１６から読み出し、管理書類データとしてハードディスク１６に記憶させる（Ｓ１３）。
【０１２０】
このような処理を行うことにより、前記説明したように管理書類区分情報１６ｈの設定を事前に行っておけば、既に設計された設計情報１６ｅを元にして、管理書類データを生成することができるため、わざわざ管理書類を更新する手間が省け、システムメンテナンスも容易になる。
【０１２１】
（５）また、更に好ましい実施のフローを説明する。前記説明したハードディスク１６に複数存在する部品区分情報１６ｂの１つとして、プロセス項目情報が存在し、当該プロセス項目情報に関連付いてハードディスク１６に記憶されている部品情報識別情報１６ｃには、部品情報としてのプログラム情報が関連付けられてハードディスク１６に記憶されている。そして、データ項目情報に関連付いてハードディスク１６に記憶されている部品情報識別情報１６ｃには、部品情報としてのデータ情報が関連付けられてハードディスク１６に記憶されている。さらに、ハードディスク１６に記憶されている部品区分関連情報１６ｄには、データ項目情報とプロセス項目情報との関連付けを含んで定義されているプログラム部品区分関連情報が含まれている。そして、当該プログラム部品区分関連情報には、コンピュータプログラムの設計情報１６ｅが関連付けてハードディスク１６に記憶されている。
【０１２２】
このような情報が、ハードディスク１６に記憶されている状態で、ＣＰＵ１３が、ハードディスク１６に記憶されているプログラム部品区分関連情報に関連付いている設計情報１６ｅから取得された設計情報１６ｅが、ハードディスク１６に記憶された特定のコンピュータプログラムの設計情報に含まれているか否かを判断する（Ｓ１４）。
【０１２３】
さらに、ＣＰＵ１３が、Ｓ１４の判断の結果、含まれていると判断した場合に、当該プログラム部品区分関連情報に関連付いている設計情報１６ｅから取得された設計情報１６ｅに含まれる部品情報識別情報１６ｃを特定し、当該特定した部品情報識別情報１６ｃに関連付いている前記プログラム情報と前記データ情報とをハードディスク１６から読み出す（Ｓ１５）。
【０１２４】
そして、Ｓ１５で特定した部品情報識別情報１６ｃに基づき、当該読み出したプログラム情報とデータ情報とを前記特定のコンピュータプログラムの設計情報に関連付けてハードディスク１６に記憶させることにより、特定のコンピュータプログラムを生成する（Ｓ１６）。
【０１２５】
このＳ１４〜Ｓ１６について、更に説明する。ここでは、図２４〜２７に示す（ａ）〜（ｈ）までの部品区分情報１６ｂと、当該部品区分情報１６ｂの区分に属し、Ｎｏにより管理されている部品情報識別情報１６ｃと、当該部品情報識別情報１６ｃに関連付いている部品情報とを、使用する。例えば、図２４の（ａ）の「画面」という部品区分情報１６ｂには、「受注入力」という部品情報識別情報１６ｃと、「受注照会」という部品情報識別情報１６ｃとが、Ｎｏにより管理されており、当該部品情報識別情報１６ｃに関連付いている部品情報として、「属性」及び「説明」という部品情報がある。
【０１２６】
ここで、前記「データ項目情報」は、部品区分情報１６ｂである図２４の（ｂ）「項目」が該当し、前記「データ項目情報」は、当該図２４の（ｂ）「項目」のＮｏにより管理されている部品情報識別情報１６ｃに関連付いている部品情報（「デフォルトタグ」、「タグの付加属性」、「項目コード」）が該当する。また、前記「プロセス項目情報」は、部品区分情報１６ｂである図２６の（ｆ）「スクリプト」が該当し、前記「プログラム情報」は、当該図２６の（ｆ）「スクリプト」のＮｏにより管理されている部品情報識別情報１６ｃに関連付いている部品情報（「スクリプト文字列」）が該当する。
【０１２７】
次に、図２８〜３５に示す（ａ）〜（ｊ）までの部品区分関連情報１６ｄは、図２４〜２７に示す（ａ）〜（ｈ）までの部品区分情報１６ｂに属する部品情報識別情報１６ｃの関連付けであるコンピュータプログラムの設計情報１６ｅと、関連付いている。前記「データ項目情報」としての部品区分情報１６ｂである図２４の（ｂ）「項目」と、前記「プロセス項目情報」としての部品区分情報１６ｂである図２６の（ｆ）「スクリプト」との関連付けは、図３５の（ｊ）「スクリプトと項目」という部品区分関連情報１６ｄ（プログラム部品区分関連情報）において定義されている。そして、当該図３５の（ｊ）「スクリプトと項目」という部品区分関連情報１６ｄ（プログラム部品区分関連情報）は、同図に示すように、コンピュータプログラムの設計情報１６ｅが関連付いている。
【０１２８】
図２４〜３５までの、部品情報識別情報１６ｃと部品区分関連情報１６ｄの別を、図２３に図示した。
【０１２９】
そして、ＣＰＵ１３が、ハードディスク１６に記憶されている図３５の（ｊ）「スクリプトと項目」というプログラム部品区分関連情報に関連付いている設計情報１６ｅ（図３５のマトリックス上で〇のついている関連付け）から取得された設計情報１６ｅが、ハードディスク１６に記憶された特定のコンピュータプログラムの設計情報に含まれているか否かを判断する（Ｓ１４）。この「特定のコンピュータプログラムの設計情報」とは、先に説明したように、ＣＰＵ１３が、複数の設計情報１６ｅから特定したものである。
【０１３０】
さらに、ＣＰＵ１３が、Ｓ１４の判断の結果、含まれていると判断した場合に、当該図３５の（ｊ）「スクリプトと項目」というプログラム部品区分関連情報に関連付いている設計情報１６ｅ（図３５のマトリックス上で〇のついている関連付け）から取得された設計情報１６ｅに含まれる部品情報識別情報１６ｃ（サーバ接続、金額計算、顧客コード、…）を特定し、当該特定した部品情報識別情報１６ｃに関連付いているプログラム情報（図２６（ｆ）「スクリプト」における「スクリプト文字列」）とデータ情報（図２４（ｂ）「項目」における「デフォルトタグ」、「タグの付加属性」、「項目コード」）とをハードディスク１６から読み出す（Ｓ１５）。
【０１３１】
そして、Ｓ１５で特定した部品情報識別情報１６ｃ（サーバ接続、金額計算、顧客コード、…）に基づき、当該読み出したプログラム情報とデータ情報とを前記特定のコンピュータプログラムの設計情報に関連付けてハードディスク１６に記憶させることにより、特定のコンピュータプログラムを生成するのである（Ｓ１６）。
【０１３２】
この処理を、図３６〜５０を使用して、更に詳細に説明する。図３６は、図２４〜３５までの情報を利用して、ｈｔｍｌの画面プログラムを生成する処理についてのフローチャートである。そして、図３６のＳ３６０１の「中間データ作成」の処理に関する詳細なフローチャートが図３７である。
【０１３３】
図３７における「中間データ作成」のフローチャートには、Ｓ３７０１の「中間データ取得１」の処理と、Ｓ３７０２の「中間データ取得２」の処理と、Ｓ３７０３の「中間データ取得３」の処理と、が存在する。Ｓ３７０１の「中間データ取得１」の処理に関する詳細なフローチャートが図４１及び４２であり、Ｓ３７０２の「中間データ取得２」の処理に関する詳細なフローチャートが図４３及び４４であり、Ｓ３７０３の「中間データ取得３」の処理に関する詳細なフローチャートが図４５及び４６である。そして、Ｓ３７０１の「中間データ取得１」、Ｓ３７０２の「中間データ取得２」、Ｓ３７０３の「中間データ取得３」、の処理の結果として生成された中間データを図４７及び４８に図示した。
【０１３４】
また、図３６のＳ３６０４の「合成文字の出力」の処理に関する詳細なフローチャートが図３８及び３９である。そして、図３８におけるＳ３８１１の「タグ合成文字」の処理に関する詳細なフローチャートが図４０である。
【０１３５】
このように、「中間データ」を作成し（Ｓ３６０１）、「中間データ」の中に含まれるテンプレート変数に応じた処理を行い（Ｓ３６０２〜Ｓ３６０５）、テンプレート展開が全て終了するまで、処理を繰り返すことによって、図４９の画面プログラムの合成が行えるのである。そして、図４９の画面プログラムを、ブラウザにより表示した画面の表示例が図５０である。
【０１３６】
このように、設計コンピュータプログラムにより設計した設計情報を元にして、コンピュータプログラムの生成が行えるため、利用者にとっては、コンピュータプログラムの設計を行うだけで、コンピュータプログラムのソースを取得することができる。また、外部設計、内部設計、及びプログラム設計に関する設計情報を事前に作成しておけば、コンピュータプログラムの生成までが可能であるので、上流の設計工程から下流の実装までを、共通した開発環境で提供できるのである。さらに、プログラム情報とデータ情報とを、コンピュータプログラム言語（ＶＢ、Ｃ、ＣＯＢＯＬ等）毎に用意しておけば、設計情報は共通のものであっても、異なるコンピュータプログラム言語でのコンピュータプログラムのソース生成が可能である。このように、従来に比して、開発環境の生産性を高める事ができるのである。
【図面の簡単な説明】
【０１３７】
【図１】論理設計構造図
【図２】物理設計構造図
【図３】論理設計の部品区分関連情報の画面イメージ図１
【図４】論理設計の部品区分関連情報の画面イメージ図２
【図５】物理設計の部品区分関連情報の画面イメージ図１
【図６】物理設計の部品区分関連情報の画面イメージ図２
【図７】部品情報識別情報の属性表
【図８】物理設計設定ツール例
【図９】論理構造マトリックス１
【図１０】論理構造マトリックス２
【図１１】物理構造マトリックス１
【図１２】物理構造マトリックス２
【図１３】L1-L７：プロジェクトとサブシステム等の７表
【図１４】Ｌ８-L１０：アクティビティとアクティビティ等の３表
【図１５】Ｌ１１-Ｌ１３：ロールと画面等の３表
【図１６】Ｌ１４−Ｌ１６：ファイルと項目等の３表
【図１７】Ｌ１７：画面レイアウトと画面・項目
【図１８】Ｌ１８：帳票レイアウトと帳票・項目
【図１９】Ｌ１９-Ｌ２３：画面遷移と画面等の６表
【図２０】Ｌ２７-Ｌ３２：ルールとイベント等の９表
【図２１】画面モックアップ作成エンジン処理
【図２２】（a）-(d)管理書類区分情報等の４図
【図２３】プログラム合成例画面一覧
【図２４】物理設計：(a)-(c)画面、項目、テンプレート等の３表
【図２５】物理設計：(d)テンプレート部品
【図２６】物理設計：(e)-(f)テンプレート変数、スクリプト等の２表
【図２７】物理設計：(g)-(h)イベント、ルールの２表
【図２８】物理設計：P８：(a)イベントと画面
【図２９】物理設計：Ｐ３２：(b)画面と項目
【図３０】物理設計：Ｐ３７：(c)画面レイアウトと画面・項目
【図３１】物理設計：Ｐ４４：(d)−(e)画面と画面テンプレート等の２表
【図３２】物理設計：(f)テンプレート部品とテンプレート変数
【図３３】物理設計：Ｐ４１〜４３：(g)画面レイアウトとテンプレート変数
【図３４】物理設計：Ｐ１３、P２１：(h) ルールとイベント・画面等の２表
【図３５】物理設計：Ｐ５２：(j) スクリプトと項目
【図３６】物理設計：画面プログラム合成プログラム
【図３７】物理設計：中間データ作成
【図３８】物理設計：合成文字列の出力１
【図３９】物理設計：合成文字列の出力２
【図４０】物理設計：タグ合成文字
【図４１】物理設計：中間データ：中間データ取得１
【図４２】物理設計：中間データ：中間データ取得１(b)
【図４３】物理設計：中間データ：中間データ取得２(c)
【図４４】物理設計：中間データ：中間データ取得２(d)
【図４５】物理設計：中間データ：中間データ取得３(e)
【図４６】物理設計：中間データ：中間データ取得３(f)
【図４７】物理設計：受注画面の中間データ１
【図４８】物理設計：受注画面の中間データ２
【図４９】物理設計：受注画面の合成ソースコード
【図５０】物理設計：受注画面の表示サンプル
【図５１】コンピュータシステム１を含む、全体構成図
【図５２】コンピュータシステム１のハードウェア構成図
【図５３】コンピュータシステム１におけるハードディスク１６
【符号の説明】
【０１３８】
１    コンピュータシステム
２    通信ネットワーク
１１    ＮＩＣ
１２    ディスプレイ
１３    ＣＰＵ
１４    メモリ
１５    キーボード等
１６    ハードディスク
１７    バス
１６ａ  ＯＳ・アプリケーションプログラム
１６ｂ  部品区分情報
１６ｃ  部品情報識別情報
１６ｄ  部品区分関連情報
１６ｅ  コンピュータプログラムの設計情報
１６ｆ  利用者区分情報
１６ｇ  名称情報
１６ｈ  管理書類区分情報
１６ｉ  設計コンピュータプログラム
【図１】
2006172036.tif 000003
【図２】
2006172036.tif 000004
【図３】
2006172036.tif 000005
【図４】
2006172036.tif 000006
【図５】
2006172036.tif 000007
【図６】
2006172036.tif 000008
【図７】
2006172036.tif 000009
【図８】
2006172036.tif 000010
【図９】
2006172036.tif 000011
【図１０】
2006172036.tif 000012
【図１１】
2006172036.tif 000013
【図１２】
2006172036.tif 000014
【図１３】
2006172036.tif 000015
【図１４】
2006172036.tif 000016
【図１５】
2006172036.tif 000017
【図１６】
2006172036.tif 000018
【図１７】
2006172036.tif 000019
【図１８】
2006172036.tif 000020
【図１９】
2006172036.tif 000021
【図２０】
2006172036.tif 000022
【図２１】
2006172036.tif 000023
【図２２】
2006172036.tif 000024
【図２３】
2006172036.tif 000025
【図２４】
2006172036.tif 000026
【図２５】
2006172036.tif 000027
【図２６】
2006172036.tif 000028
【図２７】
2006172036.tif 000029
【図２８】
2006172036.tif 000030
【図２９】
2006172036.tif 000031
【図３０】
2006172036.tif 000032
【図３１】
2006172036.tif 000033
【図３２】
2006172036.tif 000034
【図３３】
2006172036.tif 000035
【図３４】
2006172036.tif 000036
【図３５】
2006172036.tif 000037
【図３６】
2006172036.tif 000038
【図３７】
2006172036.tif 000039
【図３８】
2006172036.tif 000040
【図３９】
2006172036.tif 000041
【図４０】
2006172036.tif 000042
【図４１】
2006172036.tif 000043
【図４２】
2006172036.tif 000044
【図４３】
2006172036.tif 000045
【図４４】
2006172036.tif 000046
【図４５】
2006172036.tif 000047
【図４６】
2006172036.tif 000048
【図４７】
2006172036.tif 000049
【図４８】
2006172036.tif 000050
【図４９】
2006172036.tif 000051
【図５０】
2006172036.tif 000052
【図５１】
2006172036.tif 000053
【図５２】
2006172036.tif 000054
【図５３】
2006172036.tif 000055