Interconnected Linguistic Architecture

Johannes Härtel, Lukas Härtel, Marcel Heinz, Ralf Lämmel, Andrei Varanovich

Research output: Contribution to JournalArticleAcademicpeer-review

Abstract

The context of the reported research is the documentation of software technologies such as object/relational mappers, web-application frameworks, or code generators. We assume that documentation should model a macroscopic view on usage scenarios of technologies in terms of involved artifacts, leveraged software languages, transformation and conformance relationships, I/O behavior, and others. In previous work, we referred to such documentation also as ‘linguistic architecture’. The corresponding models may also be referred to as ‘megamodels’ while adopting this term from the technological space of modeling/modeldriven engineering. This work is an inquiry into making such documentation more useful by means of connecting (mega)models, systems, and developer experience in several ways. To this end, we adopt an approach that is primarily based on prototyping (i.e., implementation of a megamodeling infrastructure with all conceivable connections) and experimentation with showcases (i.e., documentation of concrete software technologies). The knowledge gained by this research is a notion of interconnected linguistic architecture on the grounds of connecting primary model elements, inferred model elements, static and runtime system artifacts, traceability links, system contexts, knowledge resources, plugged interpretations of model elements, and IDE views. A corresponding suite of aspects of interconnected linguistic architecture is systematically described. As to the grounding of this research, we describe a literature survey which tracks scattered occurrences and thus demonstrates the relevance of the identified aspects of interconnected linguistic architecture. Further, we describe the MegaL/Xtext+IDE infrastructure which realizes interconnected linguistic architecture. The importance of this work lies in providing relatively formal, ontologically rich, navigable, and verifiable documentation of software technologies, thereby helping developers to better understand how to use technologies in new systems (prescriptive mode) or how technologies are used in existing systems (descriptive mode).
Original languageEnglish
JournalArt, Science, and Engineering of Programming
Volume1
Issue number1
DOIs
Publication statusPublished - 2017
Externally publishedYes

Fingerprint

Dive into the research topics of 'Interconnected Linguistic Architecture'. Together they form a unique fingerprint.

Cite this