(57)【要約】      （修正有）【課題】各工程（基本設計工程、詳細設計工程）設計書の不整合の検出数が膨大な場合でも、人為的ミスや作業時間の関係で修正漏れが残存したり、設計書の修正経過を把握できなくなることを防止する。【解決手段】各工程（基本設計工程、詳細設計工程）の設計書の整合性をチェックする設計書の組み合わせを網羅した整合性チェックパターンによって不整合を検出し、不整合検出結果に修正情報を記載することで、設計書に修正情報を反映し、修正履歴を自動作成する。【選択図】図１
2014056447.tif 000002
【特許請求の範囲】
【請求項１】
基本設計工程、詳細設計工程を含む各工程における設計書の整合性を管理する設計書整合性管理システムであって、
チェックする設計書の組み合わせとその関係をパターン化した複数のチェックパターン及びチェックパターンごとのチェック方法を記載した定義データを記憶する記憶部と、
前記チェックパターン及び前記チェックパターンごとのチェック方法に基づいて、前記設計書における項目情報の不整合を検出する制御部とを具備する、
ことを特徴とする設計書整合性チェックシステム。
【請求項２】
前記チェックパターンは、マスタとなる設計書とチェック対象の設計書の組み合わせを１対多とした場合の第１のチェックパターンと、チェック対象の設計書の組み合わせを１対１として双方向にチェックする場合の第２のチェックパターンと、複数のマスタとなる設計書とチェック対象の設計書の組み合わせを仮想的に１対多とした場合の第３のチェックパターンと、チェック対象の設計書の組み合わせを１対１として単方向にチェックする場合の第４のチェックパターンと、同一フォーマットの設計書において、１つの設計項目に関連する１つ以上の設計項目の値の関連性が一致しているかをチェックする第５のチェックパターンとを含む、
ことを特徴とする請求項１に記載の設計書整合性管理システム。
【請求項３】
前記制御部は、前記第１のチェックパターンと前記チェック方法に従って、１つのマスタとなる設計書と複数のチェック対象の設計書間で、マスタとなる設計書に対して項目情報を突き合わせて比較することにより、項目情報の有無と項目情報の関連性を判断し、前記設計書における項目情報の不整合を検出する、
ことを特徴とする請求項２に記載の設計書整合性管理システム。
【請求項４】
前記制御部は、前記第２のチェックパターンと前記チェック方法に従って、チェック対象の設計書の組み合わせを規定し、項目情報を相互に突き合わせて比較することにより、項目情報の有無と項目情報の関連性を判断し、前記設計書における項目情報の不整合を検出する、
ことを特徴とする請求項２に記載の設計書整合性管理システム。
【請求項５】
前記制御部は、前記第３のチェックパターンと前記チェック方法に従って、複数のマスタとなる設計書を仮想的に１つのマスタとなる設計書とみなし、複数のチェック対象の設計書間で、マスタとなる設計書に対して項目情報を突き合わせて比較することにより、項目情報の有無と項目情報の関連性を判断し、前記設計書における項目情報の不整合を検出する、
ことを特徴とする請求項２に記載の設計書整合性管理システム。
【請求項６】
前記制御部は、前記第４のチェックパターンと前記チェック方法に従って、チェック対象の設計書の組み合わせを規定し、規定した設計書に対して項目情報を突き合わせて比較することにより、項目情報の有無と項目情報の関連性を判断し、前記設計書における項目情報の不整合を検出する、
ことを特徴とする請求項２に記載の設計書整合性管理システム。
【請求項７】
前記制御部は、前記第５のチェックパターンと前記チェック方法に従って、同一の設計書において、対象の項目情報を突合せて比較し、対象の項目情報の有無と項目情報の関連性を判断し、前記設計書における項目情報の不整合を検出する、
ことを特徴とする請求項２に記載の設計書整合性管理システム。
【請求項８】
前記制御部は、前記設計書における項目情報の不整合検出結果に前記修正情報を記載することで、前記設計書に修正情報を反映し、修正履歴を作成する、
ことを特徴とする請求項１乃至請求項７の何れか１項に記載の設計書整合性管理システム
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はウォーターフォール開発におけるソフトウェア及びシステム開発の各工程で作成する設計書の品質と保守性を向上する技術に関わる。
【背景技術】
【０００２】
設計書はウォーターフォール開発におけるソフトウェア及びシステム開発を実施する上で必須となる書類である。設計書は各工程ごとに作成され、段階的に内容が詳細化される。ウォーターフォール開発で作成される設計書には４点問題がある。１点目は“仕様変更”に関する問題で、一般的に仕様変更は、設計工程での設計作業や顧客要望発生時、製造工程でのバグ発生時などを契機に発生する。その際に“各工程で作成された設計書間での設計情報の不一致”、“設計書とデータベースの項目情報の不一致”といった問題が発生している。２点目は“設計書の修正”に関する問題で、１点目の問題の影響で発生する設計書の修正については、設計・開発担当者の判断により、修正箇所や修正範囲を判断することが多い。そのため、設計・開発担当者のレベルにより修正精度のバラツキが発生する。３点目は“設計書のレビュー”に関する問題で、一般的に設計書の作成完了判定は、レビュー担当者や開発リーダーとのレビュー実施をもって作成完了とみなされるが、限られた時間内での該当設計書のみの目視チェックであることが多い。そのため、“レビュー指摘漏れ”、“関連する設計書への影響考慮不足による設計書間での不整合”が発生している。４点目は“設計書の保守”に関する問題で、一般的にソフトウェア及びシステムの開発完了後は設計書を元に保守・運用を実施する。しかし、問題の１点目から３点目の影響で、“設計書とプログラムソースやデータベースの項目情報の不一致”や“設計・開発担当者不在により仕様変更の変移が分からない”ことにより保守性が低下している。これらの問題により、手戻りによる開発納期の遅延やソフトウェア及びシステムの品質低下につながる。そこで、ウォーターフォール開発の各工程で作成される設計書の整合性に着目し、設計書の不整合を自動検出する仕組みが従来技術として提案されている。例えば、設計書を入力として設計書の文章中からキーワード文字を含む文字列を洗い出し、データベースに保持された処理ルールに従ってチェック対象の項目名称を処理加工して他設計書との整合性チェックをするシステム（特許文献１）、設計書より設計仕様の一貫性と整合性を検証する機能、及び、テストデータを生成する機能を有する、設計品質検査支援システム（特許文献２）がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８-１８６３５６号公報
【特許文献２】特開２０１０-７２９４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
１点目の課題としては、従来技術では不整合をチェックする設計書の関係をマスタとなる設計書とチェック対象の設計書とした場合、１対１もしくは１対多の整合性をチェックする仕組みであることから、マスタとなる設計書の品質が高くなければ効果が発揮されないことが挙げられる。加えて、マスタとなる設計書が複数ある場合やマスタとなる設計書とチェック対象の設計書の相互チェック、マスタとなる設計書が存在しない場合（同形式の設計書内で項目情報が一致しているかをチェックする条件）のチェックが網羅できないことから、マスタとなる設計書とチェック対象の設計書の品質を相互に向上させることが難しい。２点目の課題としては、従来技術では設計書の不整合を検出する仕組みを備えているが、検出後の修正については、手作業で実施することが前提とされている。そのため、不整合の検出数が膨大な場合は、人為的ミスや作業時間の関係で修正漏れが残存したり、設計書の修正経過を把握できなくなる可能性がある。
【０００５】
本発明は、以上の点に鑑みてなされたものであり、整合性をチェックする設計書の組み合わせを網羅して不整合を検出し、不整合検出結果より設計書に修正情報を反映して修正履歴を自動作成する設計書整合性管理システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
１点目の課題を解決するために、整合性をチェックする設計書の組み合わせを網羅した整合性チェックパターンによって不整合を検出するシステムを提供する。
２点目の課題を解決するために、設計書の不整合検出結果に修正情報を記載することで、設計書に修正情報を反映し、修正履歴を自動作成するシステムを提供する。
【発明の効果】
【０００７】
本発明では、設計書を入力として整合性チェックパターンによる設計書の項目情報の不整合を自動検出することで、設計書の品質向上と工程間の手戻り防止による生産性の向上が期待できる。また、設計書の不整合検出結果から修正情報を反映し、修正履歴を自動作成することにより、全体の修正状況と設計書単位での修正状況を管理することができるため、トレーサビリティの向上と保守性の向上が期待できる。
【図面の簡単な説明】
【０００８】
【図１】ユーザー端末のハードウエア構成図である。
【図２】整合性チェック処理の実行フローを記載した図である。
【図３】共通設計書の例である。
【図４】機能別設計書の例である。
【図５】整合性チェック処理用のマッピング定義ファイルである。
【図６】マッピング定義ファイルから生成されるマッピング情報ファイルである。
【図７】整合性チェック処理に必要な入力情報を設定する画面である。
【図８】整合性チェック結果のイメージ図である。
【図９】同じく、整合性チェック結果のイメージ図である。
【図１０】修正処理の実行フローを記載した図である。
【図１１】修正処理に必要な入力情報を設定する画面である。
【図１２】修正履歴のイメージ図である。
【図１３】同じく、修正履歴のイメージ図である。
【図１４】画面に入力された情報を取得する際の処理フローである。
【図１５】整合性チェック処理及び修正処理のマッピング処理フローである。
【図１６】同じく、整合性チェック処理及び修正処理のマッピング処理フローである。
【図１７】同じく、整合性チェック処理及び修正処理のマッピング処理フローである。
【図１８】同じく、整合性チェック処理及び修正処理のマッピング処理フローである。
【図１９】同じく、整合性チェック処理及び修正処理のマッピング処理フローである。
【図２０】整合性チェック処理のチェック処理フローである。
【図２１】同じく、整合性チェック処理のチェック処理フローである。
【図２２】同じく、整合性チェック処理のチェック処理フローである。
【図２３】同じく、整合性チェック処理のチェック処理フローである。
【図２４】同じく、整合性チェック処理のチェック処理フローである。
【図２５】同じく、整合性チェック処理のチェック処理フローである。
【図２６】修正履歴作成処理の反映処理フローである。
【図２７】同じく、修正履歴作成処理の反映処理フローである。
【図２８】同じく、修正履歴作成処理の反映処理フローである。
【図２９】整合性チェック処理の整合性チェック結果出力処理フローである。
【図３０】修正履歴作成処理の修正履歴出力処理フローである。
【発明を実施するための形態】
【０００９】
以下、本発明を図面を参照して詳細に説明する。
【００１０】
図１はユーザ端末１００のハードウエア構成図である。ユーザー端末１００は、記憶部１０１と、表示部１０２と、入力部１０３と、制御部１０４で構成される。各部はバス（ＢＵＳ）によって接続されている。記憶部１０１は、画面プログラム１１０と、処理プログラム１２０と、ファイル１３０で構成される。画面プログラム１１０は、整合性チェック実行画面１１１と、修正処理実行画面１１２で構成される。処理プログラム１２０は、入力情報取得処理部１２１と、マッピング処理部１２２と、整合性チェック処理部１２３と、反映処理部１２４と、チェック結果出力処理部１２５と、修正結果出力処理部１２６で構成される。定義ファイル１３０はマッピング定義ファイル１３１と、マッピング情報ファイル１３２で構成される。表示部１０２は、画面プログラム１１０の整合性チェック実行画面１１１、もしくは、修正処理実行画面１１２を表示する。表示部１０２に表示された画面プログラム１１０に入力部１０３で情報を入力する。入力情報取得処理部１２１は、表示部１０２に表示された画面プログラム１１０に入力部１０３で入力された情報を取得する。マッピング処理部１２２は、整合性チェックを実施する設計書の組み合わせを決定する。整合性チェック処理部１２３は、入力情報取得処理部１２１で取得した情報と、マッピング処理部１２２で作成した情報より設計書から設計項目情報を取得して整合性をチェックし、チェック結果の情報を作成する。反映処理部１２４は、入力情報取得処理部１２１で取得した情報と、マッピング処理部１２２で作成された情報を元に設計書から設計項目情報を取得して設計書の修正情報と修正履歴の情報を作成する。チェック結果出力処理部１２５は整合性チェック処理部１２３で作成されたチェック結果の情報をファイルに書き込み出力する。修正結果出力処理部１２６は反映処理部１２４で作成された設計書の修正情報と修正履歴の情報をファイルに書き込み出力する。
【００１１】
図２は整合性チェック処理の実行フローである。複数の設計書２０１、マッピング定義ファイル１３１、マッピング情報ファイル１３２を入力として、整合性チェック実行画面１１１より処理を実行し、整合性チェック結果２０２を出力する。設計書２０１は図３、図４に示す例のように表形式ベースで記載される設計書を前提とする。マッピング定義ファイル１３１は、整合性チェックの定義情報が図５に示すように記載された表形式ファイルである。マッピング情報ファイル１３２は、図５の整合性チェックの定義情報を処理高速化のために、図６に示すようにXML構造体に変換した定義情報ファイルである。整合性チェック実行画面１１１は、図７に示す画面である。整合性チェック結果２０２は図８、図９に示す表形式ファイルである。実行フローとしては、整合性チェック実行画面１１１より実行後、処理プログラム１２０の入力情報処理部１２１で整合性チェック実行画面１１１から入力情報を取得する。次にマッピング処理部１２２で、図５の整合性チェックの定義情報を図６の形式に変換してマッピング情報を取得する。その後、整合性チェック処理部１２３で、入力情報処理部１２１とマッピング処理部１２２で取得した情報を元に整合性チェックを実施する。最後にチェック結果出力処理部１２５で整合性チェック処理部１２３で取得した情報を元に処理を実施し、整合性チェック結果２０２を出力する。
【００１２】
図３は、整合性チェック処理で入力となる共通設計書の例である。図４の設計書の詳細化前の情報が記載される一覧表形式の設計書であり、整合性チェックにおいて「比較先」となる設計書である。機能ＩＤ３０１は、作成する機能に一意に付与されるＩＤを示す情報である。機能名称３０２は、作成する機能に対して付与される日本語名称を示す情報である。処理区分３０３は、作成する機能の概要を示す情報である。アクセステーブル名３０４は、作成する機能がアクセスするテーブルの名称を示す情報である。
【００１３】
図４は、整合性チェック処理で入力となる機能別設計書の例である。図３の設計内容を詳細化した情報が記載される設計書であり、機能単位で作成される設計書である。整合性チェックにおいて、「比較元」となる設計書である。機能ＩＤ４０１は、作成する機能に一意に付与されるＩＤを示す情報であり、共通設計書で定義されている情報である。機能名称４０２は、作成する機能に対して付与される日本語名称を示す情報であり、共通設計書で定義されている情報である。画面項目名４０３は、作成する機能で定義する画面項目名を示す情報ある。桁数４０４は、画面項目名４０３を画面上で表示もしくは入力する際の桁数を示す情報である。テーブル名称４０５は、画面項目名４０３を表示もしくはテーブルに登録する際にアクセスするテーブルの名称を示す情報である。
【００１４】
図５は、マッピング定義ファイルの例である。利用者はこのファイルに整合性チェック処理を実施するための情報を定義する。チェックID５０１に、整合性チェックを実施して結果を集計する際の単位となるIDを記載する。チェックIDは整合性チェック結果ファイルの名称に付与される。チェック名５０２には、チェックIDの日本語名称を記載する。チェック実行フラグ５０３は整合性チェックの実施可否を決定するフラグである。「Y」である場合は整合性チェックを実施する設定で、「N」の場合は整合性チェックを実施しない設定となる。チェックパターン５０４は、チェックする設計書の組み合わせとその関係をパターン化したチェックパターン１から５を指定する。「チェックパターン１」は、マスタとなる設計書とチェック対象の設計書の組み合わせを１対多とした場合のチェックパターンである。例えば、マスタとなる設計書が１つであり、チェック対象の設計書が１つ以上ある場合に使用する。「チェックパターン２」は、チェック対象の設計書の組み合わせを１対１として双方向にチェックする場合のチェックパターンである。「チェックパターン３」は、マスタとなる設計書とチェック対象の設計書の組み合わせを仮想的に１対多とした場合のチェックパターンである。例えば、マスタとなる設計書が２つ以上ある場合に、２つ以上のマスタとなる設計書を仮想的に１つのマスタとなる設計書とみなし、チェック対象の設計書１つ以上とチェックをする場合に使用する。「チェックパターン４」は、チェック対象の設計書の組み合わせを１対１として単方向にチェックする場合のチェックパターンである。例えば、各チェック対象の設計書に記載している情報量が異なり、双方向にチェックすると大量の不整合が発生してしまう場合に使用する。「チェックパターン５」は同一フォーマットの設計書において、１つの設計項目に関連する１つ以上の設計項目の値の関連性が一致しているかをチェックするパターンである。例えば、ある画面項目名に対する桁数やアクセスするテーブルが全ての設計書で一致しているかをチェックする際に使用する。チェックパターンを分けることで、目的に沿った整合性チェックが実施可能になり。本来チェックしたくない設計書をチェックしてしまうことで発生する不整合結果の確認にかかる手間を減らすことができる。チェック区分５０５は、設計書の設計項目の値のチェック方法を決める区分である。「存在チェック」もしくは、「関連チェック」のどちらからを指定することができる。「存在チェック」は、1つの設計項目のみを指定して、該当する設計項目の値が設計書に存在するかをチェックする設定である。「関連チェック」は、１つの設計項目に関連する１つ以上の設計項目を指定して、設計項目の値の関連性が設計書間で等しいかをチェックする設定である。５０４でチェックパターン５を設定した場合は、存在チェックにも関連チェックにも該当しないため、チェック区分の設定はしない。比較先設計書５０６は整合性チェックを実施する際の比較先となる設計書の名称を記載する。設計書の名称を部分一致で記載可能である。比較先シート５０７は整合性チェックを実施する比較先の設計書のシートの名称を完全一致で記載する。比較先設計項目５０８は整合性���ェックを実施する比較先の設計書のシートの設計項目の名称を完全一致で記載する。チェック区分５０５が「存在チェック」の場合は、比較先設計項目５０８に１つの設計項目名称を記載する。チェック区分５０５が「関連チェック」の場合は、比較先設計項目５０８に２つ以上の設計項目名称を半角カンマ区切りで記載する。チェック区分５０５が「チェックパターン５」の場合は、比較先設計項目５０８に２つ以上の設計項目名称を半角セミコロン区切りで記載する。比較先読込方向５０９は比較先設計項目５０８で記載した設計項目から値を取得する方向を「縦」もしくは「横」で指定する。「縦」を指定した場合は、設計項目から下方向に値を読み込み、「横」を指定した場合は、右方向に値を読み込む。比較先読込終了条件５１０は比較先読込方向５０９で値を取得する際の終了条件を「空白」もしくは「罫線」を指定する。「空白」を指定した場合は、取得する値が空白になるまで、値を取得する。「罫線」を取得した場合は、表形式で記載された場合の罫線がなくなるまで、値を取得する。比較元設計書５１１は整合性チェックを実施する比較元の設計書の名称を部分一致で記載する。比較元シート５１２は整合性チェックを実施する比較元の設計書のシートの名称を完全一致もしくは部分一致で記載する。シート区分５１３は比較元シート５１２で記載したシート名称を「完全一致」もしくは「部分一致」で取得するための区分を指定する。シート区分５１３が「完全一致」の場合は、比較元シート５１２で記載したシート名称である場合のみ、整合性チェック対象のシートとする。シート区分５１３が「部分一致」の場合は、比較元シート５１２で記載したシート名称が含まれる場合に対象シート全てを整合性チェック対象とする。比較元設計項目５１４には、整合性チェックを実施する比較元の設計書のシートにおける設計項目の名称を完全一致で記載する。チェック区分５０５が「存在チェック」の場合は、比較元設計項目５１４に１つの設計項目名称を記載する。チェック区分５０５が「関連チェック」の場合は、比較元設計項目５１４に２つ以上の設計項目名称を半角カンマ区切りで記載する。チェック区分５０５が「チェックパターン５」の場合は、比較元設計項目５１４に２つ以上の設計項目名称を半角セミコロン区切りで記載する。比較元読込方向５１５は比較元設計項目５１４で記載された設計項目から値を取得する方向を「縦」もしくは「横」で指定する。「縦」を指定した場合は、設計項目から下方向に値を読み込み、「横」を指定した場合は、右方向に値を読み込む。比較先読込終了条件５１６は比較元読込方向５１５で値を取得する際の終了条件を「空白」もしくは「罫線」を指定する。「空白」を指定した場合は、取得する値が空白になるまで、値を取得する。「罫線」を取得した場合は、表形式で記載された場合の罫線がなくなるまで、値を取得する。
【００１５】
図６は、マッピング情報ファイルである。整合性チェック処理を高速化させるためのXML構造体で、図５のマッピング定義ファイルを変換して作成される。図５に記載されているチェックＩＤ５０１の単位でマッピング定義ファイルで設定した情報を変換する。
【００１６】
図７は整合性チェック処理実行画面１１１である。入力フォルダパス７００に整合性チェック処理の入力となる設計書が格納されているフォルダパスを指定する。出力フォルダパス７０１には、整合性チェック結果の出力先となるフォルダパスを指定する。参照ボタン７０３及び７０４を押すことで、エクスプローラからフォルダパスを選択する。マッピング情報更新７０２にチェックを入れて実行７０５を押下することで、マッピング定義ファイルからマッピング情報ファイルを作成して処理を実行する。マッピング情報更新７０２にチェックを入れずに実行７０５を押下することで、既存のマッピング情報ファイルを利用して処理を実行する。終了７０６を押下することで、画面をクローズする。７０７は画面の名称情報である。
【００１７】
図８は、チェックパターン１、チェックパターン２、チェックパターン３、チェックパターン４の場合の整合性チェック処理の整合性チェック結果イメージ図である。比較先設計書８０１には整合性チェックの比較先となる設計書の名称が記載される。比較先シート８０２には整合性チェックの比較先となる設計書のシート名称が記載される。比較先設計項目８０３には整合性チェックの比較先となる設計書のシートの設計項目の名称が記載される。比較先設計項目値８０４には整合性チェックの比較先となる設計書のシートの設計項目に記載されている値が記載される。比較元の設計項目値が比較先に存在しない場合は、ハイフンが記載される。比較先位置座標８０５には整合性チェックの比較先となる設計書のシートの設計項目に記載されている値の位置座標が記載される。比較元の設計項目値が比較先に存在しない場合は、ハイフンが記載される。比較元設計書８０６には整合性チェックの比較元となる設計書の名称が記載される。比較元シート８０７には整合性チェックの比較元となる設計書のシート名称が記載される。比較元設計項目８０８には整合性チェックの比較元となる設計書のシートの設計項目の名称が記載される。比較元設計項目値８０９には整合性チェックの比較元となる設計書のシートの設計項目に記載されている値が記載される。比較元位置座標８１０には整合性チェックの比較元となる設計書のシートの設計項目に記載されている値の位置座標が記載される。チェック区分８１１には整合性チェックの区分、「存在チェック」もしくは「関連チェック」が記載される。一致/不一致８１２には整合性チェック結果の一致、不一致が記載される。比較先と比較元で値が完全に一致する場合は「○」が記載される。関連チェック時に比較先と比較元で関連する値が部分的に一致する場合は「△」が記載される。比較先と比較元で値が一致しない場合は「×」が記載される。メッセージ８１３には整合性チェック結果に準ずるメッセージが記載される。反映値８１４は整合性チェック結果出力時には、値が記載されない。設計書に値を反映する修正処理時に値を記載することで、比較先の対象位置座標の値を修正する。  
【００１８】
図９は、チェックパターン５の場合の整合性チェック処理の整合性チェック結果イメージ図である。キー項目９０１には整合性チェックのキーとなる設計項目に記載されている値が記載される。可変項目N９０２には９０１に関連する設計項目値が記載される。関連する設計項目は可変数を設定することができ、その数によりフォーマットに可変項目が追加される。設計書名９０３には９０１のキーとなる設計項目と９０２のキーとなる設計項目に関連する設計項目が存在する設計書の名称が記載される。シート名９０４には９０１のキーとなる設計項目と９０２のキーとなる設計項目に関連する設計項目が存在する設計書のシート名称が記載される。位置座標９０５には９０１のキーとなる設計項目の値と９０２のキーとなる設計項目に関連する設計項目の値の位置座標が記載される。一致/不一致９０６には整合性チェック結果の一致、不一致が記載される。全ての設計書で９０１のキーとなる設計項目の値と９０２のキーとなる設計項目に関連する設計項目の値が完全に一致する場合は「○」が記載される。その場合、９０３と９０４と９０５はハイフンが記載される。全ての設計書で９０１のキーとなる設計項目の値と９０２のキーとなる設計項目に関連する設計項目の値が完全に一致しない場合は「×」が記載される。メッセージ９０７には整合性チェック結果に準ずるメッセージが記載される。修正項目名９０８は整合性チェック結果出力時には、値が記載されない。設計書に値を反映する修正処理時に修正したい可変項目名を記載する。反映値９０９は整合性チェック結果出力時には、値が記載されない。設計書に値を反映する修正処理時に修正したい可変項目名の項目値を記載することで、対象可変項目の位置座標の値を修正する。
【００１９】
図１０は修正処理の実行イメージ図である。複数の設計書１００１と整合性チェック結果１００２とマッピング情報ファイル１３２を入力として、修正処理実行画面１１２より処理を実行する。処理プログラム１２０の入力情報処理部１２１と、マッピング処理部１２２と、反映処理部１２４と、修正履歴出力処理部１２６で処理を実施し、修正済み設計書１００３と、修正履歴１００４を出力する。設計書１００１は図３、図４に示す例のように表形式ベースで記載される設計書を前提とする。マッピング情報ファイル１３２は、図６に示すようにXML構造体の設計書定義情報ファイルである。修正処理実行画面１１２は、図１１に示す画面である。整合性チェック結果１００２は図８、図９に示す表形式ファイルである。整合性チェック処理の出力結果に対して、修正情報を追記したファイルである。修正済み設計書１００３は、設計書１００１と整合性チェック結果１００２とマッピング情報ファイル１３２より、整合性チェック結果１００２の内容を反映した設計書である。修正履歴１００４は、整合性チェック結果１００２の内容を反映した結果を履歴として残すためのファイルである。修正履歴は図１２に示す設計書単位と図１３に示す修正処理実施時の全設計書を対象とした単位で作成される。修正処理実行フローとしては、修正処理実行画面１１２より実行後、処理プログラム１２０の入力情報処理部１２１で修正処理実行画面１１２から入力情報を取得する。次にマッピング処理部１２２で、図６の形式のマッピング情報を取得する。その後、反映処理部１２４で、入力情報処理部１２１とマッピング処理部１２２で取得した情報を元に反映処理を実施する。最後に修正結果出力処理部１２６で反映処理部１２４で取得した情報を元に処理を実施し、修正済み設計書１００３と修正履歴１００４を出力する。
【００２０】
図１１は修正処理実行画面１１２である。入力フォルダパス１１００に修正処理の入力となる設計書と整合性チェック結果が格納されているフォルダパスを指定する。出力フォルダパス１１０１には、修正済み設計書と修正履歴の出力先となるフォルダパスを指定する。参照ボタン１１０２及び１１０３を押すことで、エクスプローラからフォルダパスを選択する。実行１１０４を押下することで、マッピング情報ファイルを利用して処理を実行する。終了１１０５を押下することで、画面をクローズする。１１０６は画面の名称情報である。
【００２１】
図１２は、修正処理の設計書単位の修正履歴結果イメージ図である。設計書ごとに修正履歴を持ち、修正処理を実施するごとに設計書の修正履歴に情報を追加する。１２０１には修正処理を実施した日付が記載される。１２０２には修正処理を実施した際の設計書の作成担当者名が記載される。１２０３には修正処理を実施したシートの名称が記載される。１２０４には修正処理を実施した値の設計書における位置座標が記載される。１２０５には修正処理を実施した内容の詳細が記載される。
【００２２】
図１３は、修正処理の全体修正履歴結果イメージ図である。１回の修正処理で実施した設計書の修正内容全てをファイルとして出力する。１３０１には修正処理を実施した日付が記載される。１３０２には修正処理を実施した際の設計書の作成担当者名が記載される。１３０３には修正処理を実施した設計書の名称が記載される。１３０４には修正処理を実施した設計書のシート名称が記載される。１３０５には修正処理を実施した値の設計書における位置座標が記載される。１３０６には修正処理を実施した内容の詳細が記載される。
【００２３】
以下、整合性チェック処理及び修正処理の処理フローを説明する。
【００２４】
図１４は画面に入力された入力情報を取得する入力情報取得処理部１２１の処理フロー図である。入力情報取得処理部１２１は、Ｓ１４００で、図７もしくは図１１の処理実行画面に入力された、入力フォルダパスと、出力フォルダパスと、画面名称情報を取得する。Ｓ１４０１で処理実行画面についての判定を実施する。判定は実行ボタンを押下したの画面名称情報で判断する。Ｓ１４０１で整合性チェック処理実行画面であると判断した場合は、Ｓ１４０２でマッピング情報更新のチェックボックスのチェック有無の情報をマッピング情報更新７０２から取得する。Ｓ１４０１及びＳ１４０２の情報をメモリ上に格納し、処理を終了する。整合性チェック処理実行画面でない場合は、Ｓ１４０１の情報をメモリ上に格納し、処理を終了する。
【００２５】
図１５は整合性チェック処理と修正処理のマッピング処理部１２２の処理フロー図である。マッピング処理部１２２は、Ｓ１５００で、Ｓ１４００で取得した入力フォルダパスの情報を元に表形式のファイルを取得する。Ｓ１５０１では、Ｓ１４００の画面の名称により処理を分岐させる。Ｓ１４０２ではＳ１４０２で取得したマッピング情報更新のチェックボックスのチェック有無の情報を元に処理を分岐させる。画面名称情報が整合性チェック処理実行画面を示しかつチェックボックスにチェックがある場合（マッピング情報更新要）は、処理Ａに分岐し、画面名称情報が整合性チェック処理実行画面を示しかつチェックボックスにチェックがない場合（マッピング情報更新不要）は、処理Ｂに分岐し、画面名称情報が修正処理実行画面を示す場合、処理Ｃに分岐する。
【００２６】
図１６は図１５で処理Ａに分岐した場合の整合性チェック処理のマッピング処理部１２２の処理フロー図である。マッピング処理部１２２は、Ｓ１６００で記億部１０１からマッピング定義ファイル１３１（図５）を読み込み、メモリ上に格納する。マッピング定義ファイル１３１の全行を対象に１行ごとにＳ１６０１とＳ１６０２の処理を繰り返す。Ｓ１６０１では１行ごとに設定しているチェック実行フラグ５０３を参照し、チェック実行フラグ５０３が「Ｙ」の行のみＳ１６０２の情報を取得し、メモリ上に格納する。対象全行処理後にＳ１６０３で図６のマッピング情報ファイルの形式に変換し、マッピング情報ファイルを生成する。例えば、チェックＩＤ５０１の値は図６のcheckItemIdの値に変換され、チェック名５０２の値は図６のcheckItemNameに変換される。同様のルールで図５のマッピング定義ファイルの値を図６のxmlの属性値に値を変換する。
【００２７】
図１７は図１５で処理Ｂに分岐した場合及び図１６の処理実行後の整合性チェック処理のマッピング処理部１２２の処理フロー図である。マッピング処理部１２２は、Ｓ１７００で記億部１０１からマッピング情報ファイル１３２（図６）を読み込み、メモリ上に格納する。Ｓ１７００で取得した情報のチェックＩＤ(図6では、checkItemIdと記載)単位でＳ１７０１―Ｓ１７０７の処理を繰り返し実施する。Ｓ１７０１では、マッピング処理部１２２は、Ｓ１７００で取得した比較先設計書の情報(図6では、docName1と記載)と部分一致する表形式ファイルのパスを、入力フォルダパスとして指定されたフォルダ配下から取得してメモリ上に格納する。Ｓ１７０２では、マッピング処理部１２２は、Ｓ１７００で取得した情報の比較元設計書(図6では、docName2と記載)と部分一致する表形式ファイルのパスを、入力フォルダパスとして指定されたフォルダ配下から取得してメモリ上に格納する。Ｓ１７０３では、マッピング処理部１２２は、Ｓ１７００で取得した情報のチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン２」もしくは「チェックパターン４」であるかを判定し、該当する場合、Ｓ１７０４で、Ｓ１７０1とＳ１７０２で取得した表形式ファイルのパスのファイル部分（ファイル名称）のネーミングルールをもとに１対１で整合性チェック対象として関連付けてメモリ上に格納する。例えば、図４に示すフォーマットの比較先設計書のファイル名称が機能別設計書Ａ＿機能名、比較元設計書のファイル名称が機能別設計書Ｂ＿機能名というネーミングルールを用意し、＿より後ろのファイル名称、例の場合は「機能名」が一致する場合に機能別設計書Ａと機能別設計書Ｂを関連付けて、整合性チェック対象の組み合わせとみなす。Ｓ１７０７では、マッピング処理部１２２は、Ｓ１７０４の情報をメモリ上に格納する。Ｓ１７０５では、マッピング処理部１２２は、Ｓ１７００で取得した情報のチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン１」の場合、Ｓ１７０６で、Ｓ１７０１とＳ１７０２で取得した表形式ファイルのパスを１対１ファイル以上で整合性チェック対象として関連付けてメモリ上に格納する。チェックパターン１の場合は、１対多の整合性チェックであることから、機能名を識別情報として利用しない。例えば、図３に示すフォーマットの比較先設計書のファイル名称が共通設計書Ａ、比較元設計書のファイル名称が機能別設計書Ｂ＿機能名１、機能別設計書Ｂ＿機能名２、機能別設計書Ｂ＿機能名３というネーミングルールを用意し、共通設計書Ａと複数の機能別設計書Ｂを関連付けてチェック対象の組み合わせとみなす。Ｓ１７０７では、マッピング処理部１２２は、Ｓ１７０６の情報と該当するマッピング情報ファイルの情報をメモリ上に格納する。Ｓ１７０５では、Ｓ１７００で取得した情報のチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン１」もしくは「チェックパターン２」もしくは「チェックパターン４」でない場合に、処理Ｄに分岐する。
【００２８】
図１８は、図１７のＳ１７０５で処理Ｄに分岐した場合の整合性チェック処理のマッピング処理部１２２の処理フロー図である。Ｓ１８０１では、図１７のＳ１７００で取得した情報のチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン３」の場合、マッピング処理部１２２は、Ｓ１８０２で、図１７のＳ１７０１とＳ１７０２で取得した表形式ファイルのパスを１ファイル以上対１ファイル以上で整合性チェック対象として関連付けてメモリ上に格納する。例えば、比較先設計書のファイル名称が共通設計書Ａと共通設計書Ｂと共通設計書Ｃ、比較元設計書のファイル名称が機能別設計書Ｄ＿機能名１、機能別設計書Ｄ＿機能名２、機能別設計書Ｄ＿機能名３というネーミングルールを用意し、共通設計書Ａと共通設計書Ｂと共通設計書Ｃと複数の機能別設計書Ｄを関連付けて整合性チェック対象の組み合わせとみなす。処理後に処理Ｅに遷移し、図１７のＳ１７０７で、Ｓ１８０２の情報と該当するマッピング情報ファイルの情報をメモリ上に格納する。Ｓ１８０１で、図１７のＳ１７００で取得した情報のチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン３」でない場合、「チェックパターン５」とみなし、Ｓ１８０３で、マッピング処理部１２２は、図１７のＳ１７０１で取得した表形式ファイルのパスすべてを整合性チェック対象として関連付けてメモリ上に格納する。例えば、比較先設計書のファイル名称が機能別設計書Ａ＿機能名１と機能別設計書Ａ＿機能名２と機能別設計書Ａ＿機能名３というネーミングルールを用意し、複数の機能別設計書Ａを網羅的に関連付けて整合性チェック対象の組み合わせとみなす。処理後に処理Ｅに遷移し、マッピング処理部１２２は、図１７のＳ１７０７で、Ｓ１８０３の情報と該当するマッピング情報ファイルの情報をメモリ上に格納する。
【００２９】
図１９は、図１５で処理Ｃに分岐した場合の修正処理のマッピング処理部１２２の処理フロー図である。Ｓ１９００で、マッピング処理部１２２は、入力フォルダから表形式ファイルのパスを取得し、メモリ上に格納する。Ｓ１９０１で、マッピング処理部１２２は、マッピング情報ファイル１３２（図６）を読み込み、メモリ上に格納する。Ｓ１９０２で、マッピング処理部１２２は、Ｓ１９０１で取得した情報のチェックＩＤ(図6では、checkItemIdと記載)の値と、Ｓ１９００で取得した表形式ファイルのパスのファイル部分（ファイル名称）と部分一致する表形式ファイルのパスが含まれるかを判定する。含まれる場合、Ｓ１９０３で、マッピング処理部１２２は、Ｓ１９０１で取得した情報の比較元設計書(図6では、docName2と記載)の値が、Ｓ１９００で取得した表形式ファイルのパスのファイル部分（ファイル名称）と部分一致する表形式ファイルが含まれるかを判定する。含まれる場合、Ｓ１９０４で、マッピング処理部１２２は、Ｓ１９０１で取得した情報のチェックＩＤ(図6では、checkItemIdと記載)の値と、Ｓ１９０２で取得した表形式ファイルのパスと、Ｓ１９０３で取得した表形式ファイルのパスを関連付けてメモリ上に格納する。例えば、Ｓ１９０２で取得した表形式ファイルのパスは、修正内容が記載された整合性チェック結果であり、Ｓ１９０３で取得した表形式ファイルのパスは、修正対象の設計書となる。
【００３０】
図２０は、整合性チェック処理の整合性チェック処理部１２３の処理フロー図である。本処理フローでは、図１７のＳ１７０７でメモリ上に格納された比較先設計書のファイルパス数処理を実施する。Ｓ２０００で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納された比較先設計書のファイルパス情報を元に対象ファイルの情報を取得する。Ｓ２００１で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納された比較先シート(図6では、sheetName1と記載)の値と、対象ファイル内の完全一致するシート情報を取得する。Ｓ２００２で、整合性チェック処理部１２３は図１７のＳ１７０７でメモリ上に格納された比較先項目名(図6では、itemName1と記載)の値と完全一致する、対象シート内の設計項目の位置座標を取得する。Ｓ２００３で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納された比較先読込方向(図6では、readDirection1と記載)の値と比較先読込終了条件(図6では、readEnd1と記載)の値を元に、Ｓ２００２で取得した位置座標を基準に、設計書に記載されている設計項目の値と位置座標を取得しＳ２００４で、Ｓ２００３で取得した情報をメモリ上に格納する。例えば、Ｓ２００２で取得した位置座標をＸＹ座標で（１００、１００）とした場合、はじめに、比較先読込方向(図6では、readDirection1と記載)で設計項目の値の情報を読み込む方向を判断する。比較先読込方向(図6では、readDirection1と記載)の値が「縦」の場合、Ｙ座標をマイナス方向（Y座標が０に向かう方向、９９、９８・・・）に読み込み、比較先読込方向(図6では、readDirection1と記載)の値が「横」の場合、Ｘ座標をプラス方向（Ｘ座標が１００から増加する方向、１０１、１０２・・・）に読み込む。次に情報の読み込みを終了する条件を比較先読込終了条件(図6では、readEnd1と記載)の値をもとに判断する。例えば、比較先読込終了条件(図6では、readEnd1と記載)の値が「空白」の場合、設計項目に値が存在しなくなるまで、情報を取得する。比較先読込終了条件(図6では、readEnd1と記載)の値が「罫線」の場合、表形式で罫線が存在しなくなるまで、情報を取得する。全ての設計書の比較先設計項目の値情報と位置座標情報を取得後、処理Ｆに遷移する。
【００３１】
図２１は、図２０の処理Fから遷移した整合性チェック処理の整合性チェック処理部１２３の処理フロー図である。本処理フローでは、図１７のＳ１７０７でメモリ上に格納された比較元設計書のファイルパス分処理を実施する。Ｓ２１００で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納された比較元設計書のファイルパス情報を元に対象ファイルの情報を取得する。Ｓ２１０１で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納されたシート区分(図6では、sheetDivionと記載)の値を判定し、シート区分が完全一致である場合には、Ｓ２１０２で、図１７のＳ１７０７でメモリ上に格納された比較元シート(図6では、sheetName2と記載)の値と、対象ファイル内の完全一致するシート情報を取得する。Ｓ２１０３で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納された比較元設計項目(図6では、itemName2と記載)の値と完全一致する、対象シート内の設計項目の位置座標を取得する。Ｓ２１０４で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納された比較元読込方向(図6では、readDirection2と記載)の値と比較元読込終了条件(図6では、readEnd2と記載)の値を元に、Ｓ２１０３で取得した位置座標を基準に、設計書に記載されている設計項目の値と位置座標を取得し、Ｓ２１０５で、Ｓ２１０４で取得した情報をメモリ上に格納する。Ｓ２１０１で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納されたシート区分(図6では、sheetDivionと記載)の値を判定し、シート区分が完全一致でない場合には、Ｓ２１０６で、図１７のＳ１７０７でメモリ上に格納された比較元シート(図6では、sheetName2と記載)の値と、対象ファイル内の部分一致するシート情報を取得する。Ｓ２１０６で、整合性チェック処理部１２３は、部分一致するシート情報を取得し、取得したシート数分、Ｓ２１０６で取得した情報を元に、Ｓ２１０３とＳ２１０４とＳ２１０５処理を繰り返す。全ての設計書の比較元設計項目の値情報と位置座標情報を取得後、処理Ｇに遷移する。
【００３２】
図２２は、図２１の処理Ｇから遷移した整合性チェック処理の整合性チェック処理部１２３のチェックパターンによる処理振分けのフロー図である。本処理フローでは、図１７のＳ１７０７でメモリ上に格納されたチェックＩＤ(図6では、checkItemIdと記載)分繰り返す。Ｓ２２００で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納されたチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン１」もしくは「チェックパターン３」もしくは「チェックパターン４」である場合、処理Ｈに分岐する。Ｓ２２０１で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納されたチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン２」である場合、処理Ｉに分岐する。Ｓ２２０２で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納されたチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン５」である場合、処理Ｊに遷移する。
【００３３】
図２３は、図２２で処理Ｈに分岐した場合の整合性チェック処理の整合性チェック処理部１２３の処理フロー図である。本処理フローでは、図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値情報分処理を実施する。Ｓ２３００で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納されたチェック区分(図6では、checkDivisonと記載)の値が存在チェックであるかを判定する。存在チェックである場合は、Ｓ２３０１で、整合性チェック処理部１２３は、図２０のＳ２００４でメモリ上で保持した設計項目の値に対して、図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値が含まれるかを判定する。値が含まれる場合は、Ｓ２３０２で、整合性チェック処理部１２３は、一致した場合用の書き込みデータを作成する。値が含まれない場合は、Ｓ２３０３で、整合性チェック処理部１２３は、一致しない場合用の書き込みデータを作成してメモリ上で保持する。Ｓ２３００で、チェック区分(図6では、checkDivisonと記載)の値が存在チェックでない場合、関連チェックであるとみなし、Ｓ２３０４で、整合性チェック処理部１２３は、図２０のＳ２００４でメモリ上で保持した設計項目の値及び関連する設計項目の値に対して、図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値及び関連する設計項目の値が含まれるかを判定する。Ｓ２３０４で、それぞれの関連が一致した場合は、整合性チェック処理部１２３は、Ｓ２３０５で一致した場合用の書き込みデータを作成してメモリ上で保持する。Ｓ２３０４で、関連が一致しない場合は、整合性チェック処理部１２３は、Ｓ２３０６で、関連する設計項目の内、関連が部分的に一致するかを判定する。Ｓ２３０６で、部分的に設計項目の値が一致した場合には、Ｓ２３０７で、整合性チェック処理部１２３は、部分的に一致した場合用の書き込みデータを作成してメモリ上で保持する。Ｓ２３０６で、全て一致しなかった場合は、Ｓ２３０８で、整合性チェック処理部１２３は、一致しない場合用の書き込みデータを作成してメモリ上で保持する。図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値情報分処理を実施後、処理Ｋに遷移する。
【００３４】
図２４は、図２２で処理Ｉに分岐した場合の整合性チェック処理の整合性チェック処理部１２３の処理フロー図である。本処理フローでは、図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値情報分処理を実施する。Ｓ２４００で、整合性チェック処理部１２３は、図１７のＳ１７０７でメモリ上に格納されたチェック区分(図6では、checkDivisonと記載)の値が存在チェックであるかを判定する。存在チェックである場合は、Ｓ２４０１で、整合性チェック処理部１２３は、図２０のＳ２００４でメモリ上で保持した設計項目の値に対して、図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値が含まれるか、図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値に対して図２０のＳ２００４でメモリ上で保持した設計項目の値が含まれるかを判定する。値が含まれる場合は、Ｓ２４０２で、整合性チェック処理部１２３は、一致した場合用の書き込みデータを作成する。値が含まれない場合は、Ｓ２４０３で、整合性チェック処理部１２３は、一致しない場合用の書き込みデータを作成してメモリ上で保持する。Ｓ２４００で、チェック区分(図6では、checkDivisonと記載)の値が存在チェックでない場合、関連チェックであるとみなし、Ｓ２４０４で、整合性チェック処理部１２３は、図２０のＳ２００４でメモリ上で保持した設計項目の値と関連する設計項目の値に対して、図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値と関連する設計項目の値が含まれるか、図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値と関連する設計項目の値に、図２０のＳ２００４でメモリ上で保持した設計項目の値と関連する設計項目の値が含まれるかを判定する。Ｓ２４０４で、それぞれの関連が一致した場合は、整合性チェック処理部１２３は、Ｓ２４０５で一致した場合用の書き込みデータを作成してメモリ上で保持する。Ｓ２４０４で、関連が一致しない場合は、Ｓ２４０６で、整合性チェック処理部１２３は、関連する設計項目の内、関連が部分一致するかを判定する。Ｓ２４０６で、部分一致した場合には、Ｓ２４０７で、整合性チェック処理部１２３は、部分一致した場合用の書き込みデータを作成してメモリ上で保持する。Ｓ２４０６で、一致しなかった場合は、Ｓ２４０８で、整合性チェック処理部１２３は、一致しない場合用の書き込みデータを作成してメモリ上で保持する。図２１のＳ２１０５もしくはＳ２１０７でメモリ上で保持した設計項目の値情報分処理を実施後、処理Ｋに遷移する。
【００３５】
図２５は、図２２で処理Ｊに分岐した場合の整合性チェック処理の整合性チェック処理部１２３の処理フロー図である。本処理フローでは、図２０のＳ２００４でメモリ上で保持した設計項目の値情報分処理を実施する。Ｓ２５００で、整合性チェック処理部１２３は、図２０のＳ２００４で保持した設計項目のキー値(チェックする行の主キー項目に該当)が２件以上存在するかを判定する。Ｓ２５００で、該当する設計項目のキー値が２件以上存在しない場合は、Ｓ２５０１で、整合性チェック処理部１２３は、存在しない場合用の書込データを作成してメモリ上で保持する。Ｓ２５００で、該当する設計項目のキー値が２件以上存在する場合は、Ｓ２５０２で、整合性チェック処理部１２３は、図２０のＳ２００４で保持したキー値に紐付く設計項目が、全ての設計書で同一キー値に紐付く設計項目が等しいかを判定する。Ｓ２５０２で、全て一致する場合は、Ｓ２５０３で、整合性チェック処理部１２３は、一致した場合用の書き込み用データを作成してメモリ上で保持する。Ｓ２５０２で、全て一致しない場合には、Ｓ２５０４で、整合性チェック処理部１２３は、一致しない場合の書き込みデータを作成してメモリ上で保持する。図２０のＳ２００４でメモリ上で保持した設計項目の値情報分処理を実施後、処理Ｋに遷移する。
【００３６】
図２６は、修正処理の反映処理部１２４の処理フロー図である。図１９のＳ１９０４でメモリ上で保持した整合性チェック結果ファイルのパス数分かつチェック結果ファイルの行数分処理を実施する。Ｓ２６００で、反映処理部１２４は、Ｓ１９０４でメモリ上で保持したチェックIDと比較元設計書に該当するチェックパターン(図6では、checkPatternと記載)の値が「チェックパターン５」であるかを判定する。チェックパターン(図6では、checkPatternと記載)の値が「チェックパターン５」でない場合、反映処理部１２４は、Ｓ２６０１で記載されている情報を取得し、メモリに格納して処理Ｎに遷移する。チェックパターン(図6では、checkPatternと記載)の値が「チェックパターン５」である場合、反映処理部１２４は、Ｓ２６０２で記載されている情報を取得し、メモリに格納して処理Ｏに遷移する。
【００３７】
図２７は、図２６で処理Ｎに遷移した場合の修正処理の反映処理部１２４の処理フロー図である。Ｓ２７００で、反映処理部１２４は、図２６のＳ２６０１で取得した反映値に値が記載されているかを判定する。Ｓ２７００で、値が記載されていないと判定された場合、反映処理部１２４は、処理Ｐに遷移する。Ｓ２７００で、値が記載されていると判定された場合、Ｓ２７０１で、反映処理部１２４は、図２６のＳ２６０１で取得した比較元設計書、比較元シート、比較元位置座標をもとに、修正対象の設計書の該当位置座標に記載されている設計項目の値を取得してメモリ上で保持する。Ｓ２７０２で、反映処理部１２４は、図２６のＳ２６０１で取得した比較元設計書、比較元シート、比較元位置座標をもとに、修正対象の設計書の該当位置座標に記載されている設計項目の値を、Ｓ２７００で、記載されている値に書き換える。Ｓ２７０３で、反映処理部１２４は、図２６のＳ２６０１で取得した値とＳ２７０１で取得した値から修正履歴用のデータを作成してメモリ上で保持し、処理Ｑに遷移する。
【００３８】
図２８は、図２６で処理Ｏに遷移した場合の修正処理の反映処理部１２４の処理フロー図である。Ｓ２８００で、反映処理部１２４は、図２６のＳ２６０２で取得した修正項目名と反映値に値が記載されているかを判定する。Ｓ２８００で、反映処理部１２４は、修正項目名と反映値に値が記載されていないと判定された場合、処理Ｐに分岐する。Ｓ２８００で、反映処理部１２４は、修正項目名と反映値に値が記載されていると判定された場合、Ｓ２８０１で、図２６のＳ２６０２で取得した修正項目名をもとに整合性チェック結果から修正項目の位置座標を取得する。Ｓ２８０２で、反映処理部１２４は、図２６のＳ２６０２で取得した設計書名、シート名、Ｓ２８０１で取得した位置座標をもとに、修正対象の設計書の該当位置座標に記載されている設計項目の値を取得してメモリ上で保持する。Ｓ２８０３で、反映処理部１２４は、図２６のＳ２８０２で取得した設計書名、シート名、Ｓ２８０１で取得した位置座標をもとに、修正対象の設計書の該当位置座標に記載されている設計項目の値を、Ｓ２８００で、記載されている値に書き換える。Ｓ２８０４で、反映処理部１２４は、図２６のＳ２６０２で取得した値とＳ２８０１で取得した値とＳ２８０２で取得した値から修正履歴用のデータを作成してメモリ上で保持し、処理Ｑに遷移する。
【００３９】
図２９は、整合性チェック処理のチェック結果出力処理部１２５の処理フロー図である。Ｓ２９００で、チェック結果出力処理部１２５は、図２０のＳ２００７でメモリ上に格納されたチェックＩＤのチェックパターンの値が「チェックパターン５」であるかを判定する。Ｓ２９００で、「チェックパターン５」であると判定された場合、チェック結果出力処理部１２５は、Ｓ２９０１で、図２３及び図２４で作成した書き込み用データを、図８のフォーマットに書き込み、整合性チェック結果ファイルを出力する。Ｓ２９００で、「チェックパターン５」ではないと判定された場合、チェック結果出力処理部１２５は、Ｓ２９０２で、図２５で作成した書き込み用データを、図９のフォーマットに書き込み、整合性チェック結果ファイルを出力する。
【００４０】
図３０は、修正処理の修正履歴出力処理部１２６の処理フロー図である。Ｓ３０００で、修正履歴出力処理部１２６は、図２７及び図２８で作成した修正履歴用の出力データを同一の設計書名単位で集計する。Ｓ３００１で、修正履歴出力処理部１２６は、Ｓ３０００で集計したデータを図１３のフォーマットに書き込み、全体修正履歴ファイルを出力する。次に修正履歴用データの設計書単位に処理を繰り返す。Ｓ３００２で、修正履歴出力処理部１２６は、Ｓ３０００で集計した設計書単位に設計書の名称とシートの名称に合致するファイルパスの設計書の構成情報を取得する。Ｓ３００３で、修正履歴出力処理部１２６は、Ｓ３００２で取得した設計書のシートに「修正履歴」シートが存在するかをシートの名称から判定する。修正履歴シートが存在する場合、Ｓ３００４で、修正履歴出力処理部１２６は、図１２のフォーマットの修正履歴シートに、図２７及び図２８で作成した修正履歴用の出力データを追記して、修正履歴反映後の設計書を出力する。修正履歴シートが存在しない場合、図１２のフォーマットに図２７及び図２８で作成した修正履歴用の出力データを書き込み、修正履歴としてシートを追加した設計書を出力する。
【符号の説明】
【００４１】
１０１・・・ハードウェア構成、１０１・・・記憶部、１０２・・・表示部、１０３・・・入力部、１０４・・・制御部。
【図１】
2014056447.tif 000003
【図２】
2014056447.tif 000004
【図３】
2014056447.tif 000005
【図４】
2014056447.tif 000006
【図５】
2014056447.tif 000007
【図６】
2014056447.tif 000008
【図７】
2014056447.tif 000009
【図８】
2014056447.tif 000010
【図９】
2014056447.tif 000011
【図１０】
2014056447.tif 000012
【図１１】
2014056447.tif 000013
【図１２】
2014056447.tif 000014
【図１３】
2014056447.tif 000015
【図１４】
2014056447.tif 000016
【図１５】
2014056447.tif 000017
【図１６】
2014056447.tif 000018
【図１７】
2014056447.tif 000019
【図１８】
2014056447.tif 000020
【図１９】
2014056447.tif 000021
【図２０】
2014056447.tif 000022
【図２１】
2014056447.tif 000023
【図２２】
2014056447.tif 000024
【図２３】
2014056447.tif 000025
【図２４】
2014056447.tif 000026
【図２５】
2014056447.tif 000027
【図２６】
2014056447.tif 000028
【図２７】
2014056447.tif 000029
【図２８】
2014056447.tif 000030
【図２９】
2014056447.tif 000031
【図３０】
2014056447.tif 000032