Dimitris S. Kolovos
University of York
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Dimitris S. Kolovos.
The Journal of Object Technology | 2012
Manuel Wimmer; Gerti Kappel; Angelika Kusel; Werner Retschitzegger; Johannes Schönböck; Wieland Schwinger; Dimitris S. Kolovos; Richard F. Paige; Marius Lauder; Andy Schürr; Dennis Wagelaar
Model transformations play a significant role in Model-Driven Engineering. However, their reuse mechanisms have yet to receive much attention. In this paper, we propose a comparison framework for rule inheritance in model-to-model transformation languages, and provide an in-depth evaluation of prominent representatives of imperative, declarative and hybrid transformation languages. The framework provides criteria for comparison along orthogonal dimensions, covering static aspects, which indicate whether a set of inheriting transformation rules is well-formed at compile-time, and dynamic aspects, which describe how inheriting rules behave at run-time. The application of this framework to dedicated transformation languages shows that, while providing similar syntactical inheritance concepts, they exhibit different dynamic inheritance semantics and offer basic support for checking static inheritance semantics, only.
Software and Systems Modeling | 2013
Louis M. Rose; Esther Guerra; Juan de Lara; Anne Etien; Dimitris S. Kolovos; Richard F. Paige
Models are the core assets in model-driven engineering, and are therefore subject to all kind of manipulations, such as refactorings, animations, transformations into other languages, comparisons and merging. This set of model-related activities is known as model management. Even though many languages and approaches have been proposed for model management, most of them are type-centric, specific to concrete meta-models, and hence leading to specifications with a low level of abstraction and difficult to be reused in practice. In this paper, we introduce ideas from generic programming into model management to raise the level of abstraction of the specifications of model manipulations and facilitate their reuse. In particular we adopt generic meta-model concepts as an intermediate, abstract meta-model over which model management specifications are defined. Such meta-model concepts are mapped to concrete meta-models, so that specifications can be applied to families of meta-models satisfying the concept requirements. As a proof of concept, we show the implementation of these ideas using the Eclipse Modeling Framework and the Epsilon family of languages for model management.
international symposium on object component service oriented real time distributed computing | 2011
Ian Gray; Nicholas Drivalos Matragkas; Neil C. Audsley; Leandro Soares Indrusiak; Dimitris S. Kolovos; Richard F. Paige
This paper gives an overview of the model-based hardware generation and programming approach proposed within the MADES project. MADES aims to develop a model-driven development process for safety-critical, real-time embedded systems. MADES defines a systems modelling language based on subsets of MARTE and SysML that allows iterative refinement from high-level specification down to final implementation. The MADES project specifically focusses on three unique features which differentiate it from existing model-driven development frameworks. First, model transformations in the Epsilon modelling framework are used to move between system models and provide traceability. Second, the Zot verification tool is employed to allow early and frequent verification of the system being developed. Third, Compile-Time Virtualisation is used to automatically retarget architecturally-neutral software for execution on complex embedded architectures. This paper concentrates on MADESs approach to the specification of hardware and the way in which software is refactored by Compile-Time Virtualisation.
international conference on model transformation | 2013
Edward D. Willink; Horacio Hoyos; Dimitris S. Kolovos
The early enthusiasm, in 2002, for model to model transformation languages led to eight submissions for an OMG standard[1] comprising three languages, yet no commercial products. The QVT Core language was intended as the foundation for QVT Relations but the available implementations have ignored the core language. Rather than ignoring the core language, we take the opposite approach and introduce three more core languages. Progressive program-to-program transformation through these core languages terminates in an easily implemented imperative language that supports declarative transformations.
international conference on model transformation | 2011
Manuel Wimmer; Gerti Kappel; Angelika Kusel; Werner Retschitzegger; Johannes Schönböck; Wieland Schwinger; Dimitris S. Kolovos; Richard F. Paige; Marius Lauder; Andy Schürr; Dennis Wagelaar
Although model transformations presumably play a major role in Model-Driven Engineering, reuse mechanisms such as inheritance have received little attention so far. In this paper, we propose a comparison framework for rule inheritance in declarative model-to-model transformation languages, and provide an in-depth evaluation of three prominent representatives thereof, namely ATL, ETL (declarative subsets thereof), and TGGs. The framework provides criteria for comparison along orthogonal dimensions, covering static aspects, which indicate whether a set of inheriting transformation rules is well-formed at compile-time, and dynamic aspects, which describe how inheriting rules behave at run-time. The application of this framework to dedicated transformation languages shows that, while providing similar syntactical inheritance concepts, they exhibit different dynamic inheritance semantics and offer basic support for checking static inheritance semantics, only.
mining software repositories | 2014
James R. Williams; Davide Di Ruscio; Nicholas Drivalos Matragkas; Juri Di Rocco; Dimitris S. Kolovos
The process of selecting open-source software (OSS) for adoption is not straightforward as it involves exploring various sources of information to determine the quality, maturity, activity, and user support of each project. In the context of the OSSMETER project, we have developed a forge-agnostic metamodel that captures the meta-information common to all OSS projects. We specialise this metamodel for popular OSS forges in order to capture forge-specific meta-information. In this paper we present a dataset conforming to these metamodels for over 500,000 OSS projects hosted on three popular OSS forges: Eclipse, SourceForge, and GitHub. The dataset enables different kinds of automatic analysis and supports objective comparisons of cross-forge OSS alternatives with respect to a users needs and quality requirements.
mining software repositories | 2014
Nicholas Drivalos Matragkas; James R. Williams; Dimitris S. Kolovos; Richard F. Paige
In nature the diversity of species and genes in ecological communities affects the functioning of these communities. Biologists have found out that more diverse communities appear to be more productive than less diverse communities. Moreover such communities appear to be more stable in the face of perturbations. In this paper, we draw the analogy between ecological communities and Open Source Software (OSS) ecosystems, and we investigate the diversity and structure of OSS communities. To address this question we use the MSR 2014 challenge dataset, which includes data from the top-10 software projects for the top programming languages on GitHub. Our findings show that OSS communities on GitHub consist of 3 types of users (core developers, active users, passive users). Moreover, we show that the percentage of core developers and active users does not change as the project grows and that the majority of members of large projects are passive users.
Federation of International Conferences on Software Technologies: Applications and Foundations | 2017
Simos Gerasimou; Dimitris S. Kolovos; Richard F. Paige; Michael Standish
Complex software systems deployed in safety-critical and business-critical application domains (e.g., avionics, defence, healthcare) are meant to provide service for decades. Although many of these systems withstand technological evolution and infrequently undergo substantial changes, they will likely face software obsolescence problems during their lifetime. Resolving these obsolescence problems is an expensive, time-consuming and labour intensive process. This project investigates technical obsolescence problems in safety-related software for airborne systems, examines the applicability of obsolescence management strategies and explores methods to automate the resolution of software obsolescence.
foundations of software engineering | 2015
Davide Di Ruscio; Dimitris S. Kolovos; Ioannis Korkontzelos; Nicholas Drivalos Matragkas; Jurgen J. Vinju
Deciding whether an open source software (OSS) project meets the required standards for adoption in terms of quality, maturity, activity of development and user support is not a straightforward process as it involves exploring various sources of information. Such sources include OSS source code repositories, communication channels such as newsgroups, forums, and mailing lists, as well as issue tracking systems. OSSMETER is an extensible and scalable platform that can monitor and incrementally analyse a large number of OSS projects. The results of this analysis can be used to assess various aspects of OSS projects, and to directly compare different OSS projects with each other.
european conference on modelling foundations and applications | 2018
Alfa Yohannis; Horacio Hoyos Rodriguez; Fiona Polack; Dimitris S. Kolovos
This paper proposes and evaluates an efficient approach for loading models stored in a change-based format. The work builds on language-independent change-based persistence (CBP) of models conforming to object-oriented metamodelling architectures such as MOF and EMF, an approach which persists a model’s editing history rather than its current state. We evaluate the performance of the proposed loading approach and assess its impact on saving change-based models. Our results show that the proposed approach significantly improves loading times compared to the baseline CBP loading approach, and has a negligible impact on saving.