Conceptual Modelling Support for the Haskell Programming Language
Podpora konceptuálního modelování pro jazyk Haskell
Authors
Supervisors
Reviewers
Editors
Other contributors
Journal Title
Journal ISSN
Volume Title
Publisher
České vysoké učení technické v Praze
Czech Technical University in Prague
Czech Technical University in Prague
Date
Abstract
Diplomová práce se zabývá problematikou provázanosti konceptuálního modelování s implementací informačních systémů a navrhuje řešení pro reprezentaci konceptuálních modelů přímo v programovacím jazyce Haskell včetně jejich vizualizace a postupů validace a verifikace. V rámci práce jsou rozebrány základní pojmy a významné přístupy v oblasti konceptuálního modelování a formální specifikace modelů, stejně jako nástroje pro jejich podporu. Dále jsou v práci analyzovány vybrané vlastnosti programovacích jazyků a možnosti jejich využití pro konceptuální modelování, požadavky na reprezentaci konceptuálních modelů a vlastní expresivita jazyka Haskell. Systém, navržený na základě analýzy a rešerše, ve formě implementovaného prototypu v jazyce Haskell je demonstrován na případové studii a jsou diskutovány jeho výhody a nevýhody z hlediska výsledného SW produktu i projektového řízení. Výsledkem práce je zdokumentovaný open-source prototyp systému včetně metodiky jeho užití pro tvorbu, verifikaci a validaci konceptuálních modelů v jazyce Haskell. Práce také obsahuje návrh budoucího vývoje a rozvoje systému i další možnosti výzkumu v této oblasti.
The diploma thesis deals with the interconnection of conceptual modelling with the implementation of information systems and proposes solution to represent conceptual models directly in the Haskell programming language including their visualization as well as validation and verification procedures. Basic concepts and significant approaches to conceptual modelling and formal specification with their supporting tools are discussed in this work. Furthermore, the work contains analysis of the selected properties of programming languages to be used for conceptual modelling, requirements for representation of conceptual models and Haskell's own expressiveness is analyzed too. The proposed solution, which is based on previous discussion and analysis, in the form of an implemented Haskell library prototype is demonstrated in a case study and its advantages and disadvantages are discussed in terms of the resulting software product and project management. The result of the thesis is a documented open-source prototype, including its methodology for the construction, validation and verification of conceptual models. The thesis also contains proposals for the future development of the system and other research possibilities in this topic.
The diploma thesis deals with the interconnection of conceptual modelling with the implementation of information systems and proposes solution to represent conceptual models directly in the Haskell programming language including their visualization as well as validation and verification procedures. Basic concepts and significant approaches to conceptual modelling and formal specification with their supporting tools are discussed in this work. Furthermore, the work contains analysis of the selected properties of programming languages to be used for conceptual modelling, requirements for representation of conceptual models and Haskell's own expressiveness is analyzed too. The proposed solution, which is based on previous discussion and analysis, in the form of an implemented Haskell library prototype is demonstrated in a case study and its advantages and disadvantages are discussed in terms of the resulting software product and project management. The result of the thesis is a documented open-source prototype, including its methodology for the construction, validation and verification of conceptual models. The thesis also contains proposals for the future development of the system and other research possibilities in this topic.