Skip to main content
QUICK REVIEW

[論文レビュー] How, What and Why to test an ontology

Jennifer D. Warrender, Phillip Lord|arXiv (Cornell University)|May 15, 2015
Semantic Web and Ontologies参考文献 9被引用数 5
ひとこと要約

この論文は、Tawny-OWL ライブラリを用いて、ソフトウェア工学のテスト手法をOWLオントロジー開発に適応することで、オントロジーのテストのための体系的フレームワークを提示している。4つのテスト分類(ソフトウェア関連、オントロジー関連、推論エンジン関連、プローブテスト)を導入し、きめ細やかな自動テストがオントロジーの品質、保守性、俊敏性を向上させることを実証した。Karyotype Ontology プロジェクトでは継続的インテグレーションを介して3,088件のテストが適用された。

ABSTRACT

Ontology development relates to software development in that they both involve the production of formal computational knowledge. It is possible, therefore, that some of the techniques used in software engineering could also be used for ontologies; for example, in software engineering testing is a well-established process, and part of many different methodologies. The application of testing to ontologies, therefore, seems attractive. The Karyotype Ontology is developed using the novel Tawny-OWL library. This provides a fully programmatic environment for ontology development, which includes a complete test harness. In this paper, we describe how we have used this harness to build an extensive series of tests as well as used a commodity continuous integration system to link testing deeply into our development process; this environment, is applicable to any OWL ontology whether written using Tawny-OWL or not. Moreover, we present a novel analysis of our tests, introducing a new classification of what our different tests are. For each class of test, we describe why we use these tests, also by comparison to software tests. We believe that this systematic comparison between ontology and software development will help us move to a more agile form of ontology development.

研究の動機と目的

  • オントロジー開発における体系的テストの欠如に応えるために、ソフトウェア工学のテスト手法を適応すること。
  • 自動的かつ繰り返し可能なテストを通じて、オントロジーの品質、一貫性、保守性を向上させること。
  • Karyotype Ontology に限らず、任意のOWLオントロジーに適用可能な汎用的かつ再利用可能なテスト手法を開発すること。
  • 継続的インテグレーションとプログラム的テスト定義を用いて、テストをオントロジー開発ライフサイクルに深く統合すること。
  • ソフトウェアレベル、オントロジカルレベル、推論レベルの検証を明確に区別できる意味のあるテスト分類を提供すること。

提案手法

  • OWL API を基盤とする Clojure ベースのプログラム的オントロジー開発環境である Tawny-OWL ライブラリの使用。
  • Tawny-OWL 内部に単体テスト、統合テスト、関数型テストをサポートする包括的なテストハーネスの実装。
  • 構造化されたデータ(例:スプレッドシート)を定義し、それをアサーションにプログラム的に変換するテストの定義方法。
  • 4つのカテゴリに分類されたテストの定義:ソフトウェア関連(コードレベル)、オントロジー関連(意味的正しさ)、推論エンジン関連(論理的一致性)、プローブ(動作検証)。
  • TravisCI と統合し、隔離された環境で自動的にテストが実行される継続的インテグレーションの導入。
  • Tawny-OWL の拡張性を活用し、構文クエリ(tawny.query を介して)と推論時間のパフォーマンステストのサポート。

実験結果

リサーチクエスチョン

  • RQ1ソフトウェア工学のテスト手法をどのように適応させれば、オントロジー開発の品質と信頼性を向上させられるか?
  • RQ2堅牢なオントロジーに必要なテストの異なるカテゴリーは何か?それらは目的と実装においてどのように異なるか?
  • RQ3プログラム的でテスト駆動型のアプローチが、オントロジー開発の俊敏性、保守性、一貫性を向上させられるか?
  • RQ4継続的インテグレーションと自動テストを、複雑な構造や依存関係を持つOWLオントロジーに効果的に適用する方法は何か?
  • RQ5現在のオントロジーテストツールの限界は何か?また、Tawny-OWL のような拡張性のあるフレームワークによってそれらの限界はどのように克服できるか?

主な発見

  • Karyotype Ontology プロジェクトでは、3,088件のテストを含む包括的なテストスイートが達成され、そのうち2,273件が推論動作の検証、759件がオントロジカルな正しさの検証に焦点を当てていた。
  • ソフトウェア関連、オントロジー関連、推論エンジン関連、プローブテストの4分類テスト分類は、テストの目的を明確に区別するための明確で実行可能なフレームワークを提供している。
  • テスト定義がスプレッドシートに正しくエンコードされ、オントロジー全体にわたる迅速かつ構造的なテスト作成と再利用が可能になった。
  • TravisCI を用いた継続的インテグレーションにより、一貫性があり繰り返し可能なテストが実現され、信頼性が向上し、リグレッションのリスクが低減された。
  • テスト環境はオントロジー形式から分離されているため、開発ツールに依存せず、任意のOWLオントロジーに適用可能である。
  • 論理的および構文的テストに対する強力なサポートがある一方で、著者らはカバレッジメトリクスやパフォーマンスベンチマークの分野にギャップが存在することを指摘しており、これらは現在のオントロジーツールではまだ十分に発展していない。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。