GENGED: visual definition of visual languages
Autoři
Více o knize
Master Ittei said, „In calligraphy it is progress when the paper, brush and ink are in harmony“ [Yam79]. Today in software modeling and specification we are far away from this principle. Visual specifications might be a step in the right direction. We built the GENGED environment to make software modeling and specification easy and reliable. The visual definition of visual languages and the generation of an appropriate editor contains a great potential to bring more harmony to this skill. Thus the overall aim of this thesis is the support of software development techniques that involve several kinds of visual languages. These visual languages are used for software engineering and programming. Visual programming languages are usually tightly integrated with visual environments. Whenever the visual means of expressions are changed, time- and cost-intensive re- implementations are necessary which can be avoided if generators for visual environments are available. This thesis is one step towards this goal. The visual environment GENGED supports the visual definition of visual languages. The resulting visual language specification is the parameter of a visual language editor for the manipulation of visual sentences. Visual languages definable by using GENGED are not restricted to visual programming languages. The goal of this environment is to support numerous kinds of visual languages. These can be diagrammatic, iconic or form-based languages used for software modelling or specification as well as visual languages for teaching children. Although we focus on the definition of visual syntax rather than semantics of visual languages, we distinguish abstract and concrete syntax. This distinction is a first step towards an extension concerning semantic definitions based on abstract syntax. The visual language specification that can be defined by using GENGED consists of an alphabet and a grammar. The alphabet is represented by an algebraic graph signature, the grammar is represented by an algebraic graph grammar. Moreover, the productions of the grammar are used as edit commands of the visual language editor supporting syntax-directed manipulation of sentences. So far, we show that algebraic graph grammars and graph transformation are suitable for the modelling of visual languages.