22 research outputs found
Manifesto - Model Engineering for Complex Systems
Complex systems are hard to define. Nevertheless they are more and more frequently encountered. Examples include a worldwide airline traffic management system, a global telecommunication or energy infrastructure or even the whole legacy portfolio accumulated for more than thirty years in a large insurance company. There are currently few engineering methods and tools to deal with them in practice. The purpose of this Dagstuhl Perspectives Workshop on Model Engineering for Complex Systems was to study the applicability of Model Driven Engineering (MDE) to the development and management of complex systems. MDE is a software engineering field based on few simple and sound principles. Its power stems from the assumption of considering everything - engineering artefacts, manipulations of artefacts, etc - as a model. Our intuition was that MDE may provide the right level of abstraction to move the study of complex systems from an informal goal to more concrete grounds. In order to provide first evidence in support of this intuition, the workshop studied different visions and different approaches to the development and management of different kinds of complex systems. This note presents the summary of the discussions
A Generic Language for Query and Viewtype Generation By-Example
In model-driven engineering, powerful query/view languages exist to compute result sets/views from underlying models. However, to use these languages effectively, one must understand the query/view language concepts as well as the underlying models and metamodels structures. Consequently, it is a challenge for domain experts to create queries/views due to the lack of knowledge about the computer-internal abstract representation of models and metamodels. To better support domain experts in the query/view creation, the goal of this paper is the presentation of a generic concept to specify queries/views on models without requiring deep knowledge on the realization of modeling languages. The proposed concept is agnostic to specific modeling languages and allows the query/view generation by-example with a simple mechanism for filtering model elements. Based on this generic concept, a generic query/view language is proposed that uses role-oriented modeling for its non-intrusive application for specific modeling languages. The proposed language is demonstrated based on the role-based single underlying model (RSUM) approach for AutomationML to create queries/views by-example, and subsequently, associated viewtypes to modify the result set or view
A Health-care Application of Goal-driven Software Design
In this paper we focus on goal engineering by addressing issues such as goal elicitation, specification, structuring and operationalisation. Specification of business goals is regarded as a means to raise the level of abstraction (and automation) at which business logic is incorporated in model driven software design in the context of service oriented architectures. More specifically, the proposed goal modelling approach consists of an abstract syntax (metamodel) and a concrete syntax (graphical notation) for the specification of business goals. We also proposed a framework for the goal-driven design of service-oriented software applications. In particular, we illustrate our approach by means of a case study carried out in the healthcare sector and we explain the role business goals (operationalised in the form of business rules) can play in software design. This research also outlines a number of areas that have significant research potential
Traceability support in software product lines
Dissertação apresentada na Faculdade de Ciências e Tecnologia da Universidade Nova de Lisboa para a obtenção do grau de Mestre em Engenharia Informática.Traceability is becoming a necessary quality of any modern software system. The
complexity in modern systems is such that, if we cannot rely on good techniques and
tools it becomes an unsustainable burden, where software artifacts can hardly be linked
to their initial requirements.
Modern software systems are composed by a many artifacts (models, code, etc.).
Any change in one of them may have repercussions on many components. The
assessment of this impact usually comes at a high cost and is highly error-prone. This
complexity inherent to software development increases when it comes to Software
Product Line Engineering. Traceability aims to respond to this challenge, by linking all
the software artifacts that are used, in order to reason about how they influence each
others.
We propose to specify, design and implement an extensible Traceability Framework
that will allow developers to provide traceability for a product line, or the possibility to
extend it for other development scenarios. This MSc thesis work is to develop an
extensible framework, using Model-Driven techniques and technologies, to provide
traceability support for product lines. We also wish to provide basic and advanced
traceability queries, and traceability views designed for the needs of each user
Transforming OCL to PVS: Using Theorem Proving Support for Analysing Model Constraints
The Unified Modelling Language (UML) is a de facto standard language for describing
software systems. UML models are often supplemented with Object Constraint
Language (OCL) constraints, to capture detailed properties of components and systems.
Sophisticated tools exist for analysing UML models, e.g., to check that well-formedness
rules have been satisfied. As well, tools are becoming available to analyse and reason
about OCL constraints. Previous work has been done on analysing OCL constraints by
translating them to formal languages and then analysing the translated constraints with
tools such as theorem provers.
This project contributes a transformation from OCL to the specification language of the
Prototype Verification System (PVS). PVS can be used to analyse and reason about
translated OCL constraints. A particular novelty of this project is that it carries out the
transformation of OCL to PVS by using model transformation, as exemplified by the
OMG's Model-Driven Architecture. The project implements and automates model
transformations from OCL to PVS using the Epsilon Transformation Language (ETL)
and tests the results using the Epsilon Comparison Language (ECL )