5 research outputs found
A Rule-based Engine to support a Framework for the Experimental Validation of Domain Specific Languages
Software systems are widely used in people daily routines and responsibilities, therefore, systems need to be developed rapidly and efficiently. Domain specific languages (DSLs) are languages that are applied to a specific application domain. Since DSLs provide notations and constructs adapted to a particular domain, they offer gains in expressiveness and ease of use when compared with general-purpose languages (GPLs). Therefore, one of the most important steps in the Software Language Engineering is the evaluation of the languages produced, with the end-users, since the risk of building inappropriate languages, that often do not fit the end users, may decrease productivity. Although DSLs evaluation is one of the most important steps in development process, Software Language Engineers tend to relax the experimental validation of their products due to several reasons like costs (time, means, money, the number of people required, etc.) and required know-how associated with it. The lack of systematic approaches and guidelines to evaluate DSLs, and a comprehensive set of tools may explain this shortcoming in the current state of practice. The Usability Driven DSL development with USE-ME (USE-ME) approach, developed in NOVA-LINCS, "promotes the quality in use of DSLs by building a
framework that leverages usability as a main concern". The feedback of the pilot studies was that despite the approach was "more or less easy" to understand it was not easy to model, since "there were too many steps to follow" and the framework did not provide a "guided cycle". So, in order to improve the system usability and the quality of the models produced with USE-ME, we developed a new version of the framework with validation rules implemented with Eclipse Validation Language (EVL) that guide, suggest and validate the Software Language Engineer actions throughout the development process. The validation rules were designed in such a way that the tool educates the user about the process, so that the user makes the best decision regarding his DSL evaluation. We performed two experiments, with different goals. The main goals of the first one was to analyse the effect of validation rules on the USE-ME framework, with respect to their impact on the System Usability Scale, and on the Model Correctness of USE-ME models. We analysed the results and we found evidences of improvements on the System Usability Scale, and on the Model Correctness of models, brought by the addition of the rules. The second experiment was conducted with a research team from Ege University, in Turkey. The main goal of this experiment was to perform a guided evaluation on a DSL related with Multi-Agent Systems, SEA-ML. Since the number of participants was low we cannot draw conclusions regarding this experiment.
Despite the significant results from the first experiment further evaluation on the
new version of the framework is necessary, this time, with more experienced users and
with more complex exercises. With this new experiment, we can compare the results and improve the USE-ME framework
A Domain-Specific Modelling Language for Adventure Educational Games and Flow Theory
Designing educational games is a complex task and needs collaboration between game developers and an educator. Domain-Specific Modeling Language (DSML) offers an approach to simplify the design activities of educational games and support the involvement of both game developers and educators. This paper presents an extension of Serious Game Logic and Structure Modeling Language (GLiSMo), a DSML that designs the logical and structural views of educational adventure games. The gap in the original GLiSMo is that it did not allow an educational game to be designed according to any learning theories. Furthermore, the original GLiSMo does not cover all concepts in the adventure genre. The authors intend to extend the original GLiSMo by adding the concepts of Flow Theory and concepts of the adventure genre to make it more expressive. The extended DSML is called FA-GLiSMo. The authors evaluated the expressiveness of FA-GLiSMo using Framework for Qualitative Assessment of DSLs (FQAD). The result shows that the expressiveness of FA-GLiSMo is still ‘incomplete’ due to the lack of clarity of semantics for several domain concepts. Improvements were performed, and the finalized FA-GLiSMo now has fifteen (15) concepts of the Logic diagram, nineteen (19) concepts of the Structure diagram, and a new diagram called the Flow diagram containing five (5) concepts of the Flow Theory. The authors also demonstrate in this paper the concrete syntax of FA-GLiSMo using the Tales of Monkey Island game as a case study
RESTful Web Services Development with a Model-Driven Engineering Approach
A RESTful web service implementation requires following the constrains inherent to Representational State Transfer (REST) architectural style, which, being a non-trivial task, often leads to solutions that do not fulfill those requirements properly.
Model-driven techniques have been proposed to improve the development of complex applications. In model-driven software development, software is not implemented manually based on informal descriptions, but partial or completely generated from formal models derived from metamodels.
A model driven approach, materialized in a domain specific language that integrates the OpenAPI specification, an emerging standard for describing REST services, allows developers to use a design first approach in the web service development process, focusing in the definition of resources and their relationships, leaving the repetitive code production process to the automation provided by model-driven engineering techniques. This also allows to shift the creative coding process to the resolution of the complex business rules, instead of the tiresome and error-prone create, read, update, and delete operations.
The code generation process covers the web service flow, from the establishment and exposure of the endpoints to the definition of database tables.A implementação de serviços web RESTful requer que as restrições inerentes ao estilo arquitetónico “Representational State Transfer” (REST) sejam cumpridas, o que, sendo usualmente uma tarefa não trivial, geralmente leva a soluções que não atendem a esses requisitos adequadamente.
Técnicas orientadas a modelos têm sido propostas para melhorar o desenvolvimento de aplicações complexas. No desenvolvimento de software orientado a modelos, o software não é implementado manualmente com base em descrições informais, mas parcial ou completamente gerado a partir de modelos formais derivados de meta-modelos.
Uma abordagem orientada a modelos, materializada através de uma linguagem específica do domínio que integra a especificação OpenAPI, um padrão emergente para descrever serviços REST, permite aos desenvolvedores usar uma primeira abordagem de design no processo de desenvolvimento de serviços da Web, concentrando-se na definição dos recursos e das suas relações, deixando o processo de produção de código repetitivo para a automação fornecida por técnicas de engenharia orientadas a modelos. Isso também permite focar o processo de codificação criativo na resolução e implementação das regras de negócios mais complexas, em vez de nas operações mais repetitivas e propensas a erros: criação, leitura, atualização e remoção de dados.
O processo de geração de código abrange o fluxo do serviço web desde o estabelecimento e exposição dos caminhos para os serviços disponíveis até à definição de tabelas de base de dados
Recommended from our members
Using domain specific language and sequence to sequence models as a hybrid framework for a natural language interface to a database solution
This thesis was submitted for the award of Doctor of Philosophy and was awarded by Brunel University LondonThe aim of this project is to provide a new approach to solving the problem of
converting natural language into a language capable of querying a database or data
repository. This problem has been around for a while, in the 1970's the US Navy
developed a solution called LADDER and since then there have been an array of
solutions, approaches and tweaks that have kept the research community busy. The
introduction of electronic assistants into the smart phone in 2010 has given new
impetus to this problem.
With the increasingly pervasive nature of data and its ever expanding use to answer
questions within business science, medicine extracting data is becoming more important.
The idea behind this project is to make data more democratised by allowing access to it
without the need for specialist languages. The performance and reliability of converting
natural language into structured query language can be problematic in handling nuances
that are prevalent in natural language. Relational databases are not designed to understand
language nuance.
This project introduces the following components as part of a holistic approach to improving
the conversion of a natural language statement into a language capable of querying a data
repository.
● The idea proposed in this project combines the use of sequence to sequence models
in conjunction with the natural language part of speech technologies and domain
specific languages to convert natural language queries into SQL. The approach
being proposed by this chapter is to use natural language processing to perform an
initial shallow pass of the incoming query and then use Google's Tensor Flow to
refine the query with the use of a sequence to sequence model.
● This thesis is also proposing to use a Domain Specific Language (DSL) as part of the
conversion process. The use of the DSL has the potential to allow the natural
language query to be translated into more than just an SQL statement, but any query
language such as NoSQL or XQuery