(57)【要約】【課題】自然言語で記述されたシステムの振る舞いを記したシナリオを作成し、定型化された分析方法に従い図解編集装置を用いて分析作業を行うことで、オブジェクトモデルを構築することを目的とした分析方法と支援装置を提供する。【解決手段】図１はシナリオ分析によるオブジェクトモデル構築支援方法の原理構成図である。同図において１はシステムの振る舞いを事象単位で記述した動作シナリオを編集する手段であり、２は動作シナリオに記述されている各事象と連動する図解を編集する手段であり、３はシナリオから抽出した図解要素を表示する手段であり，４は図解要素間の関連を表示する手段であり、５は２における全ての図解を重ね合わせた全体図解を編集する手段であり、６は分析者が作成した図解要素のまとまりを編集する手段である。【選択図】  図１
2004157950.tif 000002
【特許請求の範囲】
【請求項１】
自然言語で記述したシステムの動作シナリオをシナリオ編集手段１を用いて編集し、動作シナリオと連動する図解の編集手段２が表示する図解画面上に、動作シナリオ中の語句から抽出した名詞的あるいは動詞的図解要素を図解要素表示手段３および要素間の関連表示手段４を用いて図解化し、それらを重ね合わせた全体図解の表示手段５で表示される図解要素の構造を分析者が観察することを通じて図解要素を適切に分類し、図解要素のまとまり編集手段６を用いて図解要素を分類し、適切なオブジェクトモデルのモデル要素候補を導く分析方法。
【請求項２】
システムの動作シナリオを入力・編集するためのシナリオ編集装置１１を備え、シナリオ中から図解要素を抽出してそれらの構造を図解化するためのシナリオ図解化装置１４を備え、図解とシナリオと連動させて分析者が図解の構造を観察できるようにする分析対象制御装置１３及び分析対象表示装置１２を備え、シナリオ及び分析結果を格納するシナリオ分析結果格納装置１５を備えることにより請求項１記載の分析方法を実施する装置。
【請求項３】
請求項２記載の装置に、分析結果を解析するシナリオ分析結果解析装置１６を備え、分析結果をオブジェクト指向設計装置に引き渡すシナリオ分析結果変換装置１７を備えることにより請求項１記載の分析方法を実施する装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、オブジェクト指向分析における静的及び動的のオブジェクトモデル構築に関する。
【０００２】
【従来の技術】
従来の分析技術においては、電子計算機のための言語を用いてシナリオを記述し，計算機に予め実装された分析アルゴリズムを用いて分析作業を支援させている。また、自然言語で記述したシナリオを自然言語解析することで一定の支援を行わせる試みもあるが不十分であり、実際には分析者の直感に基づき分析作業を行っている。
【０００３】
【発明が解決しようとする課題】
電子計算機によって行う従来のシナリオ分析支援技術では、電子計算機のための言語を用いてシナリオを記述するため、知識のある専門家でなければシナリオを作成できず、また、計算機に実装された分析アルゴリズムに基づいてシナリオの分析を行うため、最適なオブジェクトモデルが得られるとは限らないという問題点があった。
【０００４】
本発明は、専門化でなくてもシナリオを容易に作成し、さらに最適なオブジェクトモデルの構築を可能にするものである。すなわち、システムの振る舞いについて自然言語を用い、一連の事象としてシナリオを記述するので誰でも容易にシナリオが記述できる。さらに、定型化された分析作業方法に従って行う分析作業の支援装置を提供するので、計算機による分析アルゴリズムを用いないで、分析者が自分の知識・経験を活かしながら適切にオブジェクトモデルの構築作業を行えるようにすることを目的としている。
【０００５】
【課題を解決するための手段】
図１はシナリオ分析によるオブジェクトモデルの構築方法の原理説明図である。同図において、１はシステムの振る舞いを事象単位で記述した動作シナリオを編集する手段であり、２は動作シナリオに記述されている各事象と連動する図解を編集する手段であり、３はシナリオから抽出した図解要素を表示する手段であり、４は図解要素間の関連を表示する手段である。さらに、５は２における全ての図解を重ね合わせた全体図解を編集する手段であり、６は分析者が作成した図解要素のまとまりを編集する手段である。
【０００６】
本発明は、上記の手段を有機的に結合させることによるシナリオ分析によるオブジェクトモデル構築方法であって、次に述べる項目順にしたがって分析モデルの構築を支援することができる。
（１）編集手段１を用いて、分析対象とするシステムの一連の動作において発生する事象を事象記述文として時系列で動作シナリオを記述する。事象記述文は自然言語で記述する。
（２）上記（１）において記述した動作シナリオの各事象記述文の中から１つの事象記述文をとりあげて、事象記述文中に現れる語句から、編集手段２に備えられている図解要素表示手段３及び要素間の関連表示手段４を用いて図解要素を抽出する。この図解をシナリオの全ての事象に対して行う。
（３）上記（２）において作図した図解の全ての図解要素及び図解要素間の関連を重ね合わせて表示する画面を備えている編集手段５における図解要素の配置を編集し、同手段が備えている表示手段６を用いて図解要素のまとまりを作成する。
（４）上記（３）において作成したまとまりに対して適切に名前を付ける。
（５）上記（４）で名前を付けたまとまりをオブジェクト分析におけるクラス候補とする。また、図解要素の関連より導かれた各まとまりに対する関連をクラス間の関連候補とする。
（６）上記（５）のクラス候補と関連候補を用いて，オブジェクト指向分析の静的モデル（クラス図）を作成する。これを基に、上記（１）のシナリオを用いて、オブジェクト指向分析の動的モデル（シーケンス図）を作成する。
（７）上記（６）で作成したオブジェクトモデルを検討し、モデルの不備が発見された場合、上記（１）の手段で追加の動作シナリオを作成し、上記（２）〜（６）の手段を用いて分析作業を繰り返す。
【０００７】
本発明は請求項１の分析方法を用いて、請求項２及び３の装置により、上記（１）〜（７）の手順によりオブジェクトモデルの構築を支援しているので、記述の容易な自然言語によるシナリオをもとに分析作業を行うことができ、事象を記述した文章中の語句より抽出した図解要素とそれらの関連を図解によって表現することができ、シナリオの全ての事象における図解要素と関連を分析者に適切に示し、図解要素のまとまりを作成することで、オブジェクト指向分析におけるクラスと関連の候補を決定して静的モデルを作成することができ、静的モデルとシナリオよりオブジェクト指向分析における動的モデル、すなわち、オブジェクト指向分析モデルを作成することができる。
【０００８】
【実施例】
図２は本発明の実施例のシナリオ分析によるオブジェクトモデルの構築方法に沿って、発明したオブジェクトモデル構築の支援装置のシステム構成図である。同図において１１はシナリオの事象記述文を入力・編集・表示するための編集装置であり，１２は分析対象とする事象記述文を表示する装置であり、１３はシナリオと図解を連携させて分析対象とするシナリオ中の事象記述文の追加・削除及び分析対象の変更をするための制御装置であり、１４はシナリオ中の図解要素を図解上に配置・修正・移動・削除するための図解化装置であり、１５は編集したシナリオ及び作成した図解を格納する格納装置であり、１６は分析結果の解析を支援する装置であり、１７はシナリオを分析した結果を変換して既存のオブジェクト指向分析装置に引き渡すためのシナリオ分析結果変換装置である。
【０００９】
以下，実施例として、エレベータシステムの動作シナリオの構築を取り上げて、本発明のシナリオを図解化し分析することによりオブジェクトモデルを構築する方法とその支援装置にいついて説明する。なお，本実施例では本方法を実施する者を分析者と呼ぶことにする。
【００１０】
まず，シナリオ編集装置１１を用い、図３に示すようにエレベータの動作シシナリオをシーン毎に事象記述文単位で記述する。作成したシナリオはシナリオ分析結果格納装置１５に格納される。
【００１１】
次に、図４に示すように分析対象制御装置１３を操作し、分析対象表示装置１２を用いて図解化し分析を行う事象記述文（図４の例では「客１は１階にいる」）を選択する。分析対象制御装置１３には制御機構が配置されており、分析者は制御機構を操作することにより、分析対象編集装置１１に備えられた分析対象表示装置１２に示される分析対象となる事象記述文の選択位置を前後に移動することができる。
【００１２】
続いて、図５に示すように、分析対象表示装置１２に表示される事象記述文の語句に着目し、シナリオ図解化装置１４を用いて図解化要素を抽出する。このとき、名詞的性質を持つものは名詞的図形要素として、また、動詞的性質を持つものは動詞的図解要素として図解に配置する。本実施例においては、名詞的図解要素は矩形の図解要素として、また、動詞的図解要素は楕円形の図解要素として図解上に配置されている。また，事象記述文に記述されている各図解要素の関連を示す直線の図解要素を配置する。作成した図解はシナリオ分析結果格納装置格納装置１５に格納される。
【００１３】
その後，分析者は別の事象記述文を分析対象制御装置１３を用いて選択し、新たな分析対象となった事象記述文をもとにシナリオ図解化装置１４を操作して、図６に示すように図解化作業を行う。シナリオ図解化装置１４は分析対象の事象記述文に現れる図解要素と他の事象記述文に現れる図解要素を区別して表示する機能を備え、本実施例ではそれぞれ白色と灰色で表示されている。このとき、事象記述文に現れる図解要素が分析対象となっている事象記述文にも現れる場合、シナリオ図解化装置１４を用いて図解要素を当該図解においても使用するように変更を行うことができる。分析者は全てのシーンの事象記述文に対して本作業を繰り返す。
【００１４】
以上の作業の結果、図７に示すように全ての事象記述文より抽出した図解要素が全体図解としてシナリオ図解化装置１４に表示される。分析者はシナリオ図解化装置１４を用いて図解要素の配置を自由に変更を行い、図解要素を分析者の判断に基づき図解上で分類する。このとき、図解要素の関連を示す直線がこの分類作業を支援する。また、シナリオ図解化装置１４を操作することで、図解要素のまとまりを枠線で示すことができる。このとき、名詞的要素をまとめたまとまりを名詞的まとまりと呼び、動詞的要素をまとめたまとまりを動詞的まとまりと呼ぶ。以上の作業を経て、分類の結果は図８に示すような全体図解となる。
【００１５】
全体図解の作成の後、解析装置１６を用いて、分析者は図解要素のまとまりに対して適切な名称を設定する。図９は解析装置１６が備えているまとまり間の関係を自動的に解析する処理を示すフローチャートである。名称の設定後、この自動解析機能を用いると図１０で示される解析結果を得ることができる。
【００１６】
本実施例においては、解析結果はＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式で記述されたテキストファイルとして出力される。このファイルを変換装置１７にて変換を行うことで、オブジェクト指向設計装置、例えばＣＡＳＥ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｓｏｆｔｗａｒｅ  Ｅｎｖｉｒｏｎｍｅｎｔ）ツールを用い、ＵＭＬ（Ｕｎｉｆｉｅｄ  Ｍｏｄｅｌ  Ｌａｎｇｕａｇｅ）形式によるクラス図及びシーケンス図として表示することができる。
変換装置１７は、図１１のフローチャートで示す方法により、分析結果中の名詞的まとまりと名詞的まとまり間の関連に基づき自動的にクラス図（クラス、関連、多重度）を生成する。図１２に本実施例で生成したクラス図を示す。
【００１７】
また、変換装置１７は、図１３のフローチャートで示す方法により、事象記述文の前後関係と名詞的まとまり間の関連を基に、動詞的まとまりをメッセージに変換することで、半自動的にシーケンス図を生成する。図１４に本実施例で生成したシーケンス図の一部を示す。このとき、図１４中のａ及びｄは動詞的まとまりを基に決定されたメッセージ、ｂ及びａは名詞的まとまり間の関係を基に自動的に抽出されたメッセージである。
【００１８】
分析者は、解析結果より得られたクラス図及びシーケンス図を検討し、必要ならばシナリオを追加・変更することでより適切なオブジェクトモデルが得られるまで本分析方法を実施する。本実施例の場合、例としてあげたシナリオではクラス間の多重度が適切に分析されていなと分析者が判断したならば、分析者はシナリオを追加し、より詳細に記述することで、モデルの完成度を高めていくことができる。
【００１９】
【発明の効果】
以上説明したように、本発明においては、シナリオ分析によるオブジェクトモデル構築方法と共に、これを実施するためのシナリオ編集装置と、シナリオ図解化装置及び制御装置と、分析結果を格納する装置と、分析結果を半自動的に解析する装置及び変換する装置を用いてオブジェクトモデルを作成するので、以下の効果を得ることができる。
（１）一般的に困難とされるオブジェクトモデル作成に必須の抽象化概念であるクラスの決定とクラス間のメッセージフローのモデル化作業を、自然言語を用いて具体的に記述した図解化分析方法に従って抽象化することで容易に実施することができる。
（２）電子計算機のためのシナリオが記述できない者であっても、自然言語を用いて本発明のためのシナリオを記述できるため、分析対象のシステムに詳しくても分析作業の知識のない者がシナリオを記述し、それを分析者が分析することでより適切なモデル化作業を行うことができる。
（３）具体的なシナリオを用いるから、分析者が分析作業を通してシステムの動作を明確に記述することができ、完成した分析モデルの理解と検証に役立たせることができる。
【図面の簡単な説明】
【図１】本発明のシナリオ分析によるオブジェクトモデル構築方法の原理説明図である。
【図２】本発明のシナリオ分析によるオブジェクトモデル構築の支援装置のシステム構成図である。
【図３】本発明の実施例、使用するエレベータシステムの動作シナリオを示す図である。
【図４】本発明の実施例に関わる分析対象制御装置と分析対象表示装置の仕組みを示す図である。
【図５】本発明の実施例における分析対象表示装置とシナリオ図解化装置を用いた図解化作業を示す図である。
【図６】本発明の実施例における分析対象表示装置とシナリオ図解化装置を用いた図解化作業を示す図である。
【図７】本発明の実施例におけるシナリオ図解化装置に表示された全体図解を示す図である。
【図８】本発明の実施例におけるシナリオ図解化装置に表示された全体図解で図解要素のまとまりを作図した例を示す図である。
【図９】本発明の実施例における全体図解上のまとまりからまとまり間の関連を計算する処理のフローチャートである。
【図１０】本発明の実施例における全体図解上のまとまりの名前と，それらの関連を解析した結果を示す図である。
【図１１】本発明の実施例における解析結果からクラスとクラス間の関連を計算する処理のフローチャートである。
【図１２】本発明の実施例における生成されたクラスとクラス間の関連をＵＭＬのクラス図によって示した図である。
【図１３】本発明の実施例における解析結果からメッセージフローを計算する処理のフローチャートである。
【図１４】本発明の実施例における生成されたメッセージフローをＵＭＬのシーケンス図によって示した図である。
【符号の説明】
１‥シナリオ編集手段  ２‥図解の編集手段  ３‥図解要素表示手段
４‥要素間の関連表示手段  ５‥全体図解の編集（あるいは表示）手段
６‥図解要素のまとまりを編集する手段
１１‥分析対象編集装置  １２‥分析対象表示装置
１３‥分析対象制御装置  １４‥シナリオ図解化装置
１５‥シナリオ分析結果格納装置  １６‥分析結果の解析装置
１７‥分析結果の変換装置
【図１】
2004157950.tif 000003
【図２】
2004157950.tif 000004
【図３】
2004157950.tif 000005
【図４】
2004157950.tif 000006
【図５】
2004157950.tif 000007
【図６】
2004157950.tif 000008
【図７】
2004157950.tif 000009
【図８】
2004157950.tif 000010
【図９】
2004157950.tif 000011
【図１０】
2004157950.tif 000012
【図１１】
2004157950.tif 000013
【図１２】
2004157950.tif 000014
【図１３】
2004157950.tif 000015
【図１４】
2004157950.tif 000016