Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Rick Salay is active.

Publication


Featured researches published by Rick Salay.


Software and Systems Modeling | 2016

Model transformation intents and their properties

Levi Lúcio; Moussa Amrani; Juergen Dingel; Leen Lambers; Rick Salay; Gehan M. K. Selim; Eugene Syriani; Manuel Wimmer

The notion of model transformation intent is proposed to capture the purpose of a transformation. In this paper, a framework for the description of model transformation intents is defined, which includes, for instance, a description of properties a model transformation has to satisfy to qualify as a suitable realization of an intent. Several common model transformation intents are identified, and the framework is used to describe six of them in detail. A case study from the automotive industry is used to demonstrate the usefulness of the proposed framework for identifying crucial properties of model transformations with different intents and to illustrate the wide variety of model transformation intents that an industrial model-driven software development process typically encompasses.


ieee international conference on requirements engineering | 2012

Managing requirements uncertainty with partial models

Rick Salay; Marsha Chechik; Jennifer Horkoff

Models are good at expressing information that is known but do not typically have support for representing what information a modeler does not know at a particular phase in the software development process. Partial models address this by being able to precisely represent uncertainty about model content. In previous work, we developed a general approach for defining partial models and using them to reason about design models containing uncertainty. In this paper, we show how to apply our approach to managing uncertainty in requirements by providing support for uncertainty capture, elaboration, and change. In particular, we address the problem of specifying uncertainty within a requirements model, refining a model as uncertainty reduces, providing meaning to traceability relations between models containing uncertainty, and propagating uncertainty-reducing changes between related models. We describe the implementation of uncertainty management within the Model Management Tool Framework and illustrate our approach using two examples.


conference on advanced information systems engineering | 2009

Using Macromodels to Manage Collections of Related Models

Rick Salay; John Mylopoulos; Steve M. Easterbrook

The creation and manipulation of multiple related models is common in software development, however there are few tools that help to manage such collections of models. We propose a framework in which different types of model relationships --- such as submodelOfand refinementOf --- can be formally defined and used with a new type of model, called a macromodel , to express the required relationships between models at a high-level of abstraction. Macromodels can be used to support the development, comprehension, consistency management and evolution of sets of related models. We illustrate the framework with a detailed example from the telecommunications industry and describe a prototype implementation.


model driven engineering languages and systems | 2013

Transformation of Models Containing Uncertainty

Michalis Famelis; Rick Salay; Alessio Di Sandro; Marsha Chechik

Model transformation techniques typically operate under the assumption that models do not contain uncertainty. In the presence of uncertainty, this forces modelers to either postpone working or to artificially remove it, with negative impacts on software cost and quality. Instead, we propose a technique to adapt existing model transformations so that they can be applied to models even if they contain uncertainty, thus enabling the use of transformations earlier. Building on earlier work, we show how to adapt graph rewrite-based model transformations to correctly operate on May uncertainty, a technique that allows explicit uncertainty to be expressed in any modeling language. We evaluate our approach on the classic Object-Relational Mapping use case, experimenting with models of varying levels of uncertainty.


Proceedings of the First Workshop on the Analysis of Model Transformations | 2012

Towards a model transformation intent catalog

Moussa Amrani; Jürgen Dingel; Leen Lambers; Levi Lúcio; Rick Salay; Gehan M. K. Selim; Eugene Syriani; Manuel Wimmer

We report on our ongoing effort to build a catalog of model transformation intents that describes common uses of model transformations in Model-Driven Engineering (MDE) and the properties they must or may possess. We present a preliminary list of intents and common properties. One intent (transformation for analysis) is described in more detail and the description is used to identify transformations with the same intent in a case study on the use of MDE techniques for the development of control software for a power window.


eclipse technology exchange | 2007

An Eclipse-based tool framework for software model management

Rick Salay; Marsha Chechik; Steve M. Easterbrook; Zinovy Diskin; Pete McCormick; Shiva Nejati; Mehrdad Sabetzadeh; Petcharat Viriyakattiyaporn

Software development involves the use of many models and Eclipse provides an ideal infrastructure for building tools to support the use of models. While there is a large selection of tools available for working with individual models, there is less support for working with collections of models, as for example, when a collection of models from different sources must be merged. We have identified the problem of working with collections of related models in software development as the Software Model Management (SMM) problem - a close cousin of the Model Management problem in the area of metadata management. In the course of building SMM tools to address particular scenarios, we have observed that they share common foundations both at the theoretical and implementation levels. In this paper, we describe the vision and initial development of a framework that implements these common foundations in order to facilitate and accelerate the development of Eclipse-based SMM tools.


Proceedings of the 2009 ICSE Workshop on Modeling in Software Engineering | 2009

Relationship-based change propagation: A case study

Marsha Chechik; Winnie Lai; Shiva Nejati; Jordi Cabot; Zinovy Diskin; Steve M. Easterbrook; Mehrdad Sabetzadeh; Rick Salay

Software development is an evolutionary process. Requirements of a system are often incomplete or inconsistent, and hence need to be extended or modified over time. Customers may demand new services or goals that often lead to changes in the design and implementation of the system. These changes are typically very expensive. Even if only local modifications are needed, manually applying them is time-consuming and and error-prone. Thus, it is essential to assist users in propagating changes across requirements, design, and implementation artifacts. In this paper, we take a model-based approach and provide an automated algorithm for propagating changes between requirements and design models. The key feature of our work is explicating relationships between models at the requirements and design levels. We provide conditions for checking validity of these relationships both syntactically and semantically. We show how our algorithm utilizes the relationships between models at different levels to localize the regions that should be modified. We use the IBM Trade 6 case study to demonstrate our approach.


fundamental approaches to software engineering | 2013

Change propagation due to uncertainty change

Rick Salay; Marsha Chechik

Uncertainty is ubiquitous in software engineering; however, it has been typically handled in adhoc and informal ways within software models. Automated change propagation is recognized as a key tool for managing the accidental complexity that comes with multiple interrelated models. In this paper, we address change propagation in the context of model uncertainty and consider the case where changes in the level of uncertainty in a model can be propagated to related models. We define such uncertainty change propagation using our earlier formalization and develop automated propagation algorithms using an SMT solver. A preliminary evaluation shows that the approach is feasible.


international conference on software testing verification and validation | 2012

Towards a Methodology for Verifying Partial Model Refinements

Rick Salay; Marsha Chechik

Models are good at expressing information that is known but do not typically have support for representing what information a modeler does not know or does not care about at a particular stage in the software development process. Partial models address this by being able to precisely represent uncertainty about model content. In previous work, we have defined a general approach for defining partial model semantics using a first order logic encoding. In this paper, we use this FO encoding to formally define the conditions for partial model refinement in the manner of the refinement of algebraic specifications. We use this approach to verify both manual refinements and automated transformation-based refinements. We illustrate our approach using example models and transformations.


model driven engineering languages and systems | 2016

A model management approach for assurance case reuse due to system evolution

Sahar Kokaly; Rick Salay; Valentin Cassano; T. S. E. Maibaum; Marsha Chechik

Evolution in software systems is a necessary activity that occurs due to fixing bugs, adding functionality or improving system quality. Systems often need to be shown to comply with regulatory standards. Along with demonstrating compliance, an artifact, called an assurance case, is often produced to show that the system indeed satisfies the property imposed by the standard (e.g., safety, privacy, security, etc.). Since each of the system, the standard, and the assurance case can be presented as a model, we propose the extension and use of traditional model management operators to aid in the reuse of parts of the assurance case when the system undergoes an evolution. Specifically, we present a model management approach that eventually produces a partial evolved assurance case and guidelines to help the assurance engineer in completing it. We demonstrate how our approach works on an automotive subsystem regulated by the ISO 26262 standard.

Collaboration


Dive into the Rick Salay's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Leen Lambers

Hasso Plattner Institute

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge