Electronic Communications of the EASST (European Association of Software Science and Technology)
Not a member yet
887 research outputs found
Sort by
Decidability and Expressiveness of Finitely Representable Recognizable Graph Languages
Recognizable graph languages are a generalization of regular (word) languages to graphs (as well as arbitrary categories). Recently automaton functors were proposed as acceptors of recognizable graph languages. They promise to be a useful tool for the verification of dynamic systems, for example for invariant checking. Since automaton functors may contain an infinite number of finite state sets, one must restrict to finitely representable ones for implementation reasons. In this paper we take into account two such finite representations: primitive recursive automaton functors - in which the automaton functor can be constructed on-the-fly by a primitive recursive function -, and bounded automaton functors - in which the interface size of the graphs (cf. path width) is bounded, so that the automaton functor can be explicitly represented. We show that the language classes of both kinds of automaton functor are closed under boolean operations, and compare the expressiveness of the two paradigms with hyperedge replacement grammars. In addition we show that the emptiness and equivalence problem are decidable for bounded automaton functors, but undecidable for primitive recursive automaton functors
Teaching OCL Standard Library: First Part of an OCL 2.x Course
Our aim is to provide a complete set of materials to teach OCL. They
can be used in bachelor or master programs of computer science curricula and for
training in an industrial context. In this paper we present the first part of the course
related to the OCL Standard Library. This part provides model independent examples
to teach OCL types and their operations. It enables users to gain a basic
understanding of the OCL Standard Library, which can be used as a starting point
to write model constraints (OCL specifications) or model queries. Additionally, to
the content of the paper, we provide a set of OCL packages, exercise proposals and
lecture slides
Re-engineering Eclipse MDT/OCL for Xtext
The current tooling used for the Eclipse OCL project uses an LALR parser generator. Enhancing the tooling to support editing motivated a migration to exploit the inherently model-driven characteristics of Xtext. This paper summarizes the experiences of that migration, identifies the many benefits and discusses a few changes in implementation approach that were required. Objective performance and size comparisons between the old LALR and new Xtext approach are provided
RONs Revisited: General Approach to Model Reconfigurable Object Nets based on Algebraic High-Level Nets
Reconfigurable Object Nets (RONs) have been implemented in our
group to support the visual specification of controlled rule-based transformations
of marked place/transition (P/T) nets. RONs are high-level nets (system nets) with
two types of tokens: object nets (P/T nets) and net transformation rules. System net
transitions can be of different types to fire object net transitions, move object nets
through the system net, or to apply a net transformation rule to an object net. The
disadvantage of the RON approach and tool is the limitation of object nets to P/T
nets and the limitation of the underlying semantics of RONs due to the fixed types
for system net transitions. Often, a more general approach is preferred where the
type of object nets and the behavior of reconfigurations may be defined in a more
flexible way. In this paper, we propose to use Algebraic High-Level nets with individual
tokens (AHLI nets) as system nets. In this more general approach, tokens
may be any type of Petri nets, defined by the corresponding algebraic signature and
algebra. To support this general approach, a development environment for AHLI
nets is currently implemented which allows the user to edit and simulate AHLI nets.
We present the formalization of RONs as special AHLI nets and describe the current
state of the AHLI net tool environment
An Overview of F-OML: An F-Logic Based Object Modeling Language
F-OML is an F-Logic based Object Modeling Language. It can be used for extending UML diagrams, reasoning about them,
testing UML models, and defining their syntax (meta-modeling) and semantics. This wide range of applications of F-OML
stems from several language features, including polymorphism, multi-level object modeling, and model instantiation. F-OML supports modeling of classes and properties. F-OML is layered on top of an elegant formal language of guarded path expressions, called PathLP, which is used to define objects and their types. PathLP is a logic programming language, inspired by F-logic. It supports path expressions, rules, constraints, and queries, and it is easy to implement by translation into a tabling Prolog engine, such as XSB.
In this short overview we informally describe the main constructs of PathLP and F-OML, and provide examples that demonstrate the four modes of F-OML usage. Formal definitions and additional details are found in the full paper.
Finally, we analyze how language features contribute to its expressiveness, and provide a brief comparison with OCL
Combining SysML and Model Transformations to Support Systems Engineering Analysis
As modern systems become increasingly complex, there is a growing need to support the systems engineering process with a variety of formal models, such that the team of experts involved in the process can express and share knowledge
precisely, succinctly and unambiguously. However, creating such formal models can be expensive and time-consuming, making a broad exploration of different system architectures cost-prohibitive. In this paper, we investigate an approach
for reducing such costs and hence enabling broader architecture space exploration through the use of model transformations. Specifically, a method is presented for verifying design alternatives with respect to design requirements through automated generation of analyses from formal models of the systems engineering problem. Formal models are used to express the structure of design alternatives, the system
requirements, and experiments to verify the requirements as well as the relationships between the models. These formal models are all represented in a common modeling language, the Object Management Group’s Systems Modeling Language
(OMG SysMLTM). To then translate descriptive models of system alternatives into a set of corresponding analysis models, a model transformation approach is used
to combine knowledge from the experiment models with knowledge from reusable model libraries. This set of analysis models is subsequently transformed into executable
simulations, which are used to guide the search for suitable system alternatives. To facilitate performing this search using commercially available optimization tools, the analyses are represented using the General Algebraic Modeling System
(GAMS). The approach is demonstrated on the design of a hydraulic subsystem for a log splitter
Efficient Implementation of Automaton Functors for the Verification of Graph Transformation Systems
In this paper we show new applications for recognizable graph languages to invariant checking. Furthermore we present details about techniques we used for an implementation of a tool suite for (finite) automaton functors which generalize finite automata to the setting of recognizable (graph) languages. In order to develop an efficient implementation we take advantage of Binary Decision Diagrams (BDDs)
Formalization of Petri Nets with Individual Tokens as Basis for DPO Net Transformations
Reconfigurable place/transition systems are Petri nets with initial markings
and a set of rules which allow the modification of the net structure during runtime.
They have been successfully used in different areas like mobile ad-hoc networks.
In most of these applications the modification of net markings during runtime
is an important issue. This requires the analysis of the interaction between firing and
rule-based modification. For place/transition systems this analysis has been started
explicitly without using the general theory of M-adhesive transformation systems,
because firing cannot be expressed by rule-based transformations for P/T systems in
this framework. This problem is solved in this paper using the new approach of P/T
nets with individual tokens. In our main results we show that on one hand this new
approach allows to express firing by transformation via suitable transition rules. On
the other hand transformations of P/T nets with individual tokens can be shown to
be an instance ofM-adhesive transformation systems, such that several well-known
results, like the local Church-Rosser theorem, can be applied. This avoids a separate
conflict analysis of token firing and transformations. Moreover, we compare
the behavior of P/T nets with individual tokens with that of classical P/T nets. Our
new approach is also motivated and demonstrated by a network scenario modeling
a distributed communication system
Towards a Pattern Language for the Design of Collaborative Interactive Systems
Nowadays, the design of interactive systems addresses diverse communities of end users, each belonging to a certain culture, having a role in the context/domain and using a specific digital platform. More than often, they come together and collaborate in performing their work tasks and need to be supported by virtual interactive systems. This brings a set of challenges and design problems to be faced by interaction designers focused on the design of collaborative interactive systems. The present paper focuses on one approach to overcome these challenges – by making available the knowledge and wisdom within a team of designers to each and every designer in the team by the definition of pattern languages, organized as sets of multimedia, multimodal documents accessible and manageable in the Web. A design pattern language comprises a set of inter-related design patterns able to address interaction design problems and to allow the accumulation and use of knowledge within a team of designers. This paper identifies and describes a set of design patterns addressing the design of collaborative interactive systems together with the possible relationships among them and the operations made available to designers for managing and using the patterns
Sketch-based Diagram Editors with User Assistance based on Graph Transformation and Graph Drawing Techniques
In the last years, tools have emerged that recognize sketched diagrams of a particular visual language. That way, the user can draw diagrams with a pen in a natural way and still has available most processing capabilities. But also in the domain of conventional diagram editors, considerable improvements have been achieved. Among other features, powerful user assistance like auto-completion has been developed, which guides the user in the construction of correct diagrams. The combination of these two developments, sketching and guidance, is the main contribution of this paper. It not only shows feasibility and usefulness of the integration of user assistance into sketching editors, but also that novel user strategies for identifying and dealing with recognition errors are made possible that way. The proposed approach heavily exploits graph transformation and drawing techniques. It was integrated into a meta-tool, which has been used to generate an editor for business process models that comprises the features described in this paper