VNU-UET Repository

On Domain Driven Design Using Annotation-Based Domain Specific Language

Le, Minh Duc and Dang, Duc Hanh and Nguyen, Viet Ha (2018) On Domain Driven Design Using Annotation-Based Domain Specific Language. Computer Languages, Systems and Structures, 54 . pp. 199-235. ISSN 1477-8424

This is the latest version of this item.

Full text not available from this repository. (Request a copy)


The aim of object-oriented domain-driven design (DDD) is to iteratively develop software around a realistic domain model. Recent work in DDD use an annotation-based extension of object-oriented programming language to build the domain model. This model becomes the basis for a ubiquitous language and is used as input to generate software. However, the annotation-based extensions of these work do not adequately address the primitive and essential structural and behavioural modelling requirements of practical software. Further, they do not precisely characterise the software that is generated from the domain model. In this paper, we propose a DSL-based DDD method to address these limitations. We make four contributions: (1) An annotation-based domain-specific language (DSL) named DCSL, whose annotation extension expresses a set of essential structural constraints and the essential behaviour of a domain class. (2) A structural mapping between the state and behaviour spaces of a domain class. This mapping enables a technique for generating the behavioural specification. (3) A technique that uses DCSL to support behavioural modelling with UML activity diagram. (4) A 4-property characterisation of the software generated from the domain model. We demonstrate our method with a Java software tool and evaluate DCSL in the context of DDD.

Item Type: Article
Subjects: Information Technology (IT)
Scopus-indexed journals
ISI-indexed journals
Divisions: Faculty of Information Technology (FIT)
Depositing User: Duc-Hanh Dang
Date Deposited: 08 Nov 2018 06:55
Last Modified: 08 Nov 2018 06:55

Available Versions of this Item

Actions (login required)

View Item View Item