(57)【要約】      （修正有）【課題】期待されるテンプレートを基に文書が作成されていることを確認することができる文書作成支援装置、文書作成支援方法、文書作成支援プログラムおよび記録媒体を提供する。【解決手段】文書作成支援装置１は、記載項目対応関係記憶部１０１と、テンプレート生成部１０３と、文書記憶部１０４と、文書生成部１０６と、判定部１０５と、登録制御部１０７とを含んで構成される。記載項目対応関係記憶部１０１は、派生元の文書の記載項目と、派生先の文書の記載項目との対応関係を記憶する。テンプレート生成部１０３は、特定した記載項目と識別情報との組を含んだ文書を、派生先文書のテンプレートとして出力する。判定部１０５は、受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであるか否かを、識別情報を用いて、受付文書の記載項目ごとに判定する。【選択図】図１
2011227684.tif 000002
【特許請求の範囲】
【請求項１】
一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書の作成を支援するための文書作成支援装置であって、
変更の派生元である前記一の文書の記載項目と、変更の派生先である前記他の文書の記載項目との対応関係を記憶する記載項目対応関係記憶部と、
前記記載項目対応関係記憶部に記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定し、前記特定した記載項目と、前記特定した記載項目に対応する派生元の文書の記載項目の記載内容を識別する情報である識別情報との組を生成し、生成した前記特定した記載項目と前記識別情報との組を含んだ文書を、前記派生先文書のテンプレートとして出力するテンプレート生成部と、
文書を記載項目ごとに記憶する文書記憶部と、
前記テンプレート生成部からテンプレートを取得し、取得したテンプレートの記載項目に、文書記憶部に記憶されている記載項目の記載内容を転記して文書を生成する文書生成部と、
判定の対象とする受付文書を前記文書記憶部に記憶する際に、受付文書の作成に使われたテンプレートが、前記文書記憶部に記憶されている文書のうちで、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであるか否かを、前記識別情報を用いて、受付文書の記載項目ごとに判定する判定部と、
前記受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであると、前記判定部によって、全ての記載項目について判定されたとき、前記判定文書を前記文書記憶部に記憶させる登録制御部とを含むことを特徴とする文書作成支援装置。
【請求項２】
前記登録制御部は、前記受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートでないと、前記判定部によって、判定されたとき、前記判定文書に対して記載項目ごとに予め定める加工を行い、加工した判定文書を出力することを特徴とする請求項１に記載の文書作成支援装置。
【請求項３】
前記登録制御部は、前記テンプレート生成部によって生成された記載項目とは異なる追加記載項目を含む受付文書を取得するとき、前記追加記載項目と、前記受付文書の派生元となる文書の記載項目との対応関係を含めた受付文書を前記文書記憶部に記憶させ、
前記文書生成部は、前記文書記憶部に記憶される前記追加記載項目を含む文書を生成可能であることを特徴とする請求項１または２に記載の文書作成支援装置。
【請求項４】
一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書の作成を支援するための文書作成支援方法であって、
変更の派生元である前記一の文書の記載項目と、変更の派生先である前記他の文書の記載項目との対応関係を記憶する記載項目対応関係記憶工程と、
前記記載項目対応関係記憶工程で記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定し、前記特定した記載項目と、前記特定した記載項目に対応する派生元の文書の記載項目の記載内容を識別する情報である識別情報との組を生成し、生成した前記特定した記載項目と前記識別情報との組を含んだ文書を、前記派生先文書のテンプレートとして出力するテンプレート生成工程と、
文書を記載項目ごとに記憶する文書記憶工程と、
前記テンプレート生成工程で出力されたテンプレートを取得し、取得したテンプレートの記載項目に、文書記憶工程に記憶されている記載項目の記載内容を転記して文書を生成する文書生成工程と、
判定の対象とする受付文書を前記文書記憶工程で記憶する際に、受付文書の作成に使われたテンプレートが、前記文書記憶工程で記憶された文書のうちで、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであるか否かを、前記識別情報を用いて、受付文書の記載項目ごとに判定する判定工程と、
前記受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであると、前記判定工程で全ての記載項目について判定されたとき、前記判定文書を前記文書記憶工程に記憶させる登録制御工程とを含むことを特徴とする文書作成支援方法。
【請求項５】
コンピュータを、請求項１〜３のいずれか１つに記載の文書作成支援装置として機能させるための文書作成支援プログラム。
【請求項６】
請求項５に記載の文書作成支援プログラムを記憶したコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書の作成を支援する文書作成支援装置、文書作成支援方法、文書作成支援プログラムおよび記録媒体に関し、より詳細には、文書の項目間の関連付けに基づいた影響箇所の特定、およびバージョン番号の付与などによって文書を特定して文書の管理を行う文書作成支援装置、文書作成支援方法、文書作成支援プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
一般的にソフト開発においては、たとえば「要求定義→設計→実装→…」というように各作業の順序が決められており、それぞれの作業の結果として、記載項目が予め決められたテンプレートを使用して文書が作成される。テンプレートの使用は、特に大規模開発、たとえば多数の人、異なる組織および異なる拠点が関係するプロジェクトにおいて、記載項目の認識の齟齬をなくし関係者間でのコミュニケーションが円滑になるといった利点があることから効果的である。
【０００３】
上記の「要求定義→設計→実装→…」の各作業で作成される文書のテンプレートの記載項目には、通常、テンプレート間で関連性があり、たとえば「要求定義」の作業で作成または修正した文書は、「設計」の作業で作成する文書に影響を与える。このため、派生元である「要求定義」の文書のどの記載項目が、派生先である「設計」の文書のどの記載項目に影響を与えるかの対応関係が明確になっていることが好ましい。この対応関係が明確になっていない場合、ある文書の修正が他の文書のどこに影響を与えるのかを人手によって特定する必要があるので、手間を要する。この人手による特定では、影響箇所の特定漏れを誘発し、工数超過、ソフトウェアの不具合および手戻りの発生を招くこととなる。
【０００４】
第１の従来技術に係るドキュメント作成管理装置（たとえば特許文献１参照）、および第２の従来技術に係る定型文書作成装置（たとえば特許文献２参照）では、影響箇所間の関連付けを行うことによって、ある箇所の変更が他に与える影響を特定することが可能となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平３−４６０５９号公報
【特許文献２】特開平４−２１１８６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、第１の従来技術に係るドキュメント作成管理装置、および第２の従来技術に係る定型文書作成装置は、各装置を中心に据え、これに複数の利用者がアクセスする形で文書を作成する形態を想定している。したがって、システムの外で文書を作成してこれをシステムに登録するためには、必要な記載項目を含んだ文書、たとえばテンプレートまたはテンプレートに記載内容が埋め込まれた文書を、ファイルの形でシステムから取出し、記載項目の加筆または修正を行い、これを各装置に戻すといった仕組みが必要である。しかし、このような仕組みでは、最新ではない文書のファイルを基に加筆または修正が行われた場合、加筆または修正を行った記載項目以外の項目は古い情報のままである可能性があり、この古い情報でシステム上のデータが更新されてしまうという問題を有する。また、第１の従来技術に係るドキュメント作成管理装置では、項目間の関連付けが手作業で行われるので、作業ミスを誘発するという問題を有する。
【０００７】
別の仕組みとして、変更が必要となると考えられる箇所だけを取出し、加筆または修正を行い、装置に戻すという仕組みが考えられるけれども、変更の過程で修正を必要とする項目が新たに明らかになる場合も考えられる。したがって、その都度装置から修正を必要とする項目を取出して修正し、修正した項目を装置へ戻すという作業が必要であり、作業負担が増加し、さらに作業ミスを誘発する可能性があるという問題を有する。
【０００８】
本発明の目的は、期待されるテンプレートを基に文書が作成されていることを確認することができる文書作成支援装置、文書作成支援方法、文書作成支援プログラムおよび記録媒体を提供することである。
【課題を解決するための手段】
【０００９】
本発明は、一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書の作成を支援するための文書作成支援装置であって、
変更の派生元である前記一の文書の記載項目と、変更の派生先である前記他の文書の記載項目との対応関係を記憶する記載項目対応関係記憶部と、
前記記載項目対応関係記憶部に記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定し、前記特定した記載項目と、前記特定した記載項目に対応する派生元の文書の記載項目の記載内容を識別する情報である識別情報との組を生成し、生成した前記特定した記載項目と前記識別情報との組を含んだ文書を、前記派生先文書のテンプレートとして出力するテンプレート生成部と、
文書を記載項目ごとに記憶する文書記憶部と、
前記テンプレート生成部からテンプレートを取得し、取得したテンプレートの記載項目に、文書記憶部に記憶されている記載項目の記載内容を転記して文書を生成する文書生成部と、
判定の対象とする受付文書を前記文書記憶部に記憶する際に、受付文書の作成に使われたテンプレートが、前記文書記憶部に記憶されている文書のうちで、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであるか否かを、前記識別情報を用いて、受付文書の記載項目ごとに判定する判定部と、
前記受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであると、前記判定部によって全ての記載項目について判定されたとき、前記判定文書を前記文書記憶部に記憶させる登録制御部とを含むことを特徴とする文書作成支援装置である。
【００１０】
また本発明は、前記登録制御部は、前記受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートでないと、前記判定部によって判定されたとき、前記判定文書に対して記載項目ごとに予め定める加工を行い、加工した判定文書を出力することを特徴とする。
【００１１】
また本発明は、前記登録制御部は、前記テンプレート生成部によって生成された記載項目とは異なる追加記載項目を含む受付文書を取得するとき、前記追加記載項目と、前記受付文書の派生元となる文書の記載項目との対応関係を含めた受付文書を前記文書記憶部に記憶させ、
前記文書生成部は、前記文書記憶部に記憶される前記追加記載項目を含む文書を生成可能であることを特徴とする。
【００１２】
また本発明は、一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書の作成を支援するための文書作成支援方法であって、
変更の派生元である前記一の文書の記載項目と、変更の派生先である前記他の文書の記載項目との対応関係を記憶する記載項目対応関係記憶工程と、
前記記載項目対応関係記憶工程で記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定し、前記特定した記載項目と、前記特定した記載項目に対応する派生元の文書の記載項目の記載内容を識別する情報である識別情報との組を生成し、生成した前記特定した記載項目と前記識別情報との組を含んだ文書を、前記派生先文書のテンプレートとして出力するテンプレート生成工程と、
文書を記載項目ごとに記憶する文書記憶工程と、
前記テンプレート生成工程で出力されたテンプレートを取得し、取得したテンプレートの記載項目に、文書記憶工程に記憶されている記載項目の記載内容を転記して文書を生成する文書生成工程と、
判定の対象とする受付文書を前記文書記憶工程で記憶する際に、受付文書の作成に使われたテンプレートが、前記文書記憶工程で記憶された文書のうちで、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであるか否かを、前記識別情報を用いて、受付文書の記載項目ごとに判定する判定工程と、
前記受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであると、前記判定工程で全ての記載項目について判定されたとき、前記判定文書を前記文書記憶工程に記憶させる登録制御工程とを含むことを特徴とする文書作成支援方法である。
【００１３】
また本発明は、コンピュータを、前記文書作成支援装置として機能させるための文書作成支援プログラムである。
【００１４】
また本発明は、前記文書作成支援プログラムを記憶したコンピュータ読取り可能な記録媒体である。
【発明の効果】
【００１５】
本発明によれば、文書作成支援装置は、一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書の作成を支援する。文書作成支援装置は、記載項目対応関係記憶部と、テンプレート生成部と、文書記憶部と、文書生成部と、判定部と、登録制御部とを含んで構成される。記載項目対応関係記憶部は、変更の派生元である前記一の文書の記載項目と、変更の派生先である前記他の文書の記載項目との対応関係を記憶する。テンプレート生成部は、記載項目対応関係記憶部に記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定する。テンプレート生成部は、特定した記載項目と、特定した記載項目に対応する派生元の文書の記載項目の記載内容を識別する情報である識別情報との組を生成する。テンプレート生成部は、生成した特定された記載項目と識別情報との組を含んだ文書を、派生先文書のテンプレートとして出力する。文書記憶部は、文書を記載項目ごとに記憶する。文書生成部は、テンプレート生成部からテンプレートを取得し、取得したテンプレートの記載項目に、文書記憶部に記憶されている記載項目の記載内容を転記して文書を生成する。判定部は、判定の対象とする受付文書を文書記憶部に記憶する際に、受付文書の作成に使われたテンプレートが、文書記憶部に記憶されている文書のうちで、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであるか否かを、識別情報を用いて、受付文書の記載項目ごとに判定する。登録制御部は、受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであると、判定部によって全ての記載項目について判定されたとき、判定文書を文書記憶部に記憶させる。
【００１６】
これによって、文書作成支援装置は、テンプレート生成部が生成したテンプレートおよび文書生成部が生成した文書を、たとえば文書を作成する利用者に提供することができる。したがって、利用者は、提供されたテンプレートまたは文書に対して、訂正または加筆などの編集をすることによって新たな文書を容易に作成することができる。
【００１７】
また、文書作成支援装置は、文書の作成に利用されたテンプレートの問題の有無を記載項目ごとに判別するので、最新でない文書を基に編集された文書が、文書記憶部に記憶されることを防止することができる。これによって、文書作成支援装置は、利用者の意図に反した文書、たとえば編集された古い記載項目を含む文書が、文書記憶部において更新して記憶されることを防止することができる。
【００１８】
また本発明によれば、登録制御部は、受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートでないと、判定部によって判定されたとき、判定文書に対して記載項目ごとに予め定める加工を行い、加工した判定文書を出力する。
【００１９】
これによって、文書作成支援装置は、問題がある箇所を予め定める加工、たとえば色付け、または文字の大きさの変更などを行うことによって、問題がない箇所と区別して表示することができる。したがって、文書作成支援装置は、利用者が記憶させようとしている文書内の問題がある箇所を強調表示して利用者に報知することができる。これによって、利用者は、強調表示された問題のある箇所を修正することで、適切な文書を容易に作成することができる。
【００２０】
また本発明によれば、登録制御部は、テンプレート生成部によって生成された記載項目とは異なる追加記載項目を含む受付文書を取得するとき、追加記載項目と、受付文書の派生元となる文書の記載項目との対応関係を含めた受付文書を文書記憶部に記憶させる。文書生成部は、文書記憶部に記憶される追加記載項目を含む文書を生成可能である。
【００２１】
これによって、文書作成支援装置は、文書作成支援装置が自動で設ける記載項目以外に、新たな記載項目である追加記載項目を利用者が文書へ自由に追加できるので、文書の記載項目の柔軟性を高め、文書作成の利便性を向上させることができる。
【００２２】
また本発明によれば、文書作成支援方法は、一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書の作成を支援する。文書作成支援方法は、記載項目対応関係記憶工程と、テンプレート生成工程と、文書記憶工程と、文書生成工程と、判定工程と、登録制御工程とを含む。記載項目対応関係記憶工程では、変更の派生元である前記一の文書の記載項目と、変更の派生先である前記他の文書の記載項目との対応関係を記憶する。テンプレート生成工程では、記載項目対応関係記憶工程で記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定する。テンプレート生成工程では、特定した記載項目と、特定した記載項目に対応する派生元の文書の記載項目の記載内容を識別する情報である識別情報との組を生成する。テンプレート生成工程では、生成した特定された記載項目と識別情報との組を含んだ文書を、派生先文書のテンプレートとして出力する。文書記憶工程では、文書を記載項目ごとに記憶する。文書生成工程では、テンプレート生成工程で出力されたテンプレートを取得し、取得したテンプレートの記載項目に、文書記憶工程に記憶されている記載項目の記載内容を転記して文書を生成する。判定工程では、判定の対象とする受付文書を文書記憶工程で記憶する際に、受付文書の作成に使われたテンプレートが、文書記憶工程で記憶された文書のうちで、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであるか否かを、識別情報を用いて、受付文書の記載項目ごとに判定する。登録制御工程では、受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであると、判定工程で全ての記載項目について判定されたとき、判定文書を文書記憶工程に記憶させる。
【００２３】
これによって、文書作成支援方法では、テンプレート生成工程で生成したテンプレートおよび文書生成工程で生成した文書を、たとえば文書を作成する利用者に提供することができる。したがって、利用者は、提供されたテンプレートまたは文書に対して、訂正または加筆などの編集をすることによって新たな文書を容易に作成することができる。
【００２４】
また、文書作成支援方法では、文書の作成に利用されたテンプレートの問題の有無を記載項目ごとに判別するので、最新でない文書を基に編集された文書が、文書記憶工程で記憶されることを防止することができる。これによって、文書作成支援方法は、利用者の意図に反した文書、たとえば編集された古い記載項目を含む文書が、文書記憶工程で更新して記憶されることを防止することができる。
【００２５】
また本発明によれば、文書作成支援プログラムは、コンピュータを、文書作成支援装置として機能させる。
【００２６】
また本発明によれば、コンピュータ読取り可能な記録媒体は、文書作成支援プログラムを記憶している。
【図面の簡単な説明】
【００２７】
【図１】本発明の一実施形態に係る文書作成支援装置１の構成を示すブロック図である。
【図２】記載項目対応関係記憶部１０１が記憶する記載項目対応関係表２０の一例を示す図である。
【図３】記載項目対応関係表２０の属性２０５のイメージを示す図である。
【図４】文書記憶部１０４に格納される文書登録表４０の一例を示す図である。
【図５】文書記憶部１０４に格納される記載項目登録表５０の一例を示す図である。
【図６】記載項目対応関係登録部１０２が、記載項目対応関係表２０を登録する処理を示すフローチャートである。
【図７】テンプレート生成部１０３が、派生元の文書から派生先の文書のテンプレートを生成し出力する処理を示すフローチャートである。
【図８】派生先項目生成結果リスト８０の一例を示す図である。
【図９】テンプレート生成部１０３が出力するテンプレート９０の一例を示す図である。
【図１０】テンプレート生成部１０３が出力する記載項目候補リスト１００の一例を示す図である。
【図１１】判定部１０５による文書の判定および登録制御部１０７による文書の登録を示すフローチャートである。
【図１２】登録制御部１０７が受付ける受付文書１２０の一例を示す図である。
【図１３】受付文書１２０における派生元文書の記載項目と派生先文書の記載項目との対応関係の一例を示す図である。
【図１４】登録制御部１０７が受付ける受付文書１４０の他の例を示す図である。
【図１５】受付文書１４０における派生元文書の記載項目と派生先文書の記載項目との対応関係の他の例を示す図である。
【図１６】登録制御部１０７が作成するエラーリスト１６０の一例を示した図である。
【図１７】更新された文書登録表１７０の一例を示す図である。
【図１８】更新された記載項目登録表１８０の一例を示す図である。
【図１９】エラー表示文書１９０の一例を示す図である。
【図２０】文書生成部１０６がテンプレート９０に基づいて生成文書２１０を生成する処理を示すフローチャートである。
【００２８】
【図２１】文書生成部１０６によって生成された生成文書２１０の一例を示す図である。
【発明を実施するための形態】
【００２９】
図１は、本発明の一実施形態に係る文書作成支援装置１の構成を示すブロック図である。文書作成支援装置１は、互いに関連を有する複数の文書の作成にあたり、最新でない文書が利用されることで文書作成者の意図に反した文書の更新が行われることを防止する。互いに関連を有する複数の文書とは、一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書のことをいう。文書作成支援装置１は、派生元となる文書の記載項目を識別する情報を活用し、これを派生先となる文書のテンプレートの各記載項目に結びつけることで、期待されるテンプレートを基に文書が作成されているかの判定、さらに問題がある可能性がある箇所の提示を行う。
【００３０】
文書作成支援装置１は、記載項目対応関係記憶部１０１と、記載項目対応関係登録部１０２と、テンプレート生成部１０３と、文書記憶部１０４と、判定部１０５と、文書生成部１０６と、登録制御部１０７とを含んで構成される。
【００３１】
記載項目対応関係記憶部１０１は、変更の派生元である一の文書の記載項目と、変更の派生先である他の文書の記載項目との間の対応関係を記憶する。記載項目対応関係登録部１０２は、前記対応関係の登録に必要な情報を受取り記載項目対応関係記憶部１０１に格納する。文書記憶部１０４は、利用者が作成した文書の内容を記憶する。文書記憶部１０４は、文書を記載項目ごとに記憶する。
【００３２】
テンプレート生成部１０３は、派生元の文書または生成するテンプレートの指定を受取る。テンプレート生成部１０３は、派生元の文書の指定を受取った場合、派生元の文書から派生先の文書のテンプレートを生成し、生成するテンプレートの指定を受取った場合、派生先の文書のテンプレートを生成する。
【００３３】
テンプレート生成部１０３は、記載項目対応関係記憶部１０１に記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定する。テンプレート生成部１０３は、特定した記載項目と、特定した記載項目に対応する派生元の文書の記載項目の記載内容を識別する情報である識別情報との組を生成する。テンプレート生成部１０３は、生成した特定された記載項目と識別情報との組を含んだ文書を、派生先文書のテンプレートとして出力する。
【００３４】
文書生成部１０６は、テンプレート生成部１０３からテンプレートを取得し、取得したテンプレートの記載項目に、文書記憶部１０４に記憶されている記載項目の記載内容を転記して文書を生成し、生成した文書を出力する。
【００３５】
判定部１０５は、利用者が作成した文書を受取り、期待されるテンプレートを使用して文書が作成されているかなどを基に登録可否を判定する。判定部１０５は、判定の対象とする受付文書を文書記憶部１０４に記憶する際に、受付文書の作成に使われたテンプレートが、文書記憶部１０４に記憶されている文書のうちで、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであるか否かを、識別情報を用いて、受付文書の記載項目ごとに判定する。
【００３６】
登録制御部１０７は、判定部１０５によって登録可能であると判定された場合、文書記憶部１０４に文書の内容を格納する。登録制御部１０７は、判定部１０５によって受付文書の作成に使われたテンプレートが、受付文書の派生元の文書の記載項目を基にして生成されたテンプレートであると、全ての記載項目について判定されたとき、判定文書を文書記憶部１０４に記憶させる。
【００３７】
登録制御部１０７は、テンプレート生成部１０３によって生成された記載項目とは異なる追加記載項目を含む受付文書を取得するとき、追加記載項目と、受付文書の派生元となる文書の記載項目との対応関係を含めた受付文書を文書記憶部１０４に記憶させる。文書生成部１０６は、文書記憶部１０４に記憶される追加記載項目を含む文書を生成可能である。
【００３８】
本実施形態では、上記図１の文書作成支援装置１の各構成要素１０１〜１０７は、モニタ、キーボード、マウス、光学ドライブなどの利用者に供される入出力装置を備えたパーソナルコンピュータ内に論理的に配置され、実行され機能するものとするが、実現形態は任意であり特に問わない。パーソナルコンピュータは、図示しないＣＰＵ（Central 
Processing Unit：中央処理装置）、図示しないメモリを含んで構成され、ＣＰＵがメモリに格納される制御プログラムを読出して実行することによって、文書作成支援装置１として機能する。本発明の文書作成支援方法は、文書作成支援装置１によって実行される。
【００３９】
図２は、記載項目対応関係記憶部１０１が記憶する記載項目対応関係表２０の一例を示す図である。記載項目対応関係表２０は、派生元種別２０１、派生元記載項目種別２０２、派生先種別２０３、派生先記載項目種別２０４、および属性２０５の列を含み、参照符２０６〜２１２で示す行を含んで構成される。
【００４０】
派生元種別２０１は、他の文書、すなわち派生先の記載項目の元となる派生元の文書の種別を表す列である。記載項目対応関係表２０には、２種類の文書が派生元文書種別として含まれており、たとえば行２０９に「要求仕様書」が示され、行２１２に「アーキテクチャ設計書」が示されている。
【００４１】
派生元記載項目種別２０２は、派生元文書に含まれ、かつ派生先文書の記載項目に影響を与える記載項目種別を表す列である。記載項目対応関係表２０には、派生先の文書に影響を与える記載項目種別が含まれており、たとえば行２０９に要求仕様書の「ユースケース」が示され、行２１２にアーキテクチャ設計書の「機能ユニット」が示されている。
【００４２】
派生先種別２０３は、派生元の文書の記載項目が、どの文書に影響を与えるかを表す列である。たとえば記載項目対応関係表２０には、行２０９については、「要求仕様書」という文書種別４０３の文書の「ユースケース」という記載項目種別の記載項目が「アーキテクチャ設計書」という文書種別４０３の文書に影響を与えることを表し、行２１２については、「アーキテクチャ設計書」という文書種別４０３の文書の「機能ユニット」という項目種別の記載項目が「結合テスト仕様書」という種別の文書に影響を与えることを表している。
【００４３】
派生先記載項目種別２０４は、派生元の文書の記載項目が、派生先の文書のどの記載項目に影響を与えるかを表す列である。たとえば記載項目対応関係表２０には、行２０９については、「要求仕様書」という文書種別４０３の文書の「ユースケース」という記載項目種別の記載項目が「アーキテクチャ設計書」という文書種別４０３の文書の「機能ユニット」という記載項目種別の記載項目に影響を与えることを表し、行２１２については、「アーキテクチャ設計書」という文書種別４０３の文書の「機能ユニット」という記載項目種別の記載項目が「結合テスト仕様書」という文書種別４０３の文書の「テスト項目」という記載項目種別の記載項目に影響を与えることを表している。
【００４４】
文書の中には、その文書固有の内容で、派生元の文書から影響を受けない記載項目を含むことが考えられる。その場合は、参照符２０６〜２０８、２１０、２１１で示す行のように、該当する派生元種別２０１の派生元記載項目について派生元から影響を受けないことを示す「―」を記載する。
【００４５】
属性２０５は、派生元の文書の記載項目が派生先の文書の記載項目にどのような影響を与えるかなどを表す列である。たとえば、行２０９の「組み合わせ」では、派生元の文書に複数の同一種別の派生元記載項目が含まれる場合に、それらの全ての組み合わせの数について、派生先の記載項目が対応する。全ての組み合わせの数とは、派生元記載項目の数がｎ個の場合は、１個の組み合わせの数、２個の組み合わせの数、ｎ個の組み合わせの数をいう。行２１２の「組み合わせ（２）」では、派生元の文書に複数の同一種別の派生元記載項目が含まれる場合に、その中の２つ要素の組み合わせそれぞれについて派生先の記載項目が対応する。
【００４６】
また、本実施形態では２０６、２０７、２１０、２１１のように、文書に必ず１つは含むような記載項目種別には「デフォルト」を属性として指定し、テンプレート生成の際に必ずその記載項目種別の記載項目がテンプレートに含まれるようにするものとする。
【００４７】
図３は、記載項目対応関係表２０の属性２０５のイメージを示す図である。図３（ａ）は、記載項目対応関係表２０の属性２０５の「組み合わせ」のイメージの一例を示す。たとえば要求仕様書に「ユースケース」という種別の記載項目が、ユースケース１，２の計２つあった場合、派生先の文書であるアーキテクチャ設計書には「機能ユニット」という種別の記載項目の３つが対応することを示している。
【００４８】
具体的には、参照符３０１で示すユースケース１には、参照符３０３で示す機能ユニット１が対応し、参照符３０２で示すユースケース２には、参照符３０４で示す機能ユニット２が対応し、ユースケース１，２の組み合わせには、参照符３０５で示す機能ユニット３が対応することを示している。
【００４９】
図３（ｂ）は、記載項目対応関係表２０の属性２０５の「組み合わせ（２）」のイメージの一例を示す。たとえばアーキテクチャ設計書に「機能ユニット」という種別の記載項目が機能ユニット１〜３の計３つあった場合、派生先の文書である結合テスト仕様書には「テスト項目」という種別の記載項目３つがそれぞれ機能ユニット１〜３の中の２つの組み合わせそれぞれに対応することを示している。テンプレート生成部では、この属性の情報を基に派生元の文書の記載項目から派生先の文書の記載項目を生成する。
【００５０】
具体的には、機能ユニット１，２の組み合わせには、参照符３０６で示すテスト項目１が対応し、機能ユニット１，３の組み合わせには、参照符３０７で示すテスト項目２が対応し、機能ユニット２，３の組み合わせには、参照符３０８で示すテスト項目３が対応することを示している。
【００５１】
図４は、文書記憶部１０４に格納される文書登録表４０の一例を示す図である。文書登録表４０は、文書の名前や種別を記憶するための表である。文書登録表４０は、文書ＩＤ４０１、文書名４０２、文書種別４０３の列を含んで構成され、参照符４０４，４０５で示す行を含んで構成される。
【００５２】
文書ＩＤ４０１は、文書作成支援装置１内で文書を一意に識別するためのＩＤを表す列である。文書のテンプレートの初回生成時に、たとえば１から始まる整数が、文書ＩＤ４０１として順番に付与される。
【００５３】
文書名４０２は、文書の名前を表す列である。文書名４０２は、テンプレートの初回生成時には、文書作成支援装置１によって自動で生成され、テンプレートを用いて作成された文書を本文書作成支援装置１に格納する際に、文書内において利用者によって任意の文字列で置き換えることで更新が可能である。
【００５４】
文書種別４０３は、文書の種別を表す列である。具体的には文書種別４０３は、図２の記載項目対応関係表２０の派生元種別２０１および派生先種別２０３の列に示す要求仕様書、アーキテクチャ設計書、要求仕様書、アーキテクチャ設計書、および結合テスト仕様書などである。
【００５５】
図５は、文書記憶部１０４に格納される記載項目登録表５０の一例を示す図である。記載項目登録表５０は、文書の内容を記載項目ごとに記憶するための表である。記載項目登録表５０は、項目ＩＤ５０１、派生元項目ＩＤ５０２、識別情報５０３、有効５０４、文書ＩＤ５０５、記載項目名５０６、記載項目種別５０７、および記載内容５０８の列を含んで構成され、参照符５０９，５１０で示す行を含んで構成される。
【００５６】
項目ＩＤ５０１は、文書作成支援装置１内で文書の記載項目を一意に識別するためのＩＤを表す列である。項目ＩＤ５０１には、文書登録時などの記載項目の追加の際に、たとえば１から始まる整数が順番に付与される。
【００５７】
派生元項目ＩＤ５０２は、図２の記載項目対応関係表２０に示される記載項目の対応関係を基に、既に登録されている派生元の記載項目のどの項目から派生しているかを表す列であり、既に付与されている項目ＩＤ５０１のいずれかが入る。ただし、派生元となる文書が存在しない文書の記載項目、各文書固有の記載項目などの場合は、派生元の記載項目が存在しないことを示す「―」が、派生元項目ＩＤ５０２に記載される。また、複数の記載項目から派生される項目もあるが、その場合は、「１：２：…」のように「：（コロン）」で区切るなどして記載される。
【００５８】
識別情報５０３は、その記載項目の内容を識別する情報を表す列であり、本実施形態では、記載項目の初回登録時には「１」と記載され、それ以降、記載内容の更新がある度に「２、３、…」と１ずつ増えていくものとする。
【００５９】
有効５０４は、その記載項目が、更新後の文書にも含まれているかを表す列であり、文書の初回登録時に、全ての記載項目は「有効」として登録され、更新後の文書を再登録する際に、その項目が削除されていれば「無効」とする。文書ＩＤ５０５は、その記載項目が、どの文書の記載項目かを表す列であり、図４の文書登録表４０の文書ＩＤ４０１の対応する文書ＩＤが使用される。
【００６０】
記載項目名５０６は、記載項目の名前を表す列で、「ユースケース１」や「ユースケース１：○○操作を行う」など、利用者が文書を編集し、編集した文書を再登録することによって任意の名前にすることが可能である。記載項目種別５０７は、記載項目の種別を表す列で、図２の記載項目対応関係表２０に示される派生元記載項目種別２０２および派生先記載項目種別２０４に含まれる記載項目の種別のいずれかを示す。
【００６１】
記載内容５０８は、その記載項目自体の内容を表す列であり、本実施形態ではテキストで作成された文書を扱うことを前提とし、各記載項目のテキストの内容をそのままこの列に格納するものとする。他の実施形態では、文書内の図表を識別しテキストと図表とを分離する部分、または図表の差分の有無を識別する部分を文書作成支援装置１に含める構成とすることによって、図表などのテキスト以外の情報を扱うための拡張を行うことができる。
【００６２】
以下、本発明の一般的な利用シーンである（１）記載項目対応関係を登録する処理、（２）テンプレートを生成する処理、（３）文書を登録する処理、および（４）文書を生成する処理の各処理についてフローチャートを用いて詳細に説明する。
【００６３】
「（１）記載項目対応関係を登録する処理」では、利用者は、記載項目対応関係表２０が示す各記載項目の対応関係を文書作成支援装置１に登録する。この処理について、図１、図２、図６を用いて詳細に説明する。
【００６４】
図６は、記載項目対応関係登録部１０２が、記載項目対応関係表２０を登録する処理を示すフローチャートである。記載項目対応関係表２０は、項目、すなわち行ごとに、記載項目対応関係登録部１０２によって、記載項目対応関係記憶部１０１に登録される。
【００６５】
ステップＳ６０１において、記載項目対応関係登録部１０２は、記載項目関係の登録に必要な項目である５項目、すなわち派生元種別２０１、派生元記載項目種別２０２、派生先種別２０３、派生先記載項目種別２０４、および属性２０５の入力を利用者に促す画面を、モニタに表示する。利用者は、前記画面の表示に従って、上記５項目を入力し、記載項目対応関係登録部１０２は、これらを受付ける。
【００６６】
ステップＳ６０２において、記載項目対応関係登録部１０２は、ステップＳ６０１において受付けた５つの入力項目のうち、派生元種別２０１、派生元記載項目種別２０２、派生先種別２０３、および派生先記載項目種別２０４の４項目の組が、記載項目対応関係記憶部１０１に既に格納されているか否かを判定する。記載項目対応関係登録部１０２によって、前記４項目の組が記載項目対応関係記憶部１０１に格納されていると判定されると、ステップＳ６０４に進み、前記４項目の組が記載項目対応関係記憶部１０１に格納されていないと判定されると、ステップＳ６０３に進む。
【００６７】
ステップＳ６０３において、ステップＳ６０２における判定の結果、ステップＳ６０１で受付けた記載項目対応関係が記載項目対応関係記憶部１０１に登録されていなければ、記載項目対応関係登録部１０２は、ステップＳ６０１で入力された内容を、記載項目対応関係記憶部１０１に登録する。
【００６８】
ステップＳ６０４において、ステップＳ６０２における判定の結果、ステップＳ６０１で受付けた記載項目対応関係が記載項目対応関係記憶部１０１に登録されていれば、記載項目対応関係登録部１０２は、入力内容が既に登録されている旨をモニタに表示する。
【００６９】
ステップＳ６０５において、記載項目対応関係登録部１０２は、利用者に引き続き登録を行うか否かを確認する。記載項目対応関係登録部１０２は、利用者によって登録終了を表す情報が入力された場合、ステップＳ６０６に進んで処理を終了し、利用者によって引き続き登録を行うことを表す情報が入力された場合、ステップＳ６０１から再度処理を開始する。
【００７０】
「（２）テンプレートを生成する処理」では、文書作成支援装置１は、派生元の文書から派生先の文書のテンプレートを生成する。この処理について、図１，図２，図４，図５，図７〜図１０を用いて詳細に説明する。
【００７１】
図７は、テンプレート生成部１０３が、派生元の文書から派生先の文書のテンプレートを生成し出力する処理を示すフローチャートである。ステップＳ７０１において、テンプレート生成部１０３は、テンプレートを生成する元となる派生元文書の指定、または生成するテンプレートの指定を受付ける。指定の方法は、派生元文書の指定には、文書ＩＤ４０１または文書名４０２を利用し、生成するテンプレートの指定には、文書種別４０３を利用する。
【００７２】
なお、本実施形態では説明を簡単化するために、単一のプロジェクトでの開発、単一のプロジェクト内において同一種別の文書は一つのみ作成される場合、たとえば要求仕様書から複数のアーキテクチャ設計書が作成されることがない場合を想定して処理などを記載している。
【００７３】
ただし、複数のプロジェクトでの開発で利用する場合は、どのプロジェクトについての文書のテンプレートを生成するのかを示す情報、たとえばプロジェクトＩＤ、プロジェクト名などの情報を、システムで扱うための拡張を行うことにより対応可能である。また、個々のプロジェクトにおいて同一種別の文書が複数作成される場合は、作成の元となる情報、たとえばアーキテクチャ設計書が要求仕様書に含まれるユースケースごとに作成される場合はユースケース名などの情報を識別するための情報を、システムで扱うための拡張を行うことにより対応可能である。
【００７４】
ステップＳ７０２において、テンプレート生成部１０３は、ステップＳ７０１で派生元文書の指定を受付けた場合、文書記憶部１０４に記憶される文書登録表４０から文書ＩＤ４０１、文書種別４０３を特定し、文書ＩＤ４０１に基づいて記載項目登録表５０を検索し、文書ＩＤ５０５が同一でありかつ有効５０４を示す列が「有効」となっている記載項目を抽出する。そして、前記文書種別４０３を派生元種別２０１、前記抽出した記載項目の記載項目種別５０７を派生元記載項目種別２０２として、記載項目対応関係記憶部１０１に記憶される記載項目対応関係表２０を検索し、該当する派生先種別２０３を派生先文書として特定し、リストに含める。
【００７５】
たとえば、文書登録表４０の文書ＩＤ４０１が「１」の「ソフトウェア要求仕様書」の派生先の文書のテンプレート作成の指示を受けた場合、テンプレート生成部１０３は、文書種別４０３「要求仕様書」を派生元文書として特定する。テンプレート生成部１０３は、記載項目登録表５０から、文書ＩＤ５０５が「１」となっておりかつ有効５０４列が「有効」となっている項目、たとえば項目ＩＤ５０１「１」、「２」の記載項目種別５０７「ユースケース」を特定する。さらに、テンプレート生成部１０３は、記載項目対応関係表２０から、派生元種別２０１が「要求仕様書」、派生元記載項目種別２０２が「ユースケース」となっている行２０８の派生先種別２０３「アーキテクチャ設計書」を、派生先文書として特定する。
【００７６】
テンプレート生成部１０３は、ステップＳ７０１において生成するテンプレートの指定を文書種別４０３によって受付けた場合、受付けた文書種別４０３をリストに含める。
【００７７】
ステップＳ７０３において、テンプレート生成部１０３は、ステップＳ７０２で作成したリストを参照し、リストの全ての要素、すなわち生成するテンプレートについてステップＳ７０４〜ステップＳ７０９の処理を行ったか否かを判定する。
【００７８】
テンプレート生成部１０３によって、リストの全ての要素についてステップＳ７０４〜Ｓ７０９の処理を行ったと判定された場合、ステップＳ７１０に進んで本利用シーンの処理を終了し、ステップＳ７０４〜Ｓ７０９の処理を行っていないと判定された場合、ステップＳ７０４に進み、残りの要素に対してステップＳ７０４〜Ｓ７０９の処理を行う。
【００７９】
ステップＳ７０４において、テンプレート生成部１０３は、文書記憶部１０４に記憶される文書登録表４０を参照し、生成しようとするテンプレートに対応する文書種別４０３の文書が既に登録されているかどうかを確認し、登録されていればその文書ＩＤ４０１を特定し、登録されていなければ文書ＩＤ４０１を新たに発行し、文書名４０２、文書種別４０３を文書登録表４０に記載する。ここで、文書名４０２は、利用者によって変更が可能であるけれども、文書作成支援装置１が生成する初期値としては文書種別４０３と同一の文字列を利用するものとする。
【００８０】
ステップＳ７０５において、テンプレート生成部１０３は、記載項目対応関係記憶部１０１に記憶される記載項目対応関係表２０を検索し、派生先種別２０３が生成しようとするテンプレートの文書種別４０３と同一となっている行の派生元種別２０１および派生元記載項目種別２０２の組を、派生先の文書に影響を与える記載項目として抽出する。たとえば、文書種別４０３がアーキテクチャ設計書である文書のテンプレートを生成しようとする場合、テンプレート生成部１０３は、図２の記載項目対応関係表２０を検索し、派生先種別２０３が「アーキテクチャ設計書」となっている行２０９を特定し、派生元種別２０１および派生元記載項目種別２０２の組である要求仕様書およびユースケースを抽出する。
【００８１】
ステップＳ７０６において、テンプレート生成部１０３は、文書記憶部１０４に記憶される文書登録表４０を参照し、ステップＳ７０５で抽出した派生元種別２０１および派生元記載項目種別２０２の組の派生元種別２０１から、派生元種別２０１に対応する文書種別４０３を持った行の文書ＩＤ４０１を取得する。テンプレート生成部１０３は、文書ＩＤ４０１および派生元記載項目種別２０２の組を基に、図５の記載項目登録表５０を検索し、対応する文書ＩＤ５０５および記載項目種別５０７の組を持ち、なおかつ、有効５０４列が「有効」となっている行を派生元文書の記載項目として特定する。
【００８２】
たとえば、ステップＳ７０５で抽出した派生元種別２０１および派生元記載項目種別２０２の複数の組の中に、要求仕様書およびユースケースが含まれていた場合、テンプレート生成部１０３は、図４の文書登録表４０から文書種別４０３が要求仕様書となっている文書ＩＤ４０１「１」を抽出し、図５の記載項目登録表５０の中から、文書ＩＤ５０５が「１」で、派生元記載項目種別２０２「ユースケース」を記載項目種別５０７として持ち、なおかつ、有効５０４が「有効」となっている項目ＩＤ５０１「１」、「２」の行を特定する。
【００８３】
ステップＳ７０７において、テンプレート生成部１０３は、ステップＳ７０６において特定した派生元文書の記載項目と、記載項目対応関係記憶部１０１に記憶される記載項目対応関係表２０から、派生元の文書の記載項目に起因する派生先文書のテンプレートに必要な記載項目を特定し、記載項目ごとに記載項目名５０６、記載項目種別５０７、派生元記載項目の項目ＩＤ５０１、および派生元記載項目の識別情報５０３の組のリストである派生先項目生成結果リスト８０を生成する。
【００８４】
たとえば、テンプレート生成部１０３は、アーキテクチャ設計書のテンプレートを生成しようとしていて、ステップＳ７０６において派生元文書の記載項目として、図５の記載項目登録表５０の項目ＩＤ５０１「１」、「２」が特定されていたとする。この場合、項目ＩＤ５０１「１」、「２」の記載項目種別５０７である「ユースケース」は、図２の記載項目対応関係表２０の２０９の行によると、アーキテクチャ設計書の派生先記載項目種別２０４「機能ユニット」に影響を与え、さらに属性２０５が「組み合わせ」となっているので、項目ＩＤ５０１「１」に対応する「機能ユニット」、項目ＩＤ５０１「２」に対応する「機能ユニット」、項目ＩＤ５０１「１」と「２」の両方に対応する「機能ユニット」の３つの記載項目が派生先の文書であるアーキテクチャ設計書の記載項目に必要であることが分かる。この結果、３つの機能ユニットに対応した記載項目名５０６、記載項目種別５０７、派生元記載項目の項目ＩＤ５０１、および派生元記載項目の識別情報５０３の組を含んだリストが生成される。
【００８５】
図８は、派生先項目生成結果リスト８０の一例を示す図である。派生先項目生成結果リスト８０は、３つの組を含んだリストを示したものであり、前記３つの記載項目に対応した要素を含んだリストが生成される。たとえば、参照符８０１で示す行は、左から順に、記載項目名５０６が「機能ユニット（ユースケース１）」、記載項目種別５０７が「機能ユニット」、派生元記載項目の項目ＩＤ５０１が「１」、派生元記載項目の識別情報５０３が「２」であることを示している。記載項目名５０６については、利用者が、その記載項目の派生元の記載項目が何であるかが分かるように、カッコ内に派生元記載項目の名前を付加する形態となっている。
【００８６】
参照符８０２，８０３で示す行は、前述した行８０１と同様であるが、複数の派生元記載項目から派生している行８０３については、記載項目名５０６「機能ユニット（ユースケース１：ユースケース２）」、記載項目種別５０７が「機能ユニット」、派生元記載項目の項目ＩＤ５０１が「１：２」、派生元記載項目の識別情報５０３が「２：２」で、「機能ユニット（ユースケース１：ユースケース２）」という記載項目が、項目ＩＤ５０１「１」、識別情報５０３「２」の「ユースケース１」という記載項目と、項目ＩＤ５０１「２」、識別情報５０３「２」の「ユースケース２」という記載項目とから派生していることを示している。
【００８７】
ステップＳ７０８において、テンプレート生成部１０３は、記載項目対応関係記憶部１０１に記憶される記載項目対応関係表２０を参照し、生成しようとしている文書の文書名４０２および文書ＩＤ４０１と、テンプレートにデフォルトで含まれる記載項目とを取得する。テンプレート生成部１０３は、取得した文書名４０２、文書ＩＤ４０１、およびテンプレートにデフォルトで含まれる記載項目と、ステップＳ７０７で作成した派生先項目生成結果リストに含まれる要素を並べたものとをテンプレートとして出力し、また、ステップＳ７０７で作成した派生先項目生成結果リストのみを記載項目候補として別途出力する。記載項目候補とは、テンプレートに含まれる記載項目以外に利用者によって適宜追加され得る項目のことである。
【００８８】
図９は、テンプレート生成部１０３が出力するテンプレート９０の一例を示す図である。たとえば、テンプレート９０において、文書名４０２が「アーキテクチャ設計書」、文書ＩＤ４０１が「１」である文書のテンプレートを生成するにあたって、図８に示す派生先項目生成結果リスト８０を受取った場合、テンプレート生成部１０３は、図２に示す記載項目対応関係表２０からアーキテクチャ設計書のデフォルト記載項目である行２１０，２１１を特定し、これらと、派生先項目生成結果リスト８０とを含んだテンプレート９０を生成する。
【００８９】
テンプレート９０において、下線を引いている部分は、それぞれの記載項目を文書作成支援装置１にて識別するための情報である。参照符９０１で示す行では、文書名４０２として「アーキテクチャ設計書」、文書作成支援装置１が識別する情報として文書ＩＤ４０１「２」が出力されている。
【００９０】
デフォルトの記載項目である行９０２，９０３では、記載項目名５０６として「目的」、「定義（用語および略語）」、文書作成支援装置１が識別する情報として記載項目種別５０７「目的」、「定義（用語および略語）」がそれぞれ出力されている。図９の項目９０４〜９０６は、図８の項目８０１〜８０３と同一である。項目９０４〜９０６では、記載項目名５０６として「機能ユニット（ユースケース１）」、「機能ユニット（ユースケース２）」および「機能ユニット（ユースケース１：ユースケース２）」が示され、文書作成支援装置１が識別する情報として記載項目種別５０７「機能ユニット」が示され、派生元記載項目の項目ＩＤ５０１として「１」、「２」および「１：２」が示され、派生元記載項目の識別情報５０３として「２」、「２」および「２：２」が示されている。それぞれの記載項目自体の内容は、項目９０２〜９０６のそれぞれの下に記載される。
【００９１】
テンプレート９０の出力形式は任意であり、他の実施形態では、たとえば文書作成支援装置１が利用する下線を引いた情報が利用者には見えない形で提供されること、下線を引いた情報の部分が誤って削除または書き換えが行われないように編集不能とすることなどの仕組みを文書作成支援装置１に適宜追加する構成であってもよい。これによって、文書作成支援装置１は、利用者の利便性を向上させることができる。
【００９２】
図１０は、テンプレート生成部１０３が出力する記載項目候補リスト１００の一例を示す図である。記載項目候補リスト１００は、参照符１００１〜１００３で示す各項目を含み、これら各項目１００１〜１００３は、派生元の記載項目から生成される図９のテンプレート９０に含まれる記載項目９０４〜９０６と同一である。
【００９３】
これら各項目１００１〜１００３は、たとえば利用者がテンプレート９０に基づいて文書を作成する際に、記載項目９０４、すなわちユースケース１に関連する機能ユニットの記載項目を複数記載したい場合に、項目１００１をテンプレート９０にコピーして利用することを目的としている。記載項目候補リスト１００には、派生元の記載項目から生成される記載項目のみを含めているけれども、記載項目９０２，９０３などのデフォルトの記載項目を含めるような処理としても構わない。
【００９４】
ステップＳ７０９において、テンプレート生成部１０３は、文書記憶部１０４に記憶される記載項目登録表５０を参照し、ステップＳ７０４において特定または発行した文書ＩＤ４０１の文書の記載項目が存在するか否かを確認する。
【００９５】
テンプレート生成部１０３は、前記文書ＩＤ４０１の文書の記載項目が存在すると判定する場合に、ステップＳ７０８で生成したテンプレート９０を文書生成部１０６に渡し文書を生成させ、生成させた文書とステップＳ７０８で生成した記載項目候補リスト１００とを出力する。文書生成部１０６が文書を生成する処理の詳細については、「（４）文書を生成する処理」で後述する。
【００９６】
テンプレート生成部１０３は、前記文書ＩＤ４０１の文書の記載項目が存在しないと判定する場合に、ステップＳ７０８で生成したテンプレート９０と記載項目候補リスト１００とを出力する。
【００９７】
また、ステップＳ７０５において、最初に作成される文書など、生成しようとするテンプレートが生成元の文書を持たない種別の文書のテンプレートであることが分かった場合には、ステップＳ７０６，Ｓ７０７の処理を行わずに、ステップＳ７０８を処理するものとする。その際、派生元の記載項目の項目ＩＤ５０１および識別情報５０３を取得することは不可能であるため、代わりに、文書作成支援装置１がその旨を認識できるための任意の文字列を含めるものとする。
【００９８】
「（３）文書を登録する処理」では、受付けた文書が、文書記憶部１０４に記憶されているその文書の派生元の文書の記載項目から生成されたテンプレートを基に作成されたか否かを判定し、問題が無ければ、すなわち前記テンプレートを基に作成された文書であると判定された場合に、文書を登録する処理を行う。この処理について、図１、図２、図４、図５、図１１〜図１９を用いて詳細に説明する。以下、前記受付けた文書を、「受付文書」とも言う。
【００９９】
図１１は、判定部１０５による文書の判定および登録制御部１０７による文書の登録を示すフローチャートである。判定部１０５は、受付文書が上述の通り期待されるテンプレートを基に作成されたかどうかを判定する。受付文書がテンプレートを基に作成されているとは、受付文書がステップＳ７０９で出力されたテンプレート９０に基づいて作成されていること、および受付文書が後述するステップＳ２００６で出力された文書に基づいて作成されていることである。登録制御部１０７は、問題がなければ受付文書を記載項目ごとに文書記憶部１０４に登録する。
【０１００】
ステップＳ１１０１において、登録制御部１０７は、文書を受付ける。文書の受付けに際しては、登録制御部１０７は、予め定めるチェック項目に基づいて、受付文書がテンプレート生成部１０３において生成されたテンプレートを基に作成されているかをチェックし、問題がないことを確認する。予め定めるチェック項目は、たとえば既に発行されている有効な文書ＩＤ５０５が文書に含まれていること、受付文書内で記載項目対応関係記憶部１０１に登録されている有効な記載項目種別５０７が使用されていることなどである。
【０１０１】
ステップＳ１１０２において、登録制御部１０７は、ステップＳ１１０１で受付けた受付文書の文書ＩＤを識別し、文書記憶部１０４に記憶される文書登録表４０から、受付けた文書の文書種別４０３を特定し、記載項目対応関係記憶部１０１に記憶される記載項目対応関係表２０を参照し、受付文書の記載項目に影響を与える記載項目の種別、すなわち、派生先種別が受付けた文書の文書種別４０３となっている記載項目対応関係表２０内の中の項目を、派生元文書の記載項目種別５０７として抽出する。
【０１０２】
図１２は、登録制御部１０７が受付ける受付文書１２０の一例を示す図である。受付文書１２０は、ステップＳ１１０１で受付けた文書の例を示すものであり、参照符１２０６〜１２０９で示す記載項目は、それぞれ記載項目１２０２〜１２０５についての記載内容であることを示す。
【０１０３】
ステップＳ１１０１において、登録制御部１０７は、利用者によって作成された受付文書１２０を受付けた場合、記載項目１２０１から文書ＩＤ４０１「２」を識別し、文書登録表４０から文書ＩＤ４０１「２」の文書の種別が「アーキテクチャ設計書」であることを特定し、記載項目対応関係表２０から派生先種別２０３が「アーキテクチャ設計書」となっている行２０９の派生元種別２０１「要求仕様書」、派生元記載項目種別２０２「ユースケース」を、受付文書１２０の文書の記載項目に影響を与え得る記載項目種別５０７として抽出する。
【０１０４】
ステップＳ１１０３において、登録制御部１０７は、文書記憶部１０４に含まれる文書登録表４０および記載項目登録表５０を参照し、ステップＳ１１０２で抽出した派生元文書の記載項目種別５０７と同一の記載項目種別５０７となっていて、なおかつ、有効５０４列が「有効」となっている項目を派生元文書の記載項目として抽出する。
【０１０５】
たとえば登録制御部１０７は、ステップＳ１１０２において、派生元種別２０１「要求仕様書」、派生元記載項目種別２０２「ユースケース」を、ステップＳ１１０１において受付けた文書の記載項目に影響を与え得る記載項目種別５０７として特定した場合、文書登録表４０および記載項目登録表５０を参照し、文書種別４０３が「要求仕様書」で、記載項目種別５０７が「ユースケース」で、有効５０４が「有効」となっている記載項目として項目ＩＤ５０１「１」、「２」の行５０９，５１０を抽出する。
【０１０６】
ステップＳ１１０４において、登録制御部１０７は、文書記憶部１０４に記憶される記載項目登録表５０を参照し、ステップＳ１１０３で抽出した派生元文書の記載項目の項目ＩＤ５０１の一つ以上の組み合わせを派生元項目ＩＤ５０２として持ち、なおかつ、有効５０４列が「有効」となっている項目を派生先文書の記載項目として抽出する。
【０１０７】
ただし、文書ＩＤ５０５がステップＳ１１０１において受付けた受付文書の文書ＩＤ５０５と同一のものは除外する。そして、ステップＳ１１０３で抽出した派生元文書の記載項目と、先ほど抽出した派生先文書の記載項目およびステップＳ１１０１において受付けた文書の記載項目との対応関係を生成する。ここで生成する対応関係は、ステップＳ１１０１で受付けた受付文書の登録によって、派生先文書の記載項目との対応がなくなる派生元文書の記載項目が発生するか否か、すなわち派生先文書における検討漏れの可能性を確認するために利用する。
【０１０８】
たとえば、ステップＳ１１０１において文書ＩＤ５０５が「２」の受付文書１２０を受付け、ステップＳ１１０３において派生元文書の記載項目として、記載項目登録表５０の項目ＩＤ５０１「１」、「２」の行５０９、５１０を抽出した場合、記載項目登録表５０から、派生元項目ＩＤ５０２が前記項目ＩＤ５０１「１」、「２」の一つ以上の組み合わせである「１」、「２」、「１：２」となっていて、有効５０４が「有効」となっていて、文書ＩＤ５０５が「２」以外の行を抽出する。具体的には、図５の記載項目登録表５０では、該当する行はない。
【０１０９】
図１３は、受付文書１２０における派生元文書の記載項目と派生先文書の記載項目との対応関係の一例を示す図である。図１３に示す対応関係は、派生元文書の記載項目と、図５に含まれる派生先文書の記載項目およびステップＳ１１０１において受付けた文書図１２の記載項目との対応関係を示したものである。
【０１１０】
派生元文書の記載項目は、たとえば記載項目登録表５０内の項目ＩＤ５０１「１」、「２」の行５０９、５１０である。記載項目登録表５０に含まれる派生先文書の記載項目は、たとえば項目ＩＤ５０１「１」、「２」の一つ以上の組み合わせを派生元項目ＩＤ５０２として持ち、受付文書１２０の文書ＩＤである「２」以外を文書ＩＤ５０５として持つ項目である。
【０１１１】
図１３に示す対応関係において、参照符１３０１，１３０２で示す項目は、それぞれ記載項目登録表５０内の項目ＩＤ５０１「１」、「２」の行５０９，５１０に対応し、参照符１３０３，１３０４で示す項目は、それぞれ受付文書１２０内の記載項目１２０４，１２０５に対応することを示している。
【０１１２】
図１４は、登録制御部１０７が受付ける受付文書１４０の他の例を示す図である。利用者によって作成された受付文書１４０は、一部の項目が不足しており、かつ識別情報５０３に誤記がある受付文書の例を示すものである。受付文書１４０は、参照符１４０１〜１４０４で示す記載項目を含む。受付文書１４０の記載項目１４０１〜１４０３は、受付文書１２０の記載項目１２０１から１２０３とそれぞれ同一である。受付文書１４０は、受付文書１２０の記載項目１２０５を含んでおらず、また、受付文書１４０の記載項目１４０４は、受付文書１２０の記載項目１２０４が示す派生元文書の記載項目の識別情報５０３を「２」から「１」に変えたものである。
【０１１３】
図１５は、受付文書１４０における派生元文書の記載項目と派生先文書の記載項目との対応関係の他の例を示す図である。図１５に示す対応関係は、ステップＳ１１０１において登録制御部１０７が受付文書１４０を受付けた場合に生成する対応関係を示している。
【０１１４】
ステップＳ１１０５において、判定部１０５は、ステップＳ１１０４で登録制御部１０７が生成した対応関係を調べ、ステップＳ１１０１において受付けた文書によって、派生先文書の記載項目への対応関係がなくなる派生元文書の記載項目が存在するか否かを判定する。
【０１１５】
たとえば判定部１０５は、図１３に示す対応関係の場合、全ての派生元文書の記載項目１３０１，１３０２は、対応する派生先文書の記載項目１３０３または記載項目１３０４が存在するので、派生先文書の記載項目への対応関係がなくなる派生元文書の記載項目が存在しない、すなわち受付文書１２０に問題がないと判定し、ステップＳ１１０７に進む。
【０１１６】
また、判定部１０５は、図１５に示す対応関係の場合、派生元文書の記載項目の一つである記載項目１５０２に対応する派生先文書の記載項目が存在しないので、派生先文書の記載項目への対応関係がなくなる派生元文書の記載項目が存在する、すなわちステップＳ１１０１で受付けた受付文書１４０における検討漏れの可能性があるとして問題があると判定し、ステップＳ１１０６に進む。
【０１１７】
ステップＳ１１０６において、登録制御部１０７は、ステップＳ１１０５での判定において、派生先文書の記載項目への対応関係が無い派生元文書の記載項目が存在すると判定された場合、その旨を示す文字列とその派生先文書の記載項目の項目ＩＤ５０１の組を後続のエラー処理のために利用するリストに含める。以下、このエラー処理のために利用するリストを「エラーリスト」と言う。
【０１１８】
図１６は、登録制御部１０７が作成するエラーリスト１６０の一例を示した図である。エラーリスト１６０は、ステップＳ１１０５に起因するエラーの例１６０１と、後述するステップＳ１１０７に起因するエラー１６０２とを含んでいる。エラーの例１６０１は、ステップＳ１１０４において図１５に示す対応関係が生成された場合に、参照符１５０２で示す項目ＩＤ５０１「２」に対応する派生先文書の記載項目が無いため、その旨を示す文字列「対応項目なし」および項目ＩＤ５０１「２」の組が出力されたことを示す。
【０１１９】
ステップＳ１１０７において、判定部１０５は、ステップＳ１１０１において受付けた受付文書１２０，１４０に含まれる各記載項目の派生元項目ＩＤ５０２およびその派生元項目の識別情報５０３の組を取得し、これらが、文書記憶部１０４に含まれる記載項目登録表５０における項目ＩＤ５０１と識別情報５０３の組と同一であるか否かを判定する。
【０１２０】
たとえば、判定部１０５は、受付文書１２０を受付けた場合、受付文書１２０の記載項目の一つである記載項目１２０４については、派生元項目ＩＤ５０２「１」、識別情報５０３「２」を取得する。判定部１０５は、記載項目登録表５０を参照し、項目ＩＤ５０１が「１」である記載項目５０９の識別情報５０３が、先ほどの識別情報５０３と同一の「２」であることを確認して識別情報５０３が正しいと判定し、ステップＳ１１０９に進む。さらに判定部１０５は、記載項目１２０５についても同様に判定を行う。
【０１２１】
判定部１０５は、受付文書１４０を受付けた場合、受付文書１４０の記載項目１４０４の派生元項目ＩＤ５０２「１」、識別情報５０３「１」を取得するけれども、記載項目登録表５０では項目ＩＤ５０１「１」である記載項目５０９の識別情報５０３は「２」であるので、識別情報５０３が正しくない、すなわち派生元文書の記載項目が更新される前に生成されたテンプレートを利用して文書が作成されたと判定し、ステップＳ１１０８に進む。
【０１２２】
ステップＳ１１０８において、登録制御部１０７は、ステップＳ１１０７の判定において、識別情報５０３が正しくない、すなわち同一でない記載項目が存在すると判定した場合、ステップＳ１１０１において受付けた文書の該当する記載項目ごとに、識別情報５０３が正しくない旨を示す文字列と、その記載項目をステップＳ１１０１で受付けた文書内にて特定するための情報と、正しい識別情報５０３との組をエラーリストに含める。
【０１２３】
たとえば登録制御部１０７は、ステップＳ１１０７において、受付文書１４０に対して、記載項目１４０４の派生元文書の記載項目の識別情報５０３が正しくないと判定されていた場合、エラーリスト１６０の項目１６０２に示すように、その旨を示す文字列「識別情報が正しくない」と、その記載項目を受付文書１４０内にて特定するための情報と、正しい識別情報５０３とをエラーリストに出力する。記載項目を受付文書１４０内にて特定するための情報とは、たとえば記載項目名５０６「機能ユニット：ＵＩ」、記載項目種別５０７「機能ユニット」、派生元文書に記載の項目ＩＤ５０１「１」である。正しい識別情報５０３とは、たとえば記載項目登録表５０の行５０９から「２」である。
【０１２４】
ステップＳ１１０９において、判定部１０５は、上述のエラーリスト１６０が作成されているか否か、すなわち要素が存在するか否かを判定する。エラーリスト１６０が作成されていると判定部１０５によって判定された場合、ステップＳ１１１４に進み、エラーリスト１６０が作成されていないと判定部１０５によって判定された場合、ステップＳ１１１０に進む。
【０１２５】
ステップＳ１１１０において、登録制御部１０７は、ステップＳ１１０９の判定において、エラー処理のためのリストが作成されていないと判定された場合、ステップＳ１１０１において受付けた文書の文書名４０２と、文書記憶部１０４に含まれる文書登録表４０の中の対応する文書ＩＤの文書名４０２を比較し、内容が異なっていたら、受付けた文書の文書名４０２で文書登録表４０の中の文書名４０２を更新する。
【０１２６】
図１７は、更新された文書登録表１７０の一例を示す図である。更新された文書登録表１７０は、受付文書１２０を受付けた場合の文書登録表４０の更新結果を示す。受付文書１２０内の記載項目１２０１から、文書名４０２が「○○ソフトウェアアーキテクチャ設計書」となっており、これが、文書登録表４０の中の文書ＩＤ４０１が「２」となっている文書の文書名４０２「アーキテクチャ設計書」と異なっているので、行１７０２の文書名４０２が「○○ソフトウェアアーキテクチャ設計書」に更新されている。更新された文書登録表１７０は、文書登録表４０と比べて、行１７０２のみが異なる。
【０１２７】
ステップＳ１１１１において、登録制御部１０７は、ステップＳ１１０１で受付けた受付文書１２０に含まれる記載項目の中で、文書ＩＤ５０５が含まれている記載項目、すなわち一度文書記憶部１０４に登録されている記載項目の記載内容について、文書記憶部１０４に格納されている対応する項目の記載内容と比較する。一度文書記憶部１０４に登録されている記載項目については、「（４）文書を生成する」で後述する。登録制御部１０７は、前記比較した結果、内容が変わっていれば更新が行われたと判断して、文書記憶部１０４の中の該当する項目ＩＤ５０１を持つ項目の識別情報５０３に１を加算して更新し、さらに記載内容の更新を行う。
【０１２８】
ステップＳ１１１２において、登録制御部１０７は、ステップＳ１１０１において受付けた受付文書１２０に含まれる記載項目の中で、文書ＩＤ５０５が含まれていない記載項目を、文書記憶部１０４に登録されていない新規の記載項目であると判断する。登録制御部１０７は、新規の記載項目であると判断した記載項目について、新たに項目ＩＤ５０１を付与して、有効５０４を「有効」とし、識別情報５０３を「１」として文書記憶部１０４に格納する。
【０１２９】
図１８は、更新された記載項目登録表１８０の一例を示す図である。更新された記載項目登録表１８０は、文書記憶部１０４に記載項目登録表５０が記憶されている状態のときに、登録制御部１０７が受付文書１２０を受付けた場合の記載項目登録表５０の更新結果を示す。
【０１３０】
受付文書１２０に含まれる記載項目１２０２〜１２０５に対応する項目が、更新された記載項目登録表１８０の項目１８０１〜１８０４に、項目ＩＤ５０１が新たに割り当てられて登録されている。更新された記載項目登録表１８０において、項目１８０１、１８０２などのように派生元記載項目を持たない記載項目については、派生元項目ＩＤ５０２列が「―」で示される。
【０１３１】
ステップＳ１１１３において、登録制御部１０７は、文書記憶部１０４に含まれるステップＳ１１０１で受付けた受付文書１２０と同一の文書ＩＤ５０５を持つ記載項目と、受付文書１２０の中で項目ＩＤ５０１を持っている項目との対応関係を調べる。判定部１０５は、対応関係を調べた結果、前者のグループにのみ含まれる記載項目を、ステップＳ１１０１で受付けた文書中から削除された記載項目と判断して、この削除された記載項目に対応する文書記憶部１０４の中の記載項目の有効５０４列の値を、「有効」から「無効」に変更し、ステップＳ１１１５に進んで処理が終了する。
【０１３２】
ステップＳ１１１４において、登録制御部１０７は、ステップＳ１１０５の判定結果に起因するエラーについては、派生先文書の記載項目が存在しない派生元文書の記載項目の項目ＩＤ５０１を基に、その項目ＩＤ５０１の項目種別から派生され得る記載項目を、記載項目対応関係記憶部１０１を参照して特定する。登録制御部１０７は、この特定した記載項目を、受付文書１２０に埋め込む。
【０１３３】
また、ステップＳ１１１４において、登録制御部１０７は、ステップＳ１１０７の判定結果に起因するエラーについては、ステップＳ１１０１において受付けた文書の該当する箇所に、エラーに該当する旨を示すための予め定める加工、たとえば色付け、フォントの変更、文字の大きさの変更などの書式の変更を行う。この色付けは、エラーがある箇所と、エラーがない箇所との文字の色を異なる色で表示するものである。
【０１３４】
図１９は、エラー表示文書１９０の一例を示す図である。エラー表示文書１９０は、ステップＳ１１０５またはステップＳ１１０７においてエラーが検出された場合に、登録制御部１０７によって生成される。
【０１３５】
登録制御部１０７は、判定部１０５によって受付文書の作成に使われたテンプレート９０が、受付文書の派生元の文書の記載項目を基にして生成されたテンプレート９０でないと判定されたとき、判定文書に対して記載項目ごとに予め定める加工を行い、加工した判定文書であるエラー表示文書１９０を出力する。
【０１３６】
登録制御部１０７は、エラーリスト１６０が生成されていた場合、１６０１のエラー、すなわちステップＳ１１０５の判定結果に起因するエラーについては、項目ＩＤ５０１「２」に基づいて、文書記憶部１０４に記憶される記載項目登録表５０および文書登録表４０から、派生元文書の文書種別４０３「要求仕様書」と記載項目種別５０７「ユースケース」とを特定する。
【０１３７】
登録制御部１０７は、記載項目対応関係記憶部１０１に記憶される記載項目対応関係表２０から、ステップＳ１１０１において受付けた文書の文書種別４０３「アーキテクチャ設計書」に派生される記載項目種別５０７「機能ユニット」を特定する。
【０１３８】
登録制御部１０７は、派生元文書の文書種別４０３「要求仕様書」と、記載項目種別５０７「ユースケース」の記載項目「ユースケース２」とから派生される記載項目「機能ユニット（ユースケース２）」、「機能ユニット（ユースケース１：ユースケース２）」を、ステップＳ７０７と同様の特定方法によって特定し、項目１９０５，１９０６のように、その記載項目を受付文書１２０に含める。その際に、色付けなど、他の記載項目と区別がつく形で出力することによって利便性が向上する。
【０１３９】
また、参照符１６０２で示すエラー、たとえばステップＳ１１０７の判定結果に起因するエラーについては、ステップＳ１１０１において受付けた文書の該当する箇所に、参照符１９０４に示すように、エラーに該当する旨を示すための予め定める加工をして、エラー表示文書１９０として出力する。
【０１４０】
「（４）文書を生成する処理」では、生成されたテンプレートを基に文書を生成する処理を行う。この処理について、図１、図９、図１７、図１８、図２０、図２１を用いて詳細に説明する。
【０１４１】
図２０は、文書生成部１０６がテンプレート９０に基づいて生成文書２１０を生成する処理を示すフローチャートである。文書生成部１０６によって生成された文書を、「生成文書２１０」とも言う。本フローチャートでは、文書生成部１０６にて、テンプレート生成部１０３が生成したテンプレート９０に、文書記憶部１０４に格納されている記載項目の記載内容を転記し、これを生成文書２１０として出力する処理を示す。ステップＳ２００１において、文書生成部１０６は、テンプレート生成部１０３が生成して出力したテンプレート９０を受付ける。
【０１４２】
ステップＳ２００２において、文書生成部１０６は、ステップＳ２００１で受付けたテンプレート９０の文書ＩＤ４０１を調べ、文書記憶部１０４に含まれる文書登録表４０，１７０を参照し、文書ＩＤ４０１に対応する文書の文書名４０２を取得する。たとえば文書生成部１０６は、文書記憶部１０４に図１７の文書登録表１７０が記憶されているときに、ステップＳ２００１でテンプレート９０を受付けた場合、項目９０１から文書ＩＤが「２」であることを識別し、更新された文書登録表１７０の文書ＩＤの列が「２」となっている行１７０２の文書名の値「○○アーキテクチャ設計書」を取得する。
【０１４３】
ステップＳ２００３において、文書生成部１０６は、ステップＳ２００１で受付けたテンプレート９０の文書ＩＤ５０５を調べ、文書記憶部１０４に記憶される記載項目登録表５０，１８０を参照し、文書ＩＤ５０５が等しく、なおかつ、有効５０４列が「有効」となっている記載項目を全て取得する。
【０１４４】
たとえば文書生成部１０６は、文書記憶部１０４に図１８の記載項目登録表１８０が記憶されているときに、ステップＳ２００１でテンプレート９０を受付けた場合、項目９０１から文書ＩＤが「２」であることを識別し、記載項目登録表１８０から文書ＩＤの列が「２」となっていて、有効５０４の列が「有効」となっている行１８０１〜１８０４を記載項目として取得する。
【０１４５】
ステップＳ２００４において、文書生成部１０６は、ステップＳ２００２で取得した文書名４０２、ステップＳ２００３で取得した記載項目の記載項目名５０６、項目ＩＤ５０１、記載内容をステップＳ２００１で受付けたテンプレート９０の対応する箇所、すなわち、記載項目種別５０７および派生元項目ＩＤ５０２が同一の箇所に転記する。その際、文書生成部１０６は、テンプレート９０の生成時に各記載項目に含められていた記載項目種別５０７および派生元項目ＩＤ５０２が、新たに転記する文書ＩＤを用いて文書記憶部１０４に含まれる記載項目登録表５０から取得可能であるので、削除する。
【０１４６】
ステップＳ２００５において、文書生成部１０６は、ステップＳ１１０１で受付けたテンプレート９０の各記載項目の中で、ステップＳ１１０４において転記が行われなかった記載項目を特定し、特定した記載項目を、生成しようとしている文書には含まれない記載項目と判断して削除する。
【０１４７】
図２１は、文書生成部１０６によって生成された生成文書２１０の一例を示す図である。生成文書２１０は、文書記憶部１０４に文書登録表１７０および記載項目登録表１８０が記憶されているときに、テンプレート９０をステップＳ２００１において受付けた場合に、文書生成部１０６によって生成され出力される。
【０１４８】
テンプレート９０内の項目９０１の文書名４０２「アーキテクチャ設計書」は、文書登録表１７０から項目２１０１において「○○ソフトウェアアーキテクチャ設計書」となる。項目９０２〜９０５には、記載項目登録表１８０の行１８０１〜１８０４から、記載項目種別５０７および派生元項目ＩＤ５０２が同一である項目の記載項目名５０６、項目ＩＤ５０１、および記載内容が、項目２１０２〜２１０９のように転記される。その際に、文書生成部１０６は、項目ＩＤ５０１から取得可能な情報、たとえば記載項目種別５０７および派生元項目ＩＤ５０２は、削除する。
【０１４９】
また、利用者が任意に追加する記載項目によって、テンプレート生成部１０３が生成する項目よりも多くの項目がステップＳ２００３で特定される可能性がある。この場合には、文書生成部１０６は、ステップＳ２００３で特定された項目を、適宜テンプレート９０に転記するものとする。また、記載項目９０６に対応する記載項目、たとえば派生元項目ＩＤ５０２が「１：２」の項目は、記載項目登録表１８０には存在しないので、生成文書２１０においては、記載項目９０６に対応する記載項目が削除されている。
【０１５０】
ステップＳ２００６において、文書生成部１０６は、ステップＳ１１０５で生成した生成文書２１０を、テンプレート生成部１０３に出力し、ステップＳ２００７に進んで処理が終了する。
【０１５１】
上述した実施形態では、文書作成支援装置１において、ＣＰＵがメモリに記憶されるプログラムを実行することによって、上述した機能を実現するが、上述した機能を実現するためのプログラムは、メモリに記憶されることに限定されるものではなく、コンピュータで読取り可能な記録媒体に記録されていてもよい。記録媒体は、たとえば図示しない外部記憶装置としてプログラム読取装置を文書作成支援装置１に設け、そこに記録媒体を挿入することによって読取り可能な記録媒体であってもよいし、あるいは他の装置の記憶装置であってもよい。
【０１５２】
いずれの記録媒体であっても、記憶されているプログラムがコンピュータからアクセスされて実行される構成であればよい。あるいはいずれの記録媒体であっても、プログラムが読み出され、読み出されたプログラムが、記憶装置のプログラム記憶エリアに記憶されて、そのプログラムが実行される構成であってもよい。
【０１５３】
文書作成支援装置１と分離可能に構成される記録媒体は、たとえば磁気テープ／カセットテープなどのテープ系の記録媒体、フレキシブルディスク／ハードディスクなどの磁気ディスクもしくはＣＤ−ＲＯＭ（Compact Disk Read Only Memory）／ＭＯ（Magneto 
Optical disk）／ＭＤ（Mini Disc）／ＤＶＤ（Digital Versatile Disk）／ＣＤ−Ｒ（
Compact Disk Recordable）／ブルーレイディスクなどの光ディスクのディスク系の記録
媒体、ＩＣ（Integrated Circuit）カード（メモリカードを含む）／光カードなどのカード系の記録媒体、またはマスクＲＯＭ／ＥＰＲＯＭ（Erasable Programmable Read Only Memory）／ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）／
フラッシュＲＯＭなどの半導体メモリを含む固定的にプログラムを担持する記録媒体であってもよい。
【０１５４】
また、文書作成支援装置１を通信ネットワークと接続可能に構成し、通信ネットワークを介して上記プログラムを供給してもよい。この通信ネットワークとしては、特に限定されず、たとえば、インターネット、イントラネット、エキストラネット、ＬＡＮ（Local Area Network）、ＩＳＤＮ（Integrated Services Digital Network）、ＶＡＮ（Value 
Added Network）、ＣＡＴＶ（Community Antenna Television）通信網、仮想専用網（
Virtual Private Network）、電話回線網、移動体通信網、または衛星通信網など通信ネットワークが利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、たとえば、ＩＥＥＥ１３９４、ＵＳＢ（Universal Serial Bus）、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ（Asymmetric Digital Subscriber Line）回線などの有線でも、ＩｒＤＡ（Inf rared Data Association）あるいはリモートコントロールで用いられる赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ（High Data Rate）、携帯電話網、衛星回線、地上波デジタル網などの無線でも利用可能である。なお、本発明は、上記プログラムが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０１５５】
このように、文書作成支援装置１は、一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書の作成を支援する。文書作成支援装置１は、記載項目対応関係記憶部１０１と、テンプレート生成部１０３と、文書記憶部１０４と、文書生成部１０６と、判定部１０５と、登録制御部１０７とを含んで構成される。記載項目対応関係記憶部１０１は、変更の派生元である前記一の文書の記載項目と、変更の派生先である前記他の文書の記載項目との対応関係を記憶する。テンプレート生成部１０３は、記載項目対応関係記憶部１０１に記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定する。テンプレート生成部１０３は、特定した記載項目と、特定した記載項目に対応する派生元の文書の記載項目の記載内容５０８を識別する情報である識別情報５０３との組を生成する。テンプレート生成部１０３は、生成した特定された記載項目と識別情報５０３との組を含んだ文書を、派生先文書のテンプレート９０として出力する。文書記憶部１０４は、文書を記載項目ごとに記憶する。文書生成部１０６は、テンプレート生成部１０３からテンプレート９０を取得し、取得したテンプレート９０の記載項目に、文書記憶部１０４に記憶されている記載項目の記載内容５０８を転記して生成文書２１０を生成する。判定部１０５は、判定の対象とする受付文書１２０，１４０を文書記憶部１０４に記憶する際に、受付文書１２０，１４０の作成に使われたテンプレート９０が、文書記憶部１０４に記憶されている文書のうちで、受付文書１２０，１４０の派生元の文書の記載項目を基にして生成されたテンプレート９０であるか否かを、識別情報５０３を用いて、受付文書１２０，１４０の記載項目ごとに判定する。登録制御部１０７は、受付文書１２０，１４０の作成に使われたテンプレート９０が、受付文書１２０，１４０の派生元の文書の記載項目を基にして生成されたテンプレート９０であると、判定部１０５によって全ての記載項目について判定されたとき、判定文書を文書記憶部１０４に記憶させる。
【０１５６】
これによって、文書作成支援装置１は、テンプレート生成部１０３が生成したテンプレート９０および文書生成部１０６が生成した生成文書２１０を、たとえば文書を作成する利用者に提供することができる。したがって、利用者は、提供されたテンプレート９０または生成文書２１０に対して、訂正または加筆などの編集をすることによって新たな文書を容易に作成することができる。
【０１５７】
また、文書作成支援装置１は、文書の作成に利用されたテンプレート９０の問題の有無を記載項目ごとに判別するので、最新でない文書を基に編集された文書が、文書記憶部１０４に記憶されることを防止することができる。これによって、文書作成支援装置１は、利用者の意図に反した文書、たとえば編集された古い記載項目を含む文書が、文書記憶部１０４において更新して記憶されることを防止することができる。
【０１５８】
さらに、登録制御部１０７は、受付文書１２０，１４０の作成に使われたテンプレート９０が、受付文書１２０，１４０の派生元の文書の記載項目を基にして生成されたテンプレート９０でないと、判定部１０５によって判定されたとき、判定文書に対して記載項目ごとに予め定める加工を行い、加工した判定文書であるエラー表示文書１９０を出力する。
【０１５９】
これによって、文書作成支援装置１は、問題がある箇所を予め定める加工、たとえば色付け、または文字の大きさの変更などを行うことによって、問題がない箇所と区別して表示することができる。したがって、文書作成支援装置１は、利用者が記憶させようとしている文書内の問題がある箇所を強調表示して利用者に報知することができる。これによって、利用者は、強調表示された問題のある箇所を修正することで、適切な文書を容易に作成することができる。
【０１６０】
さらに、登録制御部１０７は、テンプレート生成部１０３によって生成された記載項目とは異なる追加記載項目を含む受付文書１２０，１４０を取得するとき、追加記載項目と、受付文書１２０，１４０の派生元となる文書の記載項目との対応関係を含めた受付文書１２０，１４０を文書記憶部１０４に記憶させる。文書生成部１０６は、文書記憶部１０４に記憶される追加記載項目を含む文書を生成可能である。
【０１６１】
これによって、文書作成支援装置１は、文書作成支援装置１が自動で設ける記載項目以外に、新たな記載項目である追加記載項目を利用者が文書へ自由に追加できるので、文書の記載項目の柔軟性を高め、文書作成の利便性を向上させることができる。
【０１６２】
さらに、文書作成支援方法は、一の文書の変更が他の文書へも変更を及ぼす関係を有する複数の文書の作成を支援する。文書作成支援方法は、記載項目対応関係記憶工程と、テンプレート生成工程と、文書記憶工程と、文書生成工程と、判定工程と、登録制御工程とを含む。記載項目対応関係記憶工程では、変更の派生元である前記一の文書の記載項目と、変更の派生先である前記他の文書の記載項目との対応関係を記憶する。テンプレート生成工程では、記載項目対応関係記憶工程で記憶される対応関係から、派生元となる文書に含まれる記載項目を基に、派生先となる文書に含まれるべき記載項目を特定する。テンプレート生成工程では、特定した記載項目と、特定した記載項目に対応する派生元の文書の記載項目の記載内容５０８を識別する情報である識別情報５０３との組を生成する。テンプレート生成工程では、生成した特定された記載項目と識別情報５０３との組を含んだ文書を、派生先文書のテンプレート９０として出力する。文書記憶工程では、文書を記載項目ごとに記憶する。文書生成工程では、テンプレート生成工程で出力されたテンプレート９０を取得し、取得したテンプレート９０の記載項目に、文書記憶工程に記憶されている記載項目の記載内容５０８を転記して文書を生成する。判定工程では、判定の対象とする受付文書１２０，１４０を文書記憶工程で記憶する際に、受付文書１２０，１４０の作成に使われたテンプレート９０が、文書記憶工程で記憶された文書のうちで、受付文書１２０，１４０の派生元の文書の記載項目を基にして生成されたテンプレート９０であるか否かを、識別情報５０３を用いて、受付文書１２０，１４０の記載項目ごとに判定する。登録制御工程では、受付文書１２０，１４０の作成に使われたテンプレート９０が、受付文書１２０，１４０の派生元の文書の記載項目を基にして生成されたテンプレート９０であると、判定工程で全ての記載項目について判定されたとき、判定文書を文書記憶工程に記憶させる。
【０１６３】
これによって、文書作成支援方法では、テンプレート生成工程で生成したテンプレート９０および文書生成工程で生成した文書を、たとえば文書を作成する利用者に提供することができる。したがって、利用者は、提供されたテンプレート９０または文書に対して、訂正または加筆などの編集をすることによって新たな文書を容易に作成することができる。
【０１６４】
また、文書作成支援方法では、文書の作成に利用されたテンプレート９０の問題の有無を記載項目ごとに判別するので、最新でない文書を基に編集された文書が、文書記憶工程で記憶されることを防止することができる。これによって、文書作成支援方法は、利用者の意図に反した文書、たとえば編集された古い記載項目を含む文書が、文書記憶工程で更新して記憶されることを防止することができる。
【０１６５】
さらに、文書作成支援プログラムは、コンピュータを、文書作成支援装置１として機能させる。
【０１６６】
さらに、コンピュータ読取り可能な記録媒体は、文書作成支援プログラムを記憶している。
【符号の説明】
【０１６７】
１  文書作成支援装置
１０１  記載項目対応関係記憶部
１０２  記載項目対応関係登録部
１０３  テンプレート生成部
１０４  文書記憶部
１０５  判定部
１０６  文書生成部
１０７  登録制御部
２０１  派生元種別
２０２  派生元記載項目種別
２０３  派生先種別
２０４  派生先記載項目種別
２０５  属性
４０１  文書ＩＤ
４０２  文書名
４０３  文書種別
５０１  項目ＩＤ
５０２  派生元項目ＩＤ
５０３  識別情報
５０４  有効
５０５  文書ＩＤ
５０６  記載項目名
５０７  記載項目種別
５０８  記載内容
【図１】
2011227684.tif 000003
【図２】
2011227684.tif 000004
【図３】
2011227684.tif 000005
【図４】
2011227684.tif 000006
【図５】
2011227684.tif 000007
【図６】
2011227684.tif 000008
【図７】
2011227684.tif 000009
【図８】
2011227684.tif 000010
【図９】
2011227684.tif 000011
【図１０】
2011227684.tif 000012
【図１１】
2011227684.tif 000013
【図１２】
2011227684.tif 000014
【図１３】
2011227684.tif 000015
【図１４】
2011227684.tif 000016
【図１５】
2011227684.tif 000017
【図１６】
2011227684.tif 000018
【図１７】
2011227684.tif 000019
【図１８】
2011227684.tif 000020
【図１９】
2011227684.tif 000021
【図２０】
2011227684.tif 000022
【図２１】
2011227684.tif 000023