JP2008059276A - シーケンス図のオントロジー生成装置、そのプログラム及び方法 - Google Patents

シーケンス図のオントロジー生成装置、そのプログラム及び方法 Download PDF

Info

Publication number
JP2008059276A
JP2008059276A JP2006235384A JP2006235384A JP2008059276A JP 2008059276 A JP2008059276 A JP 2008059276A JP 2006235384 A JP2006235384 A JP 2006235384A JP 2006235384 A JP2006235384 A JP 2006235384A JP 2008059276 A JP2008059276 A JP 2008059276A
Authority
JP
Japan
Prior art keywords
task
sequence diagram
message
activity
task activity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006235384A
Other languages
English (en)
Inventor
Shingo Horiuchi
信吾 堀内
Hiroshi Yoshida
寛 吉田
Takashi Inoue
貴司 井上
Tetsuya Yamamura
哲哉 山村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2006235384A priority Critical patent/JP2008059276A/ja
Publication of JP2008059276A publication Critical patent/JP2008059276A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】シーケンス図から機械的にタスクオントロジーを生成すること。
【解決手段】情報抽出部4により、XMI形式のシーケンス図のファイルからタグ情報を基にアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報を抽出し、タスクアクティビティ決定部5により、抽出したメッセージに関する情報から形態素解析によりタスクアクティビティを決定し、is-achieved-by構造決定部6により、抽出したメッセージの順序とアクター/オブジェクトとの関係からis-achieved-by構造を決定し、タスクコンテキストロール決定部7により、タスクアクティビティに対応するタスクコンテキストロール用の形式を記述したタスクアクティビティ辞書3を用いて、各タスクアクティビティの入出力となるタスクコンテキストロールを決定する。
【選択図】図3

Description

本発明は、コンピュータプログラム等のソフトウェアの開発工程において作成されたシーケンス図のオントロジーを生成するための技術に関する。
一般に、ソフトウェアの開発は、要求分析、設計、実装、テスト、移行等のフェーズ(工程)に分類され、ソフトウェアの開発者は、それぞれの工程において、開発対象のソフトウェアをそれぞれの役割に分かれて開発する。
要求分析とは、ソフトウェアを作りたいと考えている者(要求者)の考えを汲み取り、その要求を満たすためには、ソフトウェアがどのような機能を備えるべきか分析する。また、設計では、分析して導き出された機能を実現(提供)するには、ソフトウェアがどのような構成をしていて、どのようにふるまう必要があるのかを検討する。
上記の要求分析/設計では、文章だけではなく、図を用いてソフトウェアが管理する情報等の静的な側面とソフトウェアの動作等の動的な側面とを表現する、モデリングという手法が用いられている。そのモデリングのための言語として、UML(Unified Modeling Language)が提案されている。
UMLでは、クラス図、オブジェクト図、パッケージ図、ユースケース図、コラボレーション図、ステートチャート図、アクティビティ図、コンポーネント図、配置図の9種類の図を定義しているが、そのうち、ソフトウェア開発で使われる頻度が高い図として、シーケンス図がある。
ところで、新規にソフトウェアを開発する際、既存のソフトウェアの開発工程において作成されたソフトウェア資産を再利用できれば、作業を効率的に進めることができると考えられる。そして、既存のソフトウェア資産を再利用する場合、新規に開発しようとしているソフトウェアに対し、より類似度の高いソフトウェア資産を利用することが好ましい。また、ソフトウェアの品質を高めるには、ソフトウェア開発の各工程に携わる開発者の間で意思の疎通を図ることが重要であると考えられる。
しかしながら、シーケンス図は、ソフトウェアに関わるシステムの振る舞い(動作)を、当該システムに含まれるアクター/オブジェクト間における、処理内容を表す動詞を含むメッセージの時系列的なやりとりで表現するため、そのままではシーケンス図に描かれている内容の類似度を計算することはできない。また、シーケンス図に描かれている内容の解釈は、ソフトウェアの開発者の主観や経験等に依存してしまうため、シーケンス図に描かれている内容を正確に(客観的に)理解し、ソフトウェア開発の各工程に携わる開発者の間で意思の疎通を図ることは難しい。
そこで、シーケンス図に描かれている内容の類似度を計算可能として既存のソフトウェアの開発工程において作成されたシーケンス図を再利用したり、当該シーケンス図に描かれている内容を正確に(客観的に)理解したりするには、シーケンス図をオントロジー、特にシステムの振る舞いを計算機(コンピュータ)が処理し易いOWL(Web Ontology Language)の形式で表現できるタスクオントロジーを用いて表現することが効果的であると考えられる。
タスクオントロジーについては、is-achieved-by構造で表現されるものが、その構築方法であるAFM(Activity-First Method)に関して非特許文献1に記載されている。
図1を用いてis-achieved-by構造について説明する。
図1では、処理内容を表す動詞であるタスクアクティビティTが、同じく処理内容を表す動詞である、より下位の複数のタスクアクティビティT1,T2,T3の組み合わせによって達成されることを表している。この時、タスクアクティビティTを達成するタスクアクティビティT1,T2,T3は時系列的に実行される、即ちT1,T2,T3の順番で実行されるものとする。また、タスクアクティビティには入出力となるパラメータがあり、これをタスクコンテキストロールと呼び、タスクアクティビティTの入力及び出力となるタスクコンテキストロールR1及びR2をそれぞれ、図示するように定義する。同様に全てのタスクアクティビティにタスクコンテキストロールを定義し、連続するタスクアクティビティ間については、図中のR3,R4のように、時系列的に1つ前のタスクアクティビティの出力となるタスクコンテキストロールと時系列的に1つ後のタスクアクティビティの入力となるタスクコンテキストロールとを一つで表現して定義する。
しかし、このタスクオントロジーの構築方法では、人手により処理しなくてはならない部分があり、機械的に構築することができないため、前述したシーケンス図の再利用に直ちに適用することは困難であった。
一方、業務を支援するシステムであるOSS(Operation Support System)を開発する際のシーケンス図をオントロジーで表現し、オントロジー間の類似度を用いることで、既存のモデルを再利用を実現し、新規のOSSモデルを作成する時間を短縮することを可能とする提案が非特許文献2に記載されている。
しかしながら、この提案でも、シーケンス図を機械的にオントロジーの形式にする具体的な方法が示されておらず、前述したシーケンス図の再利用に直ちに適用することはできなかった。
石川誠一、久保成毅、古崎晃司、來村徳信、溝口理一郎、「タスク・ドメインロールに基づくオントロジー構築ガイドシステムの設計と開発」、人工知能学会論文誌、17巻、5号、2002年、pp.585-597 堀内信吾、井上正輝、佐藤正崇、吉田寛、井上貴司、杉本悟、山村哲哉、「オントロジーを用いたOSSモデルの再利用」、電子情報通信学会技術研究報告TM2005−42(2006−1)、Vol.105、No.527、2006年1月12日発行
前述したように、ソフトウェア開発を行う際に、既存のモデルを再利用して新しいモデルを作成する取り組みがあるが、前述した従来の技術では、既存のモデルの解釈が開発者の主観や経験等に依存してしまうため、再利用を実現することが難しい。既存のモデルを客観的に解釈でき、再利用できようにするため、本発明では、
(1)既存のモデルの一つであるシーケンス図から機械的にタスクオントロジーを生成する、
ことを課題とする。そして、この際、更に
(1−1)シーケンス図上のあるアクター/オブジェクトから複数のアクター/オブジェクトへのメッセージを含むシーケンス図に対応させる、
(1−2)シーケンス図を構成する各メッセージの対象となる情報もオントロジーに組み込む、
ことを課題とする。
本発明では、前記課題を解決するため、ソフトウェアに関わるシステム全体の振る舞いを、当該システムに含まれるアクター/オブジェクト間における、処理内容を表す動詞を含むメッセージの時系列的なやりとりで表現したシーケンス図に関し、当該シーケンス図を構成する複数のメッセージ間の関係を、メッセージに含まれる処理内容を表す動詞であるタスクアクティビティについて一のタスクアクティビティがより下位の複数のタスクアクティビティの組み合わせによって達成されることを表すis-achieved-by構造で表現するタスクオントロジーを生成する装置であって、XMI形式のシーケンス図のファイルからタグ情報を基にアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報を抽出する手段と、抽出したシーケンス図中のメッセージを形態素解析してタスクアクティビティを決定する手段と、抽出したシーケンス図中のメッセージの順番とアクター/オブジェクトとの関係からis-achieved-by構造を決定する手段と、タスクアクティビティに対応するタスクコンテキストロール用の形式を記述したタスクアクティビティ辞書を用いて、各タスクアクティビティの入出力となるタスクコンテキストロールを決定する手段とを備えたことを特徴とするシーケンス図のオントロジー生成装置、そのプログラム及び方法を提案する。
前記構成によれば、シーケンス図のファイルから抽出したメッセージ名よりタスクオントロジーのタスクアクティビティを決定でき、また、シーケンス図のファイルから抽出したメッセージの順序とアクター/オブジェクトとの関係からタスクオントロジーのis-achieved-by構造を決定でき、さらにタスクアクティビティ辞書を用いて、各タスクアクティビティの入出力となるタスクコンテキストロールを決定できるため、シーケンス図から機械的にタスクオントロジーを生成することが可能となる。
本発明によれば、シーケンス図を正確に把握することを目的として、シーケンス図に対するオントロジーを効率的に構築することが可能となる。シーケンス図から類似度計算可能なオントロジーに変換して、再利用の為にシーケンス図を構成する処理(タスク)の順序関係などタスク構造を明確にでき、人による主観が入らない為、シーケンス図に対してユニークにオントロジーを構築できる。また、アクター/オブジェクト名とは無関係にis-achieved-by構造を決定することから、あるアクター/オブジェクトから複数のアクター/オブジェクトに対してメッセージを有するシーケンス図に対してもオントロジー化できる。この結果、シーケンス図の再利用を促進して効果的なソフトウェア開発の実現に貢献でき、シーケンス図の正確な理解を助けるオントロジーを作成するのにかかる手間を省き高品質なソフトウェア開発に貢献できる。
本発明で対象とするシーケンス図は、シーケンス図中の各メッセージが一筆書きの形で各アクター/オブジェクトをつないでおり、且つシーケンス図中の各メッセージを等しい長さの線、各アクター/オブジェクトを点とみなした時に構成される折れ線が閉曲線を構成し、この折れ線を適切に配置すると囲む面積が0であるものとする。具体的には図2の(a)(b)(c)に示すようなシーケンス図を対象とする。
図3は本発明の実施の形態にかかるシーケンス図のオントロジー生成装置、ここでは周知のコンピュータ上に実現した例を示すもので、コンピュータにおけるハードディスク等の記憶装置によって実現される抽出情報記憶部1、is-achieved-by構造記憶部2及びタスクアクティビティ辞書(記憶部)3と、コンピュータにおけるCPU、メモリ等とともに記録媒体に記録されて提供されあるいは通信回線を介して伝送されて提供されコンピュータにおけるハードディスク等の記憶装置にインストールされた所定のプログラムによって実現される情報抽出部4、タスクアクティビティ決定部5、is-achieved-by構造決定部6及びタスクコンテキストロール決定部7とからなっている。
抽出情報記憶部1は、情報抽出部43によって抽出された、シーケンス図中のアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報、詳細にはアクター名、アクターID、オブジェクト名、オブジェクトIDからなるアクター/オブジェクト情報、メッセージ名、メッセージID、メッセージの送信元(のアクター/オブジェクトの)ID、メッセージの送信先(のアクター/オブジェクトの)ID、メッセージの順番からなるメッセージ情報、当該シーケンス図名(ダイアグラム名)からなるダイアグラム情報を記憶する。なお、メッセージ名については、その後、タスクアクティビティ決定部5によりタスクアクティビティに書き換えられる。
is-achieved-by構造記憶部2は、is-achieved-by構造決定部6によって決定されたis-achieved-by構造に関する情報(詳細については後述する)を記憶する。
タスクアクティビティ辞書3は、図4に示すような、タスクアクティビティに対応するタスクコンテキストロール用の形式(の文字列)を記述して(記憶して)いる。タスクコンテキストロール用の形式とは、動詞がサ変動詞であれば動詞の終止形から「する」を取り除いた形であり、それ以外の動詞では各動詞の連用形とする。
なお、この辞書は、タスクオントロジーを生成しようとするシーケンス図に現れることが予想される様々なタスクアクティビティについて予め自然言語処理ツール等を用いて作成したものでも、実際にタスクアクティビティ決定部5によって決定されたタスクアクティビティについてその時点で自然言語処理ツール等を用いて作成したものでも良い。
また、日本語の文章を、意味を成す最小単位である形態素に解析する自然言語処理ツールとして「形態素解析システム茶筌」(”形態素解析システム茶筌”、[online]、Powered by Ruby 1.8.4 and Amrita.、Founded by NAIST Computational Linguistics Lab.、[平成18年8月21日検索]、インターネット<URL:http://chasen.naist.jp/hiki/ChaSen/>参照)があり、これは電子的に記述された日本語の文章を入力として、名詞/動詞/助詞などの品詞情報を付加して形態素に分解(解析)する。この際、動詞がどのような活用形(未然形、連用形など)になっているかも判定できる。
情報抽出部4は、ソフトウェアの統合開発環境などでUMLのシーケンス図を保存する際に用いられるXMI(XML Metadata Interchange)形式で記述されたシーケンス図のファイルからタグ情報を基にアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報を抽出、詳細にはXMIの規格で定められた図5に示すタグ情報を手がかりとして、アクター名、アクターID、オブジェクト名、オブジェクトID、メッセージ名、メッセージID、メッセージの送信元(のアクター/オブジェクトの)ID、メッセージの送信先(のアクター/オブジェクトの)ID、メッセージの順番、当該シーケンス図名(ダイアグラム名)を抽出し、抽出情報記憶部1に記憶する。
タスクアクティビティ決定部5は、抽出情報記憶部1から前記抽出したメッセージに関する情報、正確にはメッセージ名を読み出し、これを前述した自然言語処理ツール等を用いて形態素解析して当該メッセージに含まれる処理内容を表す動詞であるタスクアクティビティを決定し、再度、抽出情報記憶部1に記憶する。
is-achieved-by構造決定部6は、抽出情報記憶部1からシーケンス図中のアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報に関する情報を読み出し、メッセージの順序とアクター/オブジェクトとの関係からis-achieved-by構造を決定し、is-achieved-by構造記憶部2に記憶する(詳細な動作については後述する)。
タスクコンテキストロール決定部7は、is-achieved-by構造記憶部2からis-achieved-by構造を読み出し、タスクアクティビティ辞書3を用いて、各タスクアクティビティの入出力となるタスクコンテキストロールを決定する(詳細な動作については後述する)。
図6は本発明装置全体の処理動作の概要を示す流れ図である。
まず、情報抽出部4は、タスクオントロジーを生成しようとするシーケンス図のXMI形式のファイルが入力されると、前述したタグ情報を手がかりとして、アクター名、アクターID、オブジェクト名、オブジェクトID、メッセージ名、メッセージID、メッセージの送信元(のアクター/オブジェクトの)ID、メッセージの送信先(のアクター/オブジェクトの)ID、メッセージの順番、当該シーケンス図名(ダイアグラム名)を抽出し、抽出情報記憶部1に記憶する(s1)。
次に、タスクアクティビティ決定部5は、抽出情報記憶部1からメッセージ名を読み出し、これを前述した自然言語処理ツール等を用いて形態素解析し、図7に示すフローに従って当該メッセージ名に含まれる処理内容を表す動詞であるタスクアクティビティを決定し、再度、抽出情報記憶部1(の当該メッセージ名が記憶されていたエリア)に記憶し、これを全てのメッセージ名について繰り返す(s2)。
次に、is-achieved-by構造決定部6は、抽出情報記憶部1からシーケンス図中のアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報に関する情報を読み出し、メッセージの順序とアクター/オブジェクトとの関係から、図8に示すフローに従ってis-achieved-by構造を決定し、is-achieved-by構造記憶部2に記憶する(s3)。
即ち、まず、各メッセージ(正確にはタスクアクティビティ)を時系列的(メッセージの順番)に並べる(s11)。次に、最初のメッセージの送信元のアクター又はオブジェクトのレベルを0に設定、正確には当該最初のメッセージの送信元のアクター又はオブジェクトのレベルが0であるという情報をis-achieved-by構造記憶部2に記憶する(s12)。図9はシーケンス図におけるアクター又はオブジェクトのレベル及びメッセージの方向を説明するための例を示すもので、この例ではアクター/オブジェクトAがレベル0に設定される。
次に、レベル0のアクター又はオブジェクトを基準に、他のアクター又はオブジェクトのレベルを、レベル0から何回のメッセージで到達するかを数えて設定、正確には当該他のアクター又はオブジェクトのレベルに関する情報をis-achieved-by構造記憶部2に記憶する(s13)。図9の例では、アクター/オブジェクトBがレベル1、アクター/オブジェクトCがレベル2、アクター/オブジェクトDがレベル3に設定される。
次に、各メッセージに対して、図9のメッセージaやbのようにレベルの値が大きくなる方向をレベルが上がる方向、反対に、図9のメッセージdやfのようにレベルの値が小さくなる方向をレベルが下がる方向とし、レベルが上がる方向に向いているメッセージ(図9の例では、メッセージa,b,c)のタイプをUP、下がる方向に向いているメッセージ(図9の例では、メッセージd,f,g)のタイプをDOWN、レベルが変わらない(送信元と送信先が同じ)メッセージ(図9の例では、メッセージe)のタイプをSELFと設定、正確には当該各メッセージ(タスクアクティビティ)のタイプ(UP/DOWN/SELF)に関する情報をis-achieved-by構造記憶部2に記憶する(s14)。
そして、is-achieved-by構造の最上位より、時系列順のメッセージを処理する。即ち、時系列順にメッセージを抽出し(s15)、そのタイプについて判定し(s16)、タイプがUPの場合は、配下に当該メッセージに対応するタスクアクティビティを追加して、そのタスクアクティビティに移動し、追加したタスクアクティビティの配下に同じ名前を持つタスクアクティビティを追加する(s17)。また、メッセージのタイプがDOWNの場合は、配下にタスクアクティビティを追加して、上位のタスクアクティビティに移動する(s18)。また、メッセージのタイプがSELFの場合は、配下にタスクアクティビティを追加する(s19)。
これらを全てのメッセージに対して繰り返して行い(s20)、最後に、新たに作成するis-achieved-by構造の最上位のタスクアクティビティ名として当該シーケンス図名(ダイアグラム名)からなるダイアグラム情報、即ち<UML:Diagram>の属性の値を設定し(s21)、得られたis-achieved-by構造に関する情報、具体的には各タスクアクティビティ名、各タスクアクティビティの階層、各タスクアクティビティの階層内での順番、各タスクアクティビティのつながりのある上位タスクアクティビティ、に関する情報をis-achieved-by構造記憶部2に記憶する(s22)。
次に、タスクコンテキストロール決定部7は、is-achieved-by構造記憶部2からis-achieved-by構造に関する情報を読み出し、タスクアクティビティ辞書3を用いて、図10に示すフローに従い、is-achieved-by構造の最上位のタスクアクティビティから下位のタスクアクティビティに向かって各タスクアクティビティの入出力となるタスクコンテキストロールを決定する(s4)。
即ち、まず、is-achieved-by構造の最上位のタスクアクティビティの入力となるタスクコンテキストロールを、『「未」+「タスクアクティビティのタスクコンテキストロール用の形式」+「状態」』とする(s31)。同様に、is-achieved-by構造の最上位のタスクアクティビティの出力となるタスクコンテキストロールを、『「タスクアクティビティのタスクコンテキストロール用の形式」+「済状態」』とする(s32)。図11はタスクコンテキストロールの決定のようすを説明するための例を示すもので、この例では最上位のタスクアクティビティの入力及び出力となるタスクコンテキストロールはそれぞれ「未変更状態」及び「変更済状態」となる(図11のパターン(a))。
次に、1つ下位の階層のアクティビティを全て取り出し(s33)、さらにその中から上位のアクティビティが共通するアクティビティを取り出す(s34)。そして、そのうち時系列的に1番目のタスクアクティビティの入力となるタスクコンテキストロールを、その共通する上位のタスクアクティビティの入力となるタスクコンテキストロールと同一とし(s35)、時系列的に最後のタスクアクティビティの出力となるタスクコンテキストロールを、その共通する上位のタスクアクティビティの出力となるタスクコンテキストロールと同一とする(s36)。図11の例では、時系列的に1番目のタスクアクティビティ「確認する」の入力となるタスクコンテキストロールは「未変更状態」となり、時系列的に最後のタスクアクティビティ「通知する」の出力となるタスクコンテキストロールは「変更済状態」となる(図11のパターン(b))。
また、各タスクアクティビティ間のタスクコンテキストロールを、『「時系列的に1つ前のタスクアクティビティのタスクコンテキストロール用の形式」+「済未」+「時系列的に1つ後のタスクアクティビティのタスクコンテキストロール用の形式」+「状態」』とする(s37)。図11の例では、タスクアクティビティ「確認する」とタスクアクティビティ「変更する」との間のタスクコンテキストロールは「確認済未変更状態」となる(図11のパターン(c))。
これをその階層内の全てのタスクアクティビティについて同様に繰り返し行い(s38)、さらにこれらを最下位の階層まで繰り返し行い(s39)、タスクオントロジーを出力する(s40)。
PON(Passive Optical Network)の装置であるOLT(Optical Line Terminal)の属性の変更に関するシーケンス図からタスクオントロジーを生成する場合を考える。この機能をシーケンス図で表したものを図12に示す。また、このシーケンス図をEnterprise Architect (EA)によりXMIファイルで出力したものを図13に示す。
このXMIファイルを読み込んで、シーケンス図に関する情報を抽出する。
アクターに関する情報は図13中のアの部分から値を取得する。ここからアクターとして「オペレータ」というものが存在し、XMI ID(XMIのオブジェクトとしてのID)が「EAID F6869752 2355 4691 98AA F484D02C5382」であること(図14の2行目)を取得できる。オブジェクトについても同様に値を取得し、まとめると図14に示すようになる。
メッセージに関する情報は図13中のイの部分から値を取得する。ここからメッセージとして「確認する」というものが存在し、XMI IDが「EAID 4C7F135A BC80 4887 976B 4AE811D29424」であり、XMI IDが「EAID F6869752 2355 4691 98AA F484D02C5382」のオブジェクト又はアクターからXMI IDが「EAID 275B59A2 F124 4fc8 8D36 AFB5850944D6」のオブジェクト又はアクターへのメッセージであり、メッセージとして「1」番目に現れるものであること(図15の2行目)を取得する。このようにしてメッセージ情報を取得し、さらに前述した「茶筌」を利用して形態素解析によりメッセージ名をタスクアクティビティに書き換えてまとめたものを図15に示す。
次に、オントロジーが何の機能を表現しているかを表す、ダイアグラムに関する情報は図13中のウの部分から値を取得して、「OLT変更」の機能を表していることを読み取る。そして、図16に示すようになる。
これらの情報を基に、図8で説明した処理によりアクターやオブジェクトのレベルを決定すると、図17に示すようになる。また、図8で説明した処理により最初の「確認する」というメッセージ(タスクアクティビティ)はレベル0のアクターである「オペレータ」からレベル1のオブジェクトである「OSSサーバ」に送られているので、「UP」タイプのメッセージとなる。同様に処理を進め、メッセージのタイプを図18に示すように決定し、is-achieved-by構造を決定する。
さらに、図19に示すようなタスクアクティビティ辞書を用いて、タスクコンテキストロールを定義する。例えば、「OLT変更」の入力となるタスクコンテキストロールは、「OLT変更」というタスクアクティビティのタスクコンテキストロール用の形式が「変更」であるので、「未変更状態」となる。また、「送信する」というタスクアクティビティと「確認する」というタスクアクティビティとの間のタスクコンテキストロールは、各タスクアクティビティのタスクコンテキストロール用の形式が「送信」「確認」であることより、「送信済未確認状態」となる。このようなタスクコンテキストロールを図10で説明したように決定していく。
手順に従って処理した結果を、本手法を具備したツールにより表示させると、図20に示すようになる。これにより、EAで作成された図12のシーケンス図に対応するオントロジーを機械的に構築することが可能となる。これにより、オントロジー構築を効率的且つ客観的に作成でき、より多くのシーケンス図に関する知識を蓄積できる。
is-achieved-by構造の説明図 本発明の適用対象シーケンス図の一例を示す図 本発明の実施の形態にかかるシーケンス図のオントロジー生成装置の構成図 タスクアクティビティ辞書の一例を示す図 本発明が抽出対象とするXMI形式のタグ情報を示す図 本発明装置全体の処理動作の概要を示す流れ図 タスクアクティビティの決定手順を示す流れ図 is-achieved-by構造の決定手順を示す流れ図 シーケンス図におけるアクター又はオブジェクトのレベル及びメッセージの方向の説明図 タスクコンテキストロールの決定手順を示す流れ図 タスクコンテキストロールの決定のようすを示す図 実施例1にかかるシーケンス図を示す図 図12のシーケンス図に対応するXMIファイルを示す図 図12のシーケンス図に対応するアクター/オブジェクト情報を示す図 図12のシーケンス図に対応するメッセージ情報を示す図 図12のシーケンス図に対応するダイアグラム情報を示す図 図12のシーケンス図に対応するアクター/オブジェクトのレベルを示す図 図12のシーケンス図に対応するタスクアクティビティのタイプを示す図 タスクアクティビティ辞書の他の例を示す図 図12のシーケンス図に対応するタスクオントロジーを示す図
符号の説明
1:抽出情報記憶部、2:is-achieved-by構造記憶部、3:タスクアクティビティ辞書(記憶部)、4:情報抽出部、5:タスクアクティビティ決定部、6:is-achieved-by構造決定部、7:タスクコンテキストロール決定部。

Claims (3)

  1. ソフトウェアに関わるシステムの振る舞いを、当該システムに含まれるアクター/オブジェクト間における、処理内容を表す動詞を含むメッセージの時系列的なやりとりで表現したシーケンス図に関し、当該シーケンス図を構成する複数のメッセージ間の関係を、メッセージに含まれる処理内容を表す動詞であるタスクアクティビティについて一のタスクアクティビティがより下位の複数のタスクアクティビティの組み合わせによって達成されることを表すis-achieved-by構造で表現するタスクオントロジーを生成する装置であって、
    XMI形式のシーケンス図のファイルからタグ情報を基にアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報を抽出する手段と、
    抽出したシーケンス図中のメッセージを形態素解析してタスクアクティビティを決定する手段と、
    抽出したシーケンス図中のメッセージの順番とアクター/オブジェクトとの関係からis-achieved-by構造を決定する手段と、
    タスクアクティビティに対応するタスクコンテキストロール用の形式を記述したタスクアクティビティ辞書を用いて、各タスクアクティビティの入出力となるタスクコンテキストロールを決定する手段とを備えた
    ことを特徴とするシーケンス図のオントロジー生成装置。
  2. コンピュータを、請求項1に記載のシーケンス図のオントロジー生成装置を構成する各手段として機能させるためのプログラム。
  3. ソフトウェアに関わるシステムの振る舞いを、当該システムに含まれるアクター/オブジェクト間における、処理内容を表す動詞を含むメッセージの時系列的なやりとりで表現したシーケンス図に関し、当該シーケンス図を構成する複数のメッセージ間の関係を、メッセージに含まれる処理内容を表す動詞であるタスクアクティビティについて一のタスクアクティビティがより下位の複数のタスクアクティビティの組み合わせによって達成されることを表すis-achieved-by構造で表現するタスクオントロジーをコンピュータを用いて生成する方法であって、
    当該コンピュータは、
    XMI形式のシーケンス図のファイルからタグ情報を基にアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報を抽出し、記憶手段に記憶するステップと、
    記憶手段からシーケンス図中のメッセージに関する情報を読み出し、形態素解析してタスクアクティビティを決定し、再度記憶手段に記憶するステップと、
    記憶手段からシーケンス図中のアクター/オブジェクト、メッセージ及びメッセージの順番に関する情報を読み出し、メッセージの順番とアクター/オブジェクトとの関係からis-achieved-by構造を決定し、記憶手段に記憶するステップと、
    記憶手段からis-achieved-by構造を読み出し、タスクアクティビティに対応するタスクコンテキストロール用の形式を記述したタスクアクティビティ辞書を用いて、各タスクアクティビティの入出力となるタスクコンテキストロールを決定するステップとを実行する
    ことを特徴とするシーケンス図のオントロジー生成方法。
JP2006235384A 2006-08-31 2006-08-31 シーケンス図のオントロジー生成装置、そのプログラム及び方法 Pending JP2008059276A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006235384A JP2008059276A (ja) 2006-08-31 2006-08-31 シーケンス図のオントロジー生成装置、そのプログラム及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006235384A JP2008059276A (ja) 2006-08-31 2006-08-31 シーケンス図のオントロジー生成装置、そのプログラム及び方法

Publications (1)

Publication Number Publication Date
JP2008059276A true JP2008059276A (ja) 2008-03-13

Family

ID=39241940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006235384A Pending JP2008059276A (ja) 2006-08-31 2006-08-31 シーケンス図のオントロジー生成装置、そのプログラム及び方法

Country Status (1)

Country Link
JP (1) JP2008059276A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009146283A (ja) * 2007-12-17 2009-07-02 Nippon Telegr & Teleph Corp <Ntt> ソフトウェア成果物作成システム、方法及びそのプログラム
CN109997113A (zh) * 2016-11-28 2019-07-09 Arm有限公司 数据处理

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250974A (ja) * 2004-03-05 2005-09-15 Ricoh Co Ltd ソフトウェア開発装置、ソフトウェア開発方法、ソフトウェア開発用プログラム、ソフトウェア、記録媒体、画像形成装置、及び電気機器
JP2006202277A (ja) * 2005-01-19 2006-08-03 Agilent Technol Inc 非独自言語によって駆動される一般アプリケーション用シーケンス図ジェネレータ
JP2006201924A (ja) * 2005-01-19 2006-08-03 Nippon Telegr & Teleph Corp <Ntt> ソフトウェアにおけるシーケンス図の解析用ツリー構造への変換方法及びそのコンピュータプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250974A (ja) * 2004-03-05 2005-09-15 Ricoh Co Ltd ソフトウェア開発装置、ソフトウェア開発方法、ソフトウェア開発用プログラム、ソフトウェア、記録媒体、画像形成装置、及び電気機器
JP2006202277A (ja) * 2005-01-19 2006-08-03 Agilent Technol Inc 非独自言語によって駆動される一般アプリケーション用シーケンス図ジェネレータ
JP2006201924A (ja) * 2005-01-19 2006-08-03 Nippon Telegr & Teleph Corp <Ntt> ソフトウェアにおけるシーケンス図の解析用ツリー構造への変換方法及びそのコンピュータプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009146283A (ja) * 2007-12-17 2009-07-02 Nippon Telegr & Teleph Corp <Ntt> ソフトウェア成果物作成システム、方法及びそのプログラム
CN109997113A (zh) * 2016-11-28 2019-07-09 Arm有限公司 数据处理
CN109997113B (zh) * 2016-11-28 2023-05-23 Arm有限公司 用于数据处理的方法和装置

Similar Documents

Publication Publication Date Title
KR100661393B1 (ko) 웹 프로그래밍 환경을 응용한 웹사이트 관리 시스템 및방법
US8522195B2 (en) Systems and methods to generate a software framework based on semantic modeling and business rules
González et al. A navigational role-centric model oriented web approach-moweba
Sharma et al. Automated generation of activity and sequence diagrams from natural language requirements
Gilson et al. From user stories to use case scenarios towards a generative approach
Dragoni et al. Enriching a small artwork collection through semantic linking
Hentrich et al. An approach for pattern mining through grounded theory techniques and its applications to process-driven soa patterns
Wu et al. A review of know-how reuse with patterns in model-based systems engineering
JP2008059276A (ja) シーケンス図のオントロジー生成装置、そのプログラム及び方法
Vion-Dury et al. Designing for inconsistency–the dependency-based PERICLES approach
CN109992244B (zh) 一种服务化信息系统需求的离散划分方法
Michaelides et al. Intermediate notation for provenance and workflow reproducibility
JP4133549B2 (ja) 構造化文書ファイル管理装置および構造化文書ファイル管理方法
Siikarla et al. Transformations have to be developed ReST assured
Bürgermeister Extending versioning in collaborative research
Rodríguez-Echeverría et al. Generating a rest service layer from a legacy system
Rodríguez-Echeverría et al. Model-driven Generation of a REST API from a Legacy Web Application
Firmenich et al. A platform for web augmentation requirements specification
Kenzi et al. A Model Driven Framework for the Development of Adaptable REST SERVICES.
Mili et al. E-Tourism portal: a case study in ontology-driven development
Rodriguez et al. Reducing efforts in web services refactoring
Ali et al. An approach for crosscutting concern identification at requirements level using NLP
Good The ecology of documentary and descriptive linguistics
da Silva et al. Variability Specification and Resolution of Textual Requirements.
Hermida et al. Developing rich internet applications as social sites on the semantic web: A model-driven approach

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20080801

Free format text: JAPANESE INTERMEDIATE CODE: A621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110420

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110613

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110614

A521 Written amendment

Effective date: 20110615

Free format text: JAPANESE INTERMEDIATE CODE: A821

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110616

A02 Decision of refusal

Effective date: 20110830

Free format text: JAPANESE INTERMEDIATE CODE: A02