(57)【要約】【課題】設計対象とするクラスの表示、選択、使いまわしを容易にする。【解決手段】ＵＭＬ図作成部１はオブジェクト指向技術によるクラス図を含むＵＭＬ図を作成してデータベース４に保存する。クラス表示部５はクラス図の全クラスを一覧表示し、この一覧表示画面でクラス毎に「表示する」・「表示しない」を設定でき、この設定で「表示する」のチェックが入れたクラスのみを表示する。  クラス表示履歴保存部６はクラス毎に「表示する」・「表示しない」が設定された設定履歴をファイル形式でデータベースに保存しておき、クラス一覧表示するときに、クラス毎の「表示する」・「表示しない」状態を復元する。さらに、設定履歴をデータベースに保存するときにファイル別に名前を付けて保存し、このファイル別の名前を指定して設定履歴を読み込み、この設定履歴を基にクラス表示を復元する。【選択図】図１
2008269271.tif 000002
【特許請求の範囲】
【請求項１】
統一モデリング言語（ＵＭＬ）に定める画面部品と文字の組み合わせで各機能要素を表記したＵＭＬ図を作成し、このＵＭＬ図を基に開発対象となるシステムの仕様作成、設計、実装を支援するソフトウェア開発支援システムにおいて、
オブジェクト指向技術によるクラス図を含むＵＭＬ図を作成してデータベースに保存するＵＭＬ図作成部と、
前記データベースに保存されるクラス図の全クラスを一覧表示し、この一覧表示画面でクラス毎に「表示する」・「表示しない」を設定でき、この設定で「表示する」のチェックが入れたクラスのみを表示するクラス表示部とを備えたことを特徴とするソフトウェア開発支援システム。
【請求項２】
前記クラス表示部によってクラス毎に「表示する」・「表示しない」が設定されたとき、この設定履歴をファイル形式で前記データベースに保存しておき、前記クラス表示部がクラス一覧表示するときに、クラス毎の「表示する」・「表示しない」状態を復元するクラス表示履歴保存部を備えたことを特徴とする請求項１に記載のソフトウェア開発支援システム。
【請求項３】
前記クラス表示履歴保存部は、クラス毎に「表示する」・「表示しない」が設定された設定履歴を前記データベースに保存するときにファイル別に名前を付けて保存し、このファイル別の名前を指定して設定履歴を読み込み、この設定履歴を基にクラス表示を復元することを特徴とする請求項２に記載のソフトウェア開発支援システム。
【請求項４】
統一モデリング言語（ＵＭＬ）に定める画面部品と文字の組み合わせで各機能要素を表記したＵＭＬ図を作成し、このＵＭＬ図を基に開発対象となるシステムの仕様作成、設計、実装を支援するソフトウェア開発支援方法において、
オブジェクト指向技術によるクラス図を含むＵＭＬ図を作成してデータベースに保存するＵＭＬ図作成ステップと、
前記データベースに保存されるクラス図の全クラスを一覧表示し、この一覧表示画面でクラス毎に「表示する」・「表示しない」を設定でき、この設定で「表示する」のチェックが入れたクラスのみを表示するクラス表示ステップとを有することを特徴とするソフトウェア開発支援方法。
【請求項５】
前記クラス表示ステップによってクラス毎に「表示する」・「表示しない」が設定されたとき、この設定履歴をファイル形式で前記データベースに保存しておき、前記クラス表示ステップがクラス一覧表示するときに、クラス毎の「表示する」・「表示しない」状態を復元するクラス表示履歴保存ステップを有することを特徴とする請求項４に記載のソフトウェア開発支援方法。
【請求項６】
前記クラス表示履歴保存ステップは、クラス毎に「表示する」・「表示しない」が設定された設定履歴を前記データベースに保存するときにファイル別に名前を付けて保存し、このファイル別の名前を指定して設定履歴を読み込み、この設定履歴を基にクラス表示を復元することを特徴とする請求項５に記載のソフトウェア開発支援方法。
【請求項７】
請求項４〜６に記載のソフトウェア開発支援方法における処理手順を、コンピュータで実行可能に構成したことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、統一モデリング言語（ＵＭＬ）によるソフトウェア開発支援システムおよび開発支援方法に係り、特にオブジェクト指向技術によるソフトウェア開発におけるクラスの表示、選択に関する。
【背景技術】
【０００２】
ＵＭＬ（Ｕｎｉｆｉｅｄ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ）は、ソフトウェア開発のためのモデリング言語であり、開発対象のシステムの構造を表現するための表記法で、開発者同士の意思疎通を図ることができる。
【０００３】
ＵＭＬによるソフトウェア開発には、開発対象となるシステムの仕様作成、設計、実装を支援する表記物として、ユースケース図（システムの機能定義）、アクティビティ図（動作の流れ）、シーケンス図（オブジェクト間の相互作用）、オブジェクト図（インスタンスのスナップショット表記）、クラス図（静的なモデルを定義）などを作成する。ＵＭＬには上記のユースケース図やクラス図などの１０個の図が定義されているが、画面や画面遷移を表現する図を作成する機能を持たせたものもある（例えば、非特許文献１参照）。
【０００４】
これらの図に使用される各機能要素は、ＵＭＬに定められる画面部品（矩形、楕円、円、矢印、アクター記号、コネクタ記号、ノード記号、選択記号など）および文字（名称や属性情報）の組み合わせで作成される。
【０００５】
オブジェクト指向技術において、クラスは、オブジェクトを共通点のある要素を抽象化し、それを枠組みとして定義する。つまり、クラスがある雛形とすると、オブジェクトがその実体という関係にある。このクラス図は、図９に例を示すように、クラスがどのような構造をしているか、クラスとクラスの間にどのような関係があるかを表現する。
【０００６】
また、特許文献１などのソフトウェア開発支援システムでは、図１０の（ａ）に例を示すように、設計しているクラスを一覧としてツリー上に並べ、システム開発者は、その中から所望のクラスを選択して、そのクラスの設計を進めるようにしている。
【非特許文献１】明電時報  ２００６  ９・１０月  通巻３１０号  Ｎｏ．５
【発明の開示】
【発明が解決しようとする課題】
【０００７】
開発対象の規模が小さいものであれば、設計時に生成されるクラスの個数はそれほど多くはないため、ツリー上に並んだクラス一覧から所望のクラスを表示、選択する操作は、比較的簡単である。
【０００８】
一方、開発対象の規模が大きくなると、設計時に生成されるクラスの個数が膨大になるため、ツリー上に並んだクラス一覧から所望のクラスを表示、選択する操作が、非常に困難となる。例えば、図１０の（ｂ）に示すように、開発者が担当するクラスが１，５，２０とすると、クラス１，５は画面表示されるが、クラス２０は画面表示されない。このため、すべてのクラス表示を得るには最終のクラス位置までスクロール操作して探す必要がある。
【０００９】
また、開発対象を複数の開発者で共同開発する場合は、各開発者が設計を担当するクラスは決まっており、それ以外のクラスはクラス一覧に表示されているとかえって邪魔になる。
【００１０】
本発明の目的は、設計対象とするクラスの表示、選択、使いまわしを容易にしたソフトウェア開発支援システム、開発支援方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明は、前記の課題を解決するため、クラス一覧には開発者が指定したクラスのみを表示できるようにし、さらに開発者が指定したクラス一覧に表示させるクラス群を設定履歴としてファイルなどのデータベース（記憶媒体）に保存しておき、さらにまた設定時にファイル別に名前を付けて保存するようにしたもので、以下のシステム構成、方法およびプログラムを特徴とする。
【００１２】
（１）統一モデリング言語（ＵＭＬ）に定める画面部品と文字の組み合わせで各機能要素を表記したＵＭＬ図を作成し、このＵＭＬ図を基に開発対象となるシステムの仕様作成、設計、実装を支援するソフトウェア開発支援システムにおいて、
オブジェクト指向技術によるクラス図を含むＵＭＬ図を作成してデータベースに保存するＵＭＬ図作成部と、
前記データベースに保存されるクラス図の全クラスを一覧表示し、この一覧表示画面でクラス毎に「表示する」・「表示しない」を設定でき、この設定で「表示する」のチェックが入れたクラスのみを表示するクラス表示部とを備えたことを特徴とする。
【００１３】
（２）前記クラス表示部によってクラス毎に「表示する」・「表示しない」が設定されたとき、この設定履歴をファイル形式で前記データベースに保存しておき、前記クラス表示部がクラス一覧表示するときに、クラス毎の「表示する」・「表示しない」状態を復元するクラス表示履歴保存部を備えたことを特徴とする。
【００１４】
（３）前記クラス表示履歴保存部は、クラス毎に「表示する」・「表示しない」が設定された設定履歴を前記データベースに保存するときにファイル別に名前を付けて保存し、このファイル別の名前を指定して設定履歴を読み込み、この設定履歴を基にクラス表示を復元することを特徴とする。
【００１５】
（４）統一モデリング言語（ＵＭＬ）に定める画面部品と文字の組み合わせで各機能要素を表記したＵＭＬ図を作成し、このＵＭＬ図を基に開発対象となるシステムの仕様作成、設計、実装を支援するソフトウェア開発支援方法において、
オブジェクト指向技術によるクラス図を含むＵＭＬ図を作成してデータベースに保存するＵＭＬ図作成ステップと、
前記データベースに保存されるクラス図の全クラスを一覧表示し、この一覧表示画面でクラス毎に「表示する」・「表示しない」を設定でき、この設定で「表示する」のチェックが入れたクラスのみを表示するクラス表示ステップとを有することを特徴とする。
【００１６】
（５）前記クラス表示ステップによってクラス毎に「表示する」・「表示しない」が設定されたとき、この設定履歴をファイル形式で前記データベースに保存しておき、前記クラス表示ステップがクラス一覧表示するときに、クラス毎の「表示する」・「表示しない」状態を復元するクラス表示履歴保存ステップを有することを特徴とする。
【００１７】
（６）前記クラス表示履歴保存ステップは、クラス毎に「表示する」・「表示しない」が設定された設定履歴を前記データベースに保存するときにファイル別に名前を付けて保存し、このファイル別の名前を指定して設定履歴を読み込み、この設定履歴を基にクラス表示を復元することを特徴とする。
【００１８】
（７）上記のソフトウェア開発支援方法における処理手順を、コンピュータで実行可能に構成したことを特徴とする。
【発明の効果】
【００１９】
以上のとおり、本発明によれば、クラス一覧には開発者が指定したクラスのみを表示できるようにし、さらに開発者が指定したクラス一覧に表示させるクラス群を設定履歴としてファイルなどのデータベース（記憶媒体）に保存しておき、さらにまた設定時にファイル別に名前を付けて保存するようにしたため、設計対象とするクラスの表示、選択、使いまわしが容易になる。
【００２０】
具体的には、
（１）クラス一覧には、開発者が指定したクラスのみを表示させることにより、その開発者が設計を担当するクラスを簡単に選択することができる。
【００２１】
（２）開発者が指定した、クラス一覧に表示させるクラス群をファイルなどの記憶媒体に設定履歴として保存しておき、次回、その記憶媒体を読み込ませることにより、クラス一覧に指定したいクラス群を簡単に指定することができる。
【００２２】
（３）記憶媒体に保存するファイル別に名前を付けることにより、開発者ごとにクラス表示状態を作成し、それを使いまわすことができる。
【発明を実施するための最良の形態】
【００２３】
図１は、本発明の実施形態を示すソフトウェア開発支援システムの構成図であり、主にクラス設計に関連する機能ブロックのみを示す。図１中の各部は、コンピュータシステムのハードウェア資源とこれに搭載するソフトウェアによって機能構成される。
【００２４】
ＵＭＬ図作成部１は、開発対象となるシステムの仕様作成、設計、実装を支援する表記手段として、ユースケース図、アクティビティ図、シーケンス図、クラス図などの１０個の図をディスプレイ（表示媒体）２の画面上で作成する。さらに、上記１０個の図の他に、非特許文献１のように、画面や画面遷移を表現する図を作成する。
【００２５】
これらの図の作成に際して、ＵＭＬ共通の画面部品３に用意した矩形、アクター記号、コネクタ記号、ノートなどをディスプレイ２の画面上で作成中の図に適宜貼り付ける。さらに、ＵＭＬ図の図形情報に名称や属性情報などを設定する。
【００２６】
データベース４は、ＵＭＬ図作成部１によって作成されたＵＭＬ図の図形情報およびその名称や属性情報を関連付けて保存する。
【００２７】
以上の構成により作成されるＵＭＬ図において、本実施形態では、クラス設計に際してクラスの表示、選択、使いまわしを容易にしたソフトウェア開発支援システムを提案するものであり、以下、詳細に説明する。
【００２８】
ＵＭＬ図作成部１で作成したＵＭＬ図はデータベース４に保存されており、クラス図ではクラス間の集約関係や多重度が設定されて保存されている。本実施形態では、データベース４に保存される全クラスを一覧表示し、この一覧表示画面でクラス毎に「表示する」・「表示しない」を設定できるクラス表示部５を設ける。これは、図２の（ａ）に示す一覧表示画面で、クラス毎に「表示する」状態と「表示しない」状態の２つの状態を持たせ、そのクラスにチェックを入れると「表示する」状態となり、そのクラスからチェックを外すと「表示しない」状態となる機能構成とする。
【００２９】
さらに、クラス表示部５は、クラス一覧表示で、「表示する」のチェックを入れたクラスのみを表示するフィルタリング機能を設ける。これは、図２の（ａ）に示すクラス一覧表示画面で、「表示する」のチェックを入れると、図２の（ｂ）に示すように、「表示する」状態のクラスのみを表示し、「表示しない」状態のクラスは表示しない。チェックを外すと「表示する」・「表示しない」に関係なくすべてのクラスを表示する。
【００３０】
上記のクラス表示部５によるクラス表示では、ソフトウェア開発支援システムを終了して再起動すると、再度、開発者は表示したいクラスにチェックを入れ、表示したくないクラスからチェックを外す作業を行わなければならない。
【００３１】
そこで、ソフトウェア開発支援システムのクラス一覧に、クラス毎の「表示する」・「表示しない」の設定履歴をファイル形式でデータベース（記憶媒体）に保存しておくクラス表示履歴保存部６を設ける。このクラス表示履歴を用意しておくことで、クラス表示部５がクラス一覧表示するときに、クラス毎の「表示する」・「表示しない」状態を検索条件にした読み込みで、各クラス表示に際してこの状態を復元する。
【００３２】
以下、主にクラス表示部５とクラス表示履歴保存部６に関わる処理を詳細に説明する。
【００３３】
（１）クラス一覧のすべてのクラスの「表示する」・「表示しない」状態を記憶媒体に保存し、その読み込みを行う場合。
【００３４】
図３の（ａ）はクラスの保存手順を示す。まず、クラス一覧のクラス数を記憶媒体に保存し（Ｓ１）、クラス一覧に次のクラスがあるか調べ（Ｓ２）、次のクラスがある場合はクラス一覧からクラス（仮にＡとする）を取り出し（Ｓ３）、当該クラス（Ａ）を一意に特定できる識別子を記憶媒体に保存し（Ｓ４）、クラス（Ａ）の表示状態（「表示する」・「表示しない」状態）を記憶媒体に保存する（Ｓ５）。これら保存処理を、クラス一覧のすべてのクラスについて、繰り返し行う。
【００３５】
図３の（ｂ）はクラスの読み込み手順を示す。まず、記憶媒体から、クラス数を読み込み（Ｓ６）、このクラス数から次のクラスがあるか調べ（Ｓ７）、ある場合には、以下を繰り返す。まず、記憶媒体からクラスの識別子（仮にＢとする）を読み込み（Ｓ８）、次いで記憶媒体からクラスの「表示する」・「表示しない」の表示状態（仮にＣとする）を読み込み（Ｓ９）、クラスの識別子（Ｂ）からクラス（仮にＤとする）を取得する（Ｓ１０）。このクラス（Ｄ）が存在すればそれに表示状態（Ｃ）を設定し（Ｓ１１）、存在しなければ次のクラスがあるか調べる。
【００３６】
（２）「表示する」クラスのみを記憶媒体に保存し、その読み込みを行う場合。
【００３７】
図４の（ａ）は「表示する」クラスの保存手順を示す。まず、クラス一覧から「表示する」クラス群（仮にＡとする）を取得し（Ｓ２１）、この「表示する」クラス群（Ａ）のクラス数を記憶媒体に保存し（Ｓ２２）、表示するクラス群（Ａ）に次の「表示する」クラスがあるか調べ（Ｓ２３）、次のクラスがある場合はクラス群（Ａ）から次のクラス（仮にＢとする）を取り出し（Ｓ２４）、当該クラス（Ｂ）を一意に特定できる識別子を記憶媒体に保存する（Ｓ２５）。これら保存処理を、「表示する」クラス一覧のすべてのクラスについて、繰り返し行う。
【００３８】
図４の（ｂ）は「表示する」クラスの読み込み手順を示す。まず、クラス一覧のすべてのクラスを「表示しない」状態に設定し（Ｓ２６）、次いで記憶媒体からクラスの個数を読み込み（Ｓ２７）、このクラス数から次のクラスがあるか調べ（Ｓ２８）、ある場合には、以下を繰り返す。まず、記憶媒体からクラスの識別子（仮にＣとする）を読み込み（Ｓ２９）、このクラスの識別子（Ｃ）からクラス（仮にＤとする）を取得する（Ｓ３０）。このクラス（Ｄ）が存在すればそれに「表示する」状態を設定し（Ｓ３１）、存在しなければ次のクラスがあるか調べる。
【００３９】
（３）「表示しない」クラスのみを記憶媒体に保存し、その読み込みを行う場合。
【００４０】
図５の（ａ）は「表示しない」クラスの保存手順を示す。まず、クラス一覧から「表示しない」クラス群（仮にＡとする）を取得し（Ｓ４１）、この「表示しない」クラス群（Ａ）のクラス数を記憶媒体に保存し（Ｓ４２）、表示しないクラス群（Ａ）に次の「表示しない」クラスがあるか調べ（Ｓ４３）、次のクラスがある場合はクラス群（Ａ）から次のクラス（仮にＢとする）を取り出し（Ｓ４４）、当該クラス（Ｂ）を一意に特定できる識別子を記憶媒体に保存する（Ｓ４５）。これら保存処理を、「表示しない」クラス一覧のすべてのクラスについて、繰り返し行う。
【００４１】
図５の（ｂ）は「表示しない」クラスの読み込み手順を示す。まず、クラス一覧のすべてのクラスを「表示する」状態に設定し（Ｓ４６）、次いで記憶媒体から、クラスの個数を読み込み（Ｓ４７）、このクラス数から次のクラスがあるか調べ（Ｓ４８）、ある場合には、以下を繰り返す。まず、記憶媒体からクラスの識別子（仮にＣとする）を読み込み（Ｓ４９）、このクラスの識別子（Ｃ）からクラス（仮にＤとする）を取得する（Ｓ５０）。このクラス（Ｄ）が存在すればそれに「表示しない」状態を設定し（Ｓ５１）、存在しなければ次のクラスがあるか調べる。
【００４２】
（４）上記の（１）〜（３）のいずれも、最後に「表示する」クラスのみが「表示する」にチェックが入っている場合は、「表示する」状態のクラスのみを表示し、チェックが入っていない場合は、すべてのクラスを表示する。したがって、ある特定の状況での、各クラスの「表示する」・「表示しない」状態を保存／復元することしかできない。すなわち、最後に保存した状態しか復元することができない。
【００４３】
そこで、クラス表示履歴保存部６は、これらの設定履歴を保存するときにファイル別の名前を付けて記憶媒体に保存する機能を設ける。さらに、上記で保存した記憶媒体から、名前を指定して設定履歴を読み込み、この設定履歴を基にクラス表示を復元する機能を設ける。
【００４４】
これら機能付加によりクラスの保存手順と読み込み手順は、図６〜図８によって実現され、図３〜図５と比べて、いずれも、保存および読み込む記憶媒体の名前を指定する以外は、同じ処理になる。
【００４５】
なお、本発明は、上記の実施形態で示すソフトウェア開発支援システムの一部又は全部の処理手順を有する開発支援方法とすること、あるいはこの方法の処理手順をコンピュータで実行可能に構成したプログラムとして提供することができる。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施形態を示すソフトウェア開発支援システムの構成図。
【図２】クラス一覧の例。
【図３】全てのクラスの表示状態の保存と読み込み手順。
【図４】表示するクラスの表示状態の保存と読み込み手順。
【図５】表示しないクラスの表示状態の保存と読み込み手順。
【図６】全てのクラス（名前付き）の表示状態の保存と読み込み手順。
【図７】表示するクラス（名前付き）の表示状態の保存と読み込み手順。
【図８】表示しないクラス（名前付き）の表示状態の保存と読み込み手順。
【図９】ＵＭＬのクラス図の例。
【図１０】ソフトウェア開発支援システムのクラス一覧の例。
【符号の説明】
【００４７】
１  ＵＭＬ図作成部
２  ディスプレイ
３  ＵＭＬ図画面部品
４  ＵＭＬ図データベース
５  クラス表示部
６  クラス表示履歴保存部
【図１】
2008269271.tif 000003
【図２】
2008269271.tif 000004
【図３】
2008269271.tif 000005
【図４】
2008269271.tif 000006
【図５】
2008269271.tif 000007
【図６】
2008269271.tif 000008
【図７】
2008269271.tif 000009
【図８】
2008269271.tif 000010
【図９】
2008269271.tif 000011
【図１０】
2008269271.tif 000012