Using and Re-using Application Generators

A Plantec 1 Vincent Ribaud 2
1 Lab-STICC_UBO_CACS_MOCS
UBO - Université de Brest, Lab-STICC - Laboratoire des sciences et techniques de l'information, de la communication et de la connaissance
Abstract : Application generators translate specifications into products (programs, documentation). They parse specification statements into data structures (called dictionaries or meta-models), from which desired products can be derived. An application generator builder offers a way to define specification languages and associated parsers, to describe and traverse the meta-models structure and to specify the derivation on this structure. STEP is an ISO 10303 standard developed to facilitate product information sharing by specifying sufficient semantic content for data and their usage. STEP offers very useful technology, such as an object oriented modelling language EXPRESS and a data access interface, and can be applied for the design and the implementation of application generators. EUGENE is a STEP-based framework, that is intended for the building of application generators. After a concise presentation of EUGENE, this paper presents different application generators built with this framework, mainly data management tools, a browsing tool and conversion tools. Then, we discuss the main benefits induced from our approach. 1. Introduction Application generators translate source specifications into target products as programs or documentation. They use data structures called dictionaries or meta-models to store the source specifications and intermediate representations. As in compilers, there are two main functions in a generator: parsing of the source specifications and the target code generation. Typically, an application generator builder offers a means to define specification languages and associated parsers, to describe and traverse the meta-model structure and to specify the derivation on this structure. In most builders, derivation is specified with templates (or skeletons) of code. Templates contain a mixture of commands operating on the meta-models and "real" code directly inserted into the products. With classical tools and methods, specifying and implementing a generator is very much like specifying and implementing a language. In this paper, we describe a way of building application generators directly from the object-oriented specification of meta-models. We used this possibility in a tool, called EUGENE [8]. Meta-models and code templates are programmed with the object-oriented data modelling langage, EXPRESS. We argue that building generators from the specification of meta-models can simplify their design and implementation and makes their use and re-use in industrial projects easier. As a consequence, generators can be implemented for specific problems and generated
Type de document :
Communication dans un congrès
ICSE'99 - International Workshop on Constructing Software Engineering Tools (COSET'99), May 1999, Los Angeles, United States. The Second International Symposium on Constructing Software Engineering Tools (CoSET2000) (workshop session), 〈http://dl.acm.org/citation.cfm?id=337180.337822〉
Liste complète des métadonnées

Littérature citée [2 références]  Voir  Masquer  Télécharger

http://hal.univ-brest.fr/hal-01450886
Contributeur : Vincent Ribaud <>
Soumis le : jeudi 9 février 2017 - 15:24:19
Dernière modification le : mardi 16 janvier 2018 - 15:54:23
Document(s) archivé(s) le : mercredi 10 mai 2017 - 12:15:17

Fichier

COSET99.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : hal-01450886, version 1

Citation

A Plantec, Vincent Ribaud. Using and Re-using Application Generators. ICSE'99 - International Workshop on Constructing Software Engineering Tools (COSET'99), May 1999, Los Angeles, United States. The Second International Symposium on Constructing Software Engineering Tools (CoSET2000) (workshop session), 〈http://dl.acm.org/citation.cfm?id=337180.337822〉. 〈hal-01450886〉

Partager

Métriques

Consultations de la notice

166

Téléchargements de fichiers

67