(57)【要約】【課題】ソフトウェア開発の成果物であるモデル仕様データの再利用を支援する。【解決手段】  モデル仕様データを分類する指標の軸となるビューポイントの識別子に、ビューポイントにおける属性となるバリューが関連づけられたビューポイントデータ２１と、入力装置３０からの指示に基づいてモデル仕様データのビューポイントの対応づけの登録が選択された場合、モデル仕様データを分類するビューポイントの識別子が入力されると、ビューポイントデータ２１読み出し、入力されたビューポイントの識別子に関連づけられたバリューを出力装置４０に表示するとともに、入力装置３０からの指示に基づいて、モデル仕様データを分類するビューポイントのバリューが入力されると、モデル仕様データの識別子に、入力されたビューポイントの識別子と、入力されたバリューを関連づけてモデルデータ２３として記憶するモデル管理部１６を備える。【選択図】      図１
2006350851.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア開発の成果物であるモデル仕様データの再利用を支援する仕様再利用支援装置において、
前記モデル仕様データを分類する指標の軸となるビューポイントの識別子に、前記ビューポイントにおける属性となるバリューが関連づけられたビューポイントデータを記憶装置に記憶するビューポイントデータ記憶部と、
ユーザの入力装置からの指示に基づいて前記モデル仕様データのビューポイントの対応づけの登録が選択された場合、前記モデル仕様データを分類するビューポイントの識別子が入力されると、前記記憶装置から前記ビューポイントデータ読み出し、入力された前記ビューポイントの識別子に関連づけられたバリューを出力装置に表示するとともに、前記ユーザの前記入力装置からの指示に基づいて、前記モデル仕様データを分類する前記ビューポイントのバリューが入力されると、前記モデル仕様データの識別子に、入力された前記ビューポイントの識別子と、入力された前記バリューを関連づけてモデルデータとして記憶装置に記憶するモデル管理部
を備えることを特徴とする仕様再利用支援装置。
【請求項２】
前記ユーザからの前記入力指示に基づいて、前記ビューポイント及びバリューを登録、編集又は削除するビューポイント管理部
を更に備えることを特徴とする請求項１に記載の仕様再利用支援装置。
【請求項３】
前記ビューポイント管理部は、前記ユーザからの前記入力装置からの指示に基づいて、
前記ビューポイントの登録が選択された場合、新たなビューポイントの識別子を採番して前記ビューポイントデータに挿入して前記記憶装置に記憶し、
前記ビューポイントの編集が選択された場合、前記記憶装置から前記ビューポイントデータを読み出して、前記入力装置から入力された検索条件に合致する前記ビューポイントを抽出して前記出力装置に表示し、
前記ビューポイントの識別子の編集が選択され、前記ビューポイントの識別子と編集後のビューポイントの識別子が入力された場合、前記記憶装置から前記ビューポイントデータを読み出して、入力された前記ビューポイントの識別子を前記変更後のビューポイントの識別子に更新して前記記憶装置に記憶し、
前記ビューポイントの識別子の削除が選択され、前記ビューポイントの識別子が入力された場合、前記記憶装置から前記ビューポイントデータを読み出して、入力された前記ビューポイントの識別子と前記ビューポイントの識別子に対応づけられた前記バリューを削除して前記記憶装置に記憶し、
前記ビューポイントへの新たなバリューの登録が選択され、前記新たなバリューが入力された場合、前記表示されたビューポイントの識別子と前記新たなバリューを対応づける対応識別子を採番し、前記対応識別子に、前記所定のビューポイントの識別子と前記新たなバリューとを関連づけて前記ビューポイントデータに挿入して前記記憶装置に記憶し、
前記ビューポイントの前記バリューの編集が選択され、前記対応識別子と編集後のバリューが入力された場合、前記記憶装置から前記ビューポイントデータを読み出して、入力された前記対応識別子に対応づけられた前記バリューを前記変更後のバリューに更新して前記記憶装置に記憶し、
前記ビューポイントの前記バリューの削除が選択され、前記対応識別子が入力された場合、前記記憶装置から前記ビューポイントデータを読み出して、入力された前記対応識別子に対応づけられた前記バリューを削除して前記記憶装置に記憶する
ことを特徴とする請求項２に記載の仕様再利用支援装置。
【請求項４】
前記ビューポイントの組合せを識別する組合せ識別子に、前記ビューポイントと前記バリューの組合せが関連づけられたビューポイント組合せデータを記憶装置に記憶するビューポイント組合せデータ記憶部と、
前記ユーザからの前記入力指示に基づいて、前記ビューポイントの組合せを登録、編集又は削除するビューポイント組合せ管理部
を更に備えることを特徴とする請求項１乃至３のいずれか１項に記載の仕様再利用支援装置。
【請求項５】
前記ビューポイント組合せ管理部は、前記ユーザからの前記入力装置からの指示に基づいて、
前記ビューポイントの組合せの登録が選択された場合、前記記憶装置から前記ビューポイントデータを読み出して、前記入力装置から入力された抽出条件に合致する前記ビューポイント及び前記バリューの組合せを抽出し、新たな前記組合せ識別子を採番して、前記新たな組合せ識別子と、前記抽出された前記ビューポイントと前記バリューの組合せを関連づけて前記ビューポイント組合せデータに挿入して前記記憶装置に記憶し、
前記ビューポイントの組合せの編集が選択され、前記ビューポイントの組合せの識別子と編集後のビューポイントの組合せが入力された場合、前記記憶装置から前記ビューポイント組合せデータを読み出して、入力された前記ビューポイントの組合せの識別子に関連づけられたビューポイントの組合せを、入力された前記編集後のビューポイントの組合せに更新して前記記憶装置に記憶し、
前記ビューポイントの組合せの削除が選択され、前記ビューポイントの組合せの識別子が入力された場合、前記記憶装置から前記ビューポイント組合せデータを読み出して、入力された前記ビューポイントの組合せの識別子と、前記入力されたビューポイントの組合せの識別子に関連づけられたビューポイントの組合せを削除して前記記憶装置に記憶する
ことを特徴とする請求項４に記載の仕様再利用支援装置。
【請求項６】
複合化されたモデル仕様データを識別する複合化識別子に、前記ビューポイントと前記バリューの組合せが関連づけられたリストと、前記リストの前記ビューポイント及び前記バリューに関連づけられた前記モデル仕様データの識別子とが関連づけられた複合モデルデータを前記記憶装置に記憶する複合モデルデータ記憶部と、
前記ユーザからの前記入力指示に基づいて、前記リスト及び複合モデルデータを登録、編集又は削除するモデル複合部
を更に備えることを特徴とする請求項１乃至５のいずれか１項に記載の仕様再利用支援装置。
【請求項７】
前記モデル複合部は、前記ユーザからの前記入力装置からの指示に基づいて、
前記モデルの複合が選択され、前記ビューポイントの識別子及びバリューが入力された場合、前記記憶装置から前記モデルデータを読み出して、入力された前記ビューポイントの識別子及びバリューに関連づけられた前記モデル仕様データの識別子を抽出し、前記複合か識別子を採番して、複合化されたモデル仕様データを識別する複合化識別子に、前記ビューポイントと前記バリューの組合せが関連づけられたリストと、前記リストの前記ビューポイント及び前記バリューに関連づけられた前記モデル仕様データの識別子とが関連づけられた複合モデルデータを前記記憶装置に記憶し、
前記モデルの複合の編集が選択され、前記複合化識別子と編集後のリスト又はビューポイントの識別子及びバリューが入力された場合、前記記憶装置から前記複合モデルデータを読み出して、入力された前記複合化識別子のリスト又はビューポイントの識別子及びバリューを、入力された編集後のリスト又はビューポイントの識別子及びバリューに更新して前記記憶装置に記憶し、
前記モデルの複合の削除が選択され、前記複合化識別子が入力された場合、前記記憶装置から前記複合モデルデータを読み出して、入力された前記複合化識別子と、前記複合化識別子に関連づけられた前記リスト、ビューポイントの識別子及びバリューを削除して前記記憶装置に記憶する
ことを特徴とする請求項６に記載の仕様再利用支援装置。
【請求項８】
前記モデル管理部は、前記ユーザからの前記入力装置からの指示に基づいて、
前記モデル仕様データの編集が選択され、前記モデル仕様データの識別子と編集後のビューポイントの識別子及びバリューが入力された場合、前記記憶装置から前記モデルデータを読み出して、入力されたモデル仕様データの識別子に関連づけられたビューポイントの識別子及びバリューを、入力された前記編集後のビューポイントの識別子及びバリューに更新して前記記憶装置に記憶し、
前記モデル仕様データの削除が選択され、前記モデル仕様データの識別子が入力されると、前記記憶装置から前記モデルデータを読み出して、入力された前記モデル仕様データの識別子及び前記モデル仕様データの識別子に関連づけられた前記ビューポイントの識別子及びバリューを削除して前記記憶装置に記憶する
ことを特徴とする請求項１に記載の仕様再利用支援装置。
【請求項９】
ソフトウェア開発の成果物であるモデル仕様データの再利用を支援する仕様再利用支援プログラムにおいて、
前記モデル仕様データを分類する指標の軸となるビューポイントの識別子に、前記ビューポイントにおける属性となるバリューが関連づけられたビューポイントデータを記憶装置に記憶するビューポイントデータ記憶手段と、
ユーザの入力装置からの指示に基づいて前記モデル仕様データのビューポイントの対応づけの登録が選択された場合、前記モデル仕様データを分類するビューポイントの識別子が入力されると、前記記憶装置から前記ビューポイントデータ読み出し、入力された前記ビューポイントの識別子に関連づけられたバリューを出力装置に表示するとともに、前記ユーザの前記入力装置からの指示に基づいて、前記モデル仕様データを分類する前記ビューポイントのバリューが入力されると、前記モデル仕様データの識別子に、入力された前記ビューポイントの識別子と、入力された前記バリューを関連づけてモデルデータとして記憶装置に記憶するモデル管理手段
をコンピュータに実行させることを特徴とする仕様再利用支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア開発の成果物であるモデルデータの再利用を支援する仕様再利用支援装置及び仕様再利用支援プログラムに関する。
【背景技術】
【０００２】
コンピュータ等の装置によって実現されるシステムや、コンピュータ上で稼働するソフトウェアを用いたシステム開発のライフサイクルにおいて、作成した成果物をデータベースに蓄積することがある。この場合、新たなシステム又はソフトウェアの開発においてデータベースに蓄積された内容を再利用することがある。又、成果物が再利用されるたびにログを記録し、このログに基づいて、成果物の再利用性を評価することもある。
【０００３】
例えば、成果物の再利用を支援するために、成果物を整理分類する技術がある（例えば、非特許文献１及び非特許文献２に記載）。
【０００４】
この非特許文献１に記載の技術は、ザックマンフレーム（Zachman Framework）と言われる考え方である。具体的には、非特許文献１に記載の技術において、システム開発の成果物を、時間軸と専門軸の２つの軸で示される平面において３０個のセルを有するマトリックスを想定し、マトリックスの各セルにシステム開発の成果物を配置するものである。
【０００５】
又、非特許文献２に記載の技術は、システムやソフトウェアの基本的な設計であるアーキテクチャを記述する際の記述項目と考え方を標準化するためのものである。非特許文献２においては、アーキテクチャを示すにあたって、ビューポイント（Viewpoint）を設定することの重要性が示されている。例えば、アーキテクチャ記述書によって表現され、ビュー（View）によって組織化され、ビューはビューポイントで定めた記述形式に従うことが記載されている。
【非特許文献１】Zachman, J. A., A Framework for Information Systems Architecture. IBM Systems Journal, Vol. 26, No. 3, 1987
【非特許文献２】IEEE Std 1471--2000 IEEE Recommended Practice for Architectural Description of Software-Intensive Systems
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上述した非特許文献１及び非特許文献２に記載の技術では、柔軟に成果物を再利用することは困難である。具体的には、非特許文献１に記載の技術では成果物を時間軸と専門軸の２つの軸についてのみ分類しているので、仕様と検証の視点、機能と非機能の視点、業務や業種の視点など他の視点への拡張は考慮されておらず、視点を追加するなどの柔軟性に対応されていない。又、非特許文献２に記載の技術では単にビューポイントやビューの定義に止まり、ビューポイントの記述方式やこれらを再利用するための仕組みについては明らかにされていない。
【０００７】
この様に、従来の技術では、再利用の観点にあたる様々な考え方や見方など、「視点」を管理する仕組みや基準がなかった。そのため再利用の「視点」に関するノウハウは、暗黙知となり有効な再利用が行えなかった。
【０００８】
一方、システムやソフトウェアの開発のライフサイクルで開発した成果物は、ライフサイクルの工程に沿って蓄積及び管理されることが一般的である。従って、開発が完了し、これらの成果物を再利用する場合には、工程別の観点でのみ再利用するだけではなく、様々な観点で成果物を抽出し、複数の成果物をグループ化した成果物を再利用することが求められている。
【０００９】
従って本発明の目的は、ソフトウェア開発の成果物であるモデルデータの柔軟な再利用を支援する仕様再利用支援装置及び仕様再利用支援プログラムを提供することである。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明の第１の特徴は、ソフトウェア開発の成果物であるモデル仕様データの再利用を支援する仕様再利用支援装置に関する。即ち本発明の第１の特徴に係る仕様再利用支援装置は、モデル仕様データを分類する指標の軸となるビューポイントの識別子に、ビューポイントにおける属性となるバリューが関連づけられたビューポイントデータを記憶装置に記憶するビューポイントデータ記憶部と、ユーザの入力装置からの指示に基づいてモデル仕様データのビューポイントの対応づけの登録が選択された場合、モデル仕様データを分類するビューポイントの識別子が入力されると、記憶装置からビューポイントデータ読み出し、入力された前記ビューポイントの識別子に関連づけられたバリューを出力装置に表示するとともに、ユーザの入力装置からの指示に基づいて、モデル仕様データを分類するビューポイントのバリューが入力されると、モデル仕様データの識別子に、入力されたビューポイントの識別子と、入力されたバリューを関連づけてモデルデータとして記憶装置に記憶するモデル管理部を備える。
【００１１】
この様な本発明によれば、モデル仕様データにビューポイント及びバリューを付与し、ビューポイント及びバリューを検索条件とすることにより再利用可能なモデル仕様データを抽出することができる。
【００１２】
ここで、ユーザからの入力指示に基づいて、ビューポイント及びバリューを登録、編集又は削除するビューポイント管理部を更に備えることが好ましい。具体的にビューポイント管理部は、ユーザからの入力装置からの指示に基づいて、ビューポイントの登録が選択された場合、新たなビューポイントの識別子を採番してビューポイントデータに挿入して記憶装置に記憶し、ビューポイントの編集が選択された場合、記憶装置からビューポイントデータを読み出して、入力装置から入力された検索条件に合致するビューポイントを抽出して出力装置に表示し、ビューポイントの識別子の編集が選択され、ビューポイントの識別子と編集後のビューポイントの識別子が入力された場合、記憶装置からビューポイントデータを読み出して、入力されたビューポイントの識別子を変更後のビューポイントの識別子に更新して記憶装置に記憶し、ビューポイントの識別子の削除が選択され、ビューポイントの識別子が入力された場合、記憶装置からビューポイントデータを読み出して、入力されたビューポイントの識別子とビューポイントの識別子に対応づけられたバリューを削除して記憶装置に記憶し、ビューポイントへの新たなバリューの登録が選択され、新たなバリューが入力された場合、表示されたビューポイントの識別子と新たなバリューを対応づける対応識別子を採番し、対応識別子に、所定のビューポイントの識別子と新たなバリューとを関連づけてビューポイントデータに挿入して記憶装置に記憶し、ビューポイントのバリューの編集が選択され、対応識別子と編集後のバリューが入力された場合、記憶装置からビューポイントデータを読み出して、入力された対応識別子に対応づけられた前記バリューを変更後のバリューに更新して記憶装置に記憶し、ビューポイントのバリューの削除が選択され、対応識別子が入力された場合、記憶装置からビューポイントデータを読み出して、入力された対応識別子に対応づけられたバリューを削除して記憶装置に記憶する。
【００１３】
この様な本発明によれば、任意のビューポイント及びバリューを設定し、モデル仕様データを柔軟に対応づけることができる。
【００１４】
更に、ビューポイントの組合せを識別する組合せ識別子に、ビューポイントとバリューの組合せが関連づけられたビューポイント組合せデータを記憶装置に記憶するビューポイント組合せデータ記憶部と、ユーザからの入力指示に基づいて、ビューポイントの組合せを登録、編集又は削除するビューポイント組合せ管理部を備えることが好ましい。具体的にビューポイント組合せ管理部は、ユーザからの入力装置からの指示に基づいて、ビューポイントの組合せの登録が選択された場合、記憶装置からビューポイントデータを読み出して、入力装置から入力された抽出条件に合致するビューポイント及びバリューの組合せを抽出し、新たな組合せ識別子を採番して、新たな組合せ識別子と、抽出されたビューポイントとバリューの組合せを関連づけてビューポイント組合せデータに挿入して記憶装置に記憶し、ビューポイントの組合せの編集が選択され、ビューポイントの組合せの識別子と編集後のビューポイントの組合せが入力された場合、記憶装置からビューポイント組合せデータを読み出して、入力されたビューポイントの組合せの識別子に関連づけられたビューポイントの組合せを、入力された編集後のビューポイントの組合せに更新して記憶装置に記憶し、ビューポイントの組合せの削除が選択され、ビューポイントの組合せの識別子が入力された場合、記憶装置からビューポイント組合せデータを読み出して、入力されたビューポイントの組合せの識別子と、入力されたビューポイントの組合せの識別子に関連づけられたビューポイントの組合せを削除して記憶装置に記憶する。
【００１５】
この様な本発明によれば、ユーザが抽出した条件をビューポイント組合せデータとして保存することにより、モデル仕様データを再利用したノウハウを、データ化して蓄積し、後の担当者に伝えることができる。
【００１６】
更に、複合化されたモデル仕様データを識別する複合化識別子に、ビューポイントとバリューの組合せが関連づけられたリストと、リストのビューポイント及びバリューに関連づけられたモデル仕様データの識別子とが関連づけられた複合モデルデータを記憶装置に記憶する複合モデルデータ記憶部と、ユーザからの入力指示に基づいて、リスト及び複合モデルデータを登録、編集又は削除するモデル複合部を備えることが好ましい。具体的にモデル複合部は、ユーザからの入力装置からの指示に基づいて、モデルの複合が選択され、ビューポイントの識別子及びバリューが入力された場合、記憶装置からモデルデータを読み出して、入力されたビューポイントの識別子及びバリューに関連づけられたモデル仕様データの識別子を抽出し、複合か識別子を採番して、複合化されたモデル仕様データを識別する複合化識別子に、ビューポイントとバリューの組合せが関連づけられたリストと、リストのビューポイント及びバリューに関連づけられたモデル仕様データの識別子とが関連づけられた複合モデルデータを記憶装置に記憶し、モデルの複合の編集が選択され、複合化識別子と編集後のリスト又はビューポイントの識別子及びバリューが入力された場合、記憶装置から複合モデルデータを読み出して、入力された複合化識別子のリスト又はビューポイントの識別子及びバリューを、入力された編集後のリスト又はビューポイントの識別子及びバリューに更新して記憶装置に記憶し、モデルの複合の削除が選択され、複合化識別子が入力された場合、記憶装置から複合モデルデータを読み出して、入力された複合化識別子と、複合化識別子に関連づけられたリスト、ビューポイントの識別子及びバリューを削除して記憶装置に記憶する。
【００１７】
この様な本発明によれば、ユーザが抽出したモデル仕様データをグループ化して保存することにより、モデル仕様データを再利用したノウハウを、データ化して蓄積し、後の担当者に伝えることができる。
【００１８】
又、モデル管理部は、ユーザからの入力装置からの指示に基づいて、モデル仕様データの編集が選択され、モデル仕様データの識別子と編集後のビューポイントの識別子及びバリューが入力された場合、記憶装置からモデルデータを読み出して、入力されたモデル仕様データの識別子に関連づけられたビューポイントの識別子及びバリューを、入力された編集後のビューポイントの識別子及びバリューに更新して記憶装置に記憶し、モデル仕様データの削除が選択され、モデル仕様データの識別子が入力されると、記憶装置からモデルデータを読み出して、入力されたモデル仕様データの識別子及びモデル仕様データの識別子に関連づけられたビューポイントの識別子及びバリューを削除して記憶装置に記憶することが好ましい。
【００１９】
これにより新たにビューポイント及びバリューが作成されても、モデル仕様データを対応づけ、再利用可能な資源として蓄積することができる。
【００２０】
本発明の第２の特徴は、ソフトウェア開発の成果物であるモデル仕様データの再利用を支援する仕様再利用支援プログラムに関する。即ち本発明の第２の特徴に係る仕様再利用支援プログラムは、モデル仕様データを分類する指標の軸となるビューポイントの識別子に、ビューポイントにおける属性となるバリューが関連づけられたビューポイントデータを記憶装置に記憶するビューポイントデータ記憶手段と、ユーザの入力装置からの指示に基づいてモデル仕様データのビューポイントの対応づけの登録が選択された場合、モデル仕様データを分類するビューポイントの識別子が入力されると、記憶装置からビューポイントデータ読み出し、入力されたビューポイントの識別子に関連づけられたバリューを出力装置に表示するとともに、ユーザの入力装置からの指示に基づいて、モデル仕様データを分類するビューポイントのバリューが入力されると、モデル仕様データの識別子に、入力されたビューポイントの識別子と、入力されたバリューを関連づけてモデルデータとして記憶装置に記憶するモデル管理手段をコンピュータに実行させる。
【発明の効果】
【００２１】
本発明によれば、ソフトウェア開発の成果物であるモデルデータの柔軟な再利用を支援する仕様再利用支援装置及び仕様再利用支援プログラムを提供することができる。
【発明を実施するための最良の形態】
【００２２】
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【００２３】
本発明の最良の実施の形態においてモデル仕様データは、システムやソフトウェア開発をする際に作成する成果物のことである。具体的にはモデル仕様データは、ユースケース、クラス、アーキテクチャ仕様、テストシナリオ、コンポーネント、フレームワーク、モジュールなどのあらゆる成果物のデータである。又、ビューポイントは、モデル仕様データを整理分類するための軸、観点、分類名などであって、具体的には、時間軸、専門軸、業種、業務などが挙げられる。ビューポイントのバリューは、ビューポイントのインスタンス（事例）である。ビューポイントが時間軸のバリューは、計画工程、分析工程、論理設計工程、物理設計工程、実装工程などが挙げられ、一方、ビューポイントが専門軸のバリューはデータ、機能、ネットワーク、人、時間、動機などが挙げられる。
【００２４】
（支援再利用支援装置）
図１に示す本発明の最良の実施の形態に係る仕様再利用支援装置１は、ソフトウェア開発の成果物であるモデル仕様データの再利用を支援する装置であって、中央処理制御装置１０、記憶装置２０、入力装置３０及び出力装置４０を備えている。図１には示さないが、仕様再利用支援装置１は、ＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）を更に備えている。仕様再利用支援装置１の各装置は、バスを介して接続されている。
【００２５】
中央処理制御装置１０は、入力装置３０からの入力信号に基づいてＲＯＭから仕様再利用支援装置１を起動するためのブートプログラムを読み出して実行し、更に記憶装置２０に記憶されたオペレーティングシステムを読み出す。更に中央処理制御装置１０は、入力装置３０からの入力信号に基づいて、ＲＡＭや記憶装置２０などに記憶されたプログラム及びデータを読み出してＲＡＭにロードするとともに、ＲＡＭから読み出されたプログラムのコマンドに基づいて、データの計算又は加工など、後述する一連の処理を実現する処理装置である。
【００２６】
入力装置３０は、操作者が各種の操作を入力するキーボード、マウスなどの入力デバイスにより構成されており、操作者の操作に基づいて入力信号を作成し、バスを介して中央処理制御装置１０に送信される。出力装置４０は、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどであり、中央処理制御装置１０からバスを介して出力装置４０において表示させる出力信号を受信し、例えば中央処理制御装置１０の処理結果などを表示する装置である。
【００２７】
記憶装置２０は半導体記憶装置や磁気ディスク装置であって、中央処理制御装置１０で実行されるプログラムやデータが記憶されている。
【００２８】
本発明の最良の実施の形態に係る仕様再利用支援装置１の記憶装置２０ａ及び２０ｂには、仕様再利用支援プログラムが記憶されるとともに、図１に示すように、ビューポイントデータ２１、ビューポイント組合せデータ２２、モデルデータ２３、複合モデルデータ２４が記憶される。図１に示す図では、記憶装置２０ａ及び２０ｂに分けて各データが記憶される様に記載したが、一つの記憶装置に各データが記憶されても良い。
【００２９】
ビューポイントデータ２１は、モデル仕様データを分類する指標の軸となるビューポイントの識別子に、ビューポイントにおける属性となるバリューが関連づけられたデータである。例えば、式１はビューポイントデータ２１におけるビューポイントの１階述語論理による記述形式の一例で、式２はビューポイントとの対を示すバリューの記述形式の一例である。ビューポイントデータ２１においては、式１で示される０個以上のビューポイントの要素と、一つのビューポイントについて式２で示される０個以上のバリューが含まれる。  
viewpoint(VID, V)
VID：ビューポイントの識別子を表す変数
V：ビューポイントを示す変数
…（式１）
viewpoint_value(ID, VP, VL)
ID：ビューポイントとバリューの対に対する識別子を表す変数
VP：ビューポイントを表す変数
VL：ビューポイントのバリューを表す変数
…（式２）
【００３０】
具体的には、ビューポイントデータ２１は、図２及び図３の様な変数を持つ。図２に示すように、ビューポイントデータ２１は、抽象軸Ｘ１、専門軸Ｘ２…を有する。白抜きの三角形と直線によりビューポイントの抽象軸Ｘ１に関連づけられる長方形の記述がビューポイントに対応するバリューである。抽象軸Ｘ１のバリューは、スコープ、ビジネスモデル、システムモデル、技術モデル、詳細モデルのバリューを含む。一方専門軸Ｘ２は、データ、機能、ネットワーク、人、時間、動機のバリューを含む。又、図２で示されたビューポイントデータ２１の構成は、図３の様にマトリックス形式で示されても良い。図３においては、ビューポイントデータ２１は、抽象軸Ｘ１、専門軸、Ｘ２…、仕様と検証軸Ｘ４…などを含む。図３においては、識別子Ｘ１からＸ１２までの１２個の軸が定義され、そのそれぞれについて、ビューポイントを示すビューポイント名「抽象軸」、「専門軸」などのそれぞれの軸について、「スコープ」、「データ」などの当該ビューポイントに対するバリューが関連づけられている。
【００３１】
又、上記記述形式に基づくと、ビューポイントデータ２１は式３で示される。  
viewpoint_value(1, viewpoint(a, ‘抽象軸’), ‘スコープ’),
viewpoint_value(2, viewpoint(a, ‘抽象軸’), ‘ビジネスモデル’),
viewpoint_value(3, viewpoint(a, ‘抽象軸’), ‘システムモデル’),
viewpoint_value(4, viewpoint(a, ‘抽象軸’), ‘技術モデル’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’),
viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(7, viewpoint(b, ‘専門軸’), ‘機能How’),
viewpoint_value(8, viewpoint(b, ‘専門軸’), ‘ネットワークWhere’),
viewpoint_value(9, viewpoint(b, ‘専門軸’), ‘人Who’),
viewpoint_value(10, viewpoint(b, ‘専門軸’), ‘時間When’),
viewpoint_value(11, viewpoint(b, ‘専門軸’), ‘動機Why’),
viewpoint_value(12, viewpoint(c, ‘実体と仕様’), ‘実体’),
viewpoint_value(13, viewpoint(c, ‘実体と仕様’), ‘仕様’)
…（式３）
【００３２】
図２、図３及び式３で示したビューポイント及びバリューの例は、ザックマンフレームワークの抽象軸を参考にして記述されている。抽象軸には、抽象度の高いものから順に、スコープ、ビジネスモデル、システムモデル、技術モデル、詳細モデルの視点を備え、専門軸は５Ｗ１Ｈの視点を持つ。
【００３３】
上述した式３のID=1乃至5は、ザックマンフレームワークの抽象軸とこれに対するバリューを記述したもので、ID=6乃至11は、ザックマンフレームワークの専門軸とこれに対するバリューを記述したものである。又、システム開発の成果物には、ソースコードやコンポーネントなどの実体と、それらの設計仕様やテスト仕様といったドキュメントやモデルなどの仕様に分類することができる。ID=12及び13は、この「実体と仕様」のビューポイントに対して、バリューとして「実体」と「仕様」の２通りがあることを示している。
【００３４】
ビューポイント組合せデータ２２は、ビューポイントデータへ登録したビューポイント及びビューポイントのバリューの任意の組合せの情報を蓄積したデータである。ビューポイントの組合せを識別する組合せ識別子に、ビューポイントとバリューの組合せが関連づけられている。ビューポイント組合せデータ２２によって、整理分類されたモデル仕様データから一部のモデル仕様データを抽出して、新たな観点でグループ化することができる。例えば、時間軸の分析工程と、専門軸のデータと機能を組合せて、「データ機能の分析仕様」という新たな視点を定義することができる。式４はビューポイント組合せデータ２２の１階述語論理による記述形式の一例である。ビューポイント組合せデータ２２においては、式３で示される０個以上のビューポイントとバリューの対の組合せが含まれる。  
c_viewpoint_value(ID, Name, VList)
ID：ビューポイントとバリューの対の
１個以上の組合せに対する識別子を表す変数
Name：ビューポイントとバリューの対の
１個以上の組合せに対する名称を表す変数
VList：ビューポイントとバリューの対を要素とするリストを表す変数
…（式４）
【００３５】
又、上記記述形式に基づくと、ビューポイント組合せデータ２２は式５で示される。  
c_viewpoint_value(1, ‘A社要求仕様’, 
[viewpoint_value(2, viewpoint(a, ‘抽象軸’), ‘ビジネスモデル’),
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’)
]),
c_viewpoint_value(2, ‘A社＆B社要求仕様’, 
[viewpoint_value(2, viewpoint(a, ‘抽象軸’), ‘ビジネスモデル’),
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘B社’)
]),
c_viewpoint_value(3, ‘A社データモデル’, 
[viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(2, viewpoint(a, ‘抽象軸’), ‘ビジネスモデル’),
viewpoint_value(3, viewpoint(a, ‘抽象軸’), ‘システムモデル’),
viewpoint_value(4, viewpoint(a, ‘抽象軸’), ‘技術モデル’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’),
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’)
]),
c_viewpoint_value(4, ‘データモデル全体’, 
[viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(2, viewpoint(a, ‘抽象軸’), ‘ビジネスモデル’),
viewpoint_value(3, viewpoint(a, ‘抽象軸’), ‘システムモデル’),
viewpoint_value(4, viewpoint(a, ‘抽象軸’), ‘技術モデル’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’)
]),
c_viewpoint_value(5, ‘A社注文コンポーネント’,
[viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
…（式５）
【００３６】
式５において、ID=1は、ビューポイント「抽象軸」のバリュー「ビジネスモデル」、ビューポイント「顧客」をバリュー「A社」と組合せ、A社の要求仕様として定義した例である。ID=2 は、ビューポイント「抽象軸」のバリュー「ビジネスモデル」、ビューポイント「顧客」のバリュー「A社」及び「B社」を指定して、これらを組合せ、A社及びB社の要求仕様として定義した例である。ID=3 は、ビューポイント「顧客」のバリュー「A社」、ビューポイント「専門軸」のバリュー「データWhat」、ビューポイント「抽象軸」のバリュー「ビジネスモデル」、「システムモデル」、「技術モデル」、「詳細モデル」と組合せ、A社のデータモデルを定義した例である。ID=4 は、顧客を指定せず、その他はID=3 と同様の視点を組合せ、データモデル全体を定義した例である。ID=5 は、ビューポイント「顧客」をバリュー「A社」、ビューポイント「データWhat」をバリュー「注文」と指定し、A社注文コンポーネントを定義した例である。
【００３７】
モデルデータ２３は、モデル仕様データの識別子と対応する任意のビューポイント及びビューポイントのバリューの対応情報を蓄積したデータである。モデルデータ２３は、モデル仕様データの識別子に、入力されたビューポイントの識別子と、入力されたバリューを関連づけられている。ビューポイントやバリューなどの値に基づいてユーザがモデルデータ２３を検索することにより、再利用するモデル仕様データを抽出することができる。式６はモデルデータ２３の１階述語論理による記述形式の一例である。モデルデータ２３においては、式６で示される０個以上のモデル仕様データの識別子とビューポイントとバリューの１個以上の対が関連づけられた要素が含まれる。  
model(ID, Name, VList)
ID：モデル仕様データの識別子を表す変数
Name：モデル仕様データの名称を表す変数
VList：ビューポイントとバリューの対を要素とするリストを表す変数
…（式６）
【００３８】
又、上記記述形式に基づくと、モデルデータ２３は式７で示される。  
model(1, ‘A社概念データモデル’, 
[viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(2, viewpoint(a, ‘抽象軸’), ‘ビジネスモデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’)
])
model(2, ‘B社概念データモデル’, 
[viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(2, viewpoint(a, ‘抽象軸’), ‘ビジネスモデル’) ,
viewpoint_value(21, viewpoint(ｌ, ‘顧客’), ‘B社’)
])
model(3, ‘A社論理データモデル’, 
[viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(3, viewpoint(a, ‘抽象軸’), ‘システムモデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’)
])
model(4, ‘B社概念データモデル’, 
[viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(3, viewpoint(a, ‘抽象軸’), ‘システムモデル’) ,
viewpoint_value(21, viewpoint(ｌ, ‘顧客’), ‘B社’)
])
model(5, ‘A社物理データモデル’, 
[viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(4, viewpoint(a, ‘抽象軸’), ‘物理モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’)
])
model(6, ‘B社物理データモデル’, 
[viewpoint_value(6, viewpoint(b, ‘専門軸’), ‘データWhat’),
viewpoint_value(4, viewpoint(a, ‘抽象軸’), ‘物理モデル’) ,
viewpoint_value(21, viewpoint(ｌ, ‘顧客’), ‘B社’)
])
model(7, ‘A社注文データ’, 
[viewpoint_value(30, viewpoint(ｇ, ‘データと機能’), ‘データWhat’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
model(8, ‘A社注文登録’, 
[viewpoint_value(31, viewpoint(ｇ, ‘データと機能’), ‘機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
model(9, ‘A社注文削除’, 
[viewpoint_value(31, viewpoint(ｇ, ‘データと機能’), ‘機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
model(10, ‘A 社注文変更’, 
[viewpoint_value(31, viewpoint(ｇ, ‘データと機能’), ‘機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
model(11, ‘A社注文参照’, 
[viewpoint_value(31, viewpoint(ｇ, ‘データと機能’), ‘機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
model(12, ‘A 社注文ログ取得, 
[viewpoint_value(50, viewpoint(ｈ, ‘機能と非機能’), ‘非機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
model(13, ‘A 社注文データ暗号化’, 
[viewpoint_value(50, viewpoint(ｈ, ‘機能と非機能’), ‘非機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
model(14, ‘A 社注文データ復号’, 
[viewpoint_value(50, viewpoint(ｈ, ‘機能と非機能’), ‘非機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
])
…（式７）
【００３９】
式７において、ID=1 は、A社の概念データモデルへ、ビューポイント とバリュー を定義した例である。ID=2 は、B社の概念データモデルへ、ビューポイント とバリュー を定義した例である。ID=3 は、A社の論理データモデルへ、ビューポイント とバリュー を定義した例である。ID=4 は、B社の論理データモデルへ、ビューポイント とバリュー を定義した例である。ID=5 は、A社の物理データモデルへ、ビューポイント とバリュー を定義した例である。ID=6 は、A社の物理データモデルへ、ビューポイント とバリュー を定義した例である。ID=7 は、A社の注文に関するデータへ、ビューポイント とバリュー を定義した例である。ID=8 は、A社の注文登録に関する機能に、ビューポイント とバリュー を定義した例である。ID=9 は、A社の注文削除に関する機能に、ビューポイント とバリュー を定義した例である。ID=10 は、A社の注文変更に関する機能に、ビューポイント とバリュー を定義した例である。ID=11 は、A社の注文参照に関する機能に、ビューポイント とバリュー を定義した例である。ID=12 は、A社の注文ログ取得に関する非機能に、ビューポイント とバリュー を定義した例である。ID=13 は、A社の注文データ暗号化に関する非機能に、ビューポイント とバリュー を定義した例である。ID=14 は、A社の注文データ複合に関する非機能に、ビューポイント とバリュー を定義した例である。
【００４０】
複合モデルデータ２４は、モデル仕様データについて、ユーザから指定されたビューポイント及びバリューの条件から、条件にマッチしたモデルを合成した情報が蓄積されたデータである。複合モデルデータ２４は、複合化されたモデル仕様データを識別する複合化識別子に、ビューポイントとバリューの組合せが関連づけられたリストと、リストのビューポイント及びバリューに関連づけられたモデル仕様データの識別子とが関連づけられている。複合モデルデータ２４から、指定されたビューポイント及びバリューの観点に対応するモデルの集合が抽出される。式８は複合モデルデータ２４の１階述語論理による記述形式の一例である。複合モデルデータ２４においては、式８で示される０個以上の複合化されたモデル仕様データの識別子及び名称、ビューポイントと値の対を要素とするリストを表す変数、モデル仕様データの識別子を要素とするリストを表す変数が関連づけられた要素が含まれる。  
c_model(ID, Name, VList, MList)
ID：複合化されたモデル仕様データの識別子を表す変数
Name：複合化されたモデル仕様データの名称を表す変数
VList：ビューポイントとバリューの対を要素とするリストを表す変数
MList：モデル仕様データの識別子を要素とするリストを表す変数
…（式８）
【００４１】
又、上記記述形式に基づくと、複合モデルデータ２４は式９で示される。式９は、「A社」及び「注文」のオブジェクトに関するモデルを複合し、A社注文コンポーネントというモデル名で登録した例を示す。  
c_model(1, A社注文コンポーネント,
[viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)],
[model(7, ‘A社注文データ’, 
[viewpoint_value(30, viewpoint(g, ‘データと機能’), ‘データWhat’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
]),
model(8, ‘A社注文登録’, 
[viewpoint_value(31, viewpoint(ｇ, ‘データと機能’), ‘機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
]),
model(9, ‘A社注文削除’, 
[viewpoint_value(31, viewpoint(ｇ, ‘データと機能’), ‘機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
]),
model(10, ‘A 社注文変更’, 
[viewpoint_value(31, viewpoint(ｇ, ‘データと機能’), ‘機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
]),
model(11, ‘A社注文参照’, 
[viewpoint_value(31, viewpoint(ｇ, ‘データと機能’), ‘機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
]),
model(12, ‘A 社注文ログ取得, 
[viewpoint_value(50, viewpoint(ｈ, ‘機能と非機能’),‘非機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’), ‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’), ‘注文’)
]),
model(13, ‘A社注文データ暗号化’, 
[viewpoint_value(50, viewpoint(ｈ, ‘機能と非機能’),‘非機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’),‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’),‘注文’)
]),
model(14, ‘A社注文データ復号’, 
[viewpoint_value(50, viewpoint(ｈ, ‘機能と非機能’),‘非機能’),
viewpoint_value(5, viewpoint(a, ‘抽象軸’),‘詳細モデル’) ,
viewpoint_value(20, viewpoint(ｌ, ‘顧客’), ‘A社’),
viewpoint_value(30, viewpoint(i, ‘オブジェクト’),‘注文’)
])]
…（式９）
【００４２】
仕様再利用支援プログラムが仕様再利用支援装置１の中央処理制御装置１０に読み込まれＯＳとともに実行されることによって、図１に示すように、入力制御部１１、出力制御部１２、制御部１３、ビューポイント管理部１４、ビューポイント組合せ管理部１５、モデル管理部１６及びモデル複合部１７が仕様再利用支援装置１に実装される。
【００４３】
入力制御部１１は、ユーザによる入力装置３０の操作により取得された入力情報を制御部１３に入力する。出力制御部１２は、制御部１３から出力された出力情報を出力装置４０に表示し、ユーザに閲覧させる。
【００４４】
制御部１３は、入力制御部、ビューポイント管理部１４、ビューポイント組合せ管理部１５、モデル管理部１６及びモデル複合部１７からの入力情報を受け取り、入力情報に含まれるステータスに応じてビューポイント管理部１４、ビューポイント組合せ管理部１５、モデル管理部１６及びモデル複合部１７に情報を入力する。又、制御部１３は、ビューポイント管理部１４、ビューポイント組合せ管理部１５、モデル管理部１６及びモデル複合部１７のいずれかで生成された出力情報を受け取り、出力制御部１２に入力する。
【００４５】
ビューポイント管理部１４は、入力装置３０及び入力制御部１１及び制御部１３を介して入力されたユーザからの入力指示に基づいて、ビューポイント及びバリューを登録、編集又は削除する。具体的には、ビューポイントの登録が選択された場合、ビューポイント管理部１４は、新たなビューポイントの識別子を採番してビューポイントデータ２１に挿入して記憶装置２０ｂに記憶する。ビューポイントの編集が選択された場合、ビューポイント管理部１４は、記憶装置２０ａからビューポイントデータ２１を読み出して、入力装置３０から入力された検索条件に合致するビューポイントを抽出して出力装置４０に表示する。ビューポイントの識別子の編集が選択され、ビューポイントの識別子と編集後のビューポイントの識別子が入力された場合、ビューポイント管理部１４は、記憶装置２０ａからビューポイントデータ２１を読み出して、入力されたビューポイントの識別子を変更後のビューポイントの識別子に更新して記憶装置２０ａに記憶する。ビューポイントの識別子の削除が選択され、ビューポイントの識別子が入力された場合、ビューポイント管理部１４は、記憶装置２０ａからビューポイントデータ２１を読み出して、入力されたビューポイントの識別子とビューポイントの識別子に対応づけられたバリューを削除して記憶装置２０ａに記憶する。ビューポイントへの新たなバリューの登録が選択され、新たなバリューが入力された場合、ビューポイント管理部１４は、表示されたビューポイントの識別子と新たなバリューを対応づける対応識別子を採番し、対応識別子に、所定のビューポイントの識別子と新たなバリューとを関連づけてビューポイントデータ２１に挿入して記憶装置２０ａに記憶する。ビューポイントのバリューの編集が選択され、対応識別子と編集後のバリューが入力された場合、ビューポイント管理部１４は、記憶装置２０ａからビューポイントデータ２１を読み出して、入力された対応識別子に対応づけられたバリューを変更後のバリューに更新して記憶装置に記憶する。ビューポイントのバリューの削除が選択され、対応識別子が入力された場合、ビューポイント管理部１４は、記憶装置２０ａからビューポイントデータ２１を読み出して、入力された対応識別子に対応づけられたバリューを削除して記憶装置２０ａに記憶する。
【００４６】
ビューポイント組合せ管理部１５は、入力装置３０及び入力制御部１１及び制御部１３を介して入力されたユーザからの入力指示に基づいて、ビューポイントの組合せを登録、編集又は削除する。具体的には、ビューポイントの組合せの登録が選択された場合、ビューポイント組合せ管理部１５は、記憶装置２０ｂからビューポイントデータ２１を読み出して、入力装置３０から入力された抽出条件に合致するビューポイント及びバリューの組合せを抽出し、新たな組合せ識別子を採番して、新たな組合せ識別子と、抽出されたビューポイントとバリューの組合せを関連づけてビューポイント組合せデータ２２に挿入して記憶装置２０ａに記憶する。ビューポイントの組合せの編集が選択され、ビューポイントの組合せの識別子と編集後のビューポイントの組合せが入力された場合、ビューポイント組合せ管理部１５は、記憶装置２０ａからビューポイント組合せデータ２２を読み出して、入力されたビューポイントの組合せの識別子に関連づけられたビューポイントの組合せを、入力された編集後のビューポイントの組合せに更新して記憶装置２０ａに記憶する。ビューポイントの組合せの削除が選択され、ビューポイントの組合せの識別子が入力された場合、ビューポイント組合せ管理部１５は、記憶装置２０ａからビューポイント組合せデータ２２を読み出して、入力されたビューポイントの組合せの識別子と、入力されたビューポイントの組合せの識別子に関連づけられたビューポイントの組合せを削除して記憶装置２０ａに記憶する。
【００４７】
モデル管理部１６は、入力装置３０及び入力制御部１１及び制御部１３を介して入力されたユーザの入力装置３０からの指示に基づいてモデル仕様データのビューポイントの対応づけの登録が選択された場合、モデル仕様データを分類するビューポイントの識別子が入力されると、モデル管理部１６は、記憶装置からビューポイントデータ読み出し、入力されたビューポイントの識別子に関連づけられたバリューを出力装置に表示するとともに、ユーザの入力装置からの指示に基づいて、モデル仕様データを分類するビューポイントのバリューが入力されると、モデル仕様データの識別子に、入力されたビューポイントの識別子と、入力されたバリューを関連づけてモデルデータ２３として記憶装置２０ｂに記憶する。モデル仕様データの編集が選択され、モデル仕様データの識別子と編集後のビューポイントの識別子及びバリューが入力された場合、モデル管理部１６は、記憶装置からモデルデータ２３を読み出して、入力されたモデル仕様データの識別子に関連づけられたビューポイントの識別子及びバリューを、入力された編集後のビューポイントの識別子及びバリューに更新して記憶装置２０ｂに記憶する。モデル仕様データの削除が選択され、モデル仕様データの識別子が入力されると、記憶装置２０ｂからモデルデータ２３を読み出して、入力されたモデル仕様データの識別子及びモデル仕様データの識別子に関連づけられたビューポイントの識別子及びバリューを削除して記憶装置２０ｂに記憶する。
【００４８】
モデル複合部１７は、入力装置３０及び入力制御部１１及び制御部１３を介して入力されたユーザからの入力指示に基づいて、リスト及び複合モデルデータを登録、編集又は削除する。具体的には、モデルの複合が選択され、ビューポイントの識別子及びバリューが入力されると、モデル複合部１７は、記憶装置からモデルデータを読み出して、入力されたビューポイントの識別子及びバリューに関連づけられたモデル仕様データの識別子を抽出し、複合か識別子を採番して、複合化されたモデル仕様データを識別する複合化識別子に、ビューポイントとバリューの組合せが関連づけられたリストと、リストのビューポイント及びバリューに関連づけられたモデル仕様データの識別子とが関連づけられた複合モデルデータを記憶装置に記憶する。モデルの複合の編集が選択され、複合化識別子と編集後のリスト又はビューポイントの識別子及びバリューが入力された場合、モデル複合部１７は、記憶装置２０ｂから複合モデルデータ２４を読み出して、入力された複合化識別子のリスト又はビューポイントの識別子及びバリューを、入力された編集後のリスト又はビューポイントの識別子及びバリューに更新して記憶装置２０ｂに記憶する。モデルの複合の削除が選択され、複合化識別子が入力された場合、記憶装置２０ｂから複合モデルデータ２４を読み出して、入力された複合化識別子と、複合化識別子に関連づけられたリスト、ビューポイントの識別子及びバリューを削除して記憶装置２０ｂに記憶する。
【００４９】
ここで図４乃至図７を参照して、本発明の最良の実施の形態に係る仕様再利用支援装置１によって扱われるモデル仕様データとビューポイント及びバリューの関係についてＵＭＬを用いて説明する。図４乃至図１０において、白抜きの四角はモデル仕様データを、濃いハッチングが施された四角はビューポイントを、薄いハッチングが施された四角はビューポイントのバリューを示している。
【００５０】
図４は、データモデルのモデル仕様データにおけるモデル定義の例である。図４は、モデルと、モデルを継承するデータモデルと、データモデルを継承する概念データモデル、論理データモデル及び物理データモデルを備える。概念データモデルはコンポーネントとしてＡ社概念データモデル及びＢ社概念データモデルを備える。論理データモデルはコンポーネントとしてＡ社論理データモデル及びＢ社論理データモデルを備える。物理データモデルはコンポーネントとしてＡ社物理データモデル及びＢ社物理データモデルを備える。本発明では、この様にモデルは予め外部データベースに設定されているものとし、この様にデータの定義方法と蓄積方法は本発明の範囲外であるとする。
【００５１】
図５は、図４に示したモデルにビューポイント及びバリューを設定した結果を示している。データモデルは、ビューポイント「仕様と検証」についてバリュー「仕様」が、ビューポイント「専門軸」についてバリュー「データWhat」が関連づけられている。又、概念データモデルは「抽象軸」についてバリュー「ビジネスモデル」が関連づけられ、論理データモデルは「抽象軸」についてバリュー「システムモデル」が関連づけられ、物理データモデルは「抽象軸」についてバリュー「技術モデル」が関連づけられている。
【００５２】
図６は、データテストモデルのモデル仕様データにおけるモデルにビューポイント及びバリューを設定した結果を示している。データモデルに関するビューポイント及びバリューを設定した図５と比べて、データテストモデルのビューポイント「仕様と検証」についてバリュー「検証仕様」が関連づけられている点が異なる。
【００５３】
図７は、Ａ社の注文システムに関するモデル構成とビューポイントのバリューを関連づけた図である。Ａ社の注文システムのモデルは、データモデルと機能モデルと非機能モデルを備える。データモデルはデータ実体を含み、このデータ実体はビューポイント「専門軸」の「データWhat」に関連づけられている。Ａ社注文データはデータ実体のコンポーネントであるとともに、ビューポイント「顧客」のバリュー「Ａ社」に関連づけられ、ビューポイント「データWhat」のバリュー「注文」に関連づけられている。
【００５４】
図４乃至図７に示したように、システム開発の成果物であるモデル仕様データは、それぞれビューポイント及びバリューが関連づけられる。一つのモデル仕様データ及びビューポイントに関連づけられるバリューは一つであるが、一つのモデル仕様データに複数のビューポイント及びバリューの対が関連づけられても良い。又、一つのモデル仕様データについて全てのビューポイントについてバリューが関連づけられる必要はない。
【００５５】
図８乃至図１０は、複合モデルを説明する図である。
【００５６】
図８は（ａ）は、Ａ社の要求仕様をグループ化し、Ａ社に関する要求仕様としてモデルを複合した例である。この場合、図８（ａ）に示されるＡ社要求仕様のグループには、ビューポイント「顧客」のバリュー「Ａ社」及びビューポイント「仕様と検証」の「仕様」を検索条件として抽出されたモデル仕様データの識別子が含まれる。一方、図８（ｂ）は、Ａ社及びＢ社の各種のモデルをグループ化し、要求仕様の参照モデルとしてモデルを複合した例である。この場合、図８（ｂ）に示される要求仕様のグループには、ビューポイント「顧客」のバリュー「Ａ社」と「Ｂ社」及びビューポイント「仕様と検証」の「仕様」を検索条件として抽出されたモデル仕様データの識別子が含まれる。
【００５７】
図９（ａ）は、Ａ社のデータに関するモデルをグループ化し、Ａ社データモデルとしてモデルを複合した例である。この場合、図９（ａ）に示されるＡ社データモデルのグループには、ビューポイント「顧客」のバリュー「Ａ社」及びビューポイント「専門軸」の「データWhat」を検索条件として抽出されたモデル仕様データの識別子が含まれる。一方、図９（ｂ）は、Ａ社及びＢ社のデータモデルをグループ化し、データに関する参照モデルとしてモデルを複合した例を示す。この場合、図９（ｂ）に示されるデータモデルのグループには、ビューポイント「顧客」のバリュー「Ａ社」と「Ｂ社」及びビューポイント「仕様と検証」のバリュー「仕様」を検索条件として抽出されたモデル仕様データの識別子が含まれる。
【００５８】
図１０（ａ）は、図７に示したモデルデータについて、Ａ社注文コンポーネントとして、Ａ社注文データ、Ａ社注文登録、Ａ社注文削除、Ａ社注文変更、Ａ社注文参照、Ａ社注文ログ取得、Ａ社注文データ暗号化、Ａ社注文データ複合のデータ及び機能の仕様の集合がグループ化されて整理された結果を示している。一方、図１０（ｂ）は、Ａ社とＢ社の注文コンポーネントとして、図１０（ａ）に示したＡ社の注文コンポーネントの他に、Ｂ社注文データ、Ｂ社注文登録、Ｂ社注文論理削除、Ｂ社注文変更、Ｂ社注文参照、Ｂ社注文ログ取得、Ｂ社メール送信、Ｂ社エラーメッセージなどのデータ及び機能の仕様の集合がグループ化され、注文コンポーネントに関する参照モデルとして定義した結果である。
【００５９】
（支援再利用支援プログラム）
次に図１１乃至図２２を参照して、本発明の最良の実施の形態に係る仕様再利用支援プログラムについて説明する。
【００６０】
図１１は、仕様再利用支援プログラムの概要を説明している。まず、ステップＳ１において、入力制御部１１から、入力装置３０においてユーザにより入力されたユーザ情報が制御部１３に送信され、ステップＳ２及びステップＳ３において、入力されたユーザ情報に基づいて、処理が振り分けられる。具体的には、ビューポイント管理部１４によるステップＳ４のビューポイントのバリューの登録、編集又は削除、ビューポイント組合せ管理部１５によるステップＳ５のビューポイントの組合せの登録、編集又は削除、モデル管理部１６によるステップＳ６のモデルへのビューポイントとバリューの対応づけ登録、編集又は削除、モデル複合部１７によるステップＳ７のモデルの複合、編集又は削除のいずれかの処理が行われる。各処理については、図１２乃至図２２を参照して後述する。
【００６１】
ステップＳ４乃至ステップＳ７のいずれかの処理が完了すると、ステップＳ８において制御部１３によって処理の結果が取得され、ステップＳ９において、ユーザが閲覧する出力装置４０に出力するために、出力制御部１２へ情報を送信し、処理を終了する。
【００６２】
図１２乃至図１４は、ビューポイント管理部１４による処理のフローチャートである。まずステップＳ１０１において、出力装置４０にメニューが表示させる。このメニューには、「ビューポイントの登録」、「ビューポイントの編集」又は「終了」のいずれかが含まれている。ステップＳ１０２において、入力装置３０からメニューが選択されると、次の処理に進む。
【００６３】
ステップＳ１０２において「終了」がクリックされたと判定されると処理を終了する。
【００６４】
ステップＳ１０２において「ビューポイントの登録」がクリックされたと判定されると、ステップＳ１０３において、新たに登録するビューポイントの名称が入力装置３０から入力れビューポイント管理部１４によって取得される。ステップＳ１０４においてビューポイントの識別子が発行されると、ステップＳ１０５においてビューポイントデータへ２１ビューポイントの識別子及びビューポイントの名称が登録される。ステップＳ１０６において、ユーザからの入力指示によりビューポイントの登録を繰り返すと判定された場合はステップＳ１０３に戻り、登録を終了する場合はステップＳ１０７に進む。ステップＳ１０７においては、ユーザからの入力指示によりバリューを登録しない場合はステップＳ１０１に戻り、バリューを登録する場合はステップＳ１３１に進む。
【００６５】
一方ステップＳ１０２において「ビューポイントの編集」がクリックされたと判定されると、ステップＳ１０８において、ユーザの入力指示により編集するビューポイントの検索条件が入力される、検索条件が入力されると、ステップＳ１０９において記憶装置２０ａに記憶されたビューポイントデータ２１を読み出し、入力された検索条件に適合するビューポイントを抽出し、ステップＳ１１０において出力装置４０に結果を出力する。ステップＳ１１１において、ユーザからの入力指示により更に検索を繰り返す場合はステップＳ１０８に戻り、検索を終了し編集を実行する場合はステップＳ１１２に進む。ステップＳ１１２において、ユーザからの入力指示によりメニューを表示する場合はステップＳ１０１に戻る。一方ステップＳ１１２において、ユーザからの入力指示によりバリューを編集する場合はステップＳ１３１に進む。
【００６６】
ステップＳ１０７においてバリューの登録が選択された場合又はステップＳ１１２においてバリューの編集が選択された場合、ステップＳ１３１において、バリューの登録、編集又は削除の処理に振り分けられる。バリューの登録の場合、ステップＳ１３２においてユーザの入力指示により入力されたバリューの情報を取得し、ステップＳ１３３においてビューポイントとバリューの対のＩＤを発行し、ステップＳ１３４においてステップＳ１３３で発行されたＩＤにビューポイントとステップＳ１３２において入力されたバリューを関連づけてビューポイントデータ２１に登録する。ステップＳ１３１においてバリューの削除が選択された場合、ステップＳ１３５において、選択されたバリューをビューポイントデータ２１から削除して、記憶装置２０ａに記憶する。ステップＳ１３１においてバリューの編集が選択された場合、ステップＳ１３６においてユーザの入力指示により編集されたバリューを取得し、ステップＳ１３７において編集されたバリューをビューポイントデータ２１へ登録する。
【００６７】
ステップＳ１１２においてビューポイントの編集が選択された場合、ステップＳ１６１において、ビューポイントの編集又は削除のいずれか一つの処理に振り分けられる。ユーザの入力指示によりビューポイントを編集する場合、ステップＳ１６２において編集後のビューポイントの情報を取得し、ステップＳ１６３において編集後のビューポイントをビューポイントデータ２１に登録する。一方、ユーザの入力指示によりビューポイントを削除する場合、ステップＳ１６４において削除するビューポイントの情報をビューポイントデータ２１から削除する。ステップＳ１６５において続けて編集する場合、ステップＳ１１０に戻り対象となるビューポイントデータを出力装置４０に表示する。一方ステップＳ１６５において編集を継続しない場合、ステップＳ１０１において出力装置４０にメニューを表示する。
【００６８】
図１５及び図１６は、ビューポイント組合せ管理部１５による処理のフローチャートである。まずステップＳ２０１において、出力装置４０にメニューを表示させる。このメニューには、「ビューポイントの組合せ登録」、「ビューポイントの組合せ編集」又は「終了」のいずれかが含まれている。ステップＳ２０２において、入力装置３０からメニューが選択されると、次の処理に進む。
【００６９】
ステップＳ２０２において「終了」がクリックされたと判定されると処理を終了する。
【００７０】
ステップＳ２０２において「ビューポイントの組合せ登録」がクリックされたと判定されると、ステップＳ２０３において、出力装置４０にビューポイントとバリューの一覧を表示する。更に、ユーザによる入力指示によりステップＳ２０４において組合せの対象となるビューポイントを、ステップＳ２０５において組合せの対象となるビューポイントのバリューが選択され、選択された情報がビューポイント組合せ管理部１５に入力される。ステップＳ２０６において、ステップＳ２０４において選択されたビューポイントについて更にバリューを選択する場合はステップＳ２０５に戻り、バリューの選択を終了する場合はステップＳ２０７に進む。ステップＳ２０７において、ステップＳ２０４において選択されたビューポイント以外のビューポイントを選択する場合はステップＳ２０４に戻り、ビューポイントの選択を終了する場合はステップＳ２０８に進む。
【００７１】
次に、ステップＳ２０８において、ステップＳ２０４及びステップＳ２０５において選択されたビューポイント及びビューポイントのバリューの組合せ情報が入力されると、ステップＳ２０９においてこの組合せを識別するＩＤを発行する。ステップＳ２１０において、ステップＳ２０９において発行されたＩＤとステップＳ２０８において取得されたビューポイント組合せ情報とを関連づけてビューポイント組合せデータ２２に登録する。更にビューポイントの組合せを登録する場合、ステップＳ２０３に戻り、ビューポイントの組合せ登録を終了する場合、ステップＳ２０１に戻りメニューが表示される。
【００７２】
一方、ステップＳ２０２において「ビューポイントの組合せ編集」がクリックされたと判定されると、ステップＳ２１２において、ユーザの入力指示により編集するビューポイントの組合せの検索条件が入力されると、ステップＳ２１３において、記憶装置２０ａに記憶されたビューポイント組合せデータ２２を読み出し、入力された検索条件に適合するビューポイントの組合せを抽出し、ステップＳ２１４において、出力装置４０に結果を表示する。ステップＳ２１５において、ユーザからの入力指示により更に検索を繰り返す場合はステップＳ２１２に戻り、検索を終了し編集を実行する場合はステップＳ２５１に進み、ユーザからの入力指示によりメニューを表示する場合はステップＳ２０１に戻る。
【００７３】
ステップＳ２１５においてビューポイントの組合せの編集が選択された場合、ステップＳ２５１においてビューポイントの組合せの編集又は削除の処理に振り分けられる。ビューポイントの組合せの編集が選択された場合、ステップＳ２５２において、ユーザの入力指示により入力された編集後のビューポイントの組合せの情報を取得し、ステップＳ２５３において、編集後のビューポイントの組合せをビューポイント組合せデータ２２に登録し記憶装置２０ａに記憶する。一方ステップＳ２５１においてビューポイントの組合せの削除が選択された場合、ステップＳ２５４において、ユーザの入力指示により選択されたビューポイントの組合せが削除されたビューポイント組合せデータ２２を記憶装置２０ａに記憶する。ステップＳ２５５において続けて編集する場合、ステップＳ２１４に戻り対象となるビューポイントの組合せデータを出力装置４０に表示する。一方ステップＳ２５５において編集を継続しない場合、ステップＳ２０１において出力装置４０にメニューを表示する。
【００７４】
図１７及び図１８は、モデル管理部１６による処理のフローチャートである。まずステップＳ３０１において、出力装置４０にメニューが表示させる。このメニューには、モデルの「登録」、「編集」又は「終了」のいずれかが含まれている。ステップＳ３０２において、入力装置３０からメニューが選択されると、次の処理に進む。
【００７５】
ステップＳ３０２において「終了」がクリックされたと判定されると処理を終了する。
【００７６】
ステップＳ３０２においてモデルの「登録」がクリックされたと判定されると、ステップＳ３０３において、出力装置４０にモデルの一覧を表示する。更に、ユーザの入力指示によりステップＳ３０４において登録の対象となるモデルが選択される。更にステップＳ３０５においてビューポイントデータ２１から登録の対象となるビューポイントが選択され、更にステップＳ３０６において選択したビューポイントに紐づくバリューが選択され、選択された情報がモデル管理部１６に入力される。ステップＳ３０７において、ステップＳ３０６において選択されたバリュー以外にも選択する場合はステップＳ３０６に戻り、バリューの選択を終了する場合はステップＳ３０８に進む。ステップＳ３０８において、ステップＳ３０５において選択されたビューポイント以外にも選択する場合はステップＳ３０５に戻り、ビューポイントの選択を終了する場合はステップＳ３０９に進む。
【００７７】
次に、ステップＳ３０９において、ステップＳ３０４、ステップＳ３０５及びステップＳ３０６において選択された情報を対応づけるＩＤを発行する。ステップＳ３１０において、ステップＳ３０９において発行されたＩＤとステップＳ３０４において選択されたモデル、ステップＳ３０５において選択されたビューポイント、ステップＳ３０６において選択されたビューポイントのバリューを関連づけてモデルデータ２３に登録する。更にモデルを登録する場合、ステップＳ３０３に戻り、モデルの登録を終了する場合、ステップＳ３０１に戻りメニューが表示される。
【００７８】
一方、ステップＳ３０２においてモデルの「編集」がクリックされたと判定されると、ステップＳ３１２において、ユーザの入力指示により編集するモデルとビューポイントとバリューの対応づけの検索条件が入力されると、ステップＳ３１３において、記憶装置２０ｂに記憶されたモデルデータ２３を読み出し、入力された検索条件に適合するモデルデータを抽出し、ステップＳ３１４において、出力装置４０に結果を表示する。ステップＳ３１５において、ユーザからの入力指示により更に検索を繰り返す場合はステップＳ３１２に戻り、検索を終了し編集を実行する場合はステップＳ３５１に進み、ユーザからの入力指示によりメニューを表示する場合はステップＳ３０１に戻る。
【００７９】
ステップＳ３１５においてモデルデータの編集が選択された場合、ステップＳ３５１においてモデルデータの編集又は削除の処理に振り分けられる。モデルデータの編集が選択された場合、ステップＳ３５２において、ユーザの入力指示により入力されたビューポイントとバリューが対応づけられた編集後のモデルの情報を取得し、ステップＳ３５３において、編集後の情報をモデルデータ２３に登録し記憶装置２０ｂに記憶する。一方ステップＳ３５１において削除が選択された場合、ステップＳ２５４において、ユーザの入力指示によりビューポイントとバリューが対応づけられたモデル情報が削除されたモデルデータ２３を記憶装置２０ｂに記憶する。ステップＳ３５５において続けて編集する場合、ステップＳ３１４に戻り対象となるモデルデータを出力装置４０に表示する。一方ステップＳ３５５において編集を継続しない場合、ステップＳ３０１において出力装置４０にメニューを表示する。
【００８０】
図１９乃至図２２は、モデル複合部１７による処理のフローチャートである。まずステップＳ４０１において、出力装置４０にメニューを表示させる。このメニューには、モデルの「複合」、「編集」又は「終了」のいずれかが含まれている。ステップＳ４０２において、入力装置３０からメニューが選択されると次の処理に進む。
【００８１】
ステップＳ４０２において「終了」がクリックされたと判定されると処理を終了する。
【００８２】
ステップＳ４０２においてモデルの「複合」がクリックされたと判定されると、ステップＳ４２１において、記憶装置２０ｂからモデルデータ２３を読み出して出力装置４０にモデルの一覧を表示する。ステップＳ４２２において、ユーザの入力指示によって選択された複合するモデルの範囲が入力され、モデルの範囲をモデルメモリへ登録する。
【００８３】
次にステップＳ４２３において、ユーザの入力指示により選択された複合モデルを作成する視点となるビューポイントとビューポイントを取得する。更にステップＳ４２４においてビューポイントの組合せを選択するか否かが判定される。
【００８４】
ステップＳ４２４において任意のビューポイントの組合せを選択する場合、ステップＳ４２５において、出力装置４０にビューポイントとバリューの一覧が表示される。ユーザからの入力指示によりステップＳ４２６においてビューポイントが選択され、ステップＳ４２８においてステップＳ４２６において選択されたビューポイントのバリューを選択させる。ステップＳ４２７において選択されたバリュー以外にもバリューを選択する場合、ステップＳ４２８においてステップＳ４２７に戻る。一方バリューの選択を終了する場合、ステップＳ４２９に進み、ステップＳ４２６において選択されたビューポイント以外にもビューポイントを選択する場合、ステップＳ４２６に戻る。一方ビューポイントの選択を終了する場合、ステップＳ４３０に進み、ステップＳ４２６及びステップＳ４２７で選択されたビューポイントの組合せをビューポイント組合せメモリに登録する。更にステップＳ４３１においてユーザからの入力指示によりビューポイントの組合せを登録すると判定された場合はステップＳ４２５に戻る。一方、ビューポイントの組合せの選択を終了する場合はステップＳ４２３に戻る。
【００８５】
ステップＳ４２４において予め登録されているビューポイントとバリューの組合せが選択された場合、ステップＳ４３２において、ユーザの入力指示により複合モデルを作成するビューポイントの組合せの検索条件が入力される。ステップＳ４３３において、記憶装置２０ａからビューポイント組合せデータ２２を読み出して、入力された検索条件に合致するビューポイントの組合せを検索し、ステップＳ４３４において検索結果を出力装置４０に表示する。ステップＳ４３５においてユーザからの入力指示によりビューポイントの組合せが選択されると、ステップＳ４３６においてビューポイントの組合せがビューポイント組合せメモリに登録される。更にステップＳ４３７においてユーザからの入力指示によりビューポイントの組合せを登録すると判定された場合はステップＳ４２５に戻る。一方、ビューポイントの組合せの選択を終了する場合はステップＳ４２３に戻る。
【００８６】
ステップＳ４２４においてビューポイントの組合せの選択が終了すると、ステップＳ４５１に進みモデルが抽出される。
【００８７】
ステップＳ４５１において、ステップＳ４３０又はステップＳ４３６において登録されたメモリからビューポイントの組合せを読み出し、処理されていないビューポイントの組合せのうちの一つが取得される。更に、ステップＳ４５２においてモデルメモリ上に登録されたメモリを読み出し、処理されていないモデルについて対応しているビューポイント及びバリューが取得される。
【００８８】
次にステップＳ４５３において、ステップＳ４５３において取得されたモデルに対応するビューポイント及びバリューが、ステップＳ４５１で取得されたビューポイント組合せメモリ上のビューポイントとバリューが一致するか否かが判定される。一致しない場合、ステップＳ４５６に進む。一致する場合、ステップＳ４５４において当該複合モデルが複合モデルメモリ上に登録されているかが判定される。登録されている場合はステップＳ４５６に進む。登録されていない場合はステップＳ４５５において当該モデルを複合モデル上に登録し、ステップＳ４５６に進む。
【００８９】
ステップＳ４５６においてモデルメモリ上の全てのモデルについて、ステップＳ４５３乃至ステップＳ４５５の処理がなされたが判定される。処理がなされていない場合はステップＳ４５２に戻り他のモデルについても同様に処理する。一方、モデルメモリ上の全てのモデルについて処理された場合、ステップＳ４５１に戻り、ビューポイント組合せメモリ上の全ての組合せについてステップＳ４５２乃至ステップＳ４５６の処理がなされたかが判定される。処理がなされていない場合はステップＳ４１に戻り他のビューポイント組合せについても同様に処理する。一方、ビューポイントの組合せメモリ上の全てのビューポイントの組合せについて処理された場合、ステップＳ４７１に進む。
【００９０】
ステップＳ４７１において、ステップＳ４５５で登録された複合モデルメモリに登録されたモデルを取得し、ステップＳ４７２においてビューポイント組合せメモリ上に登録されたビューポイント及びバリューを取得する。ステップＳ４７３においてユーザの入力指示により複合モデルの情報が入力されると、ステップＳ４７４において複合モデルへのＩＤが発行される。更に、ステップＳ４７５において、複合モデルＩＤにステップＳ４７１乃至ステップＳ４７３で取得した情報を関連づけて複合モデルデータ２４に登録する。ユーザの入力指示により処理を終了するか否かが判定され、処理を継続する場合はステップＳ４２１に進みモデルの一覧を表示する。一方、処理を終了する場合はモデルの複合の処理を終了する。
【００９１】
次に図２３乃至図２７を参照して、ビューポイント管理部１４によってビューポイントデータ２１に新たなビューポイントを登録する画面を説明する。  
新たなビューポイントを登録する場合、図２３に示すビューポイント設定画面Ｐ３０１が出力装置４０に表示される。ここで検索ボタンＢ３０１がクリックされると、図２４に示すビューポイント設定画面Ｐ３０２が表示される。ビューポイント設定画面Ｐ３０２においては、モデル表示部３０１にモデルのクラス図が表示される。図２４に示したモデル表示部３０１には、Ａ社概念データモデル表示部３０４を備え、ここにＡ社概念データモデルが表示される。ユーザによる入力装置３０からの指示によりＡ社概念データモデル表示部３０４が表示されているときに、図２５に示すビューポイント設定画面Ｐ３０３において選択ボタンＢ３０２がクリックされると、対象モデル表示部３０２に選択されていたモデルが表示される。ビューポイント設定画面Ｐ３０３のビューポイント及びバリュー選択部３０３には、ビューポイントが一覧表示されている。更に、ビューポイント及びバリュー選択部３０３において登録するビューポイントのバリューが選択されると、図２６に示すようなビューポイント設定画面Ｐ３０４が表示される。ビューポイント設定画面Ｐ３０４においては、ビューポイント「抽象軸」に関連づけられたバリュー「スコープ」、「ビジネスモデル」、「システムモデル」、「技術モデル」、「詳細モデル」が一覧できるバリュー候補表示部３０５が表示される。ユーザの入力装置３０からの指示によりバリュー候補からバリューが選択され、対象モデル表示部３０２に表示されたモデルに関連づけるビューポイント及びバリューが選択されると、図２７に示すビューポイント設定画面Ｐ３０５が表示される。ビューポイント設定画面Ｐ３０５において、バリュー表示部３０６にはユーザによって選択されたバリューが表示されている。登録ボタンＢ３０３がクリックされると、ビューポイント管理部１４は、対象モデル表示部３０２に表示されたモデル仕様データ「Ａ社概念データモデル」について、ビューポイント「抽象軸」及び「スコープ」を関連づけてビューポイントデータ２１に登録する。
【００９２】
ここではビューポイント管理部１４による新たなビューポイントの登録について説明したが、その他の処理についても同様の画面が表示される。
【００９３】
上述した様に本発明の最良の実施の形態に係る仕様再利用支援装置１は、再利用の観点となるものをビューポイント及びビューポイントのバリューに分けて、再利用の視点そのものをデータとして蓄積管理する。更に、予め設定されたビューポイント及びビューポイントのバリューをモデル仕様データに対して付与することにより、モデル仕様データの再利用を可能とする。又、ビューポイントの組合せの視点も導入し、ビューポイント及びバリューの集合に対しても新たな視点を定義し、データとして蓄積管理することにより、モデル仕様データの再利用を可能とする。この様に、モデル仕様データの再利用を行うユーザは、ビューポイント、ビューポイントのバリューの集合、又はビューポイントの組合せを指定することにより、所望する成果物の集合を抽出することができる。
【００９４】
又、抽出された成果物は、抽出の条件となったビューポイントとビューポイントのバリューの組合せでデータベースに蓄積することができる。この様に再利用の視点と再利用のために取り出した成果物の集合が蓄積され、再利用のノウハウそのものを可視化することができる。
【００９５】
この様に本発明によれば、再利用を行う際の考え方、観点などのノウハウを、ビューポイントとバリュー、ビューポイントとバリューの組合せという形式で登録管理することで、これらのノウハウも再利用することができる。又、既に蓄積されている成果物に対して、開発が完了した時点でも新たに分類や考え方の視点を追加することができる。又既に蓄積された成果物を新たな視点で複合化し、新たな成果物を生成することができる。
【００９６】
これにより、成果物の再利用を加速でき、ソフトウェアやシステムの開発の生産性の向上及び品質の安定に貢献することができる。
【００９７】
（その他の実施の形態）
上記のように、本発明の最良の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなる。
【００９８】
例えば、本発明の最良の実施の形態に記載した仕様再利用装置は、図１に示すように一つのハードウェア上に構成されても良いし、その機能や処理数に応じて複数のハードウェア上に構成されても良い。又、既存の情報システム上に実現されても良い。
【００９９】
本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
【図面の簡単な説明】
【０１００】
【図１】本発明の最良の実施の形態に係る仕様再利用支援装置の機能ブロック図である。
【図２】本発明の最良の実施の形態に係る仕様再利用支援装置のビューポイントデータをツリー構造で説明する図である。
【図３】本発明の最良の実施の形態に係る仕様再利用支援装置のビューポイントデータをマトリックスで説明する図である。
【図４】本発明の最良の実施の形態において、データモデルのモデル仕様データを説明する図である。
【図５】本発明の最良の実施の形態において、図４に示したモデルにビューポイント及びバリューを設定した結果を説明する図である。
【図６】本発明の最良の実施の形態において、データテストモデルのモデル仕様データにおけるモデルにビューポイント及びバリューを設定した結果を説明する図である。
【図７】本発明の最良の実施の形態において、Ａ社注文のモデル仕様データについて、関連づけられたビューポイントとバリューを説明する図である。
【図８】本発明の最良の実施の形態において、要求仕様に関して複合化されたモデル仕様データを説明する図である。
【図９】本発明の最良の実施の形態において、データモデルに関して複合化されたモデル仕様データを説明する図である。
【図１０】本発明の最良の実施の形態において、注文コンポーネントに関して複合化されたモデル仕様データを説明する図である。
【図１１】本発明の最良の実施の形態に係る仕様再利用支援プログラムの処理の概要を説明するフローチャートである。
【図１２】本発明の最良の実施の形態に係るビューポイント管理部による処理を説明する第１のフローチャートである。
【図１３】本発明の最良の実施の形態に係るビューポイント管理部による処理を説明する第２のフローチャートである。
【図１４】本発明の最良の実施の形態に係るビューポイント管理部による処理を説明する第３のフローチャートである。
【図１５】本発明の最良の実施の形態に係るビューポイント組合せ管理部による処理を説明する第１のフローチャートである。
【図１６】本発明の最良の実施の形態に係るビューポイント組合せ管理部による処理を説明する第２のフローチャートである。
【図１７】本発明の最良の実施の形態に係るモデル管理部による処理を説明する第１のフローチャートである。
【図１８】本発明の最良の実施の形態に係るモデル管理部による処理を説明する第２のフローチャートである。
【図１９】本発明の最良の実施の形態に係るモデル複合部による処理を説明する第１のフローチャートである。
【図２０】本発明の最良の実施の形態に係るモデル複合部による処理を説明する第２のフローチャートである。
【図２１】本発明の最良の実施の形態に係るモデル複合部による処理を説明する第３のフローチャートである。
【図２２】本発明の最良の実施の形態に係るモデル複合部による処理を説明する第４のフローチャートである。
【図２３】本発明の最良の実施の形態に係る仕様再利用支援装置において、ビューポイント及びバリューを設定する第１のビューポイント設定画面の一例である。
【図２４】本発明の最良の実施の形態に係る仕様再利用支援装置において、ビューポイント及びバリューを設定する第２のビューポイント設定画面の一例である。
【図２５】本発明の最良の実施の形態に係る仕様再利用支援装置において、ビューポイント及びバリューを設定する第３のビューポイント設定画面の一例である。
【図２６】本発明の最良の実施の形態に係る仕様再利用支援装置において、ビューポイント及びバリューを設定する第４のビューポイント設定画面の一例である。
【図２７】本発明の最良の実施の形態に係る仕様再利用支援装置において、ビューポイント及びバリューを設定する第５のビューポイント設定画面の一例である。
【符号の説明】
【０１０１】
１…仕様再利用支援装置
１０…中央処理制御装置
１１…入力制御部
１２…出力制御部
１３…制御部
１４…ビューポイント管理部
１５…ビューポイント組合せ管理部
１６…モデル管理部
１７…モデル複合部
２０、２０ａ、２０ｂ…記憶装置
２１…ビューポイントデータ
２２…ビューポイント組合せデータ
２３…モデルデータ
２４…複合モデルデータ
３０…入力装置
４０…出力装置
３０１…モデル表示部
３０２…対象モデル表示部
３０３…バリュー選択部
３０４…Ａ社概念データモデル表示部
３０５…バリュー候補表示部
３０６…バリュー表示部
【図１】
2006350851.tif 000003
【図２】
2006350851.tif 000004
【図３】
2006350851.tif 000005
【図４】
2006350851.tif 000006
【図５】
2006350851.tif 000007
【図６】
2006350851.tif 000008
【図７】
2006350851.tif 000009
【図８】
2006350851.tif 000010
【図９】
2006350851.tif 000011
【図１０】
2006350851.tif 000012
【図１１】
2006350851.tif 000013
【図１２】
2006350851.tif 000014
【図１３】
2006350851.tif 000015
【図１４】
2006350851.tif 000016
【図１５】
2006350851.tif 000017
【図１６】
2006350851.tif 000018
【図１７】
2006350851.tif 000019
【図１８】
2006350851.tif 000020
【図１９】
2006350851.tif 000021
【図２０】
2006350851.tif 000022
【図２１】
2006350851.tif 000023
【図２２】
2006350851.tif 000024
【図２３】
2006350851.tif 000025
【図２４】
2006350851.tif 000026
【図２５】
2006350851.tif 000027
【図２６】
2006350851.tif 000028
【図２７】
2006350851.tif 000029