A Formal Description of Design Patterns Using OWL

  • Authors:
  • Jens Dietrich;Chris Elgar

  • Affiliations:
  • Massey University;Massey University

  • Venue:
  • ASWEC '05 Proceedings of the 2005 Australian conference on Software Engineering
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Design patterns have been used successfully in the last decade to re-use and communicate object-oriented design. However, the documentation of pattern usage is often very poor. This motivates the use of tools which can detect and document design patterns found in software. A couple of approaches have been proposed in recent years. The approach introduced here is based on a formal description of design patterns using the web ontology language OWL. Software artefacts used to define design patterns in a formal and machine processable fashion are represented by uniform resource identifiers (URIs). This yields a description that is open and extensible, and facilitates the sharing of design among software engineers. We discuss the developed software design ontology, and how this approach relates to themeta-modelling architecture of the OMG. In the second part, an effective pattern scanner for the java language is presented. This scanner is based on the ontology developed in part one and uses reflection and AST analysis to verify constraints. Various applications of this scanner are discussed.