Results 1 -
9 of
9
Making Metamodels Aware of Concrete Syntax
- In ecmda-fa ’05, volume 3748 of lncs
, 2005
"... Abstract. Language-centric methodologies, triggered by the success of Domain Specific Languages, rely on precise specifications of modeling languages. While the definition of the abstract syntax is standardized by the 4-layer metamodel architecture of the OMG, most language specifications are held i ..."
Abstract
-
Cited by 13 (5 self)
- Add to MetaCart
Abstract. Language-centric methodologies, triggered by the success of Domain Specific Languages, rely on precise specifications of modeling languages. While the definition of the abstract syntax is standardized by the 4-layer metamodel architecture of the OMG, most language specifications are held informally for the description of the semantics and the (graphical) concrete syntax. This paper is tackling the problem of specifying the concrete syntax of a language in a formal and non-ambiguous way. We propose to define the concrete syntax by an extension of the already existing metamodel of the abstract syntax, which describes the concepts of the language, with a second layer describing the graphical representation of concepts by visual elements. In addition, an intermediate layer defines how elements of both layers are related to each other. Unlike similar approaches that became the basis of some CASE tools, the intermediate layer is not a pure mapping from abstract to concrete syntax but connects both layers in a flexible, declarative way. We illustrate our approach with a simplified form of statecharts.
Domain-Specific Modelling with AToM3
- In Proceedings of the th OOPSLA Workshop on Domain-Specific Modeling
, 2004
"... Abstract. Using domain-specific modelling environments maximally constrains users, matching their mental model of the problem domain, and allows them to only build syntactically correct models. Anecdotal evidence shows that domainspecific modelling can drastically improve productivity as well as pro ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
Abstract. Using domain-specific modelling environments maximally constrains users, matching their mental model of the problem domain, and allows them to only build syntactically correct models. Anecdotal evidence shows that domainspecific modelling can drastically improve productivity as well as product quality. In this paper, the foundations of (domain-specific) modelling language design are presented. Our guiding principle is to “model everything”. It is indeed shown how all aspects of language design can be explicitly (meta-)modelled enabling the efficient synthesis of domain-specific, visual, modelling environments. The case of AToM 3, A Tool for Multi-formalism and Meta Modelling, is elaborated. Concepts are illustrated by modelling, analysis, simulation, and eventual synthesis of software for Traffic networks. 1 Dissecting a Modelling Language To explicitly model domain-specific modelling languages and ultimately synthesize visual modelling environments for those, we will break down a modelling language into its basic constituents. The following is based on a description by Harel and Rumpe [1],
On the usage of concrete syntax in model transformation rules
- In Irina Virbitskaite and Andrei Voronkov, editors, Proceedings, Sixth International Andrei Ershov Memorial Conference on Perspectives of System Informatics (PSI 2006), Akademgorodok near Novosibirsk, Russia, volume 4378 of LNCS
, 2007
"... Abstract. Graph transformations are one of the best known approaches for defining transformations in model-based software development. They are defined over the abstract syntax of source and target languages, described by metamodels. Since graph transformations are defined on the abstract syntax lev ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
Abstract. Graph transformations are one of the best known approaches for defining transformations in model-based software development. They are defined over the abstract syntax of source and target languages, described by metamodels. Since graph transformations are defined on the abstract syntax level, they can be hard to read and require an in-depth knowledge of the source and target metamodels. In this paper we investigate how graph transformations can be made much more compact and easier to read by using the concrete syntax of the source and target languages. We illustrate our approach by defining model refactorings.
Towards the Principles of Designing Diagrammatic Modeling Languages: Some Visual, Cognitive and Foundational Aspects
- Faculty. Oslo: University of Oslo
, 2004
"... Diagrammatic Modeling Languages (DMLs) are used extensively in software engineering. Well-known examples are DMLs like the Entity-Relationship Diagram (ERD) and its various dialects that are used for datamodeling, the Flowchart, the Statechart and their dialects used for flowbased and state/event-ba ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
Diagrammatic Modeling Languages (DMLs) are used extensively in software engineering. Well-known examples are DMLs like the Entity-Relationship Diagram (ERD) and its various dialects that are used for datamodeling, the Flowchart, the Statechart and their dialects used for flowbased and state/event-based behavioral-modeling respectively, and the Data-Flow Diagram (DFD) that is used for process-modeling, which incorporates to a degree both data and behavioral perspectives of a system. More recent DMLs include the de-facto industry standard DML suite called the Unified Modeling Language (UML), which contains eight distinct DMLs addressing various views of a system in version 1.5. Another, older and wellestablished standard that may be considered as a three-perspective DML suite is the CCITT/ITU standard Specification and Description Language (SDL). It is worth to mention DMLs that are based upon well-known mathematical formalisms used at system level like the Petri Nets also, as well as diagrammatic formalisms used at an algebraic level (rather than
Correctly defined concrete syntax for visual models
- Proceedings, MoDELS/UML 2006
, 2006
"... Abstract. The syntax of modeling languages is usually defined in two steps. The abstract syntax identifies modeling concepts whereas the concrete syntax clarifies how these modeling concepts are rendered by visual and/or textual elements. While the abstract syntax is often defined in form of a metam ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Abstract. The syntax of modeling languages is usually defined in two steps. The abstract syntax identifies modeling concepts whereas the concrete syntax clarifies how these modeling concepts are rendered by visual and/or textual elements. While the abstract syntax is often defined in form of a metamodel there is no such standard format yet for concrete syntax definitions; at least as long as the concrete syntax is not purely text-based and classical grammar-based approaches are not applicable. In a previous paper, we proposed to extend the metamodeling approach also to concrete syntax definitions. In this paper, we present an analysis technique for our concrete syntax definitions that detects inconsistencies between the abstract and the concrete syntax of a modeling language. We have implemented our approach on top of the automatic decision procedure Simplify. 1
A Model-Driven Approach to Scenario-Based Requirements Engineering
"... A model-driven approach to scenario-based requirements engineering is proposed. The approach, which is based on Computer Automated Multi-Paradigm Modeling (CAMPaM), aims to improve the software process. A framework is given and implemented to reason about models of systems at multiple levels of abst ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
A model-driven approach to scenario-based requirements engineering is proposed. The approach, which is based on Computer Automated Multi-Paradigm Modeling (CAMPaM), aims to improve the software process. A framework is given and implemented to reason about models of systems at multiple levels of abstraction, to transform between models in different formalisms, and to provide and evolve modeling formalisms. The model-driven approach starts with modeling requirements of a system in scenario models and the subsequent automatic transformation to state-based behavior models. Then, either code can be synthesized or models can be further transformed into models with additional information such as explicit timing information or interactions between components. These models, together with the inputs (e.g., queries, performance metrics, test cases, etc.) generated directly from the scenario models, can be used for a variety of purposes, such as verification, analysis, simulation, animation and so on. A visual modeling environment is built in AToM 3 using Meta-Modeling and Model Transformation. It supports modeling in Sequence Diagrams, automatic transformation to Statecharts,
Multi-Paradigm Modelling and Synthesis of User Interfaces
"... In this article, model-based design and synthesis of reactive user interfaces is presented as a particular application of Computer-Automated Multi-Paradigm Modelling (CAM-PaM). Multi-paradigm modelling acknowledges the need to model at different levels of abstraction, using appropriate formalisms. I ..."
Abstract
- Add to MetaCart
In this article, model-based design and synthesis of reactive user interfaces is presented as a particular application of Computer-Automated Multi-Paradigm Modelling (CAM-PaM). Multi-paradigm modelling acknowledges the need to model at different levels of abstraction, using appropriate formalisms. It also gives transformations first-class model status. In the CAMPaM UI development process, a class of user interfaces is modelled. This includes models of the abstract syntax of the user interface, of the concrete visual syntax of the user interface (including layout) and of the semantics of the application (its reactive behaviour). From these models, an interactive modelling environment is synthesized. This environment allows the modeller to experiment (analyze, simulate) with different instances in the modelled class of user interfaces. Once a single element of the set of possible user interfaces is chosen, the final UI application is synthesized. This process will be demonstrated by means of a digital watch application. Code is synthesized for execution within a web browser using an AJAX client-server architecture. 1.
Framework for Defining Model Language Metamodels for CASE Tools.
"... This paper presents a framework for defining metamodels. The goal of this framework is adding the CASE tools issues to the definitions of the model languages. Considering the CASE tools when defining the metamodels provides facilities for the model interchange among CASE tools. The presented framewo ..."
Abstract
- Add to MetaCart
This paper presents a framework for defining metamodels. The goal of this framework is adding the CASE tools issues to the definitions of the model languages. Considering the CASE tools when defining the metamodels provides facilities for the model interchange among CASE tools. The presented framework contains four internal metamodels. Firsly, a metamodel specifies the abstract syntax of the model language. Secondly, another metamodel specifies the particular elements for the connection-based languages. Thirdly, a metamodel specifies the spatial information. At last, a metamodel defines the necessary elements for the CASE tools. Each internal metamodel can be changed without having effect on the others. These four internal metamodels can be combined in several ways (denoted as configurations). Each configuration has its particular scope. The presented framework has been already used for defining the INGENIAS language and modernising the INGENIAS Development Kit (IDK). Finally, the presented framework is compared to the UML Diagram Interchange (UML-DI) specification and other relevant works. 1
Establishing Graphical . . . between Visualizations of Multi-Dimensional Data
, 2006
"... Multi-dimensional data has been visualized in many ways and many of these visualizations are excellent for a particular set of data or set of tasks. However, we can think of these individual visualizations as point solutions in the problem space of potential visualization for multi-dimensional data. ..."
Abstract
- Add to MetaCart
Multi-dimensional data has been visualized in many ways and many of these visualizations are excellent for a particular set of data or set of tasks. However, we can think of these individual visualizations as point solutions in the problem space of potential visualization for multi-dimensional data. In this research I explore the interrelationships between two multi-dimensional visualizations, namely Parallel Coordinates and Star Glyphs, and investigate the possibilities of describing these visualizations formally. Through both graphical means and my linguistic formalism, I show that these two multi-dimensional visualizations are related and, in fact, belong to the same family of visualizations. This insight lets me develop Parallel Glyphs, a 3D integration of these two 2D visualizations, along with a suite of new interactive exploration techniques. The same linguistic formalism is used to specify Parallel Coordinates and Star Glyphs and is then used to build the morphology and syntax associated to Parallel Glyphs and its available interactions. iii Publications Materials, ideas, and figures from this thesis have appeared previously in the following

