Mapeo y factorización de modelos orientados a objetos en aplicaciones C

La generación de modelos de alto nivel, en procesos de ingeniería inversa aplicados a sistemas legacy, ayuda a entender cómo fue construido dicho sistema. En el contexto de programas implementados en lenguajes estructurados, las propuestas actuales de generación...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autor principal: Cassol, Ignacio
Formato: Artículo revista
Lenguaje:Español
Publicado: Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas 2016
Materias:
M2k
Acceso en línea:http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/771
Aporte de:
id I21-R190-123456789-771
record_format ojs
spelling I21-R190-123456789-7712023-05-31T16:06:44Z Mapeo y factorización de modelos orientados a objetos en aplicaciones C Cassol, Ignacio Arévalo, Gabriela Casanova, Federico Computación Refactorización Proceso de mejora continua Ingeniería del software Proceso de refactoring M2k Sistemas legacy Lenguajes de programación Ingeniería de sistemas Lenguaje C Modelo orientado a objetos Matemática computacional Tesis de doctorado La generación de modelos de alto nivel, en procesos de ingeniería inversa aplicados a sistemas legacy, ayuda a entender cómo fue construido dicho sistema. En el contexto de programas implementados en lenguajes estructurados, las propuestas actuales de generación de modelos requieren documentación y/o conocimiento implícido que generalmente sólo poseen los stakeholders que han participado en la construcción de dicha aplicación. Cuando estos requerimientos no se cumplen, las propuestas no son aplicables. Los sistemas legacy implementados en lenguajes estructurados todavía tienen vigencia y siguen funcionando. Estos sistemas también evolucionan y los desarrolladores deben realizar tareas de mantenimiento. Basados en las buenas propiedades que tiene el paradigma orientado a objetos, proponemos M2K: una metodología que genera un modelo orientado a objetos de sistemas legacy programados en Ansi C. Nuestra contribución está basada en la generación de dicho modelo combinando técnicas automáticas y manuales que aportan flexibilidad a la solución. Un software propio parsea de modo automático el código legacy y genera un modelo. Un experto, sobre la base de dicho modelo, aplica un conjunto de refactorings y genera un modelo mejorado. Finalmente, presentamos un modelo de métricas que nos permite medir la distancia entre el modelo generado automáticamente y el modelo mejorado. Fil: Cassol, Ignacio. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina Fil: Arévalo, Gabriela. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina Fil: Casanova, Federico. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina When analyzing legacy code, generating a high-­‐level model of an application during the reverse engineering process helps the developers understand how the application was structured. Within the context of procedural programming languages (such as C), the existing approaches to get a model of the code require documentation and/or implicit knowledge that stakeholders acquire during the software building. Those requirements do not always happen. The legacy procedural code is still worth and working in several industries, and as any evolving code, the developers have to be able to perform maintenance tasks minimizing the limitations offered by the language. Based on useful properties that the object-­‐oriented paradigm provides, such as UML models, we propose M2K as a methodology to generate a high-­‐level model from legacy procedural code, written in Ansi C. Our contribution is based on building an object-­‐oriented model and proposing different refactorings that help the developer to improve it. Based on a generated model parsed automatically with own software, we propose refactorings using object-­‐oriented design principles. Finally, we introduce a model of metrics that let us measure the distance between the generated automatically model and the improved model after applying the refactorings 2016-05 2016-10-21T15:45:28Z info:ar-repo/semantics/tesis doctoral info:eu-repo/semantics/acceptedVersion info:eu-repo/semantics/doctoralThesis http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/771 https://www.ridaa.unicen.edu.ar/handle/123456789/771 spa http://creativecommons.org/licenses/by-nc/2.5/ar/ info:eu-repo/semantics/openAccess application/pdf application/pdf Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas
institution Universidad Nacional del Centro
institution_str I-21
repository_str R-190
container_title_str Repositorio Institucional de Acceso Abierto (RIDAA)
language Español
format Artículo revista
topic Computación
Refactorización
Proceso de mejora continua
Ingeniería del software
Proceso de refactoring
M2k
Sistemas legacy
Lenguajes de programación
Ingeniería de sistemas
Lenguaje C
Modelo orientado a objetos
Matemática computacional
Tesis de doctorado
spellingShingle Computación
Refactorización
Proceso de mejora continua
Ingeniería del software
Proceso de refactoring
M2k
Sistemas legacy
Lenguajes de programación
Ingeniería de sistemas
Lenguaje C
Modelo orientado a objetos
Matemática computacional
Tesis de doctorado
Cassol, Ignacio
Mapeo y factorización de modelos orientados a objetos en aplicaciones C
topic_facet Computación
Refactorización
Proceso de mejora continua
Ingeniería del software
Proceso de refactoring
M2k
Sistemas legacy
Lenguajes de programación
Ingeniería de sistemas
Lenguaje C
Modelo orientado a objetos
Matemática computacional
Tesis de doctorado
author Cassol, Ignacio
author_facet Cassol, Ignacio
author_sort Cassol, Ignacio
title Mapeo y factorización de modelos orientados a objetos en aplicaciones C
title_short Mapeo y factorización de modelos orientados a objetos en aplicaciones C
title_full Mapeo y factorización de modelos orientados a objetos en aplicaciones C
title_fullStr Mapeo y factorización de modelos orientados a objetos en aplicaciones C
title_full_unstemmed Mapeo y factorización de modelos orientados a objetos en aplicaciones C
title_sort mapeo y factorización de modelos orientados a objetos en aplicaciones c
description La generación de modelos de alto nivel, en procesos de ingeniería inversa aplicados a sistemas legacy, ayuda a entender cómo fue construido dicho sistema. En el contexto de programas implementados en lenguajes estructurados, las propuestas actuales de generación de modelos requieren documentación y/o conocimiento implícido que generalmente sólo poseen los stakeholders que han participado en la construcción de dicha aplicación. Cuando estos requerimientos no se cumplen, las propuestas no son aplicables. Los sistemas legacy implementados en lenguajes estructurados todavía tienen vigencia y siguen funcionando. Estos sistemas también evolucionan y los desarrolladores deben realizar tareas de mantenimiento. Basados en las buenas propiedades que tiene el paradigma orientado a objetos, proponemos M2K: una metodología que genera un modelo orientado a objetos de sistemas legacy programados en Ansi C. Nuestra contribución está basada en la generación de dicho modelo combinando técnicas automáticas y manuales que aportan flexibilidad a la solución. Un software propio parsea de modo automático el código legacy y genera un modelo. Un experto, sobre la base de dicho modelo, aplica un conjunto de refactorings y genera un modelo mejorado. Finalmente, presentamos un modelo de métricas que nos permite medir la distancia entre el modelo generado automáticamente y el modelo mejorado.
publisher Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas
publishDate 2016
url http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/771
work_keys_str_mv AT cassolignacio mapeoyfactorizaciondemodelosorientadosaobjetosenaplicacionesc
first_indexed 2022-07-04T14:27:45Z
last_indexed 2024-08-12T22:53:55Z
_version_ 1807224129168867328