The AIAI Seminar Series in association with the SSP group of DAI
Wednesday, Jun 10th, 2-3pm
Department of Artificial Intelligence, 80 South Bridge, Room F10


Critiquing of Specifications based on Ontologies

Yannis Kalfoglou

Software designers, as well as other scientists, adopt the use of blueprints used for guiding the development process of their projects. A common form of blueprint is the executable formal specifications which exhibit interesting characteristics such as the support of formal evaluation. These specifications form the starting point for any software development process and it is crucial to be error-free. However, it is not difficult to make errors at these early phases of software development which have pernicious results for the remainder of the phases once remain undetected. These errors, often referred as conceptual errors, can be detected only when specific knowledge about the domain is available. This makes difficult the detection of them with the use of traditional debugging tools such as debuggers, traces, type-checkers, etc.

The field of Ontologies, and specifically, the formal ones, exhibit some compelling characteristics that can be used for tackle this problem. Formal ontologies provide a predefined syntax, semantics and often a set of axioms that restricts the possible interpretations of the ontology's constructs. We are utilizing formal ontologies in our approach for detecting conceptual errors that occur in specifications. These specifications should use the ontology's valid constructs and ultimately conform to the ontological constraints posed by the ontology's axioms. We have apply this mechanism with success to the field of business process modelling, specifically to the Process Interchange Format (PIF) ontology. Recently, we have extent our mechanism by adopting a multi-layered architecture that gives us extra flexibility. We have apply the mechanism to check recursively, ontological constraints for error occurrences with respect to meta-level constraints. A number of examples borrowed from the ecological modelling domain have been processed to demonstrate the use of the multi-layered architecture. In addition, we can apply the same error-checking mechanism to help ontological engineers in detecting errors during the ontologies construction and/or ontologies mapping.