2015-09-23 11 views
9

現在、私はOWLを使用してソフトウェアエンジニアリングプロセスで関心のあるドメインを記述するためにUMLを使用しようとしています。ソフトウェアエンジニアリングプロセスのOWLとUMLの違い

私はthis paper by Atkinsonを読んでいます。これは、意味と構文レベルでのOWLとUMLの違いと等価性についての非常に良い概要を示しています。

ただし、UMLクラス図の代わりにOWLを使用するほうが良いユースケースを明確に示すものではありません。

モデリング言語を決定する下位開発プロセス(たとえば、モデル駆動型= UMLではオントロジ駆動、OWLではオントロジー駆動)がありますが、この違いはまだ明確ではありませんか?

どちらの言語でも、私はオントロジーエンジニアとして、それから新しい知識を推測するために再利用することができる用語を構築することができます。ソフトウェアエンジニアとして、この用語を(単一の)システムの構築に使用します。

OWLとUMLの違いは、研究分野だけですか?私の(単一)ソフトウェアシステムの構築を記述するためにOWLを使用することはできますか?

さらに、どのモデリング言語を選択するかの決定は、私が達成しようとしている目標によってのみ決定されるのではないかという疑問が生じます。

答えて

9

合成回答

でモデリング用(グラフィカル)言語でありますOWLの目的はモデリングではありません。 KR技法を使用することは、ソフトウェア工学の分野における選択肢である。それは、どのソフトウェアエンジニアリングプロセスとも異なるはずです。どちらの言語も異なる目的を持っています。

もちろん、は[ソフトウェアシステム]の構成を説明するためにOWLを使用することができます。しかし、このような動きの関心は、主にソフトウェア構築プロセスに関する自動化された推論にあり、単一のプロジェクトのコンテキストではあまり役に立ちません。これは結果的にknowledge base(KB)を得るためにあなたのすべてのプロジェクトに対して行われた場合にのみ有効です。

W3C wiki section about OWLによる詳細な説明

W3CのWebオントロジー言語(OWL)は、物事について豊かで複雑な知識を表現するために設計されたセマンティックWeb言語である、物事のグループ、および物事間の関係。 OWLは、知識がOWLで表現するような計算ロジックベースの言語であるかについて、いくつかの議論があるはずです、その知識の一貫性を確認したり、

暗黙知を明示的にするために、例えば、コンピュータプログラムによって利用することができていますモデリング言語たとえば、Wikipedia article on the topicは、OWLもカバーできる広い意味を考慮する。ここではモデリングという用語は、ソフトウェアエンジニアリングアクティビティ(あなたの質問に集中しているもの)のみです。

ソフトウェアプロジェクトの開発と同じように、オントロジーを定義するためにモデリングが必要な場合があります。しかし、このOWLモデリングでは、ソフトウェアエンジニアリング要素は考慮されず、プロジェクトのドメインデータが考慮されます。言い換えれば、ソフトウェア構築プロセスでUMLを使用することは、ソフトウェア要素を設定することを目的としています。OWLでは、ソフトウェアの構築についての自動推論を試みていない限り、これらの要素に集中することはありません。

これに加えて、UMLとOWLとの間には関係がある。 W3Cの枠内にあるnote by Walter W. Changeがその質問について議論しています。私は2つの明確な関係を考慮して質問をまとめます。 (オントロジー定義のメタモデル用)ODM呼ばれるOWL知識

アンOMG仕様を表すためにUMLを使用し

はオントロジを定義するためのメタモデルを提供します。この仕様のフレームでは、UMLプロファイルの使用が、両方の言語間のギャップを埋める方法として導入されています。 ODM 1.1仕様では、8.4.2:

ODMの観点から見たUMLプロファイルの目的は、UMLと知識表現コミュニティとの間に、十分に根拠のある意味ベースで、ソフトウェアを関連付けることの広範な目標と、情報を表現するための論理的アプローチ。

UMLプロファイルの使用については、an articleで紹介しています。このようなプロファイルは、非標準的な文書としてODM 1.0 specification resourcesにあります。ここで考えていることによると、このUMLプロファイルはオントロジをモデリングするためのツールであるかもしれません。 UML

RDFを表現するためにOWL /セマンティックウェブ技術を使用

は、OWLオントロジーを記述するために使用される基本フォーマットです。

early(2000)academic workは、(OMG仕様に基づいて)UML要素をモデリングする意味RDFドキュメントを提供します。この作業はdraft works on the OWL W3C recommendation(2002)に先行して行われました。

4

実際、OWLはUMLのプロファイルとして利用できます。 OMG specficationを参照してください。したがって、 "one soup"でOWLプロファイルのUMLを使用することができます。

+0

あなたの答えをありがとう - それは非常に有用な情報でした!さて、私はそれらを混在させることができます。しかし、SEプロセスで両方の言語を混ぜなければならない理由はまだ不明です。何か有益でしょうか?私は "1つのスープ"でそれらを混ぜ合わせることが結果は非常に複雑になると思う... – rzo

+0

いいえあなたはOWLで高水準のものを記述することができ、必要なところでUMLにステップダウンすることができます。 –

+0

あなたの中心的な質問は、「私はゲーテの言葉をフランス語でもいいですか」とか「ルソーの言葉をドイツ語で言えますか」と同じです。かつてゲーテは言った。 「彼らはフランス語ですべてを自分の言語に翻訳し、その後は全く別の意味を持っています」 –

4

まず定義から始めましょう。

統一モデリング言語(UML)は が システムの設計を視覚化するための標準的な方法を提供することを目的としたソフトウェア工学の分野における汎用、発達、 モデリング言語、です。 (Wikipedia

UMLには多くの図がありますが、古典のどれもがオントロジーモデリング用に設計されていません。したがって、研究者はこの目的でOWLを作成しました。

W3CのWebオントロジー言語(OWL)は、物事、グループ、物事の 、と物事の関係についての豊かで複雑な知識を表現するために設計されたセマンティックWeb言語 です。他の回答にトーマス・キリアンによって前記のような(W3C

OWLは、UMLでプロファイルとして利用可能です。 OMGの仕様を参照してください。だから、 "one soup"でOWLプロファイルのUMLを使うことができます。

したがって、OWLは、ソフトウェアエンジニアリングプロセスで使用される一連のUML図の一部とすることができます。従来のUMLダイアグラムよりもOWLの主な利点は、オントロジーを使用してシステムを設計する必要がある場合です。クラス図の目的は、オントロジーではなくクラスを表現することです。システムがオントロジーに依存していない場合は、従来のUMLダイアグラムに従います。 OWLは必要ありません。システムがオントロジーを使用していて、それをダイアグラムで表現する必要がある場合は、OWLを使用します。

2

OWLは、ドメインを記述し、セマンティクスを使用して具体的にドメインの知識を指定し、その固有性を記述するために使用されます。例えば、Friend of a Friendオントロジーを取る。それを使用して、人々がお互いにどのように関係しているかを記述することができます。

あなたはUMLを使って同じことをすることができ、あなたは正しいと言うかもしれません。 OWLとUMLを使用して、プロパティ、リレーションなどを指定することができます。しかし、UMLでできないことは、ドメインの知識を推測することです。 OWLは、セマンティックWeb言語であり、OpenまたはClosed Worldのいずれかの仮定を持つドメインをモデル化します。基本的には、ドメインに記述されているものに基づいて知識を引き受けます。次に、ルールを使用して知識を推論するための特定の指示を使用するか、作成した述語とステートメントを調べるだけです。さらに、SPARQLなどの特定の照会言語を使用して、SQLを使用してデータベースに照会するのと同じ方法でオントロジーを照会することができます。

TL; DR:UMLを使用すると、特定のドメインをソフトウェアに変換する方法を指定できます.OWLを使用すると、ドメインに関する知識をUMLよりも豊富に指定できます。

-2

ドメインオントロジーをUMLモデルにマッピングすることの重要性と利点は、これらの2つのモデリング手法が提供する利点と品質を統合することにあります。つまり、あるレベルの権限を持つドメインオントロジーが既に存在する場合、これらのナレッジベースは、UMLクラス図を作成するのに役立つことができます。例えば、それを構築する記述ロジックによって提供される公理的な保証この形式化によって、オントロジーの再利用がクラス図のあいまい性を軽減するのに役立つという証拠を示すことを目的としています。