(57)【特許請求の範囲】
【請求項１】
プロセッサとメモリを含んでスプレッドシート形式の設計書を処理する設計書の入出力装置であって、
設計書雛形と第１の設計書メタ情報を入力し、
前記入力された設計書雛形に記述された項目名と前記項目名に対応付けられた値の開始行と開始列を判定し、
前記項目名に対応する項目英字名を予め設定された設計項目辞書から取得し、
前記項目名に従属する付加情報を前記第１の設計書メタ情報から取得し、
前記設計書雛形の内容と前記項目英字名と前記付加情報を引き継いだ第２の設計書メタ情報を生成する設計書メタ情報生成制御部と、
前記設計書雛形上に前記第２の設計書メタ情報の開始行と開始列を示す位置に前記項目名と付加情報の少なくとも一方を出力する重畳表示部と、
を有し、
前記重畳表示部は、
前記第２の設計書メタ情報の項目名のうち、前記設計項目辞書に登録されていない項目名を所定の表示パターンで出力することを特徴とする設計書の入出力装置。
【請求項２】
請求項１に記載の設計書の入出力装置であって、
前記設計書メタ情報生成制御部は、
前記設計書雛形に記述された項目名と、前記項目名に対応付けられた値の開始行と開始列を判定する際に、前記項目名を示すセルを起点にして、所定の方向に文字列を含むセルと、表示パターンが所定のパターンのセルを探索し、所定の条件を満足するセルを項目名またはグループ項目と判定することを特徴とする設計書の入出力装置。
【請求項３】
請求項１に記載の設計書の入出力装置であって、
前記設計書メタ情報生成制御部は、
前記設計書雛形にグループ項目が記述されていない場合には、前記第１の設計書メタ情報からグループ項目を取得して第２の設計書メタ情報に引き継ぎ、設計書雛形に前記グループ項目が記述されていれば当該グループ項目を第２の設計書メタ情報に引き継ぐことを特徴とする設計書の入出力装置。
【請求項４】
プロセッサとメモリを含んでスプレッドシート形式の設計書を処理する設計書の入出力装置であって、
設計書雛形と第１の設計書メタ情報を入力し、
前記入力された設計書雛形に記述された項目名と前記項目名に対応付けられた値の開始行と開始列を判定し、
前記項目名に対応する項目英字名を予め設定された設計項目辞書から取得し、
前記項目名に従属する付加情報を前記第１の設計書メタ情報から取得し、
前記設計書雛形の内容と前記項目英字名と前記付加情報を引き継いだ第２の設計書メタ情報を生成する設計書メタ情報生成制御部と、
前記設計書雛形上に前記第２の設計書メタ情報の開始行と開始列を示す位置に前記項目名と付加情報の少なくとも一方を出力する重畳表示部と、
を有し、
前記重畳表示部は、
前記第２の設計書メタ情報の項目名のうち、前記設計項目辞書に登録されていない項目名に所定のメッセージを付加することを特徴とする設計書の入出力装置。
【請求項５】
プロセッサとメモリを含む計算機と、
スプレッドシート形式の設計書を管理するデータベースと、を有する設計書の入出力システムであって、
前記計算機は、
前記データベースから設計書雛形と第１の設計書メタ情報を読み込んで、前記読み込んだ設計書雛形に記述された項目名と前記項目名に対応付けられた値の開始行と開始列を判定し、前記項目名に対応する項目英字名を予め設定された設計項目辞書から取得し、前記項目名に従属する付加情報を前記第１の設計書メタ情報から取得し、前記設計書雛形の内容と前記項目英字名と前記付加情報を引き継いだ第２の設計書メタ情報を生成して前記データベースに格納する設計書メタ情報生成制御部と、
前記設計書雛形上に前記第２の設計書メタ情報の開始行と開始列を示す位置に前記項目名と付加情報の少なくとも一方を出力する重畳表示部と、
を有し、
前記重畳表示部は、
前記第２の設計書メタ情報の項目名のうち、前記設計項目辞書に登録されていない項目名を所定の表示パターンで出力することを特徴とする設計書の入出力システム。
【請求項６】
請求項５に記載の設計書の入出力システムであって、
前記設計書メタ情報生成制御部は、
前記設計書雛形に記述された項目名と、前記項目名に対応付けられた値の開始行と開始列を判定する際に、前記項目名を示すセルを起点にして、所定の方向に文字列を含むセルと、表示パターンが所定のパターンのセルを探索し、所定の条件を満足するセルを項目名またはグループ項目と判定することを特徴とする設計書の入出力システム。
【請求項７】
請求項５に記載の設計書の入出力システムであって、
前記設計書メタ情報生成制御部は、
前記設計書雛形にグループ項目が記述されていない場合には、前記第１の設計書メタ情報からグループ項目を取得して第２の設計書メタ情報に引き継ぎ、設計書雛形に前記グループ項目が記述されていれば当該グループ項目を第２の設計書メタ情報に引き継ぐことを特徴とする設計書の入出力システム。
【請求項８】
プロセッサとメモリを含む計算機と、
スプレッドシート形式の設計書を管理するデータベースと、を有する設計書の入出力システムであって、
前記計算機は、
前記データベースから設計書雛形と第１の設計書メタ情報を読み込んで、前記読み込んだ設計書雛形に記述された項目名と前記項目名に対応付けられた値の開始行と開始列を判定し、前記項目名に対応する項目英字名を予め設定された設計項目辞書から取得し、前記項目名に従属する付加情報を前記第１の設計書メタ情報から取得し、前記設計書雛形の内容と前記項目英字名と前記付加情報を引き継いだ第２の設計書メタ情報を生成して前記データベースに格納する設計書メタ情報生成制御部と、
前記設計書雛形上に前記第２の設計書メタ情報の開始行と開始列を示す位置に前記項目名と付加情報の少なくとも一方を出力する重畳表示部と、
を有し、
前記重畳表示部は、
前記第２の設計書メタ情報の項目名のうち、前記設計項目辞書に登録されていない項目名に所定のメッセージを付加することを特徴とする設計書の入出力システム。
【請求項９】
プロセッサとメモリを含む計算機でスプレッドシート形式の設計書を処理する設計書の入出力方法であって、
前記計算機が、設計書雛形と第１の設計書メタ情報を入力する第１のステップと、
前記計算機が、前記入力された設計書雛形に記述された項目名と前記項目名に対応付けられた値の開始行と開始列を判定する第２のステップと、
前記計算機が、前記項目名に対応する項目英字名を予め設定された設計項目辞書から取得する第３のステップと、
前記計算機が、前記項目名に従属する付加情報を前記第１の設計書メタ情報から取得する第４のステップと、
前記計算機が、前記設計書雛形の内容と前記項目英字名と前記付加情報を引き継いだ第２の設計書メタ情報を生成する第５のステップと、
前記計算機が、前記設計書雛形上に前記第２の設計書メタ情報の開始行と開始列を示す位置に前記項目名と付加情報の少なくとも一方を出力する第６のステップと、
を含み、
前記第６のステップは、
前記第２の設計書メタ情報の項目名のうち、前記設計項目辞書に登録されていない項目名を所定の表示パターンで出力することを特徴とする設計書の入出力方法。
【請求項１０】
請求項９に記載の設計書の入出力方法であって、
前記第２のステップは、
前記設計書雛形に記述された項目名と、前記項目名に対応付けられた値の開始行と開始列を判定する際に、前記項目名を示すセルを起点にして、所定の方向に文字列を含むセルと、表示パターンが所定のパターンのセルを探索し、所定の条件を満足するセルを項目名またはグループ項目と判定することを特徴とする設計書の入出力方法。
【請求項１１】
請求項９に記載の設計書の入出力方法であって、
前記第４のステップは、
前記設計書雛形にグループ項目が記述されていない場合には、前記第１の設計書メタ情報からグループ項目を取得し、設計書雛形に前記グループ項目が記述されていれば当該グループ項目を引き継ぐことを特徴とする設計書の入出力方法。
【請求項１２】
プロセッサとメモリを含む計算機でスプレッドシート形式の設計書を処理する設計書の入出力方法であって、
前記計算機が、設計書雛形と第１の設計書メタ情報を入力する第１のステップと、
前記計算機が、前記入力された設計書雛形に記述された項目名と前記項目名に対応付けられた値の開始行と開始列を判定する第２のステップと、
前記計算機が、前記項目名に対応する項目英字名を予め設定された設計項目辞書から取得する第３のステップと、
前記計算機が、前記項目名に従属する付加情報を前記第１の設計書メタ情報から取得する第４のステップと、
前記計算機が、前記設計書雛形の内容と前記項目英字名と前記付加情報を引き継いだ第２の設計書メタ情報を生成する第５のステップと、
前記計算機が、前記設計書雛形上に前記第２の設計書メタ情報の開始行と開始列を示す位置に前記項目名と付加情報の少なくとも一方を出力する第６のステップと、
を含み、
前記第６のステップは、
前記第２の設計書メタ情報の項目名のうち、前記設計項目辞書に登録されていない項目名に所定のメッセージを付加することを特徴とする設計書の入出力方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばシステム開発等で作成及び保守される様々なレイアウトの設計書を、記憶装置で一元管理する目的で、スプレッドシートソフトで作成して記憶装置に入出力する技術に関するものである。
【背景技術】
【０００２】
システム開発では、計算機システムを構成する画面やデータベースに関する設計情報を記すために様々な設計書が作成される。設計書はワードプロセッシングソフトやスプレッドシート（表計算）ソフトなどで作成されるが、本発明ではスプレッドシート形式の設計書を対象とする。
【０００３】
設計書はシステム開発者間で設計情報を共有するためのメディアである。また、設計書に記される設計情報を活用してプログラムの自動生成など機械的な処理を行うために、設計書を構造化された情報に変換してデータベースで一元管理する。
【０００４】
システム開発では、計算機システムを構成する画面やデータベースといった要素ごとに設計書の様式が異なることがある。このように様式が異なる複数の設計書を構造化された情報に変換する文書変換装置として、特許文献１が知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−２５７８５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では、設計書に記述される項目に追加や削除または変更があったとき、もしくは、設計書のレイアウトが変更になったとき、様式設定ファイルの項目を追加や削除または変更する技術が開示されていない。この従来技術には、「様式更新部は、使用者が入力文書の追加に応じて様式設定ファイルを追加して更新する入力をした場合、新たな様式設定ファイルを様式記憶部に記憶させる。また、様式更新部は、使用者が入力文書の改変に応じて様式や、表、抽出方法、変換方法を変更するために様式設定ファイルを変更して更新する入力をした場合、予め記憶された変更前の様式設定ファイルに替えて、変更後の様式設定ファイルを様式記憶部に記憶させる。」とあるが、具体的な手段は対象外である。
【０００７】
そこで本発明は、上記問題点に鑑みてなされたもので、設計書に記述される項目やレイアウトが変更になった場合に様式設定ファイルの修正作業を効率化する方法およびシステムを提供することを目的とする。
【０００８】
以下、様式設定ファイルを設計書メタ情報と読み替える。
【課題を解決するための手段】
【０００９】
本発明は、プロセッサとメモリを含んでスプレッドシート形式の設計書を処理する設計書の入出力装置であって、設計書雛形と第１の設計書メタ情報を入力し、前記入力された設計書雛形に記述された項目名と前記項目名に対応付けられた値の開始行と開始列を判定し、前記項目名に対応する項目英字名を予め設定された設計項目辞書から取得し、前記項目名に従属する付加情報を前記第１の設計書メタ情報から取得し、前記設計書雛形の内容と前記項目英字名と前記付加情報を引き継いだ第２の設計書メタ情報を生成する設計書メタ情報生成制御部と、前記設計書雛形上に前記第２の設計書メタ情報の開始行と開始列を示す位置に前記項目名と付加情報の少なくとも一方を出力する重畳表示部と、を有し、前記重畳表示部は、前記第２の設計書メタ情報の項目名のうち、前記設計項目辞書に登録されていない項目名を所定の表示パターンで出力する。
【発明の効果】
【００１０】
本発明によれば、設計書雛形と第１の設計書メタ情報を入力して、設計書雛形の内容を反映させた第２の設計書メタ情報を生成することが可能となる。これにより、設計書に記述される項目やレイアウトが変更になった場合に第２の設計書メタ情報の修正作業を効率化することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施例を示し、設計書の入出力システムの構成の一例を示すブロック図である。
【図２】本発明の実施例を示し、設計書メタ情報の一例を示す図である。
【図３】本発明の実施例を示し、設計情報定義体の一例を示す図である。
【図４】本発明の実施例を示し、設計情報雛形の一例を示す図である。
【図５】本発明の実施例を示し、設計情報の一例を示す図である。
【図６Ａ】本発明の実施例を示し、設計書雛形の一例を示す図である。
【図６Ｂ】本発明の実施例を示し、設計書の一例を示す図である。
【図６Ｃ】本発明の実施例を示し、辞書検索後の設計書雛形の一例を示す図である。
【図７】本発明の実施例を示し、設計書メタ情報生成制御部で行われる処理の一例を示すフローチャートである。
【図８】本発明の実施例を示し、レイアウト解析処理の一例を示すフローチャートである。
【図９】本発明の実施例を示し、辞書検索処理の一例を示すフローチャートである。
【図１０】本発明の実施例を示し、付加情報検索処理の一例を示すフローチャートである。
【図１１】本発明の実施例を示し、重畳表示部で行われる処理の一例を示すフローチャートである。
【図１２】本発明の実施例を示し、計算機のハードウェアの一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
本発明の一実施例について、以下図面を参照して説明する。なお、同一の符号は同一の構成要素を示す。
【００１３】
図１は、設計書の入出力システム１００のシステム構成の一例を示すブロック図である。設計書の入出力システム１００は、設計書メタ情報生成支援装置１０１と、設計書メタ情報変換装置１０２と、設計情報入出力装置１０３と、クライアント装置１０４を有する計算機システムである。
【００１４】
設計書メタ情報生成支援装置１０１は、設計書雛形６０１ａ（図６Ａ参照）を受け付けると、設計書雛形６０１ａに応じた更新前の設計書メタ情報２０１を読み込んで、設計書雛形６０１ａに記述された項目名と、前記項目に対応付けられた値の開始行及び開始列を判定し、前記項目名に対応する項目英字名を設計項目辞書２０から取得する。設計項目辞書２０は、項目ＩＤと、項目ローカル名（項目名）、および、項目英字名をカラムに含むデータベースである。
【００１５】
そして、設計書メタ情報生成支援装置１０１は、前記項目に従属する付加情報を更新前の設計書メタ情報２０１から取得し、更新後の設計書メタ情報２０１を生成する設計書メタ情報生成制御部１０５と、設計書雛形６０１ａ上で更新後の設計書メタ情報２０１の開始行及び開始列を示す位置に、項目名と付加情報を出力する重畳表示部１０６と、を有する計算機である。
【００１６】
設計書メタ情報変換装置１０２は、更新後の設計書メタ情報２０１を読み込んで、設計書６０１ｂ（図６Ｂ参照）の構造（項目及びレイアウト）を定義する設計情報定義体３０１（図３参照）と、設計書６０１ｂを変換する際に利用する設計情報雛形４０１（図４参照）に変換する設計書メタ情報変換部１０７を有する計算機である。
【００１７】
設計情報入出力装置１０３は、スプレッドシート形式の設計書６０１ｂを受け付けると、設計情報定義体３０１と、設計情報雛形４０１を読み込んで、スプレッドシート形式の設計書６０１ｂをＸＭＬ形式の設計情報５０１（図５参照）に変換し、記憶部１０３ｃに格納する設計書読込及び変換部１０９と、クライアント装置１０４から検索要求を受け付けると、設計情報定義体３０１を読み込んで検索条件入力画面を生成し、クライアント装置１０４に出力する設計情報検索条件入力画面出力部１１０と、クライアント装置１０４から検索項目を受け付けると、設計情報定義体３０１を参照して設計情報検索結果画面を生成し、検索結果としてクライアント装置１０４に送信する設計情報検索及び結果表示画面出力部１１１と、クライアント装置１０４から検索結果について設計情報の参照要求を受け付けると、設計情報５０１と設計情報定義体３０１を読み込んで、設計情報参照及び編集画面を生成し、クライアント装置１０４に出力する設計情報参照及び編集画面出力部１１２と、クライアント装置１０４から編集結果の出力要求を受け付けると、ＸＭＬ形式の設計情報５０１を読み込んで、設計情報定義体３０１と設計情報雛形４０１に応じてスプレッドシート形式の設計書６０１ｂを生成してクライアント装置１０４へ送信する設計情報編集処理部１１３とを有する計算機である。
【００１８】
なお、設計情報入出力装置１０３は、設計書雛形６０１ａや設計書６０１ｂ、設計書メタ情報（更新前）２０１ａや設計書メタ情報（更新後）２０１ｂを記憶部１０３ｃに格納して管理するデータベースとして機能する。
【００１９】
クライアント装置１０４は、ユーザの操作に応じて、設計書６０１ｂの登録を要求、および、設計情報５０１の編集を行うブラウザ１１４を有する計算機である。また、クライアント装置１０４のユーザは、表計算部１１５で設計書雛形６０１ａを読み込んで、スプレッドシート形式の設計書６０１ｂを生成し、記憶部１０４ｃに格納する。
【００２０】
設計書メタ情報生成支援装置１０１、設計書メタ情報変換装置１０２、設計情報入出力装置１０３、および、クライアント装置１０４の各々を構成する計算機は、プログラムに従って処理する制御及び演算部１０１ａ、１０２ａ、１０３ａ、１０４ａと、データやファイル、およびプログラムを記憶し、制御及び演算部１０１ａ、１０２ａ、１０３ａ、１０４ａからアクセス可能な記憶部１０１ｃ、１０２ｃ、１０３ｃ、１０４ｃと、他の計算機とネットワークなどを介してデータやファイルを送受信する通信部１０１ｅ、１０２ｅ、１０３ｅ、１０４ｅと、ユーザからの指示を受け付ける入力部１０１ｂ、１０２ｂ、１０３ｂ、１０４ｂと、さらに、制御及び演算部の処理結果などを出力する出力部１０１ｄ、１０２ｄ、１０３ｄ、１０４ｄとを有する。プログラムに従って、制御及び演算部が記憶部内のデータやファイルにアクセスして処理を実行する。なお、通信部１０１ｅと１０２ｅと１０３ｅ及び１０４ｅはネットワークを介して相互に接続される。
【００２１】
設計書メタ情報生成支援装置１０１と、設計書メタ情報変換装置１０２と、設計情報入出力装置１０３は、通信部１０１ｅと１０２ｅと１０３ｅを介して互いの装置間のデータ通信連携を実現する。設計情報入出力装置１０３とクライアント装置１０４は、通信部１０３ｅと１０４ｅを介して互いの装置間のデータ通信を実現する。
【００２２】
これらの、設計書メタ情報生成支援装置１０１と、設計書メタ情報変換装置１０２と、設計情報入出力装置１０３と、クライアント装置１０４は、一体の計算機であっても構わない。
【００２３】
記憶部１０１ｃと１０２ｃと１０３ｃと１０４ｃは、ハードディスクドライブ等の不揮発性の記憶媒体を含む記憶装置で構成される。
【００２４】
設計書メタ情報生成支援装置１０１の記憶部１０１ｃには設計書メタ情報生成制御部１０５と重畳表示部１０６として機能するコンピュータソフトウェアプログラムが格納される。また、記憶部１０１ｃには、設計書雛形６０１ａに記述された項目名と、項目英字名を対応づけた設計項目辞書２０が予め格納される。
【００２５】
設計書メタ情報変換装置１０２の記憶部１０２ｃには設計書メタ情報変換部１０７と表計算部１０８として機能するコンピュータソフトウェアプログラムが格納される。設計情報入出力装置１０３の記憶部１０３ｃには設計書読込及び変換部１０９と設計情報検索条件入力画面出力部１１０と設計情報検索及び結果表示画面出力部１１１と設計情報参照及び編集画面出力部１１２と設計情報編集処理部１１３として機能するコンピュータソフトウェアプログラムが格納されている。
【００２６】
クライアント装置１０４の記憶部１０４ｃには設計書などを編集する表計算部１１５として機能するコンピュータプログラムと、ブラウザ１１４として機能するコンピュータプログラムと、スプレッドシートの設計書及び設計書の雛形が格納されている。また、記憶部１０４ｃには設計情報入出力装置１０３から送信された画面を出力部１０４ｄに表示するブラウザとして機能するコンピュータソフトウェアプログラムも格納されている。
【００２７】
制御及び演算部１０１ａ、１０２ａ、１０３ａ、１０４ａは、後述するようにプロセッサとメモリを含み、記憶部１０１ｃ、１０２ｃ、１０３ｃ、１０３ｃからプログラムをメモリにロードしてプロセッサによって実行する。
【００２８】
設計書メタ情報生成制御部１０５及び重畳表示部１０６は、制御及び演算部１０１ａによって記憶部１０１ｃから読み出されて実行されることにより各機能を実現している。
【００２９】
設計書メタ情報変換部１０７及び表計算部１０８は、制御及び演算部１０２ａによって記憶部１０２ｃから読み出されて実行されることにより各機能を実現している。設計書読込及び変換部１０９と設計情報検索条件入力画面出力部１１０と設計情報検索及び結果表示画面出力部１１１と設計情報参照及び編集画面出力部１１２は制御及び演算部１０３ａによって記憶部１０２ｃから読み出されて実行されることにより各機能を実現している。表計算部２１１及びブラウザ２１２は、制御及び演算部１０４ａによって記憶部１０３ｃから読み出されて実行されることにより各機能を実現している。
【００３０】
入力部１０１ｂと１０２ｂと１０３ｂと１０４ｂは、マウス等の入力デバイスである。出力部１０１ｄと１０２ｄと１０３ｄと１０４ｄは、各種ディスプレイ等の表示デバイスであり、この他各種プリンタ等の他の出力装置を接続することもできる。
【００３１】
図１２は、スプレッドシート形式の設計書入出力システム１００を構成する計算機の一例を示すブロック図である。図示の例は、設計書メタ情報生成支援装置１０１として稼動する計算機１０の例を示すが、設計書メタ情報変換装置１０２と設計情報入出力装置１０３及びクライアント装置１０４も同様の構成である。
【００３２】
計算機１０は、制御及び演算処理を行うプロセッサ６０と、プログラムやデータを保持するメモリ７０と、ネットワーク４０に接続されて他の計算機等と通信を行う通信部１０１ｅと、記憶部１０１ｃに接続されてデータやプログラム等の読み書きを行うストレージインタフェース８６と、入力部１０１ｂに接続されたＩ／Ｏプロセッサ８３と、プロセッサ６０に接続された出力部１０１ｄを含む。なお、図１に示した制御及び演算部１０１ａ、１０２ａ、１０３ａ、１０４ａは、プロセッサ６０及びメモリ７０に相当する。
【００３３】
プロセッサ６０は、ヘテロジニアスのマルチコアプロセッサで構成され、複数のＣＰＵコア６１と、複数のＧＰＵコア６２を含む。また、プロセッサ６０は、メモリ７０に接続されるメモリコントローラ６３と、出力部１０１ｄに接続されるディスプレイコントローラ６５と、Ｉ／Ｏプロセッサ８３、通信部１０１ｅ及びストレージインタフェース８６に接続されるＩ／Ｏコントローラ６４とを含む。入力部１０１ｂとしては、キーボードやマウスやタッチパネルを含む。出力部１０１ｄとしては、ディスプレイを含む。
【００３４】
メモリ７０には、ＯＳ７１がロードされてプロセッサ６０によって実行される。ＯＳ７１は設計書メタ情報生成制御部１０５や重畳表示部１０６などの１以上のソフトウェア７２を実行する。計書メタ情報生成制御部１０５などの各機能部はプログラム（ソフトウェア７２）としてメモリ７０にロードされる。
【００３５】
プロセッサ６０は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、プロセッサ６０は、設計書メタ情報生成制御プログラムに従って処理することで設計書メタ情報生成制御部１０５として機能する。他のプログラムについても同様である。さらに、プロセッサ６０は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
【００３６】
設計書メタ情報生成支援装置１０１の各機能を実現するプログラム、テーブル等の情報は、記憶部１０１ｃや不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【００３７】
図２は設計書メタ情報２０１の一例を示す図である。設計書メタ情報２０１は、スプレッドシート形式で作成される各種設計書に対応するメタ情報を定義したものである。
【００３８】
設計書メタ情報２０１は、スプレッドシート形式の設計書６０１ｂ（設計書雛形６０１ａ）で使用する項目と、各項目のセルの位置等のレイアウトを定義した設計書６０１ｂの構造と、各項目の入出力や編集で参照される付加情報を定義したファイルである。
【００３９】
設計書メタ情報２０１は、スプレッドシートで定義される設計書６０１ｂの種別ごとに１つのファイルが作成される。設計書６０１ｂに記述される項目やレイアウトが変更になった場合には、設計書の入出力システム１００が変更内容に合わせて設計書メタ情報２０１を更新する。
【００４０】
本実施例では、更新前の設計書メタ情報２０１を設計書メタ情報（更新前）２０１ａ、更新後の設計書メタ情報２０１を設計書メタ情報（更新後）２０１ｂと呼称する。
【００４１】
設計書メタ情報２０１の１ファイルの中には、“ファイル種別”（２０２）と、“項目グループ間関連”（２０３）と、“シート種別”（２０４）と、“単数項目グループ”（２０５）と、“複数項目グループ”（２０６）の要素が含まれる。
【００４２】
要素“ファイル種別”（２０２）はスプレッドシート形式のファイルごとに設計書の種別を定義するものであり、要素“ローカル名”と要素“英字名”を含む。
【００４３】
要素“シート種別”（２０４）はスプレッドシートで定義されるシートの種類ごとに定義される。したがって、ファイルが複数種類のシートで構成される設計書６０１ｂを対象とする場合、要素“シート種別”（２０４）、及び以下の“単数項目グループ”（２０５）と、“複数項目グループ”（２０６）を複数定義する。要素“シート種別”（２０４）は、要素“ローカル名”と要素“英字名”を含む。
【００４４】
要素“単数項目グループ”（２０５）には、設計書で定義される１つの項目に対して値が１つ定義される項目（単数項目）の内容と付加情報を定義するグループを定義する。なお、要素“単数項目グループ”（２０５）は、要素“ローカル名”と要素“英字名”を含む。また、定義される単数項目の数だけ、要素“項番”と、要素“必須フラグ”と、要素“単数項目ローカル名”と、要素“単数項目英字名”と、単数項目の値がスプレッドシート上のどの位置にあるかを示す情報として要素“開始行”と要素“開始列”と、単数項目を画面に表示する際に必要とする情報として要素“種類”と要素“サイズ”が定義される。
【００４５】
“種類”は、クライアント装置１０４のブラウザで表示する際の形式を規定し、“ｉｎｐｕｔ”は入力フィールドを示し、“ｔｅｘｔ”は文字列を表示することを示す。また、“サイズ”は、入力フィールドに入力可能な文字数を規定する。
【００４６】
要素“複数項目グループ”（２０６）には、設計書で定義される１つの項目に対して値が複数定義される項目（複数項目）の内容と付加情報を定義するグループを定義する。要素“複数項目グループ”（２０６）は、要素“ローカル名”と要素“英字名”を含む。また、複数項目の数だけ、要素“項番”と、要素“必須フラグ”と、要素“複数項目ローカル名”と、要素“複数項目英字名”と、複数項目の値がスプレッドシート上のどの位置から始まるかを示す情報として要素“開始行”と要素“開始列”と、複数項目を画面に表示する際に必要とする情報として要素“種類”と要素“サイズ”が定義される。
【００４７】
なお、以上の要素“単数項目グループ”（２０５）と要素“複数項目グループ”（２０６）は、対象とする設計書に合わせて、それぞれ無くてもよいし、複数あってもよい。
【００４８】
要素“項目グループ間関連”（２０３）には、要素“項番”と、要素“親項目グループ名”と、要素“子項目グループ名”と、要素“説明”を含む。要素“親項目グループ名”と要素“子項目グループ名”には、“単数項目グループ”（２０５）または“複数項目グループ”（２０６）の“英字名”が記入される。
【００４９】
以上のように設計書メタ情報２０１は、スプレッドシート形式の設計書６０１ｂ及び設計書雛形６０１ａの構造とレイアウトを含む構成情報を予め定義した情報である。
【００５０】
図３は設計情報定義体３０１の一例を示す図である。設計情報定義体３０１は、設計書メタ情報変換部１０７の処理によって１つの設計書メタ情報２０１から１つ生成されて、記憶部１０２ｃ及び記憶部１０３ｃに格納されるファイルである。
【００５１】
設計情報定義体３０１には、スプレッドシート形式の設計書６０１ｂの行番号（ｃｅｌｌＬｉｎｅ）と列番号（ｃｅｌｌＣｏｌｕｍｎ）で定まるセルの情報が定義される。設計書読込及び変換部１０９は、設計書６０１ｂに応じた設計情報定義体３０１を参照することで、スプレッドシート形式の設計書６０１ｂの構造を取得できる。
【００５２】
図４は設計情報雛形４０１の一例を示す図である。設計情報雛形４０１は、設計書メタ情報変換部１０７の処理によって設計書メタ情報（更新後）２０１ｂを元にして生成され、記憶部１０２ｃ及び１０３ｃに格納されるファイルである。
【００５３】
設計情報雛形４０１は、設計情報５０１を生成する際に、設計書６０１ｂの値をＸＭＬ形式のファイルに設定するフォームが定義される。したがって、設計書読込変換部１０９は、設計情報定義体３０１に従ってスプレッドシート形式の設計書６０１ｂから読み込んだ値を設計情報雛形４０１に設定することで、ＸＭＬ形式の設計情報５０１に変換することができる。
【００５４】
図５は設計情報５０１の一例を示す図である。設計情報５０１は、スプレッドシート形式の設計書６０１ｂを、設計情報入出力装置１０３の設計書読込及び変換部１０９でＸＭＬ形式に変換した結果である。設計情報５０１は、図４に示した設計情報雛形４０１の変数＄に設計書６０１ｂの内容を設定した情報として設計書読込及び変換部１０９で生成される。
【００５５】
図６Ａは、設計書雛形６０１ａの一例を示す図である。設計書雛形６０１ａは、クライアント装置１０４の記憶部１０４ｃに予め格納されているスプレッドシート形式の情報である。
【００５６】
図６Ａの設計書雛形６０１ａは、設計書雛形６０１ａの種類を示すドキュメント分類６０２と、設計書雛形６０１ａの題目を格納する題目６０３と、コンポーネントＩＤ６０４と、コンポーネント名６０５と、作成者６０６と、更新者６０７と、承認者６０８と、作成日６０９と、更新日６１０と、承認日６１１と、データの番号を示す項番６１２と、パッケージ名前空間６１３と、クラス日本語名６１４と、クラス英字名６１５と、メソッド日本語名６１６と、メソッド英字名６１７と、他コンポ公開６１８と、備考６１９のセルを含む。
【００５７】
図６Ｂは、設計書６０１の一例を示す図である。図６Ｂの設計書６０１ｂは、図６Ａの設計書雛形６０１ａにクライアント装置１０４のユーザが表計算部１１５で所定の値を入力した結果を示す。設計書６０１ｂの各セルの符号は、設計書雛形６０１ａと同一である。
【００５８】
図６Ｃは、レイアウトなどが変更された設計書雛形６０１ａに、更新後の設計書メタ情報２０１の項目を重畳表示した一例を示す図である。設計書メタ情報生成支援装置１０１の重畳表示部１０６は、設計書雛形６０１ａの項目名の下または右のセルに、更新後の設計書メタ情報２０１の項目を表示する。
【００５９】
重畳表示部１０６は、設計項目辞書２０に項目名が登録済みの設計書メタ情報２０１の項目を図中ハッチングの背景で出力し、設計項目辞書２０に項目名が未登録の項目は図中網掛けの背景で出力される。
【００６０】
また、重畳表示部１０６は、設計書メタ情報（更新前）２０１ａに存在しない新たな項目名についても図中網掛けの背景で出力し、設計書雛形６０１ａの変更箇所を明示する。
【００６１】
図示の例では、「他コンポ公開」という項目名が網掛けの背景で表示されて、設計項目辞書２０に登録されていないことを示す。そして、当該項目名には、追加の作業が必要であることを示すメッセージが付加される。これにより、クライアント装置１０４のユーザは、更新後の設計書メタ情報２０１の項目について、設計項目辞書２０に登録済みであるか否かを容易に把握することが可能となる。
【００６２】
以下、設計書メタ情報生成支援装置１０１で行われる処理を、図１の全体システム構成図を引用しながら、図７の処理概要フローチャート、図８のレイアウト解析フローチャート、図９の辞書検索フローチャート、図１０の付加情報検索処理フローチャート、図１１の重畳表示部フローチャートに従い、ステップごとに説明する。
【００６３】
なお、以下の本実施例の説明において、スプレッドシート上で下方向（行方向）をＸ軸、右方向（列方向）をＹ軸とする。また、単数項目と複数項目で共通の処理を行うことから、設計書メタ情報２０１の要素“単数項目ローカル名”および“複数項目ローカル名”は“項目ローカル名”と省略し、“単数項目英字名”および“複数項目英字名”は“項目英字名”と省略する。
【００６４】
図７のフローチャートに示す設計書メタ情報生成支援装置１０１の処理は、クライアント装置１０４などからの指令に基づいて開始される。設計書メタ情報生成支援装置１０１は、指令された設計書雛形６０１ａと設計書メタ情報２０１ａを読み込んで、レイアウト解析処理と、辞書検索処理と、付加情報検索処理を行って更新後の設計書メタ情報２０１ｂを生成し、設計書メタ情報２０１ｂの項目を設計書雛形６０１ａに重ねて出力する。設計書メタ情報生成支援装置１０１の利用者は、クライアント装置１０４などの出力部１０１ｄに重畳表示部１０６からの出力を表示させて、設計書メタ情報２０１ｂのレイアウトを確認することができる。
【００６５】
ステップ７０１で，設計書メタ情報生成支援装置１０１は、設計書メタ情報生成制御部１０５の処理を開始する。次に、ステップ７０２で、設計書メタ情報生成制御部１０５が設計書メタ情報生成支援装置１０１の記憶部１０１ｃに格納されている設計書メタ情報（更新前）２０１ａを読み込む。
【００６６】
ステップ７０３では、設計書メタ情報生成制御部１０５が設計書メタ情報生成支援装置１０１の記憶部１０１ｃに格納されている設計書雛形６０１ａを読み込む。ステップ７０４では、設計書メタ情報生成制御部１０５が設計書雛形６０１ａについて、スプレッドシート形式の右方向優先でセルを探索し、文字列を含むセルを選択する。この処理は、基準となるセル（例えば、１行目１列）から順次行うことができる。
【００６７】
ステップ７０５では、レイアウト解析処理を開始する。以下、図８のフローチャートに基づいて、レイアウト解析処理の一例を説明する。
【００６８】
ステップ８０１では、設計書メタ情報生成制御部１０５がレイアウト解析処理を開始する。ステップ８０２では、設計書メタ情報生成制御部１０５が、上記ステップ７０４で取得したセルを起点にして、右方向に文字列を含むセルが存在するか否かを判定する。存在する場合、ステップ８０３へ進む。存在しない場合、ステップ８０４へ進む。
【００６９】
ステップ８０３では、設計書メタ情報生成制御部１０５が、右方項目座標Ｒｉｔｅｍにステップ８０２で取得したセルの座標を代入する。
【００７０】
ステップ８０４では、設計書メタ情報生成制御部１０５が、右方項目座標Ｒｉｔｅｍに初期値を代入する。すなわち、Ｒｉｔｅｍ［Ｘ］にはステップ７０４で取得したセルのＸ座標を、Ｒｉｔｅｍ［Ｙ］には設計書雛形６０１ａの最大幅＋１を代入する。なお、Ｒｉｔｅｍ［Ｘ］、［Ｙ］は変数である。
【００７１】
ステップ８０５では、設計書メタ情報生成制御部１０５が、上記ステップ７０４で取得したセルを起点にして、右方向に空白かつ無背景色のセルが存在するか否かを判定する。存在する場合、ステップ８０６へ進む。存在しない場合、ステップ８０７へ進む。なお、無背景色のセルは値を入力可能なセルとして判定される。
【００７２】
ステップ８０６では、設計書メタ情報生成制御部１０５が、右方向値座標Ｒｖａｌｕｅにステップ８０５で取得したセルの座標を代入する。
【００７３】
ステップ８０７では、設計書メタ情報生成制御部１０５が、右方向値座標Ｒｖａｌｕｅに初期値を代入する。すなわち、Ｒｖａｌｕｅ［Ｘ］には上記ステップ７０４で取得したセルのＸ座標を、Ｒｖａｌｕｅ［Ｙ］には設計書雛形６０１ａの最大幅＋１を代入する。なお、Ｒｖａｌｕｅ［Ｘ］、［Ｙ］は変数である。
【００７４】
ステップ８０８では、設計書メタ情報生成制御部１０５が、上記ステップ７０４で取得したセルを起点にして、下方向で文字列を含むセルが存在するか否かを判定する。存在する場合、ステップ８０９へ進む。存在しない場合、ステップ８１０へ進む。
【００７５】
ステップ８０９では、設計書メタ情報生成制御部１０５が、下方項目座標Ｄｉｔｅｍに上記ステップ８０８で取得したセルの座標を代入する。
【００７６】
ステップ８１０では、設計書メタ情報生成制御部１０５が、下方項目座標Ｄｉｔｅｍに初期値を代入する。すなわち、Ｄｉｔｅｍ［Ｘ］には設計書雛形６０１ａの最大高＋１を、Ｄｉｔｅｍ［Ｙ］にはステップ７０４で取得したセルのＹ座標を代入する。なお、Ｄｉｔｅｍ［Ｘ］、［Ｙ］は変数である。
【００７７】
ステップ８１１では、設計書メタ情報生成制御部１０５が、ステップ７０４で取得したセルを起点にして、下方向に空白かつ無背景色のセルが存在するか否かを判定する。存在する場合、ステップ８１２へ進む。存在しない場合、ステップ８１３へ進む。なお、上述のように、無背景色のセルは値を入力可能なセルとして判定される。
【００７８】
ステップ８１２では、設計書メタ情報生成制御部１０５が、下方向値座標Ｄｖａｌｕｅにステップ８１１で取得したセルの座標を代入する。
【００７９】
ステップ８１３では、設計書メタ情報生成制御部１０５が、下方向値座標Ｄｖａｌｕｅに初期値を代入する。すなわち、Ｄｖａｌｕｅ［Ｘ］には設計書雛形６０１ａの最大高＋１を、Ｄｖａｌｕｅ［Ｙ］にはステップ７０４で取得したセルのＹ座標を代入する。なお、Ｄｖａｌｕｅ［Ｘ］、［Ｙ］は変数である。
【００８０】
ステップ８１４では、設計書メタ情報生成制御部１０５が、右方項目座標Ｒｉｔｅｍ［Ｙ］と右方値座標Ｒｖａｌｕｅ［Ｙ］の大小を比較し、下方項目座標Ｄｉｔｅｍ［Ｘ］と下方向値座標Ｄｖａｌｕｅ［Ｘ］の大小を比較する。そして、Ｒｉｔｅｍ［Ｙ］＜ Ｒｖａｌｕｅ［Ｙ］かつＤｉｔｅｍ［Ｘ］＜Ｄｖａｌｕｅ［Ｘ］という条件が成立する場合、ステップ８１５へ進む。成立しない場合、ステップ８１７へ進む。
【００８１】
ステップ８１５では、設計書メタ情報生成制御部１０５が、ステップ７０４で取得したセルの文字列をグループローカル名（一次用）に代入する。
【００８２】
ステップ８１６では、設計書メタ情報生成制御部１０５が、ステップ７０４で取得したセルがグループ項目であることを示すグループフラグをＯＮにする。次に、ステップ８２１へ進む。なお、グループ項目とは複数の項目を代表する項目であり、たとえば、図６Ａの設計書雛形６０１ａの「クラス情報」のように、クラス日本語名６１４とクラス英字名６１５の項目を代表する項目をグループ項目とする。
【００８３】
ステップ８１７では、設計書メタ情報生成制御部１０５が、ステップ７０４で取得したセルの文字列を設計書メタ情報（更新後）２０１ｂの要素“項目ローカル名”に代入する。
【００８４】
ステップ８１８では、設計書メタ情報生成制御部１０５が、右方項目座標Ｒｉｔｅｍ［Ｙ］と右方向値座標Ｒｖａｌｕｅ［Ｙ］の大小を比較する。Ｒｉｔｅｍ［Ｙ］＜Ｒｖａｌｕｅ［Ｙ］という条件が成立する場合、ステップ８１９へ進む。成立しない場合、ステップ８２０へ進む。
【００８５】
ステップ８１９では、設計書メタ情報生成制御部１０５が、Ｄｉｔｅｍの座標を設計書メタ情報（更新後）２０１ｂの要素“開始行”と“開始列”に代入する。
【００８６】
ステップ８２０では、設計書メタ情報生成制御部１０５が、Ｒｉｔｅｍの座標を設計書メタ情報（更新後）２０１ｂの要素“開始行”と“開始列”に代入する。
【００８７】
ステップ８２１では、設計書メタ情報生成制御部１０５が、レイアウト解析処理を終了し、図７のフローチャートに戻る。
【００８８】
図７のステップ７０６では、設計書メタ情報生成制御部１０５が辞書検索処理を開始する。以下、図９のフローチャートに基づいて、辞書検索処理の一例を説明する。
【００８９】
図７のステップ９０１では、設計書メタ情報生成制御部１０５が辞書検索処理を開始する。
【００９０】
ステップ９０２では、設計書メタ情報生成制御部１０５が図７のステップ７０４で取得したセルの文字列をキーにして、設計項目辞書２０の項目ローカル名（項目名）を検索する。
【００９１】
ステップ９０３では、設計書メタ情報生成制御部１０５がステップ９０２の検索で取得できたレコードが存在するか否かを判定する。レコードが存在する場合、ステップ９０４へ進む。レコードが存在しない場合、ステップ９０５へ進む。
【００９２】
ステップ９０４では、設計書メタ情報生成制御部１０５がステップ９０２で取得したレコードの値を設計書メタ情報（更新後）２０１ｂの要素“項目ＩＤ”と“項目英字名”に代入する。なお、設計書メタ情報（更新後）２０１ｂは、入力された設計書メタ情報（更新前）２０１ａの内容に基づいて、新規な部分を追加または更新して生成される。
【００９３】
ステップ９０５では、設計書メタ情報生成制御部１０５がステップ７０４で取得したセルの文字列が項目辞書に登録されていないことを示す辞書未登録フラグをセットする。
【００９４】
ステップ９０６では、設計書メタ情報生成制御部１０５が辞書検索処理を終了し、図７のフローチャートに戻る。
【００９５】
図７のステップ７０７では、設計書メタ情報生成制御部１０５がグループフラグがＯＦＦであるか否かを判定する。ＯＦＦの場合、ステップ７０８へ進む。ＯＮの場合、ステップ７０９へ進む。グループフラグがＯＮであれば、現在の項目はグループ項目であるので、付加情報検索処理をスキップして次の処理へ進む。
【００９６】
ステップ７０８では、設計書メタ情報生成制御部１０５が付加情報検索処理を開始する。以下、図１０のフローチャートに基づいて、付加情報検索処理の一例を説明する。
【００９７】
ステップ１００１では、設計書メタ情報生成制御部１０５が付加情報検索処理を開始する。ステップ１００２では、設計書メタ情報生成制御部１０５がステップ９０４で取得した項目ＩＤ、および、ステップ８１５で取得したグループローカル名（一次用）の複合キーで設計書メタ情報（更新前）２０１ａを検索する。
【００９８】
ステップ１００３では、設計書メタ情報生成制御部１０５がステップ１００２の検索で取得できたレコードが存在するか否かを判定する。レコードが存在する場合、ステップ１００４へ進む。レコードが存在しない場合、ステップ１００５へ進む。
【００９９】
ステップ１００４では、設計書メタ情報生成制御部１０５がグループローカル名（一次用）を設計書メタ情報（更新後）２０１ｂの要素“グループローカル名”に代入する。次に、ステップ１００９へ進む。
【０１００】
ステップ１００５では、設計書メタ情報生成制御部１０５がステップ９０４で取得した項目ＩＤをキーに設計書メタ情報（更新前）２０１ａを検索する。
【０１０１】
ステップ１００６では、設計書メタ情報生成制御部１０５がステップ１００５の検索で取得できたレコードが存在するか否かを判定する。レコードが存在する場合、ステップ１００７へ進む。レコードが存在しない場合、ステップ１００８へ進む。
【０１０２】
ステップ１００７では、設計書メタ情報生成制御部１０５がステップ１００６で取得したレコードからグループローカル名を設計書メタ情報（更新後）２０１ｂの要素“グループローカル名”に代入する。
【０１０３】
ステップ１００８では、設計書メタ情報生成制御部１０５がステップ７０４で取得したセルの文字列が設計書メタ情報（更新前）２０１ａに存在しないことを示す未登録フラグをセットする。次に、ステップ１０１０に進む。
【０１０４】
ステップ１００９では、設計書メタ情報生成制御部１０５がステップ１００２、および、ステップ１００５で取得したレコードの値を、設計書メタ情報（更新後）２０１ｂの要素“グループ種別”と、“必須フラグ”と、“画面種類”と“画面サイズ”に代入する。
【０１０５】
ステップ１０１０では、設計書メタ情報生成制御部１０５が付加情報検索処理を終了し、図７のフローチャートに戻る。
【０１０６】
図７のステップ７０９では、設計書メタ情報生成制御部１０５が設計書雛形６０１ａについて、文字列を含む次のセルを取得できる否かを判定する。次のセルを取得できた場合、ステップ７０５へ戻って上記処理を繰り返す。一方、次のセルを取得できなかった場合、ステップ７１０へ進む。
【０１０７】
ステップ７１０では、設計書メタ情報生成制御部１０５が設計書メタ情報（更新後）２０１ｂを設計書メタ情報生成支援装置１０１の記憶部１０１ｃに出力する。
【０１０８】
ステップ７１１では、重畳表示部１０６が重畳表示処理を実行する。以下、図１１のフローチャートに基づいて、重畳表示処理の一例を説明する。
【０１０９】
ステップ１１０１では、重畳表示部１０６が処理を開始する。ステップ１１０２では、重畳表示部１０６が設計書メタ情報生成支援装置１０１の記憶部１０１ｃに格納されている設計書メタ情報（更新後）２０１ｂを読み込む。
【０１１０】
ステップ１１０３では、重畳表示部１０６が設計書メタ情報生成支援装置１０１の記憶部１０１ｃに格納されている設計書雛形６０１ａを読み込む。ステップ１１０４では、重畳表示部１０６が設計書メタ情報（更新後）２０１ｂから最初のレコードを取得する。
【０１１１】
ステップ１１０５では、重畳表示部１０６が、設計書雛形６０１ａにおいて、設計書メタ情報（更新後）２０１ｂの要素“開始行”と“開始列”が示すセルに、設計書メタ情報（更新後）２０１ｂの要素“ローカル項目名”を出力する。
【０１１２】
ステップ１１０６では、重畳表示部１０６が現在のセルについて辞書未登録フラグがＯＦＦか否かを判定する。辞書未登録フラグがＯＦＦの場合、ステップ１１０７へ進む。一方、辞書未登録フラグがＯＮの場合、ステップ１１０９へ進む。
【０１１３】
ステップ１１０７では、重畳表示部１０６が設計書雛形６０１ａにおいて、ステップ１１０５で指し示したセル（“開始行”と“開始列”）の背景色を黄色（図６Ｃではハッチング）に変更する。
【０１１４】
ステップ１１０８では、重畳表示部１０６が設計書雛形６０１ａにおいて、ステップ１１０５で指し示したセルのコメント欄に、設計書メタ情報（更新後）２０１ｂの付加情報を出力する。次に、ステップ１１１１へ進む。
【０１１５】
ステップ１１０９では、重畳表示部１０６が設計書雛形６０１ａにおいて、ステップ１１０５で指し示したセルの背景色を褐色（図６Ｃでは網掛け）に変更する。
【０１１６】
ステップ１１１０では、重畳表示部１０６が設計書雛形６０１ａにおいて、ステップ１１０５で指し示したセルのコメント欄に、追加作業が必要なことをユーザに知らせるメッセージを出力する。次に、ステップ１１１１へ進む。
【０１１７】
ステップ１１１１では、重畳表示部１０６が設計書メタ情報（更新後）２０１ｂについて、次のレコードが存在するかを判定する。存在する場合は、ステップ１１０５へ進む。存在しない場合、ステップ１１１２へ進む。ステップ１１１２では、重畳表示部１０６の処理を終了し、図７のフローチャートに戻る。図７のステップ７１２では、設計書メタ情報生成制御部１０５が処理を終了する。
【０１１８】
以上の処理によって、設計書メタ情報生成支援装置１０１では、レイアウトなどが変更された設計書雛形６０１ａと、設計書メタ情報（更新前）２０１ａとを入力し、レイアウト解析処理と、辞書検索処理と、付加情報検索処理を実施して、設計書雛形６０１ａの変更を反映した新たな設計書メタ情報（更新後）２０１ｂを生成する。そして、設計書メタ情報生成支援装置１０１の重畳表示部１０６は、設計書雛形６０１ａに設計書メタ情報（更新後）２０１ｂの項目を重畳表示させて処理を終了する。
【０１１９】
レイアウト解析処理では、設計書雛形６０１ａの各セルについて、文字列と背景色の有無から値を入力するセル（値セル）と項目名のセルを判定し、項目名開始行と開始列を取得する。本実施例では、セルの背景色が無く、かつ、文字列のないセルを値セルと判定する。なお、セルの背景色に限定されるものではなく、表示パターンが所定のパターンのセルを、値セルとすればよい。
【０１２０】
そして、本実施例では、グループローカル名（グループ項目）のセルは値セルと隣接しないというルールと、項目名（項目ローカル名）のセルは、値セルと隣接するというルールに基づいて、設計書メタ情報生成制御部１０５は自立的に、グループ項目と項目名及び値セルを判定する。
【０１２１】
すなわち、設計書メタ情報生成制御部１０５は、項目名を示すセルを起点に、右方向を探索して文字列を含むセルＲｉｔｅｍを取得し、右方向を探索して空白かつ無背景色のセルＲｖａｌｕｅを取得し、下方向を探索して文字列を含むセルＤｉｔｅｍを取得し、下方向を探索して空白かつ無背景色のセルＤｖａｌｕｅを取得し、Ｒｉｔｅｍ［Ｙ］＜Ｒｖａｌｕｅ［Ｙ］かつＤｉｔｅｍ［Ｘ］＜Ｄｖａｌｕｅ［Ｘ］という条件が成立する場合に項目名がグループ項目であると判定し、前記条件が成立しない場合に項目名が設計項目であると判定する。そして、設計書メタ情報生成制御部１０５は、レイアウト解析処理で項目名（グループ項目）の文字列と参照位置（開始行及び開始列）を取得する。
【０１２２】
また、項目名が設計書雛形６０１ａの設計項目である場合、設計書メタ情報生成制御部１０５は、Ｒｉｔｅｍ［Ｙ］＜Ｒｖａｌｕｅ［Ｙ］という条件が成立する場合に、項目名に対応付けられた値の開始行と開始列が項目セルから下方向を探索して取得したセルＤｉｔｅｍであると判定し、前記条件が成立しない場合に、項目に対応付けられた値の開始行・開始列が項目セルから右方向を探索して取得したセルＲｉｔｅｍであると判定する。
【０１２３】
辞書検索処理では、設計書雛形６０１ａのセルから取得した文字列をキーとして、設計項目辞書２０を検索して項目英字名を取得する。設計項目辞書２０に存在しない項目名であれば、当該セルに対応する辞書未登録フラグをＯＮに設定する。
【０１２４】
続く付加情報検索処理では、設計項目辞書２０から取得した設計書雛形６０１ａの項目ＩＤで、設計書メタ情報（更新前）２０１ａを検索し、付加情報を取得する。ここで、付加情報は、設計書メタ情報（更新前）２０１ａから設計書メタ情報（更新後）２０１ｂに引き継ぐ、自動生成や画面表示あるいは整合性検証のための定義情報を含む。本実施例では、付加情報の一例として、グループ種別と必須フラグと画面種類と画面サイズを取得する例を示す。なお、項目ＩＤが設計書メタ情報（更新前）２０１ａに存在しない設計書雛形６０１ａのセルについては辞書未登録フラグをＯＮに設定する。
【０１２５】
そして、設計書メタ情報生成制御部１０５は、レイアウト解析処理で取得した項目名（グループ項目）と参照位置から設計書メタ情報（更新後）２０１ｂを生成し、設計書メタ情報（更新前）２０１ａから引き継いだ付加情報と設計項目辞書２０から取得した項目英字名を設定する。
【０１２６】
なお、上記図１０では、設計書メタ情報（更新前）２０１ａからグループ項目を引き継いで設計書メタ情報（更新後）２０１ｂにコピーする例を示したが、設計書雛形６０１ａにグループ項目が記述されていればグループ項目を設計書メタ情報（更新後）２０１ｂにコピーしてもよく、設計書雛形６０１ａにグループ項目が記述されていない場合には、設計書メタ情報（更新前）２０１ａからグループ項目を設計書メタ情報（更新後）２０１ｂに引き継ぐようにしてもよい。
【０１２７】
最後に、重畳表示部１０６は、設計書メタ情報（更新後）２０１ｂの項目名を設計書雛形６０１ａに重ねて出力し、設計項目辞書２０に登録されていない項目を所定の表示パターン（例えば、褐色；図６Ｃでは網掛けの背景）で出力する。また、重畳表示部１０６は、追加の作業が必要なメッセージを該当する項目名のコメント欄などに出力する。なお、メッセージは、スプレッドシートのコメントとして、前記項目名の位置で出力することができる。また、メッセージの内容は、予め設定された文字列を使用すればよい。
【０１２８】
これにより、クライアント装置１０４の出力部１０４ｄに、重畳表示部１０６の出力を表示させることで、ユーザは設計書雛形６０１ａで更新、追加あるいは削除された箇所を所定のパターンによって容易に検証することが可能となる。
【０１２９】
なお、重畳表示部１０６は、設計書メタ情報（更新後）２０１ｂの項目名のうち、設計書メタ情報（更新前）２０１ａに存在しない項目名を所定の表示パターンで表示してもよい。
【０１３０】
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【０１３１】
本実施形態の設計情報入出力装置１０３の記憶部１０３ｃにおいて、設計情報５０１を格納するにあたり、ＸＭＬファイルとして格納する、データベースの一カラムに格納する、または、ＸＭＬデータベースに格納する、としてもよい。
【０１３２】
本実施形態の設計情報入出力装置１０３の記憶部１０３ｃにおいて、設計情報５０１はＸＭＬ形式としたが、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ Ｍａｒｋｕｐ Ｌａｎｇｕａｇｅ）と同様に半構造データ形式であればＪＳＯＮ（ＪａｖａＳｃｒｉｐｔ Ｏｂｊｅｃｔ Ｎｏｔａｔｉｏｎ（ＪａｖａＳｃｒｉｐｔは登録商標））など、であってもよい。
【０１３３】
また、スプレッドシート形式は表計算部（表計算ソフトウェア）１０８、１１５によって生成された情報であり、行と列の識別子を有するセルと、複数のセルを有するシートを含んで構成されればよい。
【０１３４】
また、上記ではスプレッドシート形式の設計書６０１ｂに本発明を適用する例を示したが、設計書に限定されるものではなく、スプレッドシート形式の情報をＸＭＬ形式に変換して編集、検索するものであればよい。この場合、本実施形態の設計書６０１ｂを入力情報と読み替え、設計書メタ情報２０１を入力情報メタ情報とし、設計情報定義体３０１を入力情報定義体とし、設計情報雛形４０１を変換情報雛形と読み替えればよい。
【０１３５】
以上のように、本実施形態によれば、スプレッドシート形式の設計書を構造化された情報に変換してデータベースで一元管理する設計書の入出力システムであって、入力された設計書雛形に記述された項目名と前記項目に対応付けられた値の開始行・開始列を判定し、前記項目に対応する項目英字名を設計項目辞書から取得し、前記項目に従属する定義情報を設計書メタ情報（更新前）から取得し、新たな設計書メタ情報（更新後）を生成する。
【０１３６】
また、設計書雛形上で設計書メタ情報（更新後）の開始行・開始列を示す位置に項目名と従属情報を出力する。これにより、スプレッドシート形式の設計書を構造化された情報に変換してデータベースで一元管理するシステムにおいて、設計書に記述される項目やレイアウトが変更になった場合に設計書メタ情報の修正作業を効率化することができる。
【０１３７】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
【０１３８】
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。  また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば仮想マシンで設計する等によりクラウドシステムで実現してもよい。
【０１３９】
また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。  各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１４０】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１４１】
１００  設計書の入出力システム
１０１  設計書メタ情報生成支援装置
１０２  設計書メタ情報変換装置
１０３  設計情報入出力装置
１０４  クライアント装置
１０５  設計書メタ情報生成制御部
１０６  重畳表示部
１０７  設計書メタ情報変換部
１０９  設計書読込及び変換部
１１０  設計情報検索条件入力画面出力部
１１１  設計情報検索及び結果表示画面出力部
１１２  設計情報参照及び編集画面出力部
１１３  設計情報編集処理部
２０１ａ  設計書メタ情報（更新前）
２０１ｂ  設計書メタ情報（更新後）
３０１  設計情報定義体
４０１  設計情報雛形
５０１  設計情報
６０１ａ  設計書雛形
６０１ｂ  設計書
【図１】
0006647954.tif 000002
【図２】
0006647954.tif 000003
【図３】
0006647954.tif 000004
【図４】
0006647954.tif 000005
【図５】
0006647954.tif 000006
【図６Ａ】
0006647954.tif 000007
【図６Ｂ】
0006647954.tif 000008
【図６Ｃ】
0006647954.tif 000009
【図７】
0006647954.tif 000010
【図８】
0006647954.tif 000011
【図９】
0006647954.tif 000012
【図１０】
0006647954.tif 000013
【図１１】
0006647954.tif 000014
【図１２】
0006647954.tif 000015