0000000000083994

AUTHOR

Jose Ignacio Panach

Extending and validating gestUI using technical action research

gestUI is a model-driven method with tool support to define custom gestures and to include gesture-based interaction in existing user software system interfaces. So far, gestUI had been limited to the definition of the same gesture catalogue for all users of the software system. In this paper, we extend gestUI to permit individual users to define their own custom gesture catalogue and redefine some custom gestures in case of difficulty in using or remembering them. After extending gestUI, we applied technical action research from the FP7 CaaS project's Capability Design Tool with the aim of assessing its acceptance in an industrial setting. We also analysed its perceived ease-of-use and use…

research product

Method to Define User Interfaces in the Requirements Analysis Phase

Many requirements for quality in use are elicited in the late development phase. However, if requirements are elicited in the late development phase, the development may return to the previous phase or some requirements cannot be realized due to costs and schedules. To reduce these cases, we propose a method to elicit the requirements in the requirements analysis phase. First, software developers analyze the user characteristics (UCs) of the target users and specify important quality characteristics (QCs) for quality in use and UI design items based on the relationships among UC, QC, and UI design items. Because UI design items are considerations to develop UIs, the specified UI design item…

research product

Learning Pros and Cons of Model-Driven Development in a Practical Teaching Experience

Current teaching guides on Software Engineering degree focus mainly on teaching programming languages from the first courses. Conceptual modeling is a topic that is only taught in last courses, like master courses. At that point, many students do not see the usefulness of conceptual modeling and most of them have difficulty to reach the level of abstraction needed to work with them. In order to make the learning of conceptual modeling more attractive, we have conducted an experience where students compare a traditional development versus a development using conceptual models through a Model-Driven Development (MDD) method. This way, students can check on their own pros and cons of working w…

research product

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

Evaluating Model-Driven Development Claims with Respect to Quality: A Family of Experiments

[EN] Context: There is a lack of empirical evidence on the differences between model-driven development (MDD), where code is automatically derived from conceptual models, and traditional software development method, where code is manually written. In our previous work, we compared both methods in a baseline experiment concluding that quality of the software developed following MDD was significantly better only for more complex problems (with more function points). Quality was measured through test cases run on a functional system. Objective: This paper reports six replications of the baseline to study the impact of problem complexity on software quality in the context of MDD. Method: We con…

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

A Proposal for Modelling Usability in a Holistic MDD Method

Holistic methods for Model-Driven Development (MDD) aim to model all the system features in a conceptual model. This conceptual model is the input for a model compiler that can generate software systems by means of automatic transformations. However, in general, MDD methods focus on modelling the structure and functionality of systems, relegating the interaction and usability features to manual implementations at the last steps of the software development process. Some usability features are strongly related to the functionality of the system and their inclusion is not so easy. In order to facilitate the inclusion of functional usability features from the first steps of the development proc…

research product

Preface to the CIbSE 2016 Special Issue

Abstract: This special issue of the CLEI Electronic Journal consists of an invited paper on 25 years of Model-Driven Web Engineering as well as extended and revised versions of the Selected Papers presented at the XIX Ibero-American Conference on Software Engineering (CIbSE 2016). Resumen: Este número especial de la revista CLEI electronic journal consiste en un paper invitado sobre los 25 años de Model-Driven Web Engineering, así como un conjunto de trabajos revisados y extendidos, seleccionados de la conferencia CIbSE 2016.

research product

Towards a method to generate GUI prototypes from BPMN

Business Process Model and Notation (BPMN) provides organizations with a standard that facilitates further compression of the business process. BPMN focuses on the functional processes, leaving the development of interfaces to one side. Thereby, interface design usually depends on the subjective experience of the analyst. This article aims to propose a new method to generate user interfaces from BPMN models and Class Diagrams. The proposed method is based on the identification of different rules and makes use of stereotypes to extend BPMN notation. The rules have been extracted from seven existing projects on the Bizagi repository. Specifically, the proposal is based on the extraction of ru…

research product

Requirements elicitation methods based on interviews in comparison: A family of experiments

Abstract Context There are several methods to elicit requirements through interviews between an end-user and a team of software developers. The choice of the best method in this context is usually on subjective developers’ preferences instead of objective reasons. There is a lack of empirical evaluations of methods to elicit requirements that help developers to choose the most suitable one. Objective This paper designs and conducts a family of experiments to compare three methods to elicit requirements: Unstructured Interviews, where there is no specific protocol or artifacts; Joint Application Design (JAD), where each member of the development team has a specific role; Paper Prototyping, w…

research product

Assessing data analysis performance in research contexts: An experiment on accuracy, efficiency, productivity and researchers’ satisfaction

[EN] Any knowledge generation process involves raw data comprehension, evaluation and inferential reasoning. These practices, common to different disciplines, are known as data analysis, and represent the most important set of activities in research contexts. Researchers use data analysis software methods and tools for generating new knowledge in their daily data analysis. In recent years, data analysis software has been incorporating explicit references in modelling of cognitive processes, in order to improve the assistance offered in data analysis tasks. However, data analysis software commercial suites are still resisting this inclusion, and there is little empirical work done in knowing…

research product

An empirical approach for evaluating the usability of model-driven tools

MDD tools are very useful to draw conceptual models and to automate code generation. Even though this would bring many benefits, wide adoption of MDD tools is not yet a reality. Various research activities are being undertaken to find why and to provide the required solutions. However, insufficient research has been done on a key factor for the acceptance of MDD tools: usability. With the help of end-users, this paper presents a framework to evaluate the usability of MDD tools. The framework will be used as a basis for a family of experiments to get clear insights into the barriers to usability that prevent MDD tools from being widely adopted in industry. To illustrate the applicability of …

research product

A family of experiments to generate graphical user interfaces from BPMN models with stereotypes

Abstract Context: A significant gap separates Business Process Model and Notation (BPMN) models representing processes from the design of Graphical User Interfaces (GUIs). Objective: This paper reports on a family of experiments to validate a method to automatically generate GUIs from BPMN models using stereotypes complemented with UML class primitives, and transformation rules. Method: We conducted two replications (23 and 31 subjects respectively) in which we compared two methods to generate GUIs from BPMN models; one automatic (using Stereotyped BPMN models) and one manual (using Non-stereotyped BPMN models). The study focuses on comparing effort, accuracy, and satisfaction (in terms of …

research product

Are requirements elicitation sessions influenced by participants' gender? An empirical experiment

[EN] Context: Requirements elicitation is a crucial phase in the software development life cycle. During requirements elicitation sessions, requirements engineers capture software requirements, and motivate stakeholders to express needs and expected software functionalities. In this context, there is a lack of extensive empirical research reporting the extent to which elicitation sessions can be influenced by participants' gender. Objective: This paper presents our research endeavour to investigate requirements engineers' effort and elicited requirements' accuracy based on participants' gender. Method: We conducted an experiment in two rounds with a total of 59 students who played the role …

research product

User-Centered Design for Biomedical Literature Search User Interfaces

Biomedical literature search tools are crucial resources for the work of physicians, biologists, and bioinformatics. Many of the genetic-medical diagnoses depend on the findings in these literature resources. Despite the importance and value of the information stored in these resources, the user interface (UI) implemented by such tools present several usability problems converting the query and interpretation of the information into complex and time-consuming tasks. In this sense, an user-centered design (UCD) approach can improve the usability of these UIs facilitating the interaction, analysis, and comparison of biomedical information, and, consequently, improving the productivity of prac…

research product

A proposal to elicit usability requirements within a model-driven development environment

[EN] Nowadays there are sound Model-Driven Development (MDD) methods that deal with functional requirements, but in general, usability is not considered from the early stages of the development. Analysts that work with MDD implement usability features manually once the code has been generated. This manual implementation contradicts the MDD paradigm and it may involve much rework. This paper proposes a method to elicit usability requirements at early stages of the software development process such a way non-experts at usability can use it. The approach consists of organizing several interface design guidelines and usability guidelines in a tree structure. These guidelines are shown to the an…

research product

In Search of Evidence for Model-Driven Development Claims: An Experiment on Quality, Effort, Productivity and Satisfaction

Context: Model-Driven Development (MDD) is a paradigm that prescribes building conceptual models that abstractly represent the system and generating code from these models through transformation rules. The literature is rife with claims about the benefits of MDD, but they are hardly supported by evidences. Objective: This experimental investigation aims to verify some of the most cited benefits of MDD. Method: We run an experiment on a small set of classes using student subjects to compare the quality, effort, productivity and satisfaction of traditional development and MDD. The experiment participants built two web applications from scratch, one where the developers implement the code by h…

research product

Web 2.0 patterns: A model-driven engineering approach

Web Engineering methods, specifically Model-driven Engineering (MDE) ones, are not yet ready to cope with user involvement features that Web 2.0 is demanding. In this work, Web 2.0 patterns are introduced using conceptual models that represent both interaction and functionality, since in Web 2.0 applications both features are intertwined to support the user involvement concern. This work also drafts how Web 2.0 patterns can be integrated into models of a model-driven Web Engineering method.

research product

Designing the Didactic Strategy Modeling Language (DSML) From PoN: An Activity Oriented EML Proposal

[EN] This paper presents the design of the didactic strategy modeling language (DSML) according to the principles of Physics of Notations (PoN). The DSML is a visual and activity-oriented language for learning design characterized by the representation of different activities according to the nature of the task. Once the language is designed, a blind interpretation study is conducted to validate the semantic transparency of the learning activity iconography. The results of the paper allow to refine the icons. In addition to this, an authoring tool for DSML, which is integrated to an LMS, is presented. As a result, a model driven course was designed as a DSML pre-validation.

research product

Conceptual Characterization of Cybersecurity Ontologies

Part 7:Risk and Security Modeling; International audience; Cybersecurity is known as the practice of protecting systems from digital attacks. Organizations are seeking efficient solutions for the management and protection of their assets. It is a complex issue, especially for great enterprises, because it requires an interdisciplinary approach. The kinds of problems enterprises must deal with and this domain complexity induces misinterpretations and misunderstandings about the concepts and relations in question. This article focus on dealing with Cybersecurity from an ontological perspective. The first contribution is a search of previously existing works that have defined Cybersecurity Ont…

research product

An empirical comparative evaluation of gestUI to include gesture-based interaction in user interfaces

[EN] Currently there are tools that support the customisation of users' gestures. In general, the inclusion of new gestures implies writing new lines of code that strongly depend on the target platform where the system is run. In order to avoid this platform dependency, gestUI was proposed as a model-driven method that permits (i) the definition of custom touch-based gestures, and (ii) the inclusion of the gesture-based interaction in existing user interfaces on desktop computing platforms. The objective of this work is to compare gestUI (a MDD method to deal with gestures) versus a code-centric method to include gesture-based interaction in user interfaces. In order to perform the comparis…

research product

A framework to identify primitives that represent usability within Model-Driven Development methods

Context: Nowadays, there are sound methods and tools which implement the Model-Driven Development approach (MDD) satisfactorily. However, MDD approaches focus on representing and generating code that represents functionality, behaviour and persistence, putting the interaction, and more specifically the usability, in a second place. If we aim to include usability features in a system developed with a MDD tool, we need to extend manually the generated code. Objective: This paper tackles how to include functional usability features (usability recommendations strongly related to system functionality) in MDD through conceptual primitives. Method: The approach consists of studying usability guide…

research product

Applying a Data Quality Model to Experiments in Software Engineering

Data collection and analysis are key artifacts in any software engineering experiment. However, these data might contain errors. We propose a Data Quality model specific to data obtained from software engineering experiments, which provides a framework for analyzing and improving these data. We apply the model to two controlled experiments, which results in the discovery of data quality problems that need to be addressed. We conclude that data quality issues have to be considered before obtaining the experimental results.

research product

A Newcomer's Guide to EICS, the Engineering Interactive Computing Systems Community

[EN] Welcome to EICS, the Engineering Interactive Computing Systems community, PACMHCI/EICS journal, and annual conference! In this short article, we introduce newcomers to the field and to our community with an overview of what EICS is and how it positions with respect to other venues in Human-Computer Interaction, such as CHI, UIST, and IUI, highlighting its legacy and paying homage to past scientific events from which EICS emerged. We also take this opportunity to enumerate and exemplify scientific contributions to the field of Engineering Interactive Computing Systems, which we hope to guide researchers and practitioners towards making their future PACMHCI/EICS submissions successful an…

research product

Defining Interaction Design Patterns to Extract Knowledge from Big Data

[EN] The Big Data domain offers valuable opportunities to gain valuable knowledge. The User Interface (UI), the place where the user interacts to extract knowledge from data, must be adapted to address the domain complexities. Designing UIs for Big Data becomes a challenge that involves identifying and designing the user-data interaction implicated in the knowledge extraction. To design such an interaction, one widely used approach is design patterns. Design Patterns describe solutions to common interaction design problems. This paper proposes a set of patterns to design UIs aimed at extracting knowledge from the Big Data systems data conceptual schemas. As a practical example, we apply the…

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