Files in this item
Machine checkable design patterns using dependent types and domain specific goal-oriented modelling languages
Item metadata
dc.contributor.advisor | Duncan, Ishbel Mary Macdonald | |
dc.contributor.author | de Muijnck-Hughes, Jan | |
dc.coverage.spatial | xiv, 265 p. | en_US |
dc.date.accessioned | 2016-06-13T13:28:42Z | |
dc.date.available | 2016-06-13T13:28:42Z | |
dc.date.issued | 2016-06-22 | |
dc.identifier | uk.bl.ethos.687028 | |
dc.identifier.uri | https://hdl.handle.net/10023/8968 | |
dc.description.abstract | Goal-Oriented Modelling Languages such as the Goal Requirements Language (GRL) have been used to reason about Design Patterns. However, the GRL is a general purpose modelling language that does not support concepts bespoke to the pattern domain. This thesis has investigated how advanced programming language techniques, namely Dependent Types and Domain Specific Languages, can be used to enhance the design and construction of Domain Specific Modelling languages (DSMLs), and apply the results to Design Pattern Engineering. This thesis presents Sif, a DSML for reasoning about design patterns as goal-oriented requirements problems. Sif presents modellers with a modelling language tailored to the pattern domain but leverages the GRL for realisation of the modelling constructs. Dependent types have influenced the design and implementation of Sif to provide correctness guarantees, and have led to the development of NovoGRL a novel extension of the GRL. A technique for DSML implementation called Types as (Meta) Modellers was developed in which the interpretation between a DSML and its host language is implemented directly within the type-system of the DSML. This provides correctness guarantees of DSML model instances during model construction. Models can only be constructed if and only if the DSML’s type-system can build a valid representation of the model in the host language. This thesis also investigated design pattern evaluation, developing PREMES an evaluation framework that uses tailorable testing techniques to provide demonstrable reporting on pattern quality. Linking PREMES with Sif are: Freyja - an active pattern document schema in which Sif models are embedded within pattern documents; and Frigg - a tool for interacting with pattern documents. The proof-of-concept tools in this thesis demonstrate: machine enhanced interactions with design patterns; reproducible automation in the PREMES framework; and machine checking of pattern documents as Sif models. With the tooling and techniques presented, design pattern engineering can become a more rigorous, demonstrable, and machine checkable process. | en_US |
dc.language.iso | en | en_US |
dc.publisher | University of St Andrews | |
dc.rights | Attribution-ShareAlike 4.0 International | * |
dc.rights.uri | http://creativecommons.org/licenses/by-sa/4.0/ | * |
dc.subject | Idris | en_US |
dc.subject | Embedded domain specific languages | en_US |
dc.subject | Domain specific languages | en_US |
dc.subject | Goal oriented modelling languages | en_US |
dc.subject | Domain specific goal oriented languages | en_US |
dc.subject | Dependent types | en_US |
dc.subject | Goal requirements language | en_US |
dc.subject | Requirements modelling | en_US |
dc.subject | Domain modelling | en_US |
dc.subject | Design patterns | en_US |
dc.subject.lcc | QA76.76P37D4 | |
dc.subject.lcsh | Software patterns | en_US |
dc.subject.lcsh | Modeling languages (Computer science) | en_US |
dc.subject.lcsh | Domain-specific programming languages | en_US |
dc.subject.lcsh | Type theory | en_US |
dc.title | Machine checkable design patterns using dependent types and domain specific goal-oriented modelling languages | en_US |
dc.type | Thesis | en_US |
dc.type.qualificationlevel | Doctoral | en_US |
dc.type.qualificationname | PhD Doctor of Philosophy | en_US |
dc.publisher.institution | The University of St Andrews | en_US |
The following licence files are associated with this item:
This item appears in the following Collection(s)
Except where otherwise noted within the work, this item's licence for re-use is described as Attribution-ShareAlike 4.0 International
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.