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

Slides:



Advertisements
Similar presentations
The Math Studies Project for Internal Assessment
Advertisements

Dr. Leo Obrst MITRE Information Semantics Information Discovery & Understanding Command & Control Center February 6, 2014February 6, 2014February 6, 2014.
An Ontology Creation Methodology: A Phased Approach
xUnit Test Patterns (Some) xUnit Test Patterns (in practice) by Adam Czepil.
The 20th International Conference on Software Engineering and Knowledge Engineering (SEKE2008) Department of Electrical and Computer Engineering
Regression Methodology Einat Ravid. Regression Testing - Definition  The selective retesting of a hardware system that has been modified to ensure that.
Software Regression Testing Speaker: Jerry Gao Ph.D. San Jose State University URL:
Software Quality Assurance Plan
Automation Testing Presentation Phil Hunter Phil Hunter - Automation Presentation 1.
Prioritizing User-session-based Test Cases for Web Applications Testing Sreedevi Sampath, Renne C. Bryce, Gokulanand Viswanath, Vani Kandimalla, A.Gunes.
Software Quality Assurance Inspection by Ross Simmerman Software developers follow a method of software quality assurance and try to eliminate bugs prior.
Personalizing Search via Automated Analysis of Interests and Activities Jaime Teevan Susan T.Dumains Eric Horvitz MIT,CSAILMicrosoft Researcher Microsoft.
Software Testing and Quality Assurance
SE 450 Software Processes & Product Metrics Reliability Engineering.
1 ECCF Training 2.0 Introduction ECCF Training Working Group January 2011.
Regression testing Tor Stållhane. What is regression testing – 1 Regression testing is testing done to check that a system update does not re- introduce.
Module Based Regression Test Selection Strategy for Web applications Author: Annamariale Chandran Honeywell Technology Solutions For International Conference.
State coverage: an empirical analysis based on a user study Dries Vanoverberghe, Emma Eyckmans, and Frank Piessens.
Chapter 9 – Software Evolution and Maintenance
Aligning Course Competencies using Text Analytics
SEG Software Maintenance1 Software Maintenance “The modification of a software product after delivery to correct faults, to improve performance or.
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
A Visual Comparison Approach to Automated Regression Testing (PDF to PDF Compare)
Software Testing Life Cycle
1 How to Apply Static and Dynamic Analysis in Practice © Software Quality Week ‘97 How to Apply Static and Dynamic Analysis in Practice - Otto Vinter Manager.
Copyright © 2007 Pearson Education Canada 1 Chapter 13: Audit of the Sales and Collection Cycle: Tests of Controls.
United Nations Economic Commission for Europe Statistical Division Seasonal Adjustment Process with Demetra+ Anu Peltola Economic Statistics Section, UNECE.
Of 33 lecture 10: ontology – evolution. of 33 ece 720, winter ‘122 ontology evolution introduction - ontologies enable knowledge to be made explicit and.
1 Experience-Driven Process Improvement Boosts Software Quality © Software Quality Week 1996 Experience-Driven Process Improvement Boosts Software Quality.
1 Introduction to Software Engineering Lecture 1.
Lucian Voinea Visualizing the Evolution of Code The Visual Code Navigator (VCN) Nunspeet,
BAA - Big Mechanism using SIRA Technology Chuck Rehberg CTO at Trigent Software and Chief Scientist at Semantic Insights™
1 ECCF Training 2.0 Introduction ECCF Training Working Group January 2011.
Copyright © 2015 NTT DATA Corporation Kazuo Kobori, NTT DATA Corporation Makoto Matsushita, Osaka University Katsuro Inoue, Osaka University SANER2015.
Using Domain Ontologies to Improve Information Retrieval in Scientific Publications Engineering Informatics Lab at Stanford.
Of 33 lecture 1: introduction. of 33 the semantic web vision today’s web (1) web content – for human consumption (no structural information) people search.
Harvesting Social Knowledge from Folksonomies Harris Wu, Mohammad Zubair, Kurt Maly, Harvesting social knowledge from folksonomies, Proceedings of the.
HNDIT23082 Lecture 06:Software Maintenance. Reasons for changes Errors in the existing system Changes in requirements Technological advances Legislation.
CSC 480 Software Engineering Test Planning. Test Cases and Test Plans A test case is an explicit set of instructions designed to detect a particular class.
Ontology domain & modeling extensions. Modeling enhancements: overview Enhancements: – Increased expressivity in ontology – Increased expressivity in.
Approach to building ontologies A high-level view Chris Wroe.
1 Ontology Evolution within Ontology Editors Presentation at EKAW, Sigüenza, October 2002 L. Stojanovic, B. Motik FZI Research Center for Information Technologies.
CS 5150 Software Engineering Lecture 22 Reliability 3.
WonderWeb. Ontology Infrastructure for the Semantic Web. IST WP4: Ontology Engineering Heiner Stuckenschmidt, Michel Klein Vrije Universiteit.
Objective ICT : Internet of Services, Software & Virtualisation FLOSSEvo some preliminary ideas.
Software Testing and Quality Assurance Practical Considerations (1) 1.
WP4 Models and Contents Quality Assessment
Testability.
What is Software Test Automation?
Business process management (BPM)
Regression Testing with its types
Software Engineering (CSI 321)
Integrating SysML with OWL (or other logic based formalisms)
Software Verification and Validation
Business process management (BPM)
Development of the Amphibian Anatomical Ontology
CS 325: Software Engineering
Ontology Evolution: A Methodological Overview
Introduction to Software Testing
ece 627 intelligent web: ontology and beyond
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Department of Computer Science Regression Testing.
Regression testing Tor Stållhane.
Chapter 8 Software Evolution.
Lecture 06:Software Maintenance
Test-Driven Ontology Development in Protégé
Recommending Adaptive Changes for Framework Evolution
Presentation transcript:

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 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

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

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

Software Testing

Software Regression Testing What is it? It is a test activity to systematically re-test existing components after software changes It test against current and updated requirements

Software Regression Testing Testing Aspects Testing at the functional requirements –Unit Level –System Level Testing at the non-functional requirements

Software Regression Testing Testing Plan Defines testing criteria Identifies test area or components Test execution strategy Test evaluation strategy Updates test and other relevant documentation

Software Regression Testing Process Change Detectio n Impact Analysis Define Test Plan Build Test Suite Run Test Evaluate Results Report Results

Ontology Regression Testing?

Change Detection Explicit Changes –Asserted logical and annotation axioms –Properties –Classes Implicit Changes? –Subsumption changes –Entailment changes

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?

Define Test Plan Test criteria? Test area? Do we have test areas? How can the test be systematically run? Can results be interpreted?

Can we systematically: Build test suites? Run tests? Evaluate results? Re-run tests if necessary?

Manual vs. Automated Test Suites Manually test cases –Check against a methodology –Eyeballing Automated test cases –Satisfiability –Inconsistency

Manual vs. Automated Test Suites Manually test cases –Time consuming –Subjective –Unsystematic Automated test cases –Reasoner based –Limited in scope

Can we expand the range of automatic test suites?

YES By Analysing Ontology Dynamics

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

Axiom Life Span - We expect: Axioms with Constant Unchanged Presence Ontology Versions O1O1 OiOi αiαi

Axiom Life Span - We expect: Axioms that are Modified Ontology Versions Split or Merge O1O1 αiαi OiOi O i+n

Axiom Life Span - We expect: Axioms that Enter and Leave the Ontology Ontology Versions O1O1 αiαi OiOi O i+n

NCIt Ontology Dynamics

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

NCIt Dynamics – Axioms Life Span Analysis

NCIt Change Dynamics – Detailed View of Axiom Life Span Top Ten Frequency Distributions

NCIt Axiom Life Span: Axioms with Constant Unchanged Presence NCIt 2003 – Versions O1O1 αiαi O %

NCIt Axiom Life Span: Axioms that Enter and Leave the Ontology NCIt 2003 – Versions O1O1 αiαi OiOi O i+n

NCIt Axiom Life Span: Axioms with Gaps between Unchanged Presence O1O1 OiOi O i+n NCIt 2003 – Versions Effectually Added αiαi Effectually Removed O I≠ α i Effectually Added αiαi Effectually Removed O I≠ α i OkOk O k+n

NCIt Axiom Life Span: Axioms with Gaps between Unchanged Presence O1O1 OiOi O i+n NCIt 2003 – Versions Effectually Added αiαi Ineffectually Removed O I= α i Effectually Removed αiαi Effectually Added OkOk O k+n O I≠ α i

NCIt Axiom Life Span: Axioms with Gaps between Unchanged Presence O1O1 OiOi O i+n NCIt 2003 – Versions Ineffectually Added αiαi Ineffectually Removed O I= α i Ineffectually Added αiαi Ineffectual Removed OkOk O k+n O I= α i

NCIt Dynamics – Editing Patterns

NCIt Regression Analysis – Main Finding This means that we are able to identify ‘bugs’, the sequence pattern of these bugs, and their location!

NCIt Regression Analysis: Indicative of Faults In Sequence of Changes O1O1 OiOi O i+n NCIt 2003 – Versions Effectually Added αiαi Effectually Removed O I≠ α i Effectually Added αiαi Effectually Removed O I≠ α i OkOk O k+n O1O1 OiOi O i+n NCIt 2003 – Versions Effectually Added αiαi Ineffectually Removed O I= α i Effectually Removed αiαi Effectually Added OkOk O k+n ✗✓ ? ✗ ?? ✓ ?

NCIt Regression Analysis: Suggestive of Faults In Sequence of Changes O1O1 NCIt 2003 – Versions O I= α i Effectually Added αiαi Ineffectually Removed OkOk O k+n Refactoring

NCIt Regression Analysis: Suggestive of Faults In Sequence of Changes O1O1 NCIt 2003 – Versions O I= α i Ineffectually Added αiαi Ineffectually Removed OkOk O k+n O1O1 NCIt 2003 – Versions O I= α i Effectually Added αiαi Ineffectually Removed OiOi O i+n Ineffectually Added OkOk ?

From Change Dynamics to Ontology Regression Testing

Systematically Build Test Suites Indicative of Faults In Sequence of Changes

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

And there are still more potential benefits …

Automated Test Suites - Fault Detection Entailment Set Studies Sub Domain Dynamics Ontology Classes Dynamics …

Thanks