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í /
Business processes, most of which are automated by information systems, have become a key asset in organizations. Unfortunately, uncontrolled maintenance implies that information systems age over time until they need to be modernized. During software modernization, ageing systems cannot be entirely discarded because they gradually embed meaningful business knowledge, which is not present in any other artifact. This paper presents a technique for recovering business processes from legacy systems in order to preserve that knowledge. The technique statically analyzes source code and generates a code model, which is later transformed by pattern matching into a business process model. This technique has been validated over a two year period in several industrial modernization projects. This paper reports the results of a family of case studies that were performed to empirically validate the technique using analysis and meta-analysis techniques. The study demonstrates the effectiveness and efficiency of the technique.
Autores: Ricardo Pérez-Castillo / José A. Cruz-Lemus / Ignacio García-Rodríguez de Guzmán / Mario Piattini /
Palabras Clave: Business process - Case Study - Meta-analysis - Static Analysis