scispace - formally typeset
Search or ask a question
Journal ArticleDOI

Domain Specific Languages

25 Feb 2010-International Journal of Computer Applications (Foundation of Computer Science FCS)-Vol. 1, Iss: 21, pp 105-111
TL;DR: A number of DSLs spanning various phases of software development life cycle in terms of features that elucidates their advantages over general purpose languages and perform in depth study by practically applying a few open source DSLs: ‘Cascading’, Naked Objects Framework and RSpec.
Abstract: To match the needs of the fast paced generation, the speed of computing has also increased enormously. But, there is a limit to which the processor speed can be amplified. Hence in order to increase productivity, there is a need to change focus from processing time to programming time. Reduction in programming time can be achieved by identifying the domain to which the task belongs and using an appropriate Domain Specific Language (DSL). DSLs are constrained to use terms and concepts pertaining to an explicit domain making it much easier for the programmers to understand and learn, and cuts down the development time drastically. In this paper, we will understand what a DSL is; explore a number of DSLs spanning various phases of software development life cycle in terms of features that elucidates their advantages over general purpose languages and perform in depth study by practically applying a few open source DSLs: ‘Cascading’, Naked Objects Framework and RSpec.

Content maybe subject to copyright    Report

Citations
More filters
Proceedings ArticleDOI
01 Dec 2010
TL;DR: This work evaluates an incremental and model-driven development approach on the evolution of the requirements and the domain model in the context of an industrial case study on advanced telecom services that need to be compliant to QoS constraints.
Abstract: Process-driven service-oriented architectures (SOA) need to cope with constant changing requirements of various compliance requirements, such as quality of service (QoS) constraints within service level agreements (SLA). To the best of our knowledge, only little evidence is available if and in how far process-driven SOAs deal with the evolution of the requirements. In this work, we evaluate an incremental and model-driven development approach on the evolution of the requirements and the domain model in the context of an industrial case study. The case study focuses on advanced telecom services that need to be compliant to QoS constraints. This paper answers questions about the applicability of the incremental development approach, the impact of requirement changes, possible drawbacks of using a non-incremental development approach, and general recommendations based on the findings. Our results provide guidelines for dealing with the evolution of model-driven service-oriented systems.

2 citations


Cites methods from "Domain Specific Languages"

  • ...Second, we design and implement an the external DSL [3] based on the domain model....

    [...]

  • ...The development of a model-driven DSL – from now on called just DSL – starts in our approach with the definition of its language model, that is the domain model [3]....

    [...]

Proceedings ArticleDOI
07 Oct 2015
TL;DR: The paper explains the main concepts about the discipline of Software Engineering for eLearning and it presents a brief history of the ISELEAR workshop series.
Abstract: This paper introduces the 7th International Workshop on Software Engineering for E-Learning (ISELEAR'16), organized as a track of TEEM 16, the Fourth International Conference on Technological Ecosystems for Enhancing Multiculturality. The main topic of ISELEAR is to address the methods, techniques and tools used in the systematic construction of E-Learning software and applications. Thus, and contrarily to other venues in E-Learning, more focused on the users' perspective and on the pedagogical aspects of the E-Learning ecosystems, the focus of ISELEAR is on the development aspects of these ecosystems. After describing the workshop's aims, goals and history, the paper describes the ISELEAR review and selection process and summarizes the papers finally accepted as part of the workshop.

2 citations

Posted ContentDOI
10 Dec 2018-bioRxiv
TL;DR: The framework EMULSION presented here intends to both tackle multiple modelling paradigms in epidemiology and facilitate the automation of model design, and is a major lever to increase scientists’ preparedness to face emerging threats for public health and provide rapid, reliable, and reasoned assessments of control measures.
Abstract: There is currently an overwhelming increased interest in predictive biology and computational modelling. The development of reliable, reproducible and revisable simulation models in computational life sciences is often pointed out as a challenging issue. Population dynamics, including epidemiology, has not yet developed a language to formalize complex models in a univocal and automatable way, hence hindering the capability to implement in short time reliable, revisable and expert-friendly models intended for realistic mechanistic simulations. In epidemiology specifically, models aim not only at understanding pathogen spread but also at assessing control measures at several scales. To achieve this goal efficiently, best software practices should be supported by Artificial Intelligence methods to handle experts9 knowledge. The framework EMULSION presented here intends to both tackle multiple modelling paradigms in epidemiology and facilitate the automation of model design. We therefore built both a domain-specific language (DSL) for the modular description of complex epidemiological models, and a generic simulation engine designed to embed existing modelling paradigms within a homogeneous architecture based on adaptive software agents. The diversity of concerns (biology, economics, human activities) involved in real pathosystems requires an explicit, comprehensive and intelligible way to describe epidemiological models, to involve experts without computer science skills throughout the modelling, simulation and output analysis steps. This approach was applied to compare hypotheses in modelling a zoonosis (Q fever), to study its transmission dynamics within and between cattle herds at a regional scale, and to assess the contribution of transmission pathways. Separating model description from the simulation engine allowed epidemiologists to be involved in assumption revision, while guaranteeing very few code modifications. We assessed the added value of EMULSION by applying the DSL and the simulation engine to a concrete disease. Future extensions of EMULSION towards a broader range of epidemiological concerns will reduce significantly the time required to design and assess models and control measures against endemic and epidemic diseases. Ultimately, we believe this effort is a major lever to increase scientists9 preparedness to face emerging threats for public health and provide rapid, reliable, and reasoned assessments of control measures.

2 citations


Cites methods from "Domain Specific Languages"

  • ...Our approach is in line with this mindset, by coupling a modular simulation architecture with a Domain-Specific Language (DSL), which gives experts the ability to understand and design the multiple components of an epidemiological model without programming....

    [...]

  • ...To tackle efficiency issue, the next step will be to consider using EMULSION’s DSL to build dedicated, optimized code from model descriptions....

    [...]

  • ...181 The modelling language defined in EMULSION is an “internal” DSL [47], as it is based on 182 another language, YAML (a human-friendly data serialization standard)....

    [...]

  • ...We defined a Domain-Specific Language (DSL) [44] matching the needs of epidemiology, to allow experts to structure models through key-value pairs....

    [...]

  • ...The modelling language defined in EMULSION is an “internal” DSL [47], as it is based on another language, YAML (a human-friendly data serialization standard)....

    [...]

Proceedings ArticleDOI
18 Jun 2013
TL;DR: The idea of language-oriented security testing is introduced, a novel testing approach building upon domain-specific languages and domain knowledge to meet future requirements in security testing.
Abstract: Today's ongoing trend towards intense usage of web service based applications in daily business and everybody's daily life poses new challenges for security testing. Additionally, such applications mostly not execute in their own runtime environment but instead are deployed in some data center, run alongside multiple other applications, and serve different purposes for sundry user domains with diverging security requirements. As a consequence, security testing also has to adapt to be able to meet the necessary requirements for each application in its domain and its specific security requirements. In addition, security testing needs to be feasible for both service providers and consumers. In our paper we identify drawbacks of existing security testing approaches and provide directions for meeting emerging challenges in future security testing approaches. We also introduce and describe the idea of language-oriented security testing, a novel testing approach building upon domain-specific languages and domain knowledge to meet future requirements in security testing.

2 citations


Cites background from "Domain Specific Languages"

  • ...Hence, we again motivate the separation of the business and technical domain as already stated in Section I....

    [...]

Journal ArticleDOI
TL;DR: The FunnyQT solution to the TTC 2013 Petri-Nets to Statcharts Transformation Case has won the best overall solution award and the best efficiency award for this case.
Abstract: FunnyQT is a model querying and model transformation library for the functional Lisp-dialect Clojure providing a rich and efficient querying and transformation API. This paper describes the FunnyQT solution to the TTC 2013 Petri-Nets to Statcharts Transformation Case. This solution has won the best overall solution award and the best efficiency award for this case.

2 citations


Cites methods from "Domain Specific Languages"

  • ...FunnyQT1 is a new model querying and transformation approach which is implemented as an API for the functional, JVM-based Lisp-dialect Clojure....

    [...]

References
More filters
Journal ArticleDOI
TL;DR: The literature available on the topic of domain-specific languages as used for the construction and maintenance of software systems is surveyed, and a selection of 75 key publications in the area is listed.
Abstract: We survey the literature available on the topic of domain-specific languages as used for the construction and maintenance of software systems. We list a selection of 75 key publications in the area, and provide a summary for each of the papers. Moreover, we discuss terminology, risks and benefits, example domain-specific languages, design methodologies, and implementation techniques.

1,538 citations

Book
23 Sep 2010
TL;DR: This book covers a variety of different techniques available for DSLs and can be used with whatever programming language you happen to be using, most of the examples are in Java or C#.
Abstract: Designed as a wide-ranging guide to Domain Specific Languages (DSLs) and how to approach building them, this book covers a variety of different techniques available for DSLs. The goal is to provide readers with enough information to make an informed choice about whether or not to use a DSL and what kinds of DSL techniques to employ. Part I is a 150-page narrative overview that gives you a broad understanding of general principles. The reference material in Parts II through VI provides the details and examples you willneed to get started using the various techniques discussed. Both internal and external DSL topics are covered, in addition to alternative computational models and code generation. Although the general principles and patterns presented can be used with whatever programming language you happen to be using, most of the examples are in Java or C#.

908 citations