ontology evolution and regression analysis insights into ontology regression testing

42
Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing Maria Copeland Rafael Goncalvez Robert Stevens Bijan Parsia Uli Sattler

Upload: holden

Post on 21-Jan-2016

57 views

Category:

Documents


0 download

DESCRIPTION

Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing. Maria Copeland Rafael Goncalvez Robert Stevens Bijan Parsia Uli Sattler. Motivation. Current studies of Ontology Evaluation tend to: Focus on individual ontology versions - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Ontology Evolution and Regression Analysis

Insights into Ontology Regression Testing

Maria CopelandRafael GoncalvezRobert Stevens

Bijan ParsiaUli Sattler

Page 2: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Motivation

Current studies of Ontology Evaluation tend to:

• Focus on individual ontology versions

• Focus on shifts in the gross statistics

In either case we don’t get objective and systematic evaluations of the life span of the ontology

Page 3: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Our goal is to extract insightful and useful information out of all the existing versions of an ontology

Page 4: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Ontology Testing Challenge

– How do we systematically identify test areas?

– How do we systematically analyse change impacts to the ontology?

How can we effectively minimise testing efforts and cost

and still achieve adequate testing coverage

Page 5: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Software Testing

Page 6: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Software Regression TestingWhat is it?

• It is a test activity to systematicallyre-test existing components after software changes

• It test against current and updated requirements

Page 7: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Software Regression TestingTesting Aspects

• Testing at the functional requirements– Unit Level– System Level

• Testing at the non-functional requirements

Page 8: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Software Regression TestingTesting Plan

• Defines testing criteria

• Identifies test area or components

• Test execution strategy

• Test evaluation strategy

• Updates test and other relevant documentation

Page 9: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Software Regression TestingProcess

Change DetectionChange Detection

Impact AnalysisImpact Analysis

Define Test Plan

Define Test Plan

Build Test Suite

Build Test Suite

Run TestRun Test

Evaluate ResultsEvaluate Results

Report ResultsReport Results

Page 10: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Ontology Regression Testing?

Page 11: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Change Detection

• Explicit Changes– Asserted logical and annotation axioms– Properties– Classes

• Implicit Changes?– Subsumption changes– Entailment changes

Page 12: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Impact Analysis

• Previous Version or all versions?– Intentional Difference analysis?– Justifications analysis?

• Information Content?– Asserted content?– Entailed content?

• Requirements Impact?– Functional and Non-functional?– Which ones do we test?

Page 13: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Define Test Plan

• Test criteria?

• Test area? Do we have test areas?

• How can the test be systematically run?

• Can results be interpreted?

Page 14: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Can we systematically:

• Build test suites?

• Run tests?

• Evaluate results?

• Re-run tests if necessary?

Page 15: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Manual vs. Automated Test Suites

• Manually test cases– Check against a methodology– Eyeballing

• Automated test cases– Satisfiability– Inconsistency

Page 16: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Manual vs. Automated Test Suites

• Manually test cases– Time consuming– Subjective– Unsystematic

• Automated test cases– Reasoner based– Limited in scope

Page 17: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Can we expand the range of automatic test suites?

Page 18: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

YES

By Analysing Ontology Dynamics

Page 19: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

What are Ontology Dynamics?

• Periods of growth, decline, and stability

• Axioms presence

• Types of axioms presence (e.g. continual, interrupted)

• Sequence editing types and patterns

Page 20: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Axiom Life Span - We expect: Axioms with Constant Unchanged Presence

Ontology Versions

O1 Oi

αi

Page 21: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Axiom Life Span - We expect: Axioms that are Modified

Ontology Versions

Split or Merge

O1

αi

Oi Oi+n

Page 22: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Axiom Life Span - We expect: Axioms that Enter and Leave the Ontology

Ontology Versions

O1

αi

Oi Oi+n

Page 23: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Ontology Dynamics

Page 24: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

National Cancer Institute Thesaurus (NCIt)

• The National Cancer Institute (NCI) is a U.S. government funded organisation for the research of causes, treatment, and prevention of cancer

• The NCIt is an ontology written in the Web Ontology Language (OWL) which supports the development and maintenance of a controlled vocabulary about cancer research

• Multiple publications about process, quality control, usage, and critiques

• Publicly available monthly releases and concept change logs

Rich source of ontology evolution data

Page 25: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Dynamics – Axioms Life Span Analysis

Page 26: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Change Dynamics – Detailed View of Axiom Life Span

Top Ten Frequency Distributions

Page 27: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Axiom Life Span: Axioms with Constant Unchanged Presence

NCIt 2003 – 2012 103 Versions

O1

αi

O103

6.73%

Page 28: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Axiom Life Span: Axioms that Enter and Leave the Ontology

NCIt 2003 – 2012 103 Versions

O1

αi

Oi Oi+n

Page 29: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Axiom Life Span: Axioms with Gaps between Unchanged Presence

O1 Oi Oi+n

NCIt 2003 – 2012 103 Versions

Effectually Added

αi

Effectually Removed

O I≠ αi

Effectually Added

αi

Effectually Removed

O I≠ αi

Ok Ok+n

Page 30: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Axiom Life Span: Axioms with Gaps between Unchanged Presence

O1 Oi Oi+n

NCIt 2003 – 2012 103 Versions

Effectually Added

αi

Ineffectually Removed

O I= αi

Effectually Removed

αi

Effectually Added

Ok Ok+n

O I≠ αi

Page 31: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Axiom Life Span: Axioms with Gaps between Unchanged Presence

O1 Oi Oi+n

NCIt 2003 – 2012 103 Versions

Ineffectually Added

αi

IneffectuallyRemoved

O I= αi

Ineffectually Added

αi

Ineffectual Removed

Ok Ok+n

O I= αi

Page 32: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Dynamics – Editing Patterns

Page 33: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Regression Analysis – Main Finding

This means that we are able to identify ‘bugs’, the sequence pattern of these bugs, and their location!

Page 34: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Regression Analysis: Indicative of Faults In Sequence of Changes

O1 Oi Oi+n

NCIt 2003 – 2012 103 Versions

Effectually Added

αi

Effectually Removed

O I≠ αi

Effectually Added

αi

Effectually Removed

O I≠ αi

Ok Ok+n

O1 Oi Oi+n

NCIt 2003 – 2012 103 Versions

Effectually Added

αi

Ineffectually Removed

O I= αi

Effectually Removed

αi

Effectually Added

Ok Ok+n

✗✓?

✗ ? ?✓

?

Page 35: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Regression Analysis: Suggestive of Faults In Sequence of Changes

O1

NCIt 2003 – 2012 103 Versions

O I= αi

Effectually Added

αi

Ineffectually Removed

Ok Ok+n

Refactoring

Page 36: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

NCIt Regression Analysis: Suggestive of Faults In Sequence of Changes

O1

NCIt 2003 – 2012 103 Versions

O I= αi

IneffectuallyAddedαi

Ineffectually Removed

Ok Ok+n

O1

NCIt 2003 – 2012 103 Versions

O I= αi

Effectually Added

αi

Ineffectually Removed

Oi Oi+n

IneffectuallyAdded

Ok

?

Page 37: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

From Change Dynamics to Ontology Regression Testing

Page 38: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Systematically Build Test Suites

Indicative of Faults In Sequence of Changes

Page 39: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Automated Test Suites - Fault Detection

• It provides systematic regression test for all version of the ontology

• It conclusively identifies content regression and content refactoring

• It suggests other faults based on regression sequence

It is efficient and cheap to run

Page 40: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

And there are still more potential benefits …

Page 41: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Automated Test Suites - Fault Detection

• Entailment Set Studies

• Sub Domain Dynamics

• Ontology Classes Dynamics

Page 42: Ontology Evolution and Regression Analysis Insights into Ontology Regression Testing

Thanks