(57)【特許請求の範囲】
【請求項１】
ユースケースシナリオの作成支援を行うコンピュータシステムであって、
ユースケースシナリオの構成要素たる、処理の実行主体であるアクター名、前記アクターが実行する処理の対象情報、および前記アクターが実行する処理内容に応じた動詞の各情報の選択肢を定めた選択肢テーブルと、
ユースケースシナリオのパターン毎に、該当ユースケースシナリオを成す文字列における前記アクター名、対象情報、および動詞の組合せ情報を定めたユースケースシナリオ記述テーブルと、
前記ユースケースシナリオ記述テーブルから、各ユースケースシナリオパターンの前記組合せ情報を読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブルから読み出し、ユースケースシナリオパターン毎に文字列中におけるアクター名、対象情報、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して出力インターフェイスに表示する、画面出力手段と、
前記入力画面を通じて、ユースケースシナリオの選択指示と当該ユースケースシナリオにおけるアクター名、対象情報、および動詞の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオの情報を、既存ユースケースシナリオ記述情報テーブルに格納する、シナリオ取得手段と、
を備えることを特徴とするユースケースシナリオ作成支援システム。
【請求項２】
前記既存ユースケースシナリオ記述情報テーブルから、ユースケースシナリオの情報と、このユースケースシナリオが属するユースケースとは異なる他ユースケースのユースケースシナリオとを読み出し、ここで読み出したユースケースシナリオ間でユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報の一致を判定し、前記各情報が全て一致したユースケースシナリオ群が一定数以上であれば、前記ユースケースと前記他ユースケースとが類似するユースケース群であるとして、当該ユースケース群の情報を出力インターフェイスに表示する、類似ケース特定手段を備えることを特徴とする請求項１に記載のユースケースシナリオ作成支援システム。
【請求項３】
前記既存ユースケースシナリオ記述情報テーブルにおいて、各ユースケースシナリオが含むユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報は、各情報を一意に特定可能なＩＤであり、
前記類似ケース特定手段は、前記既存ユースケースシナリオ記述情報テーブルから読み出したユースケースシナリオ間でユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報の一致を判定するに際し、各情報のＩＤの一致を判定するものである、
ことを特徴とする請求項２に記載のユースケースシナリオ作成支援システム。
【請求項４】
前記既存ユースケースシナリオ記述情報テーブルは、ユースケースシナリオ毎に該当ユースケースの適用対象業務の情報を格納するものであり、
前記類似ケース特定手段は、前記ユースケース群の情報と共に、該当ユースケースの適用対象業務の情報を前記既存ユースケースシナリオ記述情報テーブルから読み出して出力インターフェイスに表示するものである、
ことを特徴とする請求項２または３に記載のユースケースシナリオ作成支援システム。
【請求項５】
所定の記憶装置から読み出すか入力インターフェイスから取得されたユースケースシナリオについて、その文字列が含むアクター名、対象情報、および動詞と、これらアクター名、対象情報、および動詞の前記文字列中での順列とに関し、前記ユースケースシナリオ記述テーブル中の各ユースケースシナリオパターンと照合し、前記ユースケースシナリオ記述テーブルが含むどのユースケースシナリオパターンとも一致しない場合、当該ユースケースシナリオの文字列が含むアクター名、対象情報、および動詞と、これらアクター名、対象情報、および動詞の前記文字列中での順列の情報とを含む、新たなユースケースシナリオパターンを前記ユースケースシナリオ記述テーブルに登録する、ユースケースシナリオ分析手段を備えることを特徴とする請求項１〜４のいずれかに記載のユースケースシナリオ作成支援システム。
【請求項６】
ユースケースシナリオから設計された既存のコンポーネントの情報を格納した既存コンポーネント情報テーブルと、ユースケースと当該ユースケースに属するユースケースシナリオと当該ユースケースシナリオのコンポーネントとの対応関係を定めたユースケース・コンポーネント紐付き情報テーブルと、を記憶する記憶装置と、
所定ユースケースシナリオについてのコンポーネントの指定を入力インターフェイスで受け付けて、ここで指定を受け付けた指定コンポーネントの情報と、前記既存コンポーネント情報テーブルに格納されている既存コンポーネントの情報とを照合して、前記指定コンポーネントが含む所定文字列と同じ文字列を含んでいる既存コンポーネントを特定し、ここで特定した既存コンポーネントのリストを出力インターフェイスに表示し、前記リストの既存コンポーネント中からの共通コンポーネントの指定を入力インターフェイスで受け付けて、前記ユースケース・コンポーネント紐付き情報テーブルにおける前記所定ユースケースシナリオに対応付けて前記共通コンポーネントの情報を設定する、類似コンポーネント特定手段を備えることを特徴とする請求項１〜５のいずれかに記載のユースケースシナリオ作成支援システム。
【請求項７】
前記類似コンポーネント特定手段は、前記類似ケース特定手段が前記各情報が全て一致したユースケースシナリオ群が一定数以上であると判定出来なかったユースケースＡと他ユースケースＢとのセットについて検知し、ユースケースＡに属するユースケースシナリオについてのコンポーネントａおよび他ユースケースＢに属するユースケースシナリオについてのコンポーネントｂの指定を入力インターフェイスで受け付けて、ここで指定を受け付けた指定コンポーネントａの情報と指定コンポーネントｂの情報とを照合して、前記指定コンポーネントａおよびｂの間で同じ所定文字列を含んでいるコンポーネントのセットを特定し、ここで特定したコンポーネントセットのリストを出力インターフェイスに表示し、前記リストのコンポーネントセットからの共通コンポーネントの指定を入力インターフェイスで受け付けて、前記ユースケース・コンポーネント紐付き情報テーブルにおける前記ユースケースＡおよびユースケースＢのユースケースシナリオに対応付けて前記共通コンポーネントの情報を設定する、ことを特徴とする請求項６に記載のユースケースシナリオ作成支援システム。
【請求項８】
ユースケースシナリオの作成支援を行うコンピュータが、
ユースケースシナリオの構成要素たる、処理の実行主体であるアクター名、前記アクターが実行する処理の対象情報、および前記アクターが実行する処理内容に応じた動詞の各情報の選択肢を定めた選択肢テーブルと、
ユースケースシナリオのパターン毎に、該当ユースケースシナリオを成す文字列における前記アクター名、対象情報、および動詞の組合せ情報を定めたユースケースシナリオ記述テーブルとを記憶装置に備えて、
前記ユースケースシナリオ記述テーブルから、各ユースケースシナリオパターンの前記組合せ情報を読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブルから読み出し、ユースケースシナリオパターン毎に文字列中におけるアクター名、対象情報、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して出力インターフェイスに表示する、画面出力処理と、
前記入力画面を通じて、ユースケースシナリオの選択指示と当該ユースケースシナリオにおけるアクター名、対象情報、および動詞の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオの情報を、既存ユースケースシナリオ記述情報テーブルに格納する、シナリオ取得処理と、
を実行することを特徴とするユースケースシナリオ作成支援方法。
【請求項９】
ユースケースシナリオの作成支援を行うべく、ユースケースシナリオの構成要素たる、処理の実行主体であるアクター名、前記アクターが実行する処理の対象情報、および前記アクターが実行する処理内容に応じた動詞の各情報の選択肢を定めた選択肢テーブルと、ユースケースシナリオのパターン毎に、該当ユースケースシナリオを成す文字列における前記アクター名、対象情報、および動詞の組合せ情報を定めたユースケースシナリオ記述テーブルとを記憶装置に備えるコンピュータに、
前記ユースケースシナリオ記述テーブルから、各ユースケースシナリオパターンの前記組合せ情報を読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブルから読み出し、ユースケースシナリオパターン毎に文字列中におけるアクター名、対象情報、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して出力インターフェイスに表示するステップと、
前記入力画面を通じて、ユースケースシナリオの選択指示と当該ユースケースシナリオにおけるアクター名、対象情報、および動詞の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオの情報を、既存ユースケースシナリオ記述情報テーブルに格納するステップと、
を実行させるユースケースシナリオ作成支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユースケースシナリオ作成支援システム、ユースケースシナリオ作成支援方法、およびユースケースシナリオ作成支援プログラムに関し、具体的には、オブジェクト指向ソフトウェア開発の設計工程における、システムの機能を記述するユースケースシナリオおよびユースケースシナリオの記述から設計されるコンポーネントの作成支援技術に関し、特に類似ユースケースおよびコンポーネントの検索等に配慮した作成支援の技術に関する。
【背景技術】
【０００２】
オブジェクト指向システム開発のユースケース設計においては、生産性向上のため、類似する機能を持つ２つのユースケースを１つに共通化することが行われる。こうした共通化を行うことにより、ユースケースの設計書の記述量が減少し、システム全体として少ない作業量で設計を行うことができる。ユースケースの共通化を行う際、ユースケースの仕様を構成するユースケースシナリオ記述の文字列を比較し、２つの異なるユースケースにおいて記述が類似する場合、その２つのユースケースは共通化候補となる。年金システム等の大規模システム開発の場合には、この共通化候補を検索するための作業を人間により実施した場合、膨大な作業時間を要することになる。
【０００３】
このような問題点を解決する方法として、機械的にユースケースシナリオ記述およびユースケース間の類似度を計測し、システムの中から類似するユースケースを検索することが実施されている。この際に、ユースケースシナリオ記述の類似度の機械的な計測には、単純な文字列マッチングを行う方法が一般的である。また、高度な計測の方法としては、特許文献１に示すような、機械的にユースケースシナリオ記述およびユースケースの距離を計算し、システムの設計全体としての適切度を数値化する方法が提案されている。この方法では、ユースケースシナリオ記述中の動詞およびキーワードを用いて、異なる２つのユースケースのユースケースシナリオ記述内に共通的に表れる前記動詞およびキーワードの数を検出し、ユースケースシナリオ記述間の距離を計測する。次に、ユースケースシナリオ記述間の距離の数値を用いて、２つのユースケース間の距離を数値化する。
【特許文献１】特開平１０−３０１７７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来技術を用いた共通化候補ユースケース抽出方法は、以下に示す４つの問題点がある。
【０００５】
まず第一に、類似したユースケースシナリオ記述であっても異なる設計者により異なる表記で記述されるために、単純な文字列マッチングや、動詞、キーワードに基づいてユースケースシナリオ間の類似度を求めても、類似しないものであると判断される可能性が残されている。例として、「被保険者は事務所に給付を請求する」というユースケースシナリオがあった場合、同じ内容のユースケースシナリオの記述でも、設計者が異なると「被保険者は事務所に給付の請求を行う」や「事務所に年金給付を請求する」などと異なる記述がされる場合がある。このような場合、従来では、これらユースケースシナリオ同士は類似したユースケースシナリオ記述とはみなされなくなってしまう。
【０００６】
第二に、意味が異なるユースケースシナリオ記述同士であっても、動詞およびキーワードのみを用いた類似度の計測では、誤って類似していると判断される可能性が残されている。例として、「＜システム＞は＜顧客テーブル＞の＜氏名項目＞を＜更新する＞」と「＜システム＞は＜顧客テーブル＞を用いて＜氏名項目＞を＜更新する＞」という２つのユースケースシナリオ記述について考える。ここで、ユースケースシナリオ記述中の括弧で囲まれた部分は、動詞およびキーワードである。従来は、前記２つのユースケースシナリオ記述は、意味が異なっているにもかかわらず、誤って類似したユースケースシナリオ記述であるとみなされてしまう。
【０００７】
第三に、共通化候補となる類似したユースケースを検索する際に、従来の方法では多数の文字列操作を行うため、検索時間が長くなってしまう状況がある。特に、年金システムのような大規模システムの場合、多数のユースケースシナリオ記述が設計されるため、従来の方法による文字列マッチングや動詞およびキーワード抽出といった文字列操作を実施すると、多大な検索時間を要することとなる。設計を行っている中で、頻繁に類似するユースケースの検索を行うため、設計作業効率化の観点においても、検索時間の短縮は重要な課題である。
【０００８】
第四に、使用者によるユースケースの類似度合いの判断において、該当ユースケースを用いるシステムの適用対象、例えば対象年金制度等の年金業務に関する情報が利用者に提示されない状況がある。ユースケース同士が類似しているかどうかの判断については、最終的には人間による判断を要するが、従来の方法により提示されるユースケースの類似度の数値やユースケースシナリオ記述のみでは判断材料としては十分でなく、適用業務に関する情報が必要となってくる。
【０００９】
更には、上述のようなユースケースシナリオの設計（基本設計工程）を経た後に、ユースケースシナリオの記述に基づくコンポーネントの設計（詳細設計工程）が実行されるが、ここでも、ユースケースシナリオ同様にコンポーネントの共通化を図る必要があった。このコンポーネントの共通化に際しては、設計後のコンポーネントの設計情報に基づいた共通コンポーネントの検索が行われる。そのため、コンポーネントの共通化を図ろうとして、設計済みのコンポーネントについて手戻りなど無駄な工程が生じることになりやすい。
【００１０】
また、コンポーネント間で共通化の候補となるものを抽出し、共通化実施の可否を判断する作業は所定の経験を有する有識者により実施されているが、大規模なシステム開発の現場（例：コンポーネント数が数千の規模）でこうした有識者による共通化候補の抽出や共通化実施可否の判断を行うことは時間的にもコスト的にも困難であった。
【００１１】
そこで、本発明は上記課題を鑑みてなされたものであり、ユースケースシナリオやコンポーネントの作成支援を行い、共通化候補となる類似ユースケースやコンポーネントを精度良好に検索可能とする技術の提供を目的とする。
【課題を解決するための手段】
【００１２】
本発明のユースケースシナリオ作成支援システムは、ユースケースシナリオの作成支援を行うコンピュータシステムであって、ユースケースシナリオの構成要素たる、処理の実行主体であるアクター名、前記アクターが実行する処理の対象情報、および前記アクターが実行する処理内容に応じた動詞の各情報の選択肢を定めた選択肢テーブルと、ユースケースシナリオのパターン毎に、該当ユースケースシナリオを成す文字列における前記アクター名、対象情報、および動詞の組合せ情報を定めたユースケースシナリオ記述テーブルと、前記ユースケースシナリオ記述テーブルから、各ユースケースシナリオパターンの前記組合せ情報を読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブルから読み出し、ユースケースシナリオパターン毎に文字列中におけるアクター名、対象情報、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して出力インターフェイスに表示する、画面出力手段と、前記入力画面を通じて、ユースケースシナリオの選択指示と当該ユースケースシナリオにおけるアクター名、対象情報、および動詞の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオの情報を、既存ユースケースシナリオ記述情報テーブルに格納する、シナリオ取得手段と、を備える。
【００１３】
また、前記ユースケースシナリオ作成支援システムは、前記既存ユースケースシナリオ記述情報テーブルから、ユースケースシナリオの情報と、このユースケースシナリオが属するユースケースとは異なる他ユースケースのユースケースシナリオとを読み出し、ここで読み出したユースケースシナリオ間でユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報の一致を判定し、前記各情報が全て一致したユースケースシナリオ群が一定数以上であれば、前記ユースケースと前記他ユースケースとが類似するユースケース群であるとして、当該ユースケース群の情報を出力インターフェイスに表示する、類似ケース特定手段を備えるとしてもよい。
【００１４】
また、前記ユースケースシナリオ作成支援システムの、前記既存ユースケースシナリオ記述情報テーブルにおいて、各ユースケースシナリオが含むユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報は、各情報を一意に特定可能なＩＤであり、前記類似ケース特定手段は、前記既存ユースケースシナリオ記述情報テーブルから読み出したユースケースシナリオ間でユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報の一致を判定するに際し、各情報のＩＤの一致を判定するものである、としてもよい。
【００１５】
また、前記ユースケースシナリオ作成支援システムにおいて、前記既存ユースケースシナリオ記述情報テーブルは、ユースケースシナリオ毎に該当ユースケースの適用対象業務の情報を格納するものであり、前記類似ケース特定手段は、前記ユースケース群の情報と共に、該当ユースケースの適用対象業務の情報を前記既存ユースケースシナリオ記述情報テーブルから読み出して出力インターフェイスに表示するものである、としてもよい。なお、該当ユースケースの適用対象業務の情報としては、例えば、対象年金制度、対象年金種別、の年金業務に関する情報を想定できる。
【００１６】
また、前記ユースケースシナリオ作成支援システムにおいて、所定の記憶装置から読み出すか入力インターフェイスから取得されたユースケースシナリオについて、その文字列が含むアクター名、対象情報、および動詞と、これらアクター名、対象情報、および動詞の前記文字列中での順列とに関し、前記ユースケースシナリオ記述テーブル中の各ユースケースシナリオパターンと照合し、前記ユースケースシナリオ記述テーブルが含むどのユースケースシナリオパターンとも一致しない場合、当該ユースケースシナリオの文字列が含むアクター名、対象情報、および動詞と、これらアクター名、対象情報、および動詞の前記文字列中での順列の情報とを含む、新たなユースケースシナリオパターンを前記ユースケースシナリオ記述テーブルに登録する、ユースケースシナリオ分析手段を備えるとしてもよい。
【００１７】
なお、前記ユースケースシナリオ記述テーブルは、ユースケースシナリオパターンとして、（１）「アクター」は「対象情報１」を「動詞」、（２）「アクター」は「対象情報１」に「対象情報２」を「動詞」、（３）「アクター」は「対象情報１」と「対象情報２」を「動詞」、（４）「アクター」は「対象情報１」から「対象情報２」を「動詞」、（５）「アクター」は「対象情報１」を入力として「対象情報２」を「動詞」、の５種類のパターンを備えていると想定する。
【００１８】
また、前記ユースケースシナリオ作成支援システムが、ユースケースシナリオから設計された既存のコンポーネントの情報を格納した既存コンポーネント情報テーブルと、ユースケースと当該ユースケースに属するユースケースシナリオと当該ユースケースシナリオのコンポーネントとの対応関係を定めたユースケース・コンポーネント紐付き情報テーブルと、を記憶する記憶装置と、所定ユースケースシナリオについてのコンポーネントの指定を入力インターフェイスで受け付けて、ここで指定を受け付けた指定コンポーネントの情報と、前記既存コンポーネント情報テーブルに格納されている既存コンポーネントの情報とを照合して、前記指定コンポーネントが含む所定文字列と同じ文字列を含んでいる既存コンポーネントを特定し、ここで特定した既存コンポーネントのリストを出力インターフェイスに表示し、前記リストの既存コンポーネント中からの共通コンポーネントの指定を入力インターフェイスで受け付けて、前記ユースケース・コンポーネント紐付き情報テーブルにおける前記所定ユースケースシナリオに対応付けて前記共通コンポーネントの情報を設定する、類似コンポーネント特定手段を備えるとしてもよい。
【００１９】
また、前記ユースケースシナリオ作成支援システムにおいて、前記類似コンポーネント特定手段は、前記類似ケース特定手段が前記各情報が全て一致したユースケースシナリオ群が一定数以上であると判定出来なかったユースケースＡと他ユースケースＢとのセットについて検知し、ユースケースＡに属するユースケースシナリオについてのコンポーネントａおよび他ユースケースＢに属するユースケースシナリオについてのコンポーネントｂの指定を入力インターフェイスで受け付けて、ここで指定を受け付けた指定コンポーネントａの情報と指定コンポーネントｂの情報とを照合して、前記指定コンポーネントａおよびｂの間で同じ所定文字列を含んでいるコンポーネントのセットを特定し、ここで特定したコンポーネントセットのリストを出力インターフェイスに表示し、前記リストのコンポーネントセットからの共通コンポーネントの指定を入力インターフェイスで受け付けて、前記ユースケース・コンポーネント紐付き情報テーブルにおける前記ユースケースＡおよびユースケースＢのユースケースシナリオに対応付けて前記共通コンポーネントの情報を設定する、としてもよい。
【００２０】
また、本発明のユースケースシナリオ作成支援方法は、ユースケースシナリオの作成支援を行うコンピュータが、ユースケースシナリオの構成要素たる、処理の実行主体であるアクター名、前記アクターが実行する処理の対象情報、および前記アクターが実行する処理内容に応じた動詞の各情報の選択肢を定めた選択肢テーブルと、ユースケースシナリオのパターン毎に、該当ユースケースシナリオを成す文字列における前記アクター名、対象情報、および動詞の組合せ情報を定めたユースケースシナリオ記述テーブルとを記憶装置に備えて、前記ユースケースシナリオ記述テーブルから、各ユースケースシナリオパターンの前記組合せ情報を読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブルから読み出し、ユースケースシナリオパターン毎に文字列中におけるアクター名、対象情報、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して出力インターフェイスに表示する、画面出力処理と、前記入力画面を通じて、ユースケースシナリオの選択指示と当該ユースケースシナリオにおけるアクター名、対象情報、および動詞の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオの情報を、既存ユースケースシナリオ記述情報テーブルに格納する、シナリオ取得処理と、を実行することを特徴とする。
【００２１】
また、本発明のユースケースシナリオ作成支援プログラムは、ユースケースシナリオの作成支援を行うべく、ユースケースシナリオの構成要素たる、処理の実行主体であるアクター名、前記アクターが実行する処理の対象情報、および前記アクターが実行する処理内容に応じた動詞の各情報の選択肢を定めた選択肢テーブルと、ユースケースシナリオのパターン毎に、該当ユースケースシナリオを成す文字列における前記アクター名、対象情報、および動詞の組合せ情報を定めたユースケースシナリオ記述テーブルとを記憶装置に備えるコンピュータに、前記ユースケースシナリオ記述テーブルから、各ユースケースシナリオパターンの前記組合せ情報を読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブルから読み出し、ユースケースシナリオパターン毎に文字列中におけるアクター名、対象情報、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して出力インターフェイスに表示するステップと、前記入力画面を通じて、ユースケースシナリオの選択指示と当該ユースケースシナリオにおけるアクター名、対象情報、および動詞の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオの情報を、既存ユースケースシナリオ記述情報テーブルに格納するステップと、を実行させるプログラムである。
【００２２】
その他、本願が開示する課題、及びその解決方法は、発明の実施の形態の欄、及び図面により明らかにされる。
【発明の効果】
【００２３】
本発明によれば、ユースケースシナリオやコンポーネントの作成支援を行い、共通化候補となる類似ユースケースやコンポーネントが精度良好に検索可能となる。
【発明を実施するための最良の形態】
【００２４】
−−−システム構成−−−
以下に本発明の実施形態について図面を用いて詳細に説明する。図１は本実施形態におけるユースケースシナリオ作成支援システムシステム１００の構成図である。本実施形態におけるユースケースシナリオ作成支援システム１００（以下、システム１００）は、  ユースケースシナリオの作成支援を行うコンピュータシステムである。こうした前記システム１００は、ユースケースシナリオ作成支援方法を実行する機能を実現すべく不揮発性メモリなどの記憶装置１０１に格納されたプログラム１０２をメモリ１０３に読み出し、演算装置たるＣＰＵ１０４により実行する。また、前記システム１００は、コンピュータ装置が一般に備えている各種ボタン類、キーボードなどの入力インターフェイス１０５や、ＬＥＤやディスプレイなどの出力インターフェイス１０６、ならびに、利用者が使用する操作端末２００など外部装置との通信を担う通信装置１０７などを有している。
【００２５】
続いて、前記システム１００が例えばプログラム１０２に基づき構成・保持する機能部につき説明を行う。なお、前記システムは、既存ユースケースシナリオ記述情報テーブル１２６、ユースケースシナリオ記述テーブル１２７、選択肢テーブル１２８を記憶装置１０１に備えるか、ネットワーク１４０を介して利用可能（前記各テーブルがネットワーク上の装置内にある）であるとする。
【００２６】
前記システム１００は、ユースケースシナリオ記述テーブル１２７から、各ユースケースシナリオパターンの組合せ情報を読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブル１２８から読み出し、ユースケースシナリオパターン毎に文字列中におけるアクター名、対象情報、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して出力インターフェイス１０６に表示する、画面出力手段１１０を備える。
【００２７】
また、前記システム１００は、前記入力画面を通じて、ユースケースシナリオの選択指示と当該ユースケースシナリオにおけるアクター名、対象情報、および動詞の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオの情報を、既存ユースケースシナリオ記述情報テーブル１２６に格納する、シナリオ取得手段１１１を備える。
【００２８】
また、前記システム１００は、前記既存ユースケースシナリオ記述情報テーブル１２６から、ユースケースシナリオの情報と、このユースケースシナリオが属するユースケースとは異なる他ユースケースのユースケースシナリオとを読み出し、ここで読み出したユースケースシナリオ間でユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報の一致を判定し、前記各情報が全て一致したユースケースシナリオ群が一定数以上であれば、前記ユースケースと前記他ユースケースとが類似するユースケース群であるとして、当該ユースケース群の情報を出力インターフェイス１０６に表示する、類似ケース特定手段１１２を備える。
【００２９】
なお、前記既存ユースケースシナリオ記述情報テーブル１２６において、各ユースケースシナリオが含むユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報は、各情報を一意に特定可能なＩＤであるとすれば好適である。この場合、前記類似ケース特定手段１１２は、前記既存ユースケースシナリオ記述情報テーブル１２６から読み出したユースケースシナリオ間でユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報の一致を判定するに際し、各情報のＩＤの一致を判定することとなる。
【００３０】
また、前記既存ユースケースシナリオ記述情報テーブル１２６は、ユースケースシナリオ毎に該当ユースケースの適用対象業務の情報を格納するものであるとしてもよい。この場合、前記類似ケース特定手段１１２は、前記ユースケース群の情報と共に、該当ユースケースの適用対象業務の情報を前記既存ユースケースシナリオ記述情報テーブル１２６から読み出して出力インターフェイス１０６に表示するものとすれば好適である。なお、該当ユースケースの適用対象業務の情報としては、例えば、対象年金制度、対象年金種別、の年金業務に関する情報を想定できる。
【００３１】
また、前記システム１００は、所定の記憶装置から読み出すか入力インターフェイス１０５から取得されたユースケースシナリオについて、その文字列が含むアクター名、対象情報、および動詞と、これらアクター名、対象情報、および動詞の前記文字列中での順列とに関し、前記ユースケースシナリオ記述テーブル１２７中の各ユースケースシナリオパターンと照合し、前記ユースケースシナリオ記述テーブル１２７が含むどのユースケースシナリオパターンとも一致しない場合、当該ユースケースシナリオの文字列が含むアクター名、対象情報、および動詞と、これらアクター名、対象情報、および動詞の前記文字列中での順列の情報とを含む、新たなユースケースシナリオパターンを前記ユースケースシナリオ記述テーブル１２７に登録する、ユースケースシナリオ分析手段１１３を備えるとしてもよい。
【００３２】
なお、前記ユースケースシナリオ記述テーブル１２７は、ユースケースシナリオパターンとして、（１）「アクター」は「対象情報１」を「動詞」、（２）「アクター」は「対象情報１」に「対象情報２」を「動詞」、（３）「アクター」は「対象情報１」と「対象情報２」を「動詞」、（４）「アクター」は「対象情報１」から「対象情報２」を「動詞」、（５）「アクター」は「対象情報１」を入力として「対象情報２」を「動詞」、の５種類のパターンを備えていると想定する。
【００３３】
なお、これまで示した前記システム１００における各機能部１１０〜１１３は、ハードウェアとして実現してもよいし、メモリやＨＤＤ（Hard Disk Drive）などの適宜な記憶装置に格納したプログラムとして実現するとしてもよい。この場合、システム１００を構成する各装置のＣＰＵがプログラム実行に合わせて記憶装置より該当プログラムをメモリに読み出して、これを実行することとなる。
【００３４】
−−−テーブル構造例−−−
次に、本実施形態におけるシステム１００が利用するテーブルの構造について説明する。図２は、本実施形態における（ａ）既存ユースケース情報テーブル１２５、（ｂ）既存ユースケースシナリオ記述情報テーブル１２６、（ｃ）ユースケースシナリオ記述テーブル１２７、（ｄ）選択肢テーブル１２８の各データ構成例を示す図である。
【００３５】
前記既存ユースケース情報テーブル１２５は、ユースケースシナリオから構成されるユースケースの情報を格納するテーブルであり、システム１００に登録されたユースケース情報を識別するためのユースケースＩＤをキーとしてレコードが生成されている。前記ユースケースＩＤは、システム１００におけるすべてのユースケースに関して一意に設定される。こうした既存ユースケース情報テーブル１２５は、ユースケースＩＤをキーとして、システム名、ユースケース名、ユースケース概要、年金制度及び年金種別の各情報を対応付けしたレコードの集合体となっている。なお、「システム名」は、ユースケースが登録されているシステム名を示し、「ユースケース名」には、ユースケースの名称を文字列で格納し、「ユースケース概要」は、ユースケースが行う処理の概要を示し、「年金制度」は、ユースケースが処理対象とする年金制度を示し、「年金種別」は、ユースケースが処理対象とする年金種別を示す。
【００３６】
また、前記既存ユースケースシナリオ記述情報テーブル１２６は、文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオの情報を格納するテーブルである。この既存ユースケースシナリオ記述情報テーブル１２６は、例えば、ユースケースシナリオ記述が属するユースケースを識別する情報であるユースケースＩＤ（既存ユースケース情報テーブル１２５のものと関係づけ）をキーとして、ユースケースシナリオＩＤ（ユースケースシナリオ記述に対して一意に設定）、ユースケースシナリオ順位（ユースケースシナリオ記述の、ユースケース内での順番。設計書においては、ユースケースシナリオ順位の順番に従って、ユースケースシナリオ記述が記載されていることを表す）、ユースケースシナリオパターンＩＤ、アクター名ＩＤ、情報名ＩＤ１、情報名ＩＤ２、情報名ＩＤ３及び動詞ＩＤが、対応付けされたレコードの集合体となっている。
【００３７】
なお、前記ユースケースシナリオパターンＩＤは、ユースケースシナリオ記述の文章記述のパターンを識別する情報を示し、アクター名ＩＤは、ユースケースシナリオ記述のアクター名を識別する情報を示し、情報名ＩＤ１は、ユースケースシナリオ記述の中に記載する１番目の対象情報の情報名を識別するＩＤを示し、情報名ＩＤ２は、ユースケースシナリオ記述の中に記載する２番目の対象情報の情報名を識別するＩＤを示し、情報名ＩＤ３は、ユースケースシナリオ記述の中に記載する３番目の対象情報の情報名を識別するＩＤを示し、動詞ＩＤは、ユースケースシナリオ記述に記載する動詞を識別するＩＤを示す。ここで、「情報名２」には、ユースケースシナリオ記述中に記載が必要となる情報名が１つの場合は情報を格納しない。同様に、「情報名３」は、ユースケースシナリオ記述中に記載が必要となる情報名が１つまたは２つの場合は情報を格納しない。
【００３８】
また、上述のように前記既存ユースケースシナリオ記述情報テーブル１２６において、各ユースケースシナリオが含むユースケースシナリオパターン、アクター名、対象情報、および動詞の各情報は、各情報を一意に特定可能なＩＤとなっている。
【００３９】
また、既存ユースケースシナリオ記述情報テーブル１２６は、ユースケースシナリオ毎に該当ユースケースの適用対象業務の情報を格納すると好適であるが、本実施形態の例では、この適用対象業務の情報を、前記既存ユースケース情報テーブル１２５において、「年金制度」、「年金種別」として格納している。前記既存ユースケース情報テーブル１２５は、前記既存ユースケースシナリオ記述情報テーブル１２６とユースケースＩＤをキーに結びつけられるリレーショナルデータベースであるから、両者は一体のテーブルとみなすこともできる。
【００４０】
また、前記ユースケースシナリオ記述テーブル１２７は、ユースケースシナリオのパターン毎に、該当ユースケースシナリオを成す文字列における前記アクター名、対象情報、および動詞の組合せ情報を定めたテーブルである。このユースケースシナリオ記述テーブル１２７は、ユースケースシナリオ記述のパターンを識別するユースケースシナリオパターンＩＤ（すべてのユースケースシナリオのパターンに対して一意に設定されている）をキーにして、シナリオ文字列を対応付けしたレコードの集合体となっている。前記シナリオ文字列は、アクター名、情報名及び動詞の情報を含むものであり、これら情報は、それぞれ選択肢テーブル１２８を構成するアクター名テーブル１２８ａ、情報名テーブル１２８ｂ及び動詞テーブル１２８ｃの情報を用いて置き換え可能なように、例えば、"＜アクター＞"のように前記文字列中で表現されている。
【００４１】
また、前記選択肢テーブル１２８は、ユースケースシナリオの構成要素たる、処理の実行主体であるアクター名、前記アクターが実行する処理の対象情報、および前記アクターが実行する処理内容に応じた動詞の各情報の選択肢を定めたテーブルである。この選択肢テーブル１２８は、本実施形態において、アクター名テーブル１２８ａ、情報名テーブル１２８ｂ、動詞テーブル１２８ｃから構成されている。
【００４２】
前記アクター名テーブル１２８ａは、ユースケースシナリオ記述で使用されるアクター名を識別するアクターＩＤ（すべてのアクター名に対して一意に設定）をキーとして、アクター名が対応付けしたレコードの集合体となっている。
【００４３】
また、前記情報名テーブル１２８ｂは、ユースケースシナリオ記述で使用される情報名（対象情報）を識別する情報名ＩＤ（すべての情報名に対して一意に設定）をキーとして、情報名が対応付けしたレコードの集合体となっている。
【００４４】
また、前記動詞テーブル１２８ｃは、ユースケースシナリオ記述で使用される動詞を識別する動詞ＩＤ（すべての動詞に対して一意に設定）をキーとして、動詞を対応付けしたレコードの集合体となっている。
【００４５】
−−−処理フロー例１−−−
以下、本実施形態におけるユースケースシナリオ作成支援方法の実際手順について、図に基づき説明する。なお、以下で説明するユースケースシナリオ作成支援方法に対応する各種動作は、前記システム１００がメモリに読み出して実行するプログラムによって実現される。そしてこのプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。
【００４６】
図３は、本実施形態のユースケースシナリオ作成支援方法の処理手順例１を示すフロー図であり、図６は、本実施形態の入力画面例を示す図、また図７は、本実施形態の検索結果画面例を示す図である。ここでは、ある利用者がネットワーク１４０を介してシステム１００に接続された操作端末２００を用いてユースケースシナリオ作成する際に、システム１００が作成支援を行う処理について説明する。この場合、前記システム１００の画面出力手段１１０は、例えば、ユースケースの選択用画面データ（システム１００の記憶装置１０１に格納）を前記操作端末２００に送信し、ユースケースの選択指示を受付ける（ｓ１００）。前記選択用画面は、例えば、ユースケースの適用対象（保険制度、年金種別）を選択可能なインターフェイスが含まれることが想定される。
【００４７】
前記画面出力手段１１０は、前記選択用画面を介して操作端末２００から得たユースケースの選択指示（ユースケースの適用対象の情報を含む）に基づき、前記既存ユースケース情報テーブル１２５において前記適用対象に該当するユースケースを特定する（ｓ１０１）。そして前記画面出力手段１１０は、ここで特定したユースケースに対応付けされたユースケースシナリオパターンを、前記ユースケースシナリオ記述テーブル１２７から、読取る（ｓ１０２）。また、ここで読み取った各ユースケースシナリオパターンの組合せ情報を同じく前記ユースケースシナリオ記述テーブル１２７から読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブル１２８から読み出す（ｓ１０３）。
【００４８】
前記画面出力手段１１０は、図６の入力画面６００に示すように、複数のユースケースシナリオパターン毎に文字列中におけるアクター名、対象情報、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して操作端末２００に送信する（ｓ１０４）。この入力画面６００は、例えば、操作端末２００において、前記ユースケースシナリオパターンの中から利用者所望のシナリオパターンを選択し、またアクター名、対象情報、および動詞の選択肢の中から選択するインターフェイスとなっている。こうした選択用のインターフェイスとしては、例えばプルダウンやラジオボタンを想定できる。
【００４９】
図６の例では、利用者が、シナリオパターン「パターン３」、アクター名「システム」、情報名１「請求書番号」、情報名２「住民票番号」、動詞「突合する」を選択しているから、作成されるユースケースシナリオとしては、「システムは請求書番号と住民票番号を突合する」となる。
【００５０】
前記システム１００のシナリオ取得手段１１１は、前記入力画面６００を通じ操作端末２００から、ユースケースシナリオパターンの選択指示：「パターン３」と当該ユースケースシナリオパターンにおけるアクター名：「システム」、対象情報：情報名１「請求書番号」、情報名２「住民票番号」、および動詞：「突合する」の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、対象情報、および動詞の組合せからなるユースケースシナリオ：「システムは請求書番号と住民票番号を突合する」の情報を取得し、既存ユースケースシナリオ記述情報テーブル１２６に格納する（ｓ１０５）。
【００５１】
−−−処理フロー例２−−−
図４は、本実施形態のユースケースシナリオ作成支援方法の処理手順例２を示すフロー図であり、図７は本実施形態の検索結果画面例を示す図である。次に、類似ユースケースの検索処理について説明する。この場合、前記システム１００の類似ケース特定手段１１２は、まず、前記既存ユースケース情報テーブル１２５から、例えば、登録順などに従ってユースケースを１つ取り出す（ｓ２００）。ここで取り出したユースケースを、ユースケース（Ａ）とする。また更に、前記類似ケース特定手段１１２は、前記既存ユースケース情報テーブル１２５の中から、前記ユースケース（Ａ）とは異なる他のユースケースを１つ取り出す（ｓ２０１）。これをユースケース（Ｂ）とする。
【００５２】
次に前記類似ケース特定手段１１２は、既存ユースケースシナリオ記述情報テーブル１２６から、ユースケース（Ａ）のユースケースシナリオをユースケースシナリオ順位の順番に従って１つ取り出す（ｓ２０２）。これをユースケースシナリオ（ａ）とする。また、前記類似ケース特定手段１１２は、既存ユースケースシナリオ記述情報テーブル１２６から、ユースケース（Ｂ）のユースケースシナリオをユースケースシナリオ順位の順番に従って１つ取り出す（ｓ２０３）。これをユースケースシナリオ（ｂ）とする。
【００５３】
前記類似ケース特定手段１１２は、前記ユースケースシナリオ（ａ）、（ｂ）について、ユースケースシナリオパターンＩＤ、アクター名ＩＤ、情報名ＩＤ１、情報名ＩＤ２、情報名ＩＤ３及び動詞ＩＤがすべて等しいか照合する（ｓ２０４）。こうしたユースケースシナリオ（ａ）との照合処理を、ユースケース（Ｂ）のユースケースシナリオのすべてについて処理した場合（ｓ２０５：Ｙｅｓ）、処理をステップｓ２０６に移す。他方、ユースケース（Ｂ）のユースケースシナリオに関して未処理のものが存在する場合（ｓ２０５：Ｎｏ）、処理をステップｓ２０３に戻す。
【００５４】
前記ステップｓ２０３からｓ２０５における、ユースケースシナリオ（ａ）に対するユースケース（Ｂ）の全てのユースケースシナリオの照合処理にて、前記各ＩＤらが一致するユースケースシナリオがユースケース（Ｂ）に存在した場合、前記ユースケースシナリオ（ａ）とユースケース（Ｂ）の所定ユースケースシナリオとの類似値を１とする（ｓ２０６）。他方、照合処理にて、前記各ＩＤらが一致するユースケースシナリオがユースケース（Ｂ）に存在しなかった場合、ユースケースシナリオ（ａ）とユースケース（Ｂ）との類似値を０とする。
【００５５】
前記ユースケースシナリオ（ａ）以外の、ユースケース（Ａ）のユースケースシナリオについてもすべて前記照合処理をした場合（ｓ２０７：Ｙｅｓ）、処理をステップｓ２０８に処理を移す。一方、未処理のユースケースシナリオが前記ユースケース（Ａ）について残されている場合（ｓ２０７：Ｎｏ）、処理をステップｓ２０２に戻す。
【００５６】
前記類似ケース特定手段１１２は、ユースケースシナリオ同士の照合で一致するものがあった前記ユースケース（Ａ）とユースケース（Ｂ）の類似値を、以下の計算式を用いて計算する（ｓ２０８）。  
（ユースケース(A)の全ユースケースシナリオの類似値の合計）×２÷（ユースケース(A)とユースケース(B)のユースケースシナリオ数の和）＝類似値
【００５７】
類似ケース特定手段１１２は、こうした計算式で算定された類似値のデータを、該当ユースケースのセット毎に記憶装置１０１にて格納しておく。
【００５８】
類似ケース特定手段１１２は、既存ユースケース情報テーブル１２５におけるすべてのユースケースの組み合わせについて処理を実施した場合（ｓ２０９：Ｙｅｓ）、ステップｓ２１０に処理を移す。他方、未処理のユースケースの組み合わせが残されている場合（ｓ２０９：Ｎｏ）、処理をステップｓ２００に戻す。
【００５９】
次に類似ケース特定手段１１２は、前記類似値を記憶装置１０１からメモリ１０３に読み出して、類似値が高い順に所定数だけ、ユースケース群（互いに類似すると判定したユースケースの組）を特定し、このユースケース群の情報を前記操作端末２００に送信する（ｓ２１０）。類似ユースケース検索結果の表示は、図７の検索結果画面７００に例示するように、ユースケース群を構成する各ユースケースの情報欄７０１において、アクター名、ユースＩＤ、ユースケース名、ユースケース概要、年金制度、年金種別の各情報、およびユースケースシナリオが表示され、更には、類似値欄７０２にて該当ユースケース群の類似値が表示される。
【００６０】
操作端末２００では前記検索結果画面７００をシステム１００から受信して、ディスプレイ装置などの出力インターフェイスに表示し、利用者の閲覧に供することとなる。
【００６１】
−−−処理フロー例３−−−
図５は、本実施形態のユースケースシナリオ作成支援方法の処理手順例３を示すフロー図である。次に、ユースケースシナリオパターンの新規登録処理について説明する。この場合、前記システム１００のユースケースシナリオ分析手段１１３は、まず、既存ユースケース情報テーブル１２５の中から、当該パターン解析を実施していないユースケースを１つ取り出す（ｓ３００）。そしてユースケースシナリオ分析手段１１３は、前記既存ユースケースシナリオ記述情報テーブル１２６から、前記ステップｓ３００で取り出したユースケースのユースケースシナリオを、ユースケースシナリオ順位の順番に従って１つ取り出す（ｓ３０１）。
【００６２】
また、ユースケースシナリオ分析手段１１３は、前記ステップｓ３０１で取り出したユースケースシナリオに対し、検索位置を１文字目に設定する（ｓ３０２）。そして、ユースケースシナリオの検索位置から、アクター名テーブル１２８ａのアクター名と一致するものを検索する（ｓ３０３）。そして、前記検索位置を、前記ステップｓ３０３で一致したユースケースシナリオ中のアクター名の１文字後に設定する（ｓ３０４）。
【００６３】
続いて前記ユースケースシナリオ分析手段１１３は、ユースケースシナリオの検索位置以降の文字列を対象として、情報名テーブル１２８ｂの中で一致するものを検索する（ｓ３０５）。この検索の結果、一致した情報名が複数あった場合には、ユースケースシナリオの中で一致した位置が最も前である情報名を一致したものとみなす（ｓ３０６）。
【００６４】
更にユースケースシナリオ分析手段１１３は、前記検索位置を前記ステップｓ３０６で一致したユースケースシナリオ中の情報名の１文字後に設定する（ｓ３０７）。このユースケースシナリオの検索位置以降に、前記情報名テーブル１２８ｂの情報名に一致する文字列が存在する場合（ｓ３０８：Ｙｅｓ）には、前記ステップｓ３０６に処理を戻す。他方、前記検索位置以降に、前記情報名テーブル１２８ｂの情報名に一致する文字列が存在しない場合（ｓ３０８：Ｎｏ）には、前記ステップｓ３０９に処理を移す。
【００６５】
次に、前記ユースケースシナリオ分析手段１１３は、ユースケースシナリオの検索位置以降の文字列を対象として、動詞テーブル１２８ｃの中で一致するものを検索する（ｓ３０９）。前記ユースケースシナリオ分析手段１１３は、ステップｓ３０１からｓ３０９の一連の処理によって、ユースケースシナリオ内のアクター名、情報名、動詞を特定する。  次に、ユースケースシナリオ分析手段１１３は、前記ユースケースシナリオ内のアクター名（例えば、「システムが」）に対して「＜アクター＞」、情報名（例えば、「住民票番号」）に対して文字列中の順番により「＜情報名１＞」または「＜情報名２＞」または「＜情報名３＞」、動詞（例えば、「突合する」）に対し「＜動詞＞」にそれぞれ置き換えを行う（ｓ３１０）。これによりユースケースシナリオ分析手段１１３は、ユースケースシナリオを、「＜アクター＞は＜情報名１＞を＜動詞＞」といったパターン文字列に変換するのである。  続いて前記ユースケースシナリオ分析手段１１３は、前記ステップｓ３１０でパターン化したユースケースシナリオの情報を、前記ユースケースシナリオ記述テーブル１２７の中の各ユースケースシナリオパターン（のシナリオ文字列）と比較し、前記ユースケースシナリオ記述テーブル１２７中に無ければ、新規のシナリオパターン（のシナリオ文字列）として、前記ユースケースシナリオ記述テーブル１２７に格納する（ｓ３１１）。
【００６６】
また、ユースケースシナリオ分析手段１１３は、前記ステップｓ３００で取り出したユースケースの中で、未処理のユースケースシナリオが存在する場合（ｓ３１２：Ｙｅｓ）、処理を前記ステップｓ３０１に戻す。他方、未処理のユースケースシナリオが存在しない場合（ｓ３１２：Ｎｏ）、処理をステップｓ３１３に移す。
【００６７】
前記ユースケースシナリオ分析手段１１３は、前記既存ユースケース情報テーブル１２５の中で、ユースケースシナリオ分析手段１１３による処理を行っていないユースケースが存在する場合（ｓ３１３：Ｙｅｓ）、処理をステップｓ３００に戻す。他方、ユースケースシナリオ分析手段１１３による処理を行っていないユースケースが存在しない場合（ｓ３１３：Ｎｏ）、処理を終了する。
【００６８】
本実施形態によれば、ユースケースシナリオの記述が、システム側が予め用意した選択肢（シナリオパターン、アクター名、対象情報、動詞）から構成されるため、設計者毎に記述が不揃いになることがなくなり、類似ユースケースの正確な検索が効率的に実行可能となる。特に年金システムのような大規模なシステムにおいては、多くの設計者が設計を行って多数のユースケースシナリオが作成される環境であるため、前記の効果は大きい。
【００６９】
また、類似したユースケースの検索に際して、ユースケース間で照合する情報がＩＤや番号のみとすることも可能であり（アクター名、対象情報、動詞等をＩＤ化）、従来の方法による文字列マッチングの処理が発生せず、より高速な検索が可能となる。特に、年金システムのような大規模システムにおいては、ユースケースシナリオ記述およびユースケースの数が膨大となるため、前記の効果が大きい。
【００７０】
また、類似したユースケースの情報を画面表示する際、例えば、ユースケースを用いたシステムの適用対象である年金業務に関係する設計情報を表示することで、人間による共通化候補の判断がより容易になる。特に、年金システムのような、複雑な法律に基づいた業務仕様を扱うシステムにおいては、ユースケースの共通化を検討する際に、ユースケースシナリオ記述文以外の情報を総合的に勘案する必要があるため、前記の効果が大きい。
【００７１】
−−−他の実施例におけるシステム構成−−−
続いて、ユースケースシナリオから設計されるコンポーネントの共通化をシステム１００が支援する処理について説明する。図８は、他の実施形態におけるユースケースシナリオ作成支援システムの全体構成図である。ここでシステム１００は、上記各手段１１０〜１１３を同様に備えているが、機能として同じなのでここでは説明を省略する。この実施例におけるシステム１００が新たに備えるのは以下の記憶装置ならびに手段となる。
【００７２】
この実施例における前記システム１００は、ユースケースシナリオから設計された既存のコンポーネントの情報を格納した既存コンポーネント情報テーブル１２９と、ユースケースと当該ユースケースに属するユースケースシナリオと当該ユースケースシナリオのコンポーネントとの対応関係を定めたユースケース・コンポーネント紐付き情報テーブル１３１と、を記憶する記憶装置１０１を備える。
【００７３】
この場合、前記システム１００は、所定ユースケースシナリオについてのコンポーネントの指定を入力インターフェイス１０５で受け付けて、ここで指定を受け付けた指定コンポーネントの情報と、前記既存コンポーネント情報テーブル１２９に格納されている既存コンポーネントの情報とを照合して、前記指定コンポーネントが含む所定文字列と同じ文字列を含んでいる既存コンポーネントを特定し、ここで特定した既存コンポーネントのリストを出力インターフェイス１０６に表示し、前記リストの既存コンポーネント中からの共通コンポーネントの指定を入力インターフェイス１０５で受け付けて、前記ユースケース・コンポーネント紐付き情報テーブル１３１における前記所定ユースケースシナリオに対応付けて前記共通コンポーネントの情報を設定する、類似コンポーネント特定手段１１４を備える。
【００７４】
また、前記類似コンポーネント特定手段１１４は、前記類似ケース特定手段１１２が前記各情報が全て一致したユースケースシナリオ群が一定数以上であると判定出来なかったユースケースＡと他ユースケースＢとのセットについて検知し、ユースケースＡに属するユースケースシナリオについてのコンポーネントａおよび他ユースケースＢに属するユースケースシナリオについてのコンポーネントｂの指定を入力インターフェイス１０５で受け付けて、ここで指定を受け付けた指定コンポーネントａの情報と指定コンポーネントｂの情報とを照合して、前記指定コンポーネントａおよびｂの間で同じ所定文字列を含んでいるコンポーネントのセットを特定し、ここで特定したコンポーネントセットのリストを出力インターフェイス１０６に表示し、前記リストのコンポーネントセットからの共通コンポーネントの指定を入力インターフェイス１０５で受け付けて、前記ユースケース・コンポーネント紐付き情報テーブル１３１における前記ユースケースＡおよびユースケースＢのユースケースシナリオに対応付けて前記共通コンポーネントの情報を設定する、としてもよい。
【００７５】
なお、ここで示した前記システム１００における類似コンポーネント特定手段１１４は、前記手段１１０〜１１３と同様に、ハードウェアとして実現してもよいし、メモリやＨＤＤ（Hard Disk Drive）などの適宜な記憶装置に格納したプログラムとして実現するとしてもよい。この場合、システム１００を構成する各装置のＣＰＵがプログラム実行に合わせて記憶装置より該当プログラムをメモリに読み出して、これを実行することとなる。
【００７６】
−−−他の実施例におけるテーブル構造例−−−
ここでは他の実施例におけるシステム１００が、上記テーブル１２５〜１２８の他に、記憶装置１０１に備えるテーブルのデータ構造例について説明する。図９は、本実施形態における（ａ）既存コンポーネント情報テーブル１２９、（ｂ）コンポーネントパターンテーブル１３０、（ｃ）ユースケース・コンポーネント紐付き情報テーブル１３１の各データ構成例を示す図である。
【００７７】
ここで前記既存コンポーネント情報テーブル１２９は、ユースケースシナリオから設計された既存のコンポーネントの情報を格納するテーブルであり、システム１００に登録されたコンポーネント情報を識別するためのコンポーネントＩＤをキーとしてレコードが生成されている。前記コンポーネントＩＤは、システム１００におけるすべてのコンポーネントに関して一意に設定される。こうした既存コンポーネント情報テーブル１２９は、コンポーネントＩＤをキーとして、コンポーネント名、コンポーネントパターンＩＤ、情報名ＩＤ、動詞ＩＤの各情報を対応付けしたレコードの集合体となっている。
【００７８】
また、前記コンポーネントパターンテーブル１３０は、前記既存コンポーネント情報テーブル１２９と前記コンポーネントパターンＩＤをキーにして一体となっていてもよいが（請求項中の構成）、本実施形態ではコンポーネントパターンＩＤをキーに互いに結びつくリレーショナルデータベースとした。このコンポーネントパターンテーブル１３０は、コンポーネントにおける文字列の構成パターンの情報を格納するテーブルであり、コンポーネントパターンＩＤをキーにして、コンポーネントを構成する文字列、例えば「＜情報名１＞を＜動詞＞」、「＜情報名１＞に＜情報名２＞を＜動詞＞」、「＜情報名１＞と＜情報名２＞を＜動詞＞」、といった文字列パターンの情報を対応付けしたレコードの集合体となっている。
【００７９】
また、前記ユースケース・コンポーネント紐付き情報テーブル１３１は、ユースケースと当該ユースケースに属するユースケースシナリオと当該ユースケースシナリオのコンポーネントとの対応関係を定めたテーブルである。システム１００に登録されたユースケース情報を識別するためのユースケースＩＤをキーとしてレコードが生成されている。こうしたユースケース・コンポーネント紐付き情報テーブル１３１は、ユースケースＩＤをキーとして、該当ユースケースに属するユースケースシナリオのＩＤ、および前記ユースケースシナリオに対応付けされたコンポーネントのＩＤの各情報を対応付けしたレコードの集合体となっている。
【００８０】
−−−他の実施例における処理フロー例１−−−
続いて、この実施例におけるユースケースシナリオ作成支援方法の処理手順例を示す。図１０は他の実施形態のユースケースシナリオ作成支援方法の処理手順例１を示すフロー図である。この場合、前記システム１００の画面出力手段１１０は、例えば、ユースケースの選択用画面データ（システム１００の記憶装置１０１に格納）を前記操作端末２００に送信し、ユースケースの選択指示を受付ける（ｓ１０００）。前記選択用画面としては、例えば、図１２の入力画面１２００を想定でき、ユースケースの適用対象（保険制度、年金種別）を選択可能なインターフェイスが含まれることが想定される。図１２の例では、ユースケースとして「年金分割情報の送受信を指示する」がプルダウンメニューにて利用者から選択された状況を示している。
【００８１】
前記画面出力手段１１０は、前記選択用画面を介して操作端末２００から得たユースケースの選択指示（ユースケースの適用対象の情報を含む）に基づき、前記既存ユースケース情報テーブル１２５において前記適用対象に該当するユースケースを特定する（ｓ１００１）。そして前記画面出力手段１１０は、ここで特定したユースケースに対応付けされたユースケースシナリオパターンを、前記ユースケースシナリオ記述テーブル１２７から、読取る（ｓ１００２）。また、ここで読み取った各ユースケースシナリオパターンの組合せ情報を同じく前記ユースケースシナリオ記述テーブル１２７から読み出し、前記組合せ情報に定められたアクター名、対象情報、および動詞のそれぞれについての選択肢を前記選択肢テーブル１２８から読み出す（ｓ１００３）。
【００８２】
前記画面出力手段１１０は、図１２の入力画面１２００に示すように、複数のユースケースシナリオパターン毎に文字列中におけるアクター名、情報名、および動詞の選択を前記選択肢の範囲で受付ける入力画面のデータを生成して操作端末２００に送信する（ｓ１００４）。この入力画面１２００は、例えば、操作端末２００において、前記ユースケースシナリオパターンの中から利用者所望のシナリオパターン（図中：パターン１〜５）を選択し、またアクター名、情報名、および動詞の選択肢の中から選択するインターフェイスとなっている。こうした選択用のインターフェイスとしては、例えばプルダウンやラジオボタンを想定できる。
【００８３】
図１２の例では、利用者が、ユースケースシナリオ：「新規追加」、シナリオパターン：「パターン１」、アクター名「システム」、情報名１「年金給付処理結果情報」、動詞「編集する」を選択しているから、作成されるユースケースシナリオとしては、既存のユースケースシナリオではなく新規のものであり、その内容は「システムは年金給付処理結果情報を編集する」となる。
【００８４】
続いて、前記システム１００のシナリオ取得手段１１１は、前記入力画面１２００を通じ操作端末２００から、ユースケースシナリオパターンの選択指示：「パターン１」と当該ユースケースシナリオパターンにおけるアクター名：「システム」、対象情報：情報名１「年金給付処理結果情報」、および動詞：「編集する」の選択指示を受け付けて、当該選択指示により前記文字列中で特定されるアクター名、情報名、および動詞の組合せからなるユースケースシナリオ：「システムは年金給付処理結果情報を編集する」の情報を取得し、既存ユースケースシナリオ記述情報テーブル１２６に格納する（ｓ１００５）。
【００８５】
次に、前記システム１００の類似コンポーネント特定手段１１４は、上記ステップｓ１０５までで、所定ユースケースシナリオ：「システムは年金給付処理結果情報を編集する」の情報を取得しているから、このユースケースシナリオについてのコンポーネントの指定を前記入力画面１２００（入力インターフェイス１０５）で受け付ける（ｓ１００６）。図１２の入力画面１２００の例では、ユースケースシナリオの情報から、「年金給付処理結果情報を編集する」とのコンポーネントのデータをシステム側で抽出し、これを表示欄１２５０で表示している。利用者はこの表示欄１２５０におけるコンポーネントの情報を認識し、変更が必要と判断すれば「コンポーネント情報変更／表示」ボタン１２５１を押下して、コンポーネントのデータの編集作業を実行する。一方、システム側では、前記「コンポーネント情報変更／表示」ボタン１２５１の押下を感知して、前記表示欄１２５０での編集作業を受付けるとすればよい（つまり、ボタン１２５１の押下時にのみ表示欄１２５０でのテキストデータ等の書き込みや削除、移動といった編集作業を受付ける）。
【００８６】
他方、「年金給付処理結果情報を編集する」とのコンポーネントのデータを利用者が受け入れる場合、決定ボタン１２５２を利用者が押下する。すると前記類似コンポーネント特定手段１１４は、このボタン押下をもって、ユースケースシナリオについてのコンポーネントの指定を受け付けたとする。
【００８７】
続いて、前記類似コンポーネント特定手段１１４は、前記ステップｓ１００６で指定を受け付けた指定コンポーネントの情報と、前記既存コンポーネント情報テーブル１２９に格納されている既存コンポーネントの情報とを照合して、前記指定コンポーネントが含む所定文字列と同じ文字列を含んでいる既存コンポーネントを特定する（ｓ１００７）。上記の例であれば、前記類似コンポーネント特定手段１１４は、「年金給付処理結果情報を編集する」とのコンポーネントの情報と、既存コンポーネント情報テーブル１２９に格納されている既存コンポーネントの情報とを照合し、情報名として「年金給付処理結果情報」、動詞として「編集する」、の情報を含む既存コンポーネントを特定することとなる。
【００８８】
こうして前記類似コンポーネント特定手段１１４が特定した既存コンポーネントの情報を表示した画面例として、図１３の検索結果画面例１３００を示す。この画面例であれば、前記類似コンポーネント特定手段１１４が、コンポーネントＩＤ“CPS00000001”の既存コンポーネントと、コンポーネントＩＤ“CPS00000002”の既存コンポーネントの２つを特定した状況である。こうして、前記類似コンポーネント特定手段１１４は、前記ステップｓ１００７で特定した既存コンポーネントのリスト１３１０を前記検索結果画面例１３００（出力インターフェイス１０６）に表示する。
【００８９】
また前記類似コンポーネント特定手段１１４は、前記リスト１３１０の既存コンポーネント中からの共通コンポーネントの指定を入力インターフェイス１０５で受け付ける（ｓ１００８）。この例では、「年金給付処理結果情報を編集する」との既存コンポーネント“CPS00000001”が特定されており、これは前記入力画面１２００の表示欄１２５０におけるコンポーネントと同じ内容であるから、前記利用者は、ラジオボタン１３３０のうち、前記既存コンポーネント“CPS00000001”に対応するものをチェックし、決定ボタン１３１２を押下することとなる。勿論、前記リスト１３１０に含まれる既存コンポーネントが、前記入力画面１２００の表示欄１２５０におけるコンポーネントと同じ内容とは判断できず、修正等が必要な場合、利用者はコンポーネント情報変更／表示ボタン１３１１を押下する。この時、前記類似コンポーネント特定手段１１４は、例えば、前記リスト１３１０でのコンポーネント名欄１３２０での編集作業を受付けるとすればよい。
【００９０】
前記類似コンポーネント特定手段１１４は、前記ラジオボタン１３３０のチェックおよび決定ボタン１３１２の押下を受けて、前記既存コンポーネント“CPS00000001”を共通コンポーネントとし、前記ユースケース・コンポーネント紐付き情報テーブル１３１における前記所定ユースケースシナリオに対応付けて前記共通コンポーネントの情報を設定する（ｓ１００９）。前記所定ユースケースシナリオのＩＤを“UC00000004”とすれば、前記類似コンポーネント特定手段１１４は、前記ユースケース・コンポーネント紐付き情報テーブル１３１において、この“UC00000004”のユースケースＩＤに、ユースケースシナリオＩＤ“UCS00000001”、および共通コンポーネントたるコンポーネントＩＤ“CPS00000001”を対応付けて設定する。
【００９１】
なお、前記類似コンポーネント特定手段１１４は、前記類似ケース特定手段１１２が前記各情報が全て一致したユースケースシナリオ群が一定数以上であると判定出来なかったユースケースＡと他ユースケースＢとのセットについて検知するとしてもよい。この場合前記類似コンポーネント特定手段１１４は、ユースケースＡに属するユースケースシナリオについてのコンポーネントａおよび他ユースケースＢに属するユースケースシナリオについてのコンポーネントｂの指定を入力インターフェイス１０５で受け付ける（前記ステップｓ１００６と同様）。
【００９２】
そして類似コンポーネント特定手段１１４は、ここで指定を受け付けた指定コンポーネントａの情報と指定コンポーネントｂの情報とを照合して、前記指定コンポーネントａおよびｂの間で同じ所定文字列を含んでいるコンポーネントのセットを特定する。例えば、上記同様に「年金給付処理結果情報」、「編集する」といった文字列を共通に含むコンポーネントのセットを特定する。
【００９３】
次に、類似コンポーネント特定手段１１４は、ここで特定したコンポーネントセットのリストを出力インターフェイス１０６に表示し、前記リストのコンポーネントセットからの共通コンポーネントの指定を入力インターフェイス１０５で受け付ける（前記ステップｓ１００８と同様）。前記類似コンポーネント特定手段１１４は、前記ユースケース・コンポーネント紐付き情報テーブル１３１における前記ユースケースＡおよびユースケースＢのユースケースシナリオに対応付けて前記共通コンポーネントの情報を設定することとなる。つまり、前記類似ケース特定手段１１２が前記各情報が全て一致したユースケースシナリオ群が一定数以上であると判定出来なかったユースケースＡと他ユースケースＢとの間（換言すれば、ユースケース同士の共通化は出来なかった間柄）でも、共通化できるコンポーネントの候補（前記リスト）を利用者に提示し、共通コンポーネントの特定および設定がなされるのである。
【００９４】
−−−他の実施例における処理フロー例２−−−
ここでは、共通コンポーネントの特定処理の詳細について説明する。図１１は他の実施形態のユースケースシナリオ作成支援方法の処理手順例２を示すフロー図である。この場合、前記システム１００の類似コンポーネント特定手段１１４は、前記ステップｓ１００６と同様に、前記操作端末２００を介してコンポーネントの指定を受付けて特定するる（ｓ４００）。ここで特定したコンポーネントをコンポーネント“Ａ”とする。
【００９５】
次に前記類似コンポーネント特定手段１１４は、既存コンポーネント情報テーブル１２９の中から前記コンポーネント“Ａ”とは異なる他のコンポーネントを１つ取り出す（ｓ４０１）。また、類似コンポーネント特定手段１１４は、前記コンポーネント“Ａ”、“Ｂ”について、コンポーネントパターンＩＤ、情報名ＩＤ１、情報名ＩＤ２、情報名ＩＤ３、および動詞ＩＤがそれぞれ等しいか両者のデータを照合する（ｓ４０２）。
【００９６】
前記照合の結果、前記コンポーネント“Ａ”、“Ｂ”の間で情報名ＩＤが一致した場合、前記類似コンポーネント特定手段１１４は、情報名ＩＤの照合結果を「１」としてメモリ１０３に格納し、前記情報名ＩＤが一致しなかった場合、情報名ＩＤの照合結果を「０」としてメモリ１０３に格納する（ｓ４０３）。
【００９７】
また、前記照合の結果、前記コンポーネント“Ａ”、“Ｂ”の間で動詞ＩＤが一致した場合、前記類似コンポーネント特定手段１１４は、動詞ＩＤの照合結果を「１」としてメモリ１０３に格納し、前記動詞ＩＤが一致しなかった場合、動詞ＩＤの照合結果を「０」としてメモリ１０３に格納する（ｓ４０４）。
【００９８】
前記ステップｓ４０１〜ｓ４０４を実行した後、前記類似コンポーネント特定手段１１４は、既存コンポーネント情報テーブル１２９における全てのコンポーネントの組合せについて処理を実施したか確認し、全てのコンポーネントの組合せについて処理を実施できるまで処理をループさせる（ｓ４０５：Ｎｏ→ｓ４０１）。
【００９９】
他方、前記既存コンポーネント情報テーブル１２９における全てのコンポーネントの組合せについて処理を実施した場合（ｓ４０５：Ｙｅｓ）、前記類似コンポーネント特定手段１１４は、情報名ＩＤおよび動詞ＩＤの照合結果を前記メモリ１０３から読み出して、いずれかの照合結果が「１」であったコンポーネント群を特定する。そして、情報名ＩＤおよび動詞ＩＤの照合結果でソートしたコンポーネント群の情報を、前記ステップｓ１００８と同様に前記操作端末２００に送信する（ｓ４０６）。
【０１００】
類似コンポーネント特定手段１１４は、前記操作端末２００から得た共通化コンポーネントの選択指示（コンポーネントの適用対象の情報含む）に基づき、共通化コンポーネントの紐付き先ユースケース（上記例では“Ａ”、“Ｂ”）及びユースケースシナリオ記述について、ユースケース・コンポーネント紐付き情報テーブル１３１を更新することとなる（ｓ４０７）。
【０１０１】
上記の他の実施例によれば、ユースケースシナリオの設計（基本設計工程）を経た後に実行される、ユースケースシナリオの記述に基づくコンポーネントの設計（詳細設計工程）に際して、ユースケースシナリオ同様にコンポーネントの共通化を、効率的かつ低コストで図ることが可能となる。このコンポーネントの共通化に際しては、設計前のコンポーネントの設計情報に基づいた共通コンポーネントの検索が行われるため、コンポーネントの共通化を図ろうとして、設計済みのコンポーネントについて手戻りなど無駄な工程が生じることもなくなる。
【０１０２】
また、コンポーネント間で共通化の候補となるものを抽出し、共通化実施の可否を判断する作業について有識者等の負担を低減することができ、大規模なシステム開発の現場（例：コンポーネント数が数千の規模）であっても共通化候補の迅速な抽出等を効率的に行うことが容易となる。
【０１０３】
したがって、ユースケースシナリオやコンポーネントの作成支援を行い、共通化候補となる類似ユースケースやコンポーネントが精度良好に検索可能となる。
【０１０４】
以上、本発明の実施の形態について、その実施の形態に基づき具体的に説明したが、これに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【図面の簡単な説明】
【０１０５】
【図１】本実施形態におけるユースケースシナリオ作成支援システムの全体構成図である。
【図２】本実施形態における（ａ）既存ユースケース情報テーブル、（ｂ）既存ユースケースシナリオ記述情報テーブル、（ｃ）ユースケースシナリオ記述テーブル、（ｄ）選択肢テーブルの各データ構成例を示す図である。
【図３】本実施形態のユースケースシナリオ作成支援方法の処理手順例１を示すフロー図である。
【図４】本実施形態のユースケースシナリオ作成支援方法の処理手順例２を示すフロー図である。
【図５】本実施形態のユースケースシナリオ作成支援方法の処理手順例３を示すフロー図である。
【図６】本実施形態の入力画面例を示す図である。
【図７】本実施形態の検索結果画面例を示す図である。
【図８】他の実施形態におけるユースケースシナリオ作成支援システムの全体構成図である。
【図９】本実施形態における（ａ）既存コンポーネント情報テーブル、（ｂ）コンポーネントパターンテーブル、（ｃ）ユースケース・コンポーネント紐付き情報テーブルの各データ構成例を示す図である。
【図１０】他の実施形態のユースケースシナリオ作成支援方法の処理手順例１を示すフロー図である。
【図１１】他の実施形態のユースケースシナリオ作成支援方法の処理手順例２を示すフロー図である。
【図１２】他の実施形態の入力画面例を示す図である。
【図１３】他の実施形態の検索結果画面例を示す図である。
【符号の説明】
【０１０６】
１００  ユースケースシナリオ作成支援システム
１０１  記憶装置
１０２  プログラム
１０３  メモリ
１０４  ＣＰＵ
１０５  入力インターフェイス
１０６  出力インターフェイス
１０７  通信装置
１１０  画面出力手段
１１１  シナリオ取得手段
１１２  類似ケース特定手段
１１３  ユースケースシナリオ分析手段
１１４  類似コンポーネント特定手段
１２５  既存ユースケース情報テーブル
１２６  既存ユースケースシナリオ記述情報テーブル
１２７  ユースケースシナリオ記述テーブル
１２８  選択肢テーブル（アクター名テーブル、情報名テーブル、動詞テーブル）
１２９  既存コンポーネント情報テーブル
１３０  コンポーネントパターンテーブル
１３１  ユースケース・コンポーネント紐付き情報テーブル
１４０  ネットワーク
２００  操作端末
【図１】
0005108642.tif 000002
【図２】
0005108642.tif 000003
【図３】
0005108642.tif 000004
【図４】
0005108642.tif 000005
【図５】
0005108642.tif 000006
【図６】
0005108642.tif 000007
【図７】
0005108642.tif 000008
【図８】
0005108642.tif 000009
【図９】
0005108642.tif 000010
【図１０】
0005108642.tif 000011
【図１１】
0005108642.tif 000012
【図１３】
0005108642.tif 000013
【図１２】
0005108642.tif 000014