Article

A deep view-point language and framework for projective modeling

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Most view-based modeling approaches are today based on a “synthetic” approach in which the views hold all the information modeled about a system and are kept consistent using explicit, inter-view correspondence rules. The alternative “projective” approach, in which the contents of views are “projected” from a single underlying model on demand, is far less widely used due to the lack of suitable conceptual frameworks and languages. In this paper we take a step towards addressing this problem by presenting the foundations of a suitable language and conceptual framework for defining and applying views for projective modeling. The framework leverages deep modeling in order to seamlessly support views that exist at, and span, multiple levels of classification. The viewpoint language was developed in the context of Orthographic Software Modeling but is more generally applicable to any projective modeling approach.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

ResearchGate has not been able to resolve any citations for this publication.
Full-text available
Article
Domain-specific modeling languages (DSMLs) promise clear advantages over general-purpose modeling languages. However, their design poses a fundamental challenge. While economies of scale advocate the development of DSMLs that can be used in a wide range of cases, modeling productivity demands more specific language concepts tuned to individual requirements. Inspired by the actual use of technical languages (German: “Fachsprachen”), this paper presents a novel multilevel modeling approach to conceptual modeling and to the design of information systems. Unlike traditional language architectures such as Meta Object Facility (MOF), it features a recursive architecture that allows for an arbitrary number of classification levels and, hence, for the design of hierarchies of DSMLs ranging from reference DSMLs to “local” DSMLs. It can not only diminish the conflict inherent in designing DSMLs, but enables the reuse and integration of software artifacts in general. It also helps reduce modeling complexity by relaxing the rigid dichotomy between specialization and instantiation. Furthermore, it integrates a meta-modeling language with a metamodel of a reflective meta-programming language, thereby allowing for executable models. The specification of the language architecture is supplemented by the description of use scenarios that illustrate the potential of multilevel modeling and a critical discussion of its peculiarities.
Full-text available
Conference Paper
Multi-level modeling based on deep instantiation has attracted growing interest over the last few years as a better way of creating and organizing models capturing problem domains featuring more than one classification level. However, until recently the approach has lacked practical tool support. This work introduces Melanie, a new MultiLevel Modeling and Ontology Engineering Environment, that has been specifically developed to support multi-level modeling as well as other important new modeling use cases such as unified exploratory / constructive modeling, symbiotic domain-specific / general purpose languages and interactive (meta)modeling. This work briefly explains the motivations and goals behind Melanie and provides a short overview of its features and architecture.
Full-text available
Conference Paper
Although they are significantly different in how they decompose and conceptualize software systems, one thing that all advanced software engineering paradigms have in common is that they increase the number of different views involved in visualizing a system. Managing these different views can be challenging even when a paradigm is used independently, but when they are used together the number of views and inter-dependencies quickly becomes overwhelming. In this paper we present a novel approach for organizing and generating the different views used in advanced software engineering methods that we call Orthographic Software Modeling (OSM). This provides a simple metaphor for integrating different development paradigms and for leveraging domain specific languages in software engineering. Development environments that support OSM essentially raise the level of abstraction at which developers interact with their tools by hiding the idiosyncrasies of specific editors, storage choices and artifact organization policies. The overall benefit is to significantly simplify the use of advanced software engineering methods.
Full-text available
Article
With the recent trend to model driven engineering a common understanding of basic notions such as “model” and “metamodel” becomes a pivotal issue. Even though these notions have been in widespread use for quite a while, there is still little consensus about when exactly it is appropriate to use them. The aim of this article is to start establishing a consensus about generally acceptable terminology. Its main contributions are the distinction between two fundamentally different kinds of model roles, i.e. “token model” versus “type model” (The terms “type” and “token” have been introduced by C.S. Peirce, 1839–1914.), a formal notion of “metaness”, and the consideration of “generalization” as yet another basic relationship between models. In particular, the recognition of the fundamental difference between the above mentioned two kinds of model roles is crucial in order to enable communication among the model driven engineering community that is free of both unnoticed misunderstandings and unnecessary disagreement.
Full-text available
Conference Paper
Existing bidirectional model transformation languages are mainly state-based: a transformation is considered composed from functions whose inputs and outputs only consist of original and updated models, but alignment relationships between the models are not specified. In the paper we identify and discuss three major problems caused by this under-specification. We then propose a novel formal framework based on a graphical language: models are nodes and updates are arrows, and show how the three problems can be fixed.
Full-text available
Article
Metamodeling is one of the core foundations of computer-automated multiparadigm modeling. However, there is currently little agreement about what form the required metamodeling approach should take and precisely what role metamodels should play. This article addresses the problem by first describing some fundamental problems in the industry's leading metamodeling technology, the UML framework, and then explaining how this framework could be rearchitected to overcome these problems. Three main issues are identified in the current framework: the dual classification problem arising from the need to capture both the logical and physical classification of model elements, the class/object duality problem arising from the need to capture both the classlike and objectlike facets of some model elements, and the replication of concepts problem arising from the need to define certain concepts multiple times. Three main proposals for rearchitecting the UML framework to overcome these problems are then presented: the separation of logical and physical classification dimensions, the unification of the class and object facets of model elements, and the enhancement of the instantiation mechanism to allow definitions to transcend multiple levels. The article concludes with a discussion of other practical issues involved in rearchitecting the UML modeling framework in the proposed way.
Full-text available
Article
We propose a novel approach to the view update problem for tree-structured data: a domain- specific programming language in which all expressions denote bi-directional transformations on trees. In one direction, these transformations—dubbed lenses—map a “concrete” tree into a simplified “abstract view”; in the other, they map a modified abstract view, together with the original concrete tree, to a correspondingly modified concrete tree. Our design emphasizes both robustness and ease of use, guaranteeing strong well-behavedness and totality properties for well- typed lenses. We begin by identifying a natural mathematical space of well-behaved bi-directional transformations over arbitrary structures, studying definedness and continuity in this setting. We then instantiate this semantic framework in the form of a collection of lens combinators that can be assembled to describe bi-directional transformations on trees. These combinators include familiar constructs from functional programming (composition, mapping, projection, conditionals, recursion) together with some novel primitives for manipulating trees (splitting, pruning, copying, merging, etc.). We illustrate the expressiveness of these combinators by developing a number of bi-directional list-processing transformations as derived forms. An extended example shows how our combinators can be used to define a lens that translates between a native HTML representation of browser bookmarks and a generic abstract bookmark format.
Full-text available
Conference Paper
For many companies, the strategic as well as the organizational fit of their information systems is a pivotal factor for staying competitive. At the same time, there is an increasing demand for integrating business processes and informations systems with those of customers and suppliers. The resulting need for organizational changes and the introduction of corresponding information systems is a challenging task. The complexity of the task requires a separation of concerns. At the same time it causes language barriers between various stakeholders, especially between business people and information technology professionals. Enterprise models provide various abstractions that help with the design of corporate information systems which are in line with a company's organization and its long term strategy. They also promise to provide a common conceptual foundation to foster the communication between people with different professional backgrounds. In this paper we introduce a model for enterprise modelling that is based on an extendable set of special purpose modeling languages, e.g. for describing corporate strategies, business processes, resources or information. The visual languages provide intuitive abstractions for various observers. The languages are defined in metamodels which in turn are specified through a common meta-metamodel. Similar to a specialized technical language, they provide concepts that help with structuring and analyzing a domain according to specific objectives. Since the languages are specified in a semi formal way, the models allow for the generation of software prototypes. The languages share common concepts which allow for a tight integration of the various parts of an enterprise model. In addition to offering specialized modeling languages, the modeling method also includes examples, case studies and reference models - to promote the re-use of concepts and artefacts. The use of the method is illustrated by an example, where two different partial models are being integrated.
Book
Lankhorst and his co-authors present ArchiMate® 3.0, enterprise modelling language that captures the complexity of architectural domains and their relations and allows the construction of integrated enterprise architecture models. They provide architects with concrete instruments that improve their architectural practice. As this is not enough, they additionally present techniques and heuristics for communicating with all relevant stakeholders about these architectures. Since an architecture model is useful not only for providing insight into the current or future situation but can also be used to evaluate the transition from ‘as-is’ to ‘to-be’, the authors also describe analysis methods for assessing both the qualitative impact of changes to an architecture and the quantitative aspects of architectures, such as performance and cost issues. The modelling language presented has been proven in practice in many real-life case studies and has been adopted by The Open Group as an international standard. So this book is an ideal companion for enterprise IT or business architects in industry as well as for computer or management science students studying the field of enterprise architecture. This fourth edition of the book has been completely reworked to be compatible with ArchiMate® 3.0, and it includes a new chapter relating this new version to other standards. New sections on capability analysis, risk analysis, and business architecture in general have also been introduced. Features and Benefits · Introduces the ArchiMate® 3.0 modelling language for enterprise architecture, an Open Group standard · Describes quantitative analysis methods to assess the impact of architectural changes · Provides new insights on the use of architecture models in capability-based planning, portfolio management and risk management · Briefly introduces industry standards and approaches like BPMN, UML, the Business Model Canvas, the Business Motivation Model and TOGAF 9.1 and relates them to ArchiMate® 3.0 · Extensive industry support
Conference Paper
All Enterprise Architecture Modeling (EAM) approaches revolve around the use of multiple, inter-related views to describe the properties of a system and its surrounding environment - that is, they are multi-view specification (MVS) approaches. However, there is still little consensus on how such modeling environments should be realized and on the pros and cons of the different fundamental design choices involved in building them. In this paper we identify the different design choices put forward in the literature, evaluate their mutual compatibility, and discuss the extent to which they scale up to large enterprise systems. Finally we present some additional choices and outline some of the key features that future multi-view modeling environments should ideally support.
Conference Paper
View-based modeling approaches based on the notion of a Single Underlying Model (SUM) revolve around the use of projective views to manipulate the SUM. Defining view types is a challenging task since it includes the definition of view element types and the definition of transformations to extract data from the SUM to populate the view. The latter can be supported by an automatic transformation mechanism that easies the definition and maintenance of transformations. Such an approach leads to simple and fast definition of views and easies the work of the methodologist in defining relations between the elements in the SUM and the elements in the views.
Article
One of the most important features of enterprise architecture modeling approaches is the set of views and viewpoints they use to convey the properties of enterprise systems - that is, their viewpoint framework. All mainstream approaches such as Zachman, RM-ODP, TOGAF and Archimate use the notion of independent 'concerns' or dimensions to organize their views and viewpoints, but often do so in ways that are inconsistent and overly complex. In this paper we compare the viewpoint framework of one well known Enterprise Architecture Modeling approach, Archimate, to the Orthographic Modeling approach which was developed to apply the idea of dimension-based view identification and selection in a pure, comprehensive form. After identifying weakness in Archimate's viewpoint framework from an orthographic modeling perspective we suggest how the former can be realized by, and adapted for, the latter.
Article
As practical tools for disciplined multi-level modeling have begun to mature, the problem of supporting simple and efficient transformations to-and-from multi-level models to facilitate interoperability has assumed growing importance. The challenge is not only to support efficient transformations between multi-level models, but also between multi-level and two-level model content represented in traditional modeling infrastructures such as the UML and programming languages. Multi-level model content can already be accessed by traditional transformation languages such as ATL and QVT, but in a way that is blind to the ontological classification information they contain. In this paper, we present an approach for making rule-based transformation languages “multi-level aware” so that the semantics of ontological classification as well as linguistic classification can be exploited when writing transformations.
Conference Paper
Model-Driven Engineering provides an abstract representation of systems through the use of models and views. For complex systems, however, finding a single model and a single view to represent all relevant information of the system is infeasible. Specialized models for specific subsystems, domains or abstractions are more concise and thus more efficient than monolithic models. Furthermore, different tasks and concerns often require different views on the same model. Sustaining the consistency between different views and models is hard, especially if new models and views are dynamically added. In this paper, we present an approach that supports flexible views that may involve multiple models conforming to different metamodels. The approach is based on Orthographic Software Modeling and synchronizes individual instances using model transformations. These transformations are generated from view type definitions, metamodel correspondence rules and invariants, which are defined in a domain-specific language. We illustrate our approach with an application that combines component-based architectures with object-oriented source code and class diagrams.
Conference Paper
Orthographic Software Modeling (OSM) is a view-centric software engineering approach that aims to leverage the orthographic projection metaphor used in the visualization of physical objects to visualize software systems. Although the general concept of OSM does not prescribe specific sets of views, a concrete OSM environment has to be specific about the particular views to be used in a particular project. At the University of Mannheim we are developing a prototype OSM environment, nAOMi, that supports the views defined by the KobrA 2.0 method, a version of KobrA adapted for OSM. In this paper we provide an overview of the KobrA 2.0 metamodel underpinning nAOMi and give a small example of its use to model a software system.
Article
Domain-Specific Modeling Languages (DSMLs) have received great attention in recent years and are expected to play a big role in the future of software engineering as processes become more view-centric. However, they are a “two-edged sword”. While they provide strong support for communication within communities, allowing experts to express themselves using concepts tailored to their exact needs, they are a poor vehicle for communication across communities because of their lack of common, transcending concepts. In contrast, General-Purpose Modeling Languages (GPMLs) have the opposite problem — they are poor at the former but good at the latter. The value of models in software engineering would therefore be significantly boosted if the advantages of DSMLs and GPMLs could be combined and models could be viewed in a domain-specific or general-purpose way depending on the needs of the user. In this paper we present an approach for achieving such a synergy based on the orthogonal classification architecture. In this architecture model elements have two classifiers: a linguistic one representing their “general-purpose” and an ontological one representing their “domain-specific” type. By associating visualization symbols with both classifiers it is possible to support two concrete syntaxes at the same time and allow the domain-specific and general-purpose notation to support each other — that is, to form a symbiotic relationship.
Article
A database view is a portion of the data structured in a way suitable to a specific application. Updates on views must be translated into updates on the underlying database. This paper studies the translation process in the relational model. The procedure is as follows: first, a “complete” set of updates is defined such that together with every update the set contains a “return” update, that is, one that brings the view back to the original state; given two updates in the set, their composition is also in the set. To translate a complete set, we define a mapping called a “translator,” that associates with each view update a unique database update called a “translation.” The constraint on a translation is to take the database to a state mapping onto the updated view. The constraint on the translator is to be a morphism. We propose a method for defining translators. Together with the user-defined view, we define a “complementary” view such that the database could be computed from the view and its complement. We show that a view can have many different complements and that the choice of a complement determines an update policy. Thus, we fix a view complement and we define the translation of a given view update in such a way that the complement remains invariant (“translation under constant complement”). The main result of the paper states that, given a complete set U of view updates, U has a translator if and only if U is translatable under constant complement.
The essence of multilevel metamodeling
  • Atkinson
Towards a configuration framework for orthographic-software-modeling environments
  • C Atkinson
  • C Tunjic
Model consistency ensured by metamodel integration
  • Meier
Deep, seamless, multi-format, multi-notation definition and use of domain-specific languages
  • R Gerbig
Supporting the model-driven organization vision through deep, orthographic modeling
  • Tunjic