Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content
When engineering complex and distributed software and hardware systems (increasingly used in many sectors, such as manufacturing, aerospace, transportation, communication, energy, and health-care), quality has become a big issue, since... more
When engineering complex and distributed software and hardware systems (increasingly used in many sectors, such as manufacturing, aerospace, transportation, communication, energy, and health-care), quality has become a big issue, since failures can have economics consequences and can also endanger human life. Model-based specifications of a component-based system permit to explicitly model the structure and behaviour of components and their integration. In particular Software Architectures (SA) has been advocated as an effective means to produce quality systems. In this chapter by combining different technologies and tools for analysis and development, we propose an architecture-centric model-driven approach to validate required properties and to generate the system code. Functional requirements are elicited and used for identifying expected properties the architecture shall express. The architectural compliance to the properties is formally demonstrated, and the produced architectu...
Research Interests:
The D1.2 deliverable outlines the CHOReOS perspective on the Future Internet and its conceptualization. In particular, the deliverable focuses on:
While the development of CHOReOS systems build on well-known paradigms associated with service-oriented architectures (e.g., services, service bus and service choreography), the supporting architectural style requires accounting for the... more
While the development of CHOReOS systems build on well-known paradigms associated with service-oriented architectures (e.g., services, service bus and service choreography), the supporting architectural style requires accounting for the challenges posed by the future Internet, i.e., ultra large scale, high heterogeneity, increased mobility, and awareness & adaptability. This deliverable then revisits the traditional definitions of service-oriented component (i.e., service), connector (interaction protocol and related service bus for interoperability) and configuration (system-wide architecture composing services according to orchestration or more general choreography patterns) to meet the FI challenges. Specifically, CHOReOS components enable leveraging the diversity of Web-based services that integrate in the FI (i.e., WS ∗ and RESTful web-based services, and from business to thing-based services) as well as the ultra large service base envisioned for the FI. As for CHOReOS connect...
In Model-Driven Engineering (MDE) the development of complex and large transformations can benefit from the reuse of smaller ones that can be composed according to user requirements. Composing transformations is a complex problem:... more
In Model-Driven Engineering (MDE) the development of complex and large transformations can benefit from the reuse of smaller ones that can be composed according to user requirements. Composing transformations is a complex problem: typically smaller transformations are discovered and selected by developers from different and heterogeneous sources. Then the identified transformations are chained by means of manual and error-prone composition processes. Based on our approach, when we propose one or more transformation chains to the user, it is difficult for him to choose one path instead of another without considering the semantic properties of a transformation. In this paper when multiple chains are proposed to the user, according to his requirements , we propose an approach to classify these suitable chains with respect to the coverage of the metamodels involved in the transformation. Based on coverage value, we are able to qualify the transformation chains with an evaluation criteri...
ABSTRACT Free and Open-Source Software (FOSS) Linux distributions are among the most complex modern software systems. They are made of thousands of components (software packages) evolving rapidly without centralized coordination. The... more
ABSTRACT Free and Open-Source Software (FOSS) Linux distributions are among the most complex modern software systems. They are made of thousands of components (software packages) evolving rapidly without centralized coordination. The upgrade of FOSS systems is managed by meta-installers, which solve package dependencies and conflicts and lead the system to a new system configuration by installing or removing packages. Current tools are able to predict a very limited set of upgrade faults before deployment, and this leaves a wide range of faults unpredicted. In this paper, we focus on faults that remain unpredicted, for example, missing packages, packages that are not properly installed, and missing services, with the aim of providing a solution for them. Specifically, in this paper, we propose a model-driven approach and supporting tools to prevent specific classes of system configuration faults before performing the real upgrade. Once the system configuration is represented as a model, the configuration model is evaluated by means of queries, each devoted to discover a specific class of faults. The approach is intrinsically extensible so that user communities can add new queries when new classes of faults are identified. The approach has been validated by executing the fault detector on configuration models in which faults have been intentionally injected and by analyzing produced results. Copyright © 2015 John Wiley & Sons, Ltd.
Model-Driven Engineering (MDE) refers to the systematic use of models as first class entities throughout the software development life cycle. Over the last few years, many MDE technologies have been conceived for developing domain... more
Model-Driven Engineering (MDE) refers to the systematic use of models as first class entities throughout the software development life cycle. Over the last few years, many MDE technologies have been conceived for developing domain specific modeling languages, and for supporting a wide range of model management activities. However, existing modeling platforms neglect a number of important features that if missed reduce the acceptance and the relevance of MDE in industrial contexts, e.g., the possibility to search and reuse already developed modeling artifacts, and to adopt model management tools as a service. In this paper we propose MDEForge a novel extensible Web-based modeling platform specifically conceived to foster a community-based modeling repository, which underpins the development, analysis and reuse of modeling artifacts. Moreover , it enables the adoption of model management tools as software-as-a-service that can be remotely used without overwhelming the users with intri...
Abstract Metamodels can be considered one of the cardinal concepts of Model-Driven Engineering, one which a number of coordinated entities such as models, transformations and tools, are dependent on. Analogously to any software artifact,... more
Abstract Metamodels can be considered one of the cardinal concepts of Model-Driven Engineering, one which a number of coordinated entities such as models, transformations and tools, are dependent on. Analogously to any software artifact, metamodels are equally prone to evolution during their lifetime. As a consequence, whenever a metamodel changes, any related entity must be consistently adapted for preserving its wellformedness, consistency, or intrinsic correctness.
Abstract Despite the flourishing of languages to describe software architectures, existing Architecture Description Languages (ADLs) are still far away from what it is actually needed. In fact, while they support a traditional perception... more
Abstract Despite the flourishing of languages to describe software architectures, existing Architecture Description Languages (ADLs) are still far away from what it is actually needed. In fact, while they support a traditional perception of a Software Architecture (SA) as a set of constituting elements (such as components, connectors and interfaces), they mostly fail to capture multiple stakeholders concerns and their design decisions that represent a broader view of SA being accepted today. Next generation ADLs must cope with various and ever ...
In order to deal with evolving needs and stakeholder concerns, next generation ADLs should support incremental extension and customization. In this direction we proposed byADL (Build Your ADL), a framework which allows software architects... more
In order to deal with evolving needs and stakeholder concerns, next generation ADLs should support incremental extension and customization. In this direction we proposed byADL (Build Your ADL), a framework which allows software architects to (i) extend existent ADLs with domain specificities, new architectural views, or analysis aspects,(ii) integrate an ADL with development processes and methodologies, and (iii) customize an ADL. This paper presents the byADL tool and its features.
Model-to-model transformations are often employed to establish translational semantics of Domain-Specific Languages (DSLs) by mapping high-level models into more concrete ones. Such semantics are also executable when there exists a target... more
Model-to-model transformations are often employed to establish translational semantics of Domain-Specific Languages (DSLs) by mapping high-level models into more concrete ones. Such semantics are also executable when there exists a target platform able to execute the target models. Conceiving a transformation that targets a low-level language still remains arduous due to the large semantic gap between the DSL and the corresponding target language. In this respect, depending on the domain of the DSL, this task can be made ...
The near future in service-oriented system development envisions a ubiquitous world of available services that collaborate to fit users’ needs. Modern service-oriented applications are often built by reusing and assembling distributed... more
The near future in service-oriented system development envisions a ubiquitous world of available services that collaborate to fit users’ needs. Modern service-oriented applications are often built by reusing and assembling distributed services. This can be done by considering a global specification of the interactions between the participant services, namely the choreography. In this paper, we propose a synthesis approach to
ABSTRACT 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... more
ABSTRACT 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 user's needs and quality requirements.
Abstract Model Driven Development (MDD) of complex software systems can require manual adaptations of the generated artifacts. In fact, in order to cope with unforeseen requirements which are not completely satisfiable by means of the... more
Abstract Model Driven Development (MDD) of complex software systems can require manual adaptations of the generated artifacts. In fact, in order to cope with unforeseen requirements which are not completely satisfiable by means of the involved modeling languages, developer interventions could be needed. The optimal solution to deal with this issue, is based on the expressiveness improvement of the involved metamodels and refinement of the used model transformations. Nevertheless, these adaptations are not ...
ABSTRACT Context The upgrade of complex systems is intrinsically difficult and requires techniques, algorithms, and methods which are both expressive and computationally feasible in order to be used in practice. In the case of FOSS (Free... more
ABSTRACT Context The upgrade of complex systems is intrinsically difficult and requires techniques, algorithms, and methods which are both expressive and computationally feasible in order to be used in practice. In the case of FOSS (Free and Open Source Software) systems, many upgrade errors cannot be discovered by current upgrade managers and then a system upgrade can potentially lead the system to an inconsistent and incoherent state. Objective The objective of this paper is to propose an approach to simulate the upgrade of complex systems in order to predict errors before they affect the real system. Method The approach promotes the use of model-driven engineering techniques to simulate the upgrade of complex systems. The basic idea is to have a model-based description of the system to be upgraded and to make use of model transformations to perform the upgrade on a source model so to obtain a target model representing the state of the upgraded system. Results We provide an implementation of the simulator, which is tailored to FOSS systems. The architecture of the simulator is distribution independent so that it can be easily instantiated to specific distributions. The simulator takes into account also pre and post installation scripts that equip each distribution package. This feature is extremely important since maintainer scripts are full-fledged programs that are run with system administration rights. Conclusions The paper shows the kind of errors the simulator is able to predict before upgrading the real system, and how the approach improves the state of the art of package managers while integrated in real Linux distribution installations.
This is the 1st International Workshop on Model Comparison in Practice, organized in the context of the 3rd International Conference on Model Transformation (ICMT 2010). For this year's workshop we have accepted 9 papers after... more
This is the 1st International Workshop on Model Comparison in Practice, organized in the context of the 3rd International Conference on Model Transformation (ICMT 2010). For this year's workshop we have accepted 9 papers after detailed review and revision. The accepted papers reflect the state-of-the-art in research performed in the field of model comparison and address a wide range of issues including identification of corresponding model elements, model differencing, conflict detection and resolution, and model merging.
We study the vulnerability of two implementations of the Data Encryption Standard (DES) cryptosystem under a timing attack. A timing attack is a method, recently proposed by Paul Kocher, that is designed to break cryptographic systems. It... more
We study the vulnerability of two implementations of the Data Encryption Standard (DES) cryptosystem under a timing attack. A timing attack is a method, recently proposed by Paul Kocher, that is designed to break cryptographic systems. It exploits the engineering aspects involved in the implementation of cryptosystems and might succeed even against cryptosys-tems that remain impervious to sophisticated cryptanalytic techniques.
ABSTRACT In the context of Model Driven Engineering (MDE) the definition of a Domain Specific Modeling Language (DSML) consists of a set of coordinated artifacts specifying the abstract and concrete syntax of the language, and possibly... more
ABSTRACT In the context of Model Driven Engineering (MDE) the definition of a Domain Specific Modeling Language (DSML) consists of a set of coordinated artifacts specifying the abstract and concrete syntax of the language, and possibly further aspects related to semantics. Concerning the specification of concrete syntaxes a number of tools are available. They typically permit to associate syntactic elements to metamodel (abstract syntax) of the modeling language being developed and to generate a number of supporting tools (e.g., parsers, pretty printers, and editors). Currently, tools for the specification of textual concrete syntaxes lack support for propagating metamodel changes to the corresponding concrete syntax specifications. In this paper, we analyze such a co-evolution problem, and provide an approach able to automate the propagation of metamodel changes to textual concrete specifications given by means of the TCS tool. The approach relies on model-to-model transformations which are applied according to difference models which represent the occurred metamodel changes.
ABSTRACT In Model-Driven Engineering metamodels are typically at the core of an ecosystem of artifacts assembled for a shared purpose. Therefore, modifying a metamodel requires care and skill as it might compromise the integrity of the... more
ABSTRACT In Model-Driven Engineering metamodels are typically at the core of an ecosystem of artifacts assembled for a shared purpose. Therefore, modifying a metamodel requires care and skill as it might compromise the integrity of the ecosystem. Any change in the metamodel cannot prescind from recovering the ecosystem validity. However this has been proven to be intrinsically difficult, error-prone, and labour-intensive. This paper discusses how to generate and visualize traceability information about the dependencies between artifacts in a ecosystem and their related metamodel. Being able to understand how and where changes affect the ecosystem by means of intuitive and straightforward visualization techniques can help the modeler in deciding whether the changes are sustainable or not at an early stage of the modification process.
ABSTRACT Metamodels are a key concept in Model-Driven Engineering. Any artifact in a modeling ecosystem has to be defined in accordance to a metamodel prescribing its main qualities. Hence, understanding common characteristics of... more
ABSTRACT Metamodels are a key concept in Model-Driven Engineering. Any artifact in a modeling ecosystem has to be defined in accordance to a metamodel prescribing its main qualities. Hence, understanding common characteristics of metamodels, how they evolve over time, and what is the impact of metamodel changes throughout the modeling ecosystem is of great relevance. Similarly to software, metrics can be used to obtain objective, transparent, and reproducible measurements on metamodels too. In this paper, we present an approach to understand structural characteristics of metamodels. A number of metrics are used to quantify and measure metamodels and cross-link different aspects in order to provide additional information about how metamodel characteristics are related. The approach is applied on repositories consisting of more than 450 metamodels.
ABSTRACT This volume includes 8 papers from the Extreme Modeling workshop (XM'2012), a satellite event of MoDELS 2012 held on October, 1st 2012, in Innsbruck, Austria. The workshop hosted also an invited talk delivered by Prof.... more
ABSTRACT This volume includes 8 papers from the Extreme Modeling workshop (XM'2012), a satellite event of MoDELS 2012 held on October, 1st 2012, in Innsbruck, Austria. The workshop hosted also an invited talk delivered by Prof. Jeff Gray (University of Alabama, USA) about demonstration-based modeling.
In Model-Driven Engineering (MDE) metamodels are cornerstones for defining a wide range of related artifacts interlaced with explicit or implicit correspondences. According to this view, models, transformations, editors, and supporting... more
In Model-Driven Engineering (MDE) metamodels are cornerstones for defining a wide range of related artifacts interlaced with explicit or implicit correspondences. According to this view, models, transformations, editors, and supporting tools can be regarded as a whole pursuing a common scope and therefore constituting an ecosystem. Analogously to software, metamodels are subject to evolutionary pressures too. However, changing a metamodel might compromise the validity of the artifacts in the ecosystem which therefore require to ...
Software systems increasingly require to deal with continuous evolution. In this paper we present the EVOSS tool that has been defined to support the upgrade of free and open source software systems. EVOSS is composed of a simulator and... more
Software systems increasingly require to deal with continuous evolution. In this paper we present the EVOSS tool that has been defined to support the upgrade of free and open source software systems. EVOSS is composed of a simulator and of a fault detector component. The simulator is able to predict failures before they can affect the real system. The fault detector component has been defined to discover inconsistencies in the system configuration model. EVOSS improves the state of the art of current tools, which are able ...

And 44 more