Javascript must be enabled for the correct page display

Quby: A domain-specific language for non-programmers

Veldthuis, M. (2012) Quby: A domain-specific language for non-programmers. Master's Thesis / Essay, Computing Science.

report.pdf - Published Version

Download (1MB) | Preview
[img] Text
AkkoordAiello.pdf - Other
Restricted to Repository staff only

Download (27kB)


Periodically taken questionnaires are used by mental health-care institu- tions to monitor the well-being and satisfaction of patients. It is preferable to let patients fill out these questionnaires digitally from home. Therefore, web-based applications that display these questionnaires and record the answers are used in practice. Several web applications that deal with this already exist. In order to get such an application to display a questionnaire, it first needs to be defined using its editing interface, which is done by non-programmers. Questionnaires often require a large set of features like input validation and non-linearity due to dependencies between possible answers and further questions. Because of this, the graphical user interfaces for defining questionnaires in the existing tools are complex. An alternative to defining questionnaires using a graphical user interface would be to use a text-based interface, using a domain-specific language (DSL). No research has been found that surveyed the use of domain- specific languages for constructing questionnaires by non-programmers. In fact it has been stated that further research into the more general case of DSL usage by non-programmers is needed. This thesis examines the use of DSLs for the purpose of defining ques- tionnaires. We designed, implemented and tested Quby: a web-based application written in Ruby that reads in questionnaires defined in a cus- tom DSL and presents these to psychiatric patients. These questionnaire definitions can be built by psychiatric research staff. We show a method of working with DSLs that cleanly seperates application logic from the code that supports the DSL by using expression builders, a method which has not been in wide use in the Ruby programming community. We found that non-programmer domain experts were not only capable of using the DSL we designed, but they preferred it over traditional GUI- based tools. Additionally, experts who work day-to-day with GlobalPark were able to create new questionnaires as quickly using our DSL as they were using GlobalPark. Based on our findings, we conclude that it is possible to design domain- specific languages based on the Ruby language, and have non-programmers work effectively with them with minimal support from on-site developers.

Item Type: Thesis (Master's Thesis / Essay)
Degree programme: Computing Science
Thesis type: Master's Thesis / Essay
Language: English
Date Deposited: 15 Feb 2018 07:50
Last Modified: 15 Feb 2018 07:50

Actions (login required)

View Item View Item