UN MÉTODO DE INGENIERÍA INVERSA DE CÓDIGO JAVA HACIA DIAGRAMAS DE SECUENCIAS DE UML 2.0
UN MÉTODO DE INGENIERÍA INVERSA DE CÓDIGO JAVA HACIA DIAGRAMAS DE SECUENCIAS DE UML 2.0


This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
Copyright statement
The authors exclusively assign to the Universidad EIA, with the power to assign to third parties, all the exploitation rights that derive from the works that are accepted for publication in the Revista EIA, as well as in any product derived from it and, in in particular, those of reproduction, distribution, public communication (including interactive making available) and transformation (including adaptation, modification and, where appropriate, translation), for all types of exploitation (by way of example and not limitation : in paper, electronic, online, computer or audiovisual format, as well as in any other format, even for promotional or advertising purposes and / or for the production of derivative products), for a worldwide territorial scope and for the entire duration of the rights provided for in the current published text of the Intellectual Property Law. This assignment will be made by the authors without the right to any type of remuneration or compensation.
Consequently, the author may not publish or disseminate the works that are selected for publication in the Revista EIA, neither totally nor partially, nor authorize their publication to third parties, without the prior express authorization, requested and granted in writing, from the Univeridad EIA.
Show authors biography
La Ingeniería inversa de software aparece como un proceso que ayuda al aseguramiento de la calidad y documentación de aplicaciones con deficiencias en los modelos de análisis y diseño. Además, ayuda en la disminución de costos y tiempos de mantenimiento. En la actualidad existen herramientas CASE y algunas propuestas de investigación que realizan el proceso de ingeniería inversa a diagramas UML, en especial a los diagramas de clases y secuencias. Algunas se encuentran en fases experimentales; otras se enfocan mucho más en el diagrama de clases que en el de secuencias. Un tercer grupo obtiene algunos elementos del diagrama de secuencias, pero no posee muchos de los elementos que hacen parte de la especificación de UML 2.0. En este artículo se propone un método que automatiza la conversión del código JAVA en diagrama de secuencias de UML 2.0, por medio de la aplicación de reglas de transformación que convierten los elementos del código en elemntos del diagrama. Se presenta también un ejemplo de aplicación del método con un prototipo que lo emplea, el UNC-Inversor.
Abstract: Software reverse engineering seems to be the process for helping software quality assurance and documentation in applications with low-quality analysis and design models. It also helps for decreasing maintenance cost and time. Currently, some CASE tools and research proposals assist analysts to develop reverse engineering process with UML diagrams as a result (especially class and sequence diagram). Some of them have reached experimental phases. Some others are focused more on class diagram and less on sequence diagram. A third group of CASE tools and proposals obtains sequence diagram, but the resulting diagram lacks some of the elements of the UML 2.0 specification. In this paper, we propose a method for automating the conversion of JAVA code into UML 2.0 sequence diagram, by means of the application of transformation rules for converting code elements to the diagram elements. We also present an example of the method application through a prototype named UNC-Inversor.
Article visits 325 | PDF visits 201