0000000000140328

AUTHOR

Carlos Cetina

0000-0001-8542-5515

The Influence of Requirements in Software Model Development in an Industrial Environment

Textual description of requirements is a specification technique that is widely used in industry, where time is key for success. How requirements are specified textually greatly depends on human factors. In order to study how requirements processing is affected by the level of detail in textual descriptions, this paper compares enriched textual requirements specifications with non-enriched ones. To do this, we have conducted an experiment in industry with 19 engineers of CAF (Construcciones y Auxiliares de Ferrocarril), which is a supplier of railway solutions. The experiment is a crossover design that analyzes efficiency, effectiveness, and perceived difficulty starting from a written spec…

research product

An empirical study of performance using Clone & Own and Software Product Lines in an industrial context

Abstract Context: Clone and Own (CaO) is a widespread approach to generate new software products from existing software products by adding small changes. The Software Product Line (SPL) approach addresses the development of families of products with similar features, moving away from the production of isolated products. Despite the popularity of both approaches, no experiment has yet compared them directly. Objective: The goal of this paper is to know the different performances of software engineers in the software products development process using two different approaches (SPL and CaO). Method: We conducted an experiment in the induction hobs software environment with software engineers. …

research product

Tool Support for Model Driven Development of Pervasive Systems

This work presents the PervML Generative Tool (PervGT) that supports a model driven method for the development of pervasive services in ubiquitous environments. The tool, which is based on the Eclipse platform, provides facilities for the graphical description of pervasive systems using PervML, a UML-like modeling language. Once the pervasive system is specified, the PervML model is used as input to a transformation engine that generates source code and other implementation assets. This generated code extends an OSGi-based framework in order to build the final pervasive applications

research product

Evaluating Bug-Fixing in Software Product Lines

[Background] Bug-fixing could be complex in industrial practice since thousands of products share features in their configuration. Despite the importance and complexity of bug-fixing, there is still a lack of empirical data about the difficulties found in industrial Software Product Lines (SPLs). [Aims] This paper aims to evaluate engineers' performance fixing errors and propagating the fixes to other configured products in the context of an industrial SPL. [Method] We designed and conducted an empirical study to collect data with regard to bug-fixing tasks within the context of a Induction Hob SPL in the BSH group, the largest manufacturer of home appliances in Europe. [Results] We found t…

research product

Autonomic Computing through Reuse of Variability Models at Runtime: The Case of Smart Homes

Our research shows that autonomic behavior can be achieved by leveraging variability models at runtime. In this way, the modeling effort made at design time is not only useful for producing the system but also provides a richer semantic base for autonomic behavior during execution. The use of variability models at runtime brings new opportunities for autonomic capabilities by reutilizing the efforts invested at design time. Our proposed approach has two aspects: reuse of design knowledge to achieve AC and reuse of existing model-management technologies at runtime. We developed the Model-Based Reconfiguration Engine (MoRE) to implement model-management operations. Our research demonstrates t…

research product