This paper presents the results of an empirical study aiming at comparing the support provided by ER and UML class diagrams during maintenance of data models. We performed one controlled experiment and two replications that focused on comprehension activities and another controlled experiment on modification activities related to the implementation of given change requests. The results achieved were analyzed at a fine-grained level aiming at comparing the support given by each single building block of the two notations. Such an analysis is used to identify weaknesses (i.e., building blocks not easy to comprehend) in a notation and/or can justify the need of preferring ER or UML for data modeling. The analysis revealed that the UML class diagrams generally provided a better support for both comprehension and modification activities performed on data models as compared to ER diagrams. Nevertheless, the former has some weaknesses related to three building blocks, i.e., multi-value attribute, composite attribute, and weak entity. These findings suggest that an extension of UML class diagrams should be considered to overcome these weaknesses and improve the support provided by UML class diagrams during maintenance of data models.
Autores: Gabriele Bavota / Carmine Gravino / Rocco Oliveto / Andrea De Lucia / Genoveffa Tortora / Marcela Genero / José A. Cruz-Lemus /
Palabras Clave: Comprehension - ER diagrams - Family of experiments - Meta-analysis - Model maintenance - UML class diagrams
Stereotypes are often used in industrial contexts and their application spans from use cases to class diagrams. Indeed, companies use stereotypes within their development processes to specialize general processes aiming to fit them to a particular technology in use, such as programming languages (e.g. C#, Java), application type (e.g. realtime, Web applications, client-server, standalone), reusable component used (e.g. Microsoft Foundation Class Library, Enterprise Java Beans Library) or simply to give more detailed guidelines to the practitioners involved in the system development processes.
Nevertheless, the influence of stereotypes on the comprehension of requirements models, such as UML sequence diagrams, had not been investigated yet. This fact motivated us to develop the research presented in this work.
Autores: José A. Cruz-Lemus / Marcela Genero / Danilo Caivano / Silvia Abrahão / Emilio Insfrán / José A. Carsí /
Although the UML is considered to be the de facto standard notation with which to model software, there is still resistance to model-based development. UML modeling is perceived to be expensive and not necessarily cost-effective. It is therefore important to collect empirical evidence concerning the conditions under which the use of UML makes a practical difference. The focus of this paper is to investigate whether and how the Level of Detail (LoD) of UML diagrams impacts on the performance of maintenance tasks in a model-centric approach. A family of experiments consisting of one controlled experiment and three replications has therefore been carried out with 81 students with different abilities and levels of experience from 3 countries (The Netherlands, Spain, and Italy). The analysis of the results of the experiments indicates that there isno strong statistical evidence as to the influence of different LoDs. The analysis suggests a slight tendency toward better results when using low LoD UML diagrams, especially if used for the modification of the source code, while a high LoD would appear to be helpful in understanding the system. The participants in our study also favored low LoD diagrams because they were perceived as easier to read. Although the participants expressed a preference for low LoD diagrams, no statistically significant conclusions can be drawn from the set of experiments. One important finding attained from this family of experiments was that the participants minimized or avoided the use of UML diagrams, regardless of their LoD. This effect was probably the result of using small software systems from well-known domains as experimental materials.
Autores: Ana Maria Fernández-Sáez / Marcela Genero / Danilo Caivano / Michel Chaudron /
Palabras Clave: Controlled Experiment - Family of experiments - Level of detail - Replication - Software maintenance - UML diagrams
Artículo Relevante ya publicado:Título: A systematic mapping study about socio-technical congruenceAutores: José María Sierra, Aurora Vizcaíno, Marcela Genero, Mario PiattiniNombre de la conferencia o revista de publicación: Information and Software Technology Número: Volume 94Mes: Februaro Año de la publicación: 2018 (Es importante resaltar que se aceptó el 6 de Octubre de 2017 por lo cual cumple los requisitos)Páginas: 111-129 DOI: https://doi.org/10.1016/j.infsof.2017.10.004Indicios de calidad (factor de impacto, número de citas, etc): ( posición de la revista: 16/106, factor de impacto: 2.694, puesto que se publicó en febrero de 2018 todavía no tiene citas)
Autores: José María Sierra / Aurora Vizcaíno / Marcela Genero / Mario Piattini /
Palabras Clave: Coordination - Distributed and Global Software Development - Socio-technical Congruence
UML is a commonly-used graphical language for the modelling ofsoftware. Works regarding UML’s effectiveness have studied projects thatdevelop software systems from scratch. Yet the maintenance of softwareconsumes a large share of the overall time and effort required to develop softwaresystems. This study, therefore, focuses on the use of UML in softwaremaintenance. We wish to elicit the practices of the software modelling usedduring maintenance in industry and understand what are perceived as hurdles andbenefits when using modelling. In order to achieve a high level of realism, weperformed a case study in a multinational company’s ICT department. Theanalysis is based on 31 interviews with employees who work on softwaremaintenance projects. The interviewees played different roles and providedcomplementary views about the use, hurdles and benefits of software modellingand the use of UML. Our study uncovered a broad range of modelling-relatedpractices, which are presented in a theoretical framework that illustrates howthese practices are linked to the specific goals and context of softwareengineering projects. We present a list of recommended practices that contributeto the increased effectiveness of software modelling. The use of softwaremodelling notations (like UML) is considered beneficial for softwaremaintenance but needs to be tailored to its context. Various practices thatcontribute to the effective use of modelling are commonly overlooked,suggesting that a more conscious holistic approach with which to integratemodelling practices into the overall software engineering approach is required.
Autores: Ana M. Fernandez-Saez / Marcela Genero /
Palabras Clave: Industrial case study - Modelling languages - Software maintenance - UML