Ann: a domain-specific language for the effective design and validation of Java annotations

Córdoba Sánchez, Irene and Lara Jaramillo, Juan de (2016). Ann: a domain-specific language for the effective design and validation of Java annotations. "Computer Languages Systems & Structures", v. 45 ; pp. 164-190. ISSN 1477-8424. https://doi.org/10.1016/j.cl.2016.02.002.

Description

Title: Ann: a domain-specific language for the effective design and validation of Java annotations
Author/s:
  • Córdoba Sánchez, Irene
  • Lara Jaramillo, Juan de
Item Type: Article
Título de Revista/Publicación: Computer Languages Systems & Structures
Date: 2016
ISSN: 1477-8424
Volume: 45
Subjects:
Freetext Keywords: Model driven engineering;Domain-specific languages; Code generation;Java annotations; Model finders
Faculty: E.T.S. de Ingenieros Informáticos (UPM)
Department: Inteligencia Artificial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (559kB) | Preview

Abstract

This paper describes a new modelling language for the effective design and validation of Java annotations. Since their inclusion in the 5th edition of Java, annotations have grown from a useful tool for the addition of meta-data to play a central role in many popular software projects. Usually they are not conceived in isolation, but in groups, with dependency and integrity constraints between them. However, the native support provided by Java for expressing this design is very limited. To over come its deficiencies and make explicit the rich conceptual model which lies behind a set of annotations,we propose a domain-specific modelling language.The proposal has been implemented as an Eclipse plug-in, including an editor and an integrated code generator that synthesises annotation processors. The environmental so integrates a model finder,able to detectun satisfiable constraints between different annotations, and to provide examples of correct annotation usages for validation. The language has been tested using a real set of annotations from the Java Persistence API(JPA).Within this subset we have found enough rich semantics expressible with Ann and omitted nowadays by the Java language, which shows the benefits of Ann in are levant field of application.

Funding Projects

TypeCodeAcronymLeaderTitle
Government of SpainTIN2014-52129-RUnspecifiedUnspecifiedFlexible model-driven engineering for mobile, open, dynamic data systems
Madrid Regional GovernmentS2013/ICE-3006SICOMORO-CMUnspecifiedDesarrollo de sIstemas confiables mediante modelos y herramientas avanzadas

More information

Item ID: 46325
DC Identifier: http://oa.upm.es/46325/
OAI Identifier: oai:oa.upm.es:46325
DOI: 10.1016/j.cl.2016.02.002
Official URL: http://www.sciencedirect.com/science/journal/14778424/45?sdc=1
Deposited by: Memoria Investigacion
Deposited on: 19 Oct 2017 10:11
Last Modified: 22 Mar 2019 17:05
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM