4,248 research outputs found
Distribution pattern-driven development of service architectures
Distributed systems are being constructed by composing a number of discrete components. This practice is particularly prevalent within the Web service domain in the form of service process orchestration and choreography. Often, enterprise systems are built from many existing discrete applications such as legacy applications exposed using Web service interfaces. There are a number of architectural configurations or distribution patterns, which express how a composed system is to be deployed in a distributed environment. However, the amount of code
required to realise these distribution patterns is considerable. In this paper, we propose a distribution
pattern-driven approach to service composition and architecting. We develop, based on a catalog of patterns, a UML-compliant framework, which takes existing Web service interfaces as its input and generates executable Web service compositions based on a distribution pattern chosen by the software architect
Collaborative Verification-Driven Engineering of Hybrid Systems
Hybrid systems with both discrete and continuous dynamics are an important
model for real-world cyber-physical systems. The key challenge is to ensure
their correct functioning w.r.t. safety requirements. Promising techniques to
ensure safety seem to be model-driven engineering to develop hybrid systems in
a well-defined and traceable manner, and formal verification to prove their
correctness. Their combination forms the vision of verification-driven
engineering. Often, hybrid systems are rather complex in that they require
expertise from many domains (e.g., robotics, control systems, computer science,
software engineering, and mechanical engineering). Moreover, despite the
remarkable progress in automating formal verification of hybrid systems, the
construction of proofs of complex systems often requires nontrivial human
guidance, since hybrid systems verification tools solve undecidable problems.
It is, thus, not uncommon for development and verification teams to consist of
many players with diverse expertise. This paper introduces a
verification-driven engineering toolset that extends our previous work on
hybrid and arithmetic verification with tools for (i) graphical (UML) and
textual modeling of hybrid systems, (ii) exchanging and comparing models and
proofs, and (iii) managing verification tasks. This toolset makes it easier to
tackle large-scale verification tasks
Incremental Consistency Checking in Delta-oriented UML-Models for Automation Systems
Automation systems exist in many variants and may evolve over time in order
to deal with different environment contexts or to fulfill changing customer
requirements. This induces an increased complexity during design-time as well
as tedious maintenance efforts. We already proposed a multi-perspective
modeling approach to improve the development of such systems. It operates on
different levels of abstraction by using well-known UML-models with activity,
composite structure and state chart models. Each perspective was enriched with
delta modeling to manage variability and evolution. As an extension, we now
focus on the development of an efficient consistency checking method at several
levels to ensure valid variants of the automation system. Consistency checking
must be provided for each perspective in isolation, in-between the perspectives
as well as after the application of a delta.Comment: In Proceedings FMSPLE 2016, arXiv:1603.0857
Clafer: Lightweight Modeling of Structure, Behaviour, and Variability
Embedded software is growing fast in size and complexity, leading to intimate
mixture of complex architectures and complex control. Consequently, software
specification requires modeling both structures and behaviour of systems.
Unfortunately, existing languages do not integrate these aspects well, usually
prioritizing one of them. It is common to develop a separate language for each
of these facets. In this paper, we contribute Clafer: a small language that
attempts to tackle this challenge. It combines rich structural modeling with
state of the art behavioural formalisms. We are not aware of any other modeling
language that seamlessly combines these facets common to system and software
modeling. We show how Clafer, in a single unified syntax and semantics, allows
capturing feature models (variability), component models, discrete control
models (automata) and variability encompassing all these aspects. The language
is built on top of first order logic with quantifiers over basic entities (for
modeling structures) combined with linear temporal logic (for modeling
behaviour). On top of this semantic foundation we build a simple but expressive
syntax, enriched with carefully selected syntactic expansions that cover
hierarchical modeling, associations, automata, scenarios, and Dwyer's property
patterns. We evaluate Clafer using a power window case study, and comparing it
against other notations that substantially overlap with its scope (SysML, AADL,
Temporal OCL and Live Sequence Charts), discussing benefits and perils of using
a single notation for the purpose
Domain-Specific Modeling and Code Generation for Cross-Platform Multi-Device Mobile Apps
Nowadays, mobile devices constitute the most common computing device. This
new computing model has brought intense competition among hardware and software
providers who are continuously introducing increasingly powerful mobile devices
and innovative OSs into the market. In consequence, cross-platform and
multi-device development has become a priority for software companies that want
to reach the widest possible audience. However, developing an application for
several platforms implies high costs and technical complexity. Currently, there
are several frameworks that allow cross-platform application development.
However, these approaches still require manual programming. My research
proposes to face the challenge of the mobile revolution by exploiting
abstraction, modeling and code generation, in the spirit of the modern paradigm
of Model Driven Engineering
- ā¦