Developing consistent and modular software models with ontologies

Robert Hoehndorf*, Axel Cyrille Ngonga Ngomo, Heinrich Herre

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

11 Scopus citations

Abstract

The development and verification of software models that are applicable across multiple domains remains a difficult problem. We propose a novel approach to model-driven software development based on ontologies and Semantic Web technology. Our approach uses three ontologies to define software models: a task ontology, a domain ontology and a top-level ontology. The task ontology serves as the conceptual model for the software, the domain ontology provides domain-specific knowledge and the top-level ontology integrates the task and domain ontologies. Our method allows the verification of these models both for consistency and ontological adequacy. This verification can be performed both at development and runtime. Domain ontologies are replaceable modules, which enables the comparison and application of the models built using our method across multiple domains. We demonstrate the viability of our approach through the design and implementation of a semantic wiki and a social tagging system, and compare it with model-driven software development to illustrate its benefits.

Original languageEnglish (US)
Title of host publicationFrontiers in Artificial Intelligence and Applications
PublisherIOS Press
Pages399-412
Number of pages14
Volume199
Edition1
ISBN (Print)9781607500490
DOIs
StatePublished - 2009
Externally publishedYes

Publication series

NameFrontiers in Artificial Intelligence and Applications
Number1
Volume199
ISSN (Print)0922-6389

Keywords

  • Formal ontology
  • Ontology-driven design
  • Software engineering

ASJC Scopus subject areas

  • Artificial Intelligence

Fingerprint

Dive into the research topics of 'Developing consistent and modular software models with ontologies'. Together they form a unique fingerprint.

Cite this