SlideShare una empresa de Scribd logo
Proceso de mejorar y optimizar el software desplegado e
implementado, así como también remediar los defectos.
La fase de mantenimiento de software
involucra:


 Cambios al software en orden de corregir
  defectos y dependencias.
 Adición de nueva funcionalidad para mejorar la
  usabilidad y aplicabilidad del software.
Mantenimiento           Mantenimiento           Mantenimiento
Correctivo:             Adaptivo:               Perfectivo:

    • Modificaciones        • Modificación de       • Modificación de
      reactivas a un          un producto             un producto
      producto                software                software
      software hechas         realizada               después de la
      después de la           después de la           entrega para
      entrega para            entrega para            mejorar el
      corregir                permitir que un         rendimiento o la
      defectos                producto                mantenibilidad.
      descubiertos.           software siga
                              pudiéndose
                              utilizar en un
                              entorno
                              diferente.
Es la rama de la ingeniería que aplica
los principios de la ciencia de la
computación y las matemáticas para
lograr soluciones.


Su proceso se define como “un
conjunto de etapas parcialmente
ordenadas con la intención de lograr
un objetivo, en este caso, la obtención
de un producto de software de calidad”
Se      puede      definir      como:
  “modificación de un producto
  software,      o     de      ciertos
  componente, usando para el
  análisis del sistema existente
  técnicas de Ingeniería Inversa y,
  para la etapa de reconstrucción,
  herramientas      de     Ingeniería
  Directa, de tal manera que se
  oriente este cambio hacia mayores
  niveles de facilidad en cuanto a
  mantenimiento,        reutilización,
  comprensión o evaluación.”
La reingeniería del software
involucra diferentes actividades
como son:
                                    Análisis de
                                    Inventarios




                                                            Reestructuración
       Ingeniería directa
                                                             de documentos




                 Reestructuración
                  de programas y                  Ingeniería inversa
                      datos.
Todas las organizaciones de software
  deberían tener un inventario de todas
  sus aplicaciones. El inventario tal vez
  no sea más que un modelo en una hoja
  de cálculo que contenga información
  que proporcione una descripción
  detallada (tamaño, edad, importancia
  para el negocio) de las aplicaciones
  actividades.        Ordenada       esta
  información en función de su
  importancia      para    el    negocio,
  longevidad, mantenibilidad actual y
  otros       criterios     importantes,
  ENTONCES es posible conocer las
  prioridades para la reingeniería.
La documentación débil es la marca de muchos
  sistemas heredados. ¿Pero qué se hace acerca
  de ellos? El sistema es crucial para el negocio
  y debe volver a documentarse por completo,
  en este caso un enfoque inteligente es
  recortar la documentación a un mínimo
  esencial.
La ingeniería inversa del software es
   el proceso de análisis de un
   programa con el fin de crear una
   representación de programa con
   un nivel de abstracción más
   elevado que el código fuente. La
   Ingeniería inversa es un proceso
   de recuperación de diseño. Con
   las herramientas de la ingeniería
   inversa se extraerá del programa
   existente información del diseño
   arquitectónico y de proceso, e
   información de los datos.
 Llevar a cabo esta actividad
  requiere analizar el código
  fuente      empleando       una
  herramienta                  de
  reestructuración, se indican las
  violaciones de las estructuras
  de programación estructurada,
  y entonces se reestructura el
  código.        El        código
  reestructurado resultante se
  revisa y se comprueba para
  asegurar que no se hayan
  introducido anomalías. Se
  actualiza la documentación
  interna del código.
La reestructuración de datos es una
  actividad de reingeniería a gran escala.
  En la mayoría de los casos, comienza con
  una actividad de ingeniería inversa. La
  arquitectura de datos actual se analiza
  con minuciosidad y se define los
  modelos de datos necesarios, se
  identifican los objetivos de datos y los
  atributos, y después se revisa la calidad
  de las estructuras de datos existentes.
  Dado que la arquitectura de datos tiene
  una gran influencia sobre la arquitectura
  del programa, y también sobre los
  algoritmos que lo pueblan , los cambios
  datos darán lugar invariablemente a
  cambios o bien de arquitectura o bien de
  código.
La      ingeniería directa no sólo
     recupera la información de
     diseño a partir del software
     existente, también utiliza esta
     información para alterar o
     reconstruir el sistema existente
     con la finalidad de mejorar su
     calidad global. En la mayoría de
     los casos el software sometido a
     reingeniería       vuelve      a
     implementar la función del
     sistema existente y también
     añade nuevas funciones o
     mejoras.
 Acceder al código fuente de un programa
  significa acceder a los algoritmos desarrollados
  por sus creadores. Es la única manera de
  modificar eficaz y eficientemente un programa.
 Liberar un código fuente significa compartir ese
  texto con cualquier persona que lo desee, esto
  implica que cualquiera puede analizarlo, copiarlo
  o modificarlo.
 Y también implica ciertos riesgos en cuanto a la
  seguridad del mismo, pues su funcionamiento
  exacto queda expuesto.
Glosario
            determinar los valores de las variables
que intervienen en un proceso o sistema para que el
resultado que se obtiene sea el mejor posible.
                     Acción y efecto de reestructurar
o reestructurarse.
                   Que no puede ser justificado o
razonado de ningún modo
            Reunir leyes o normas en un código.
               Aplicar máquinas o procedimientos
automáticos en la realización de un proceso o en una
industria
          Hacer un análisis de determinada cosa
                Activar.
Bibliografía

 www.sincows.com
 www.cnx.org
 www.angelfire.com
 www.alegsa.com.are

Más contenido relacionado

La actualidad más candente

Esto es ingeniería inversa
Esto es ingeniería inversaEsto es ingeniería inversa
Esto es ingeniería inversa
Katerinne Mosquera
 
Investiga
InvestigaInvestiga
Investiga
Devi Macias
 
Proyecto de reingenieria de software
Proyecto de reingenieria  de softwareProyecto de reingenieria  de software
Proyecto de reingenieria de software
Wilder Ildefonso Chacon
 
Georgy jose sanchez
Georgy jose sanchezGeorgy jose sanchez
Georgy jose sanchez
Georgy Jose Sanchez
 
Proceso software
Proceso softwareProceso software
7iSF-1 ingeniería de software
7iSF-1   ingeniería de software7iSF-1   ingeniería de software
7iSF-1 ingeniería de software
programadorjavablog
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SW
Raquel Solano
 
Trabajo 2 exposicion
Trabajo 2 exposicionTrabajo 2 exposicion
Trabajo 2 exposicion
Evelin Oña
 
Diapositivas ingsw
Diapositivas ingswDiapositivas ingsw
Diapositivas ingsw
ingridsitarodriguez
 
Tarea 1 metodos y modelos de la reingenieria
Tarea 1 metodos y modelos de la reingenieriaTarea 1 metodos y modelos de la reingenieria
Tarea 1 metodos y modelos de la reingenieria
Elizabeth Juarez
 
Lineas de prduccion de software y metodo watch
Lineas de prduccion de software y metodo watchLineas de prduccion de software y metodo watch
Lineas de prduccion de software y metodo watch
Juan de la Hoz
 
Mantenimiento de Software
Mantenimiento de SoftwareMantenimiento de Software
Mantenimiento de Software
M. Ib.
 
Sqm
SqmSqm
Sqm
symple9
 
Ingeniería inversa
Ingeniería inversaIngeniería inversa
Ingeniería inversa
stiverodriguez
 
Investigafer
InvestigaferInvestigafer
Investigafer
ferlcubi
 
Investiga
InvestigaInvestiga
Investiga
azterix1982
 
Seminario 3 reutilización del software
Seminario 3 reutilización del softwareSeminario 3 reutilización del software
Seminario 3 reutilización del software
pto0404
 
13. ingeniería del software
13. ingeniería del software13. ingeniería del software
13. ingeniería del software
Daniel Merchan
 
Presentacion mantenimiento g9
Presentacion mantenimiento g9Presentacion mantenimiento g9
Presentacion mantenimiento g9
Yaniris Sepulveda
 
Ingenieria inversa
Ingenieria inversaIngenieria inversa
Ingenieria inversa
Janes Durán
 

La actualidad más candente (20)

Esto es ingeniería inversa
Esto es ingeniería inversaEsto es ingeniería inversa
Esto es ingeniería inversa
 
Investiga
InvestigaInvestiga
Investiga
 
Proyecto de reingenieria de software
Proyecto de reingenieria  de softwareProyecto de reingenieria  de software
Proyecto de reingenieria de software
 
Georgy jose sanchez
Georgy jose sanchezGeorgy jose sanchez
Georgy jose sanchez
 
Proceso software
Proceso softwareProceso software
Proceso software
 
7iSF-1 ingeniería de software
7iSF-1   ingeniería de software7iSF-1   ingeniería de software
7iSF-1 ingeniería de software
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SW
 
Trabajo 2 exposicion
Trabajo 2 exposicionTrabajo 2 exposicion
Trabajo 2 exposicion
 
Diapositivas ingsw
Diapositivas ingswDiapositivas ingsw
Diapositivas ingsw
 
Tarea 1 metodos y modelos de la reingenieria
Tarea 1 metodos y modelos de la reingenieriaTarea 1 metodos y modelos de la reingenieria
Tarea 1 metodos y modelos de la reingenieria
 
Lineas de prduccion de software y metodo watch
Lineas de prduccion de software y metodo watchLineas de prduccion de software y metodo watch
Lineas de prduccion de software y metodo watch
 
Mantenimiento de Software
Mantenimiento de SoftwareMantenimiento de Software
Mantenimiento de Software
 
Sqm
SqmSqm
Sqm
 
Ingeniería inversa
Ingeniería inversaIngeniería inversa
Ingeniería inversa
 
Investigafer
InvestigaferInvestigafer
Investigafer
 
Investiga
InvestigaInvestiga
Investiga
 
Seminario 3 reutilización del software
Seminario 3 reutilización del softwareSeminario 3 reutilización del software
Seminario 3 reutilización del software
 
13. ingeniería del software
13. ingeniería del software13. ingeniería del software
13. ingeniería del software
 
Presentacion mantenimiento g9
Presentacion mantenimiento g9Presentacion mantenimiento g9
Presentacion mantenimiento g9
 
Ingenieria inversa
Ingenieria inversaIngenieria inversa
Ingenieria inversa
 

Destacado

Pasos mantenimiento preventivo
Pasos mantenimiento preventivoPasos mantenimiento preventivo
Pasos mantenimiento preventivo
NEBERANTO
 
Manual de mantenimiento preventivo
Manual de mantenimiento preventivoManual de mantenimiento preventivo
Manual de mantenimiento preventivo
David RC
 
Las fases o pasos de un mantenimiento preventivo
Las fases o pasos de un  mantenimiento preventivoLas fases o pasos de un  mantenimiento preventivo
Las fases o pasos de un mantenimiento preventivo
rosarioperalta
 
Pasos para realizar un mantenimiento preventivo
Pasos para realizar un mantenimiento preventivoPasos para realizar un mantenimiento preventivo
Pasos para realizar un mantenimiento preventivo
Yira Lisset Pedrozo Contreras
 
Pasos para un mantenimiento preventivo
Pasos para un mantenimiento preventivoPasos para un mantenimiento preventivo
Pasos para un mantenimiento preventivo
jdiego1993
 
FASES O PASOS DE UN MANTENIMIENTO PREVENTIVO
FASES O PASOS DE UN  MANTENIMIENTO PREVENTIVOFASES O PASOS DE UN  MANTENIMIENTO PREVENTIVO
FASES O PASOS DE UN MANTENIMIENTO PREVENTIVO
Jair Barrios
 
Mantenimiento preventivo de hardware
Mantenimiento preventivo  de hardwareMantenimiento preventivo  de hardware
Mantenimiento preventivo de hardware
Milady Olarte
 
Pasos para un mantenimiento preventivo.
Pasos para un mantenimiento preventivo.Pasos para un mantenimiento preventivo.
Pasos para un mantenimiento preventivo.
alfredodla
 
Pasos para un mantenimiento preventivo
Pasos para un mantenimiento preventivoPasos para un mantenimiento preventivo
Pasos para un mantenimiento preventivo
Gilmar Polo
 

Destacado (9)

Pasos mantenimiento preventivo
Pasos mantenimiento preventivoPasos mantenimiento preventivo
Pasos mantenimiento preventivo
 
Manual de mantenimiento preventivo
Manual de mantenimiento preventivoManual de mantenimiento preventivo
Manual de mantenimiento preventivo
 
Las fases o pasos de un mantenimiento preventivo
Las fases o pasos de un  mantenimiento preventivoLas fases o pasos de un  mantenimiento preventivo
Las fases o pasos de un mantenimiento preventivo
 
Pasos para realizar un mantenimiento preventivo
Pasos para realizar un mantenimiento preventivoPasos para realizar un mantenimiento preventivo
Pasos para realizar un mantenimiento preventivo
 
Pasos para un mantenimiento preventivo
Pasos para un mantenimiento preventivoPasos para un mantenimiento preventivo
Pasos para un mantenimiento preventivo
 
FASES O PASOS DE UN MANTENIMIENTO PREVENTIVO
FASES O PASOS DE UN  MANTENIMIENTO PREVENTIVOFASES O PASOS DE UN  MANTENIMIENTO PREVENTIVO
FASES O PASOS DE UN MANTENIMIENTO PREVENTIVO
 
Mantenimiento preventivo de hardware
Mantenimiento preventivo  de hardwareMantenimiento preventivo  de hardware
Mantenimiento preventivo de hardware
 
Pasos para un mantenimiento preventivo.
Pasos para un mantenimiento preventivo.Pasos para un mantenimiento preventivo.
Pasos para un mantenimiento preventivo.
 
Pasos para un mantenimiento preventivo
Pasos para un mantenimiento preventivoPasos para un mantenimiento preventivo
Pasos para un mantenimiento preventivo
 

Similar a Mantenimiento del software unidad # 9

Mantenimiento de Software
Mantenimiento de SoftwareMantenimiento de Software
Mantenimiento de Software
CARMEN
 
Ingenieria del software pfd
Ingenieria del software pfdIngenieria del software pfd
Ingenieria del software pfd
David Silva Valdivieso
 
Reingenieria
ReingenieriaReingenieria
Reingenieria
Darwin Macas
 
Reingeniería
ReingenieríaReingeniería
Reingeniería
jose_macias
 
Jose r ojas ii
Jose r ojas iiJose r ojas ii
Jose r ojas ii
José Rojas
 
Fundamentos del Diseño de Software
Fundamentos del Diseño de SoftwareFundamentos del Diseño de Software
Fundamentos del Diseño de Software
Nelson Guanipa
 
Reingeniería
Reingeniería Reingeniería
Reingeniería
one_ramos
 
TECNICAS DE MANTENIMIENTO DE SW.pptx
TECNICAS DE MANTENIMIENTO DE SW.pptxTECNICAS DE MANTENIMIENTO DE SW.pptx
TECNICAS DE MANTENIMIENTO DE SW.pptx
NestorBenitez22
 
Proceso de desarrollo de si
Proceso de desarrollo de siProceso de desarrollo de si
Proceso de desarrollo de si
Didier Alexander
 
Ingeniería del software
Ingeniería del softwareIngeniería del software
Ingeniería del software
Joxany Chávez
 
Diseño, Mantenimiento de Software +
Diseño, Mantenimiento de Software +Diseño, Mantenimiento de Software +
Diseño, Mantenimiento de Software +
Valentina
 
Siste deinf
Siste deinfSiste deinf
Siste deinf
jesuspericana2
 
Mantenimiento de-software-v6 abad-esquenleyner
Mantenimiento de-software-v6 abad-esquenleynerMantenimiento de-software-v6 abad-esquenleyner
Mantenimiento de-software-v6 abad-esquenleyner
Leyner Adan Abad Esquen
 
Inf 162
Inf 162Inf 162
Inf 162
Markitozzz100
 
Proyecto de reingenieria
Proyecto de reingenieriaProyecto de reingenieria
Proyecto de reingenieria
Elizabeth Juarez
 
Adrian adrianza
Adrian adrianzaAdrian adrianza
Adrian adrianza
Adrian Adrianza
 
Mantenimiento De Softtware
Mantenimiento De SofttwareMantenimiento De Softtware
Mantenimiento De Softtware
Ramon Rivera
 
Fundamentos del diseño de software
Fundamentos del diseño de softwareFundamentos del diseño de software
Fundamentos del diseño de software
joelfinol
 
presentacion_edisleynissilva
presentacion_edisleynissilvapresentacion_edisleynissilva
presentacion_edisleynissilva
eddysilva18
 
Metodologia Programación
Metodologia ProgramaciónMetodologia Programación
Metodologia Programación
Yelixa Araque Angulo
 

Similar a Mantenimiento del software unidad # 9 (20)

Mantenimiento de Software
Mantenimiento de SoftwareMantenimiento de Software
Mantenimiento de Software
 
Ingenieria del software pfd
Ingenieria del software pfdIngenieria del software pfd
Ingenieria del software pfd
 
Reingenieria
ReingenieriaReingenieria
Reingenieria
 
Reingeniería
ReingenieríaReingeniería
Reingeniería
 
Jose r ojas ii
Jose r ojas iiJose r ojas ii
Jose r ojas ii
 
Fundamentos del Diseño de Software
Fundamentos del Diseño de SoftwareFundamentos del Diseño de Software
Fundamentos del Diseño de Software
 
Reingeniería
Reingeniería Reingeniería
Reingeniería
 
TECNICAS DE MANTENIMIENTO DE SW.pptx
TECNICAS DE MANTENIMIENTO DE SW.pptxTECNICAS DE MANTENIMIENTO DE SW.pptx
TECNICAS DE MANTENIMIENTO DE SW.pptx
 
Proceso de desarrollo de si
Proceso de desarrollo de siProceso de desarrollo de si
Proceso de desarrollo de si
 
Ingeniería del software
Ingeniería del softwareIngeniería del software
Ingeniería del software
 
Diseño, Mantenimiento de Software +
Diseño, Mantenimiento de Software +Diseño, Mantenimiento de Software +
Diseño, Mantenimiento de Software +
 
Siste deinf
Siste deinfSiste deinf
Siste deinf
 
Mantenimiento de-software-v6 abad-esquenleyner
Mantenimiento de-software-v6 abad-esquenleynerMantenimiento de-software-v6 abad-esquenleyner
Mantenimiento de-software-v6 abad-esquenleyner
 
Inf 162
Inf 162Inf 162
Inf 162
 
Proyecto de reingenieria
Proyecto de reingenieriaProyecto de reingenieria
Proyecto de reingenieria
 
Adrian adrianza
Adrian adrianzaAdrian adrianza
Adrian adrianza
 
Mantenimiento De Softtware
Mantenimiento De SofttwareMantenimiento De Softtware
Mantenimiento De Softtware
 
Fundamentos del diseño de software
Fundamentos del diseño de softwareFundamentos del diseño de software
Fundamentos del diseño de software
 
presentacion_edisleynissilva
presentacion_edisleynissilvapresentacion_edisleynissilva
presentacion_edisleynissilva
 
Metodologia Programación
Metodologia ProgramaciónMetodologia Programación
Metodologia Programación
 

Más de Vanessa Toral Yépez

Presentación1
Presentación1Presentación1
Presentación1
Vanessa Toral Yépez
 
Diseños de planes de pruebas de software1
Diseños de planes de pruebas de software1Diseños de planes de pruebas de software1
Diseños de planes de pruebas de software1
Vanessa Toral Yépez
 
Buscadores 2
Buscadores  2Buscadores  2
Buscadores 2
Vanessa Toral Yépez
 
Seguridad del internet
Seguridad del internetSeguridad del internet
Seguridad del internet
Vanessa Toral Yépez
 
Introducion a los sistemas de informacion
Introducion a los sistemas de informacionIntroducion a los sistemas de informacion
Introducion a los sistemas de informacion
Vanessa Toral Yépez
 
Ingieneria del software y el ciclo de vida
Ingieneria del software y el ciclo de vidaIngieneria del software y el ciclo de vida
Ingieneria del software y el ciclo de vida
Vanessa Toral Yépez
 
Foro y grupos de discusiones
Foro y grupos de discusionesForo y grupos de discusiones
Foro y grupos de discusiones
Vanessa Toral Yépez
 
Documentacion del sistema
Documentacion del sistemaDocumentacion del sistema
Documentacion del sistema
Vanessa Toral Yépez
 
Desarrollo y información en aplicaciones informáticas
Desarrollo y información en aplicaciones informáticasDesarrollo y información en aplicaciones informáticas
Desarrollo y información en aplicaciones informáticas
Vanessa Toral Yépez
 
Correo electrónico
Correo electrónicoCorreo electrónico
Correo electrónico
Vanessa Toral Yépez
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
Vanessa Toral Yépez
 
Diaspositivas de informatik para presentar
 Diaspositivas de informatik para presentar  Diaspositivas de informatik para presentar
Diaspositivas de informatik para presentar
Vanessa Toral Yépez
 
Unidad 7 diseño estructructurado de datos microsoft access.
Unidad 7 diseño estructructurado de datos microsoft access.Unidad 7 diseño estructructurado de datos microsoft access.
Unidad 7 diseño estructructurado de datos microsoft access.
Vanessa Toral Yépez
 

Más de Vanessa Toral Yépez (13)

Presentación1
Presentación1Presentación1
Presentación1
 
Diseños de planes de pruebas de software1
Diseños de planes de pruebas de software1Diseños de planes de pruebas de software1
Diseños de planes de pruebas de software1
 
Buscadores 2
Buscadores  2Buscadores  2
Buscadores 2
 
Seguridad del internet
Seguridad del internetSeguridad del internet
Seguridad del internet
 
Introducion a los sistemas de informacion
Introducion a los sistemas de informacionIntroducion a los sistemas de informacion
Introducion a los sistemas de informacion
 
Ingieneria del software y el ciclo de vida
Ingieneria del software y el ciclo de vidaIngieneria del software y el ciclo de vida
Ingieneria del software y el ciclo de vida
 
Foro y grupos de discusiones
Foro y grupos de discusionesForo y grupos de discusiones
Foro y grupos de discusiones
 
Documentacion del sistema
Documentacion del sistemaDocumentacion del sistema
Documentacion del sistema
 
Desarrollo y información en aplicaciones informáticas
Desarrollo y información en aplicaciones informáticasDesarrollo y información en aplicaciones informáticas
Desarrollo y información en aplicaciones informáticas
 
Correo electrónico
Correo electrónicoCorreo electrónico
Correo electrónico
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
 
Diaspositivas de informatik para presentar
 Diaspositivas de informatik para presentar  Diaspositivas de informatik para presentar
Diaspositivas de informatik para presentar
 
Unidad 7 diseño estructructurado de datos microsoft access.
Unidad 7 diseño estructructurado de datos microsoft access.Unidad 7 diseño estructructurado de datos microsoft access.
Unidad 7 diseño estructructurado de datos microsoft access.
 

Mantenimiento del software unidad # 9

  • 1.
  • 2. Proceso de mejorar y optimizar el software desplegado e implementado, así como también remediar los defectos.
  • 3. La fase de mantenimiento de software involucra:  Cambios al software en orden de corregir defectos y dependencias.  Adición de nueva funcionalidad para mejorar la usabilidad y aplicabilidad del software.
  • 4. Mantenimiento Mantenimiento Mantenimiento Correctivo: Adaptivo: Perfectivo: • Modificaciones • Modificación de • Modificación de reactivas a un un producto un producto producto software software software hechas realizada después de la después de la después de la entrega para entrega para entrega para mejorar el corregir permitir que un rendimiento o la defectos producto mantenibilidad. descubiertos. software siga pudiéndose utilizar en un entorno diferente.
  • 5. Es la rama de la ingeniería que aplica los principios de la ciencia de la computación y las matemáticas para lograr soluciones. Su proceso se define como “un conjunto de etapas parcialmente ordenadas con la intención de lograr un objetivo, en este caso, la obtención de un producto de software de calidad”
  • 6. Se puede definir como: “modificación de un producto software, o de ciertos componente, usando para el análisis del sistema existente técnicas de Ingeniería Inversa y, para la etapa de reconstrucción, herramientas de Ingeniería Directa, de tal manera que se oriente este cambio hacia mayores niveles de facilidad en cuanto a mantenimiento, reutilización, comprensión o evaluación.”
  • 7. La reingeniería del software involucra diferentes actividades como son: Análisis de Inventarios Reestructuración Ingeniería directa de documentos Reestructuración de programas y Ingeniería inversa datos.
  • 8.
  • 9. Todas las organizaciones de software deberían tener un inventario de todas sus aplicaciones. El inventario tal vez no sea más que un modelo en una hoja de cálculo que contenga información que proporcione una descripción detallada (tamaño, edad, importancia para el negocio) de las aplicaciones actividades. Ordenada esta información en función de su importancia para el negocio, longevidad, mantenibilidad actual y otros criterios importantes, ENTONCES es posible conocer las prioridades para la reingeniería.
  • 10. La documentación débil es la marca de muchos sistemas heredados. ¿Pero qué se hace acerca de ellos? El sistema es crucial para el negocio y debe volver a documentarse por completo, en este caso un enfoque inteligente es recortar la documentación a un mínimo esencial.
  • 11. La ingeniería inversa del software es el proceso de análisis de un programa con el fin de crear una representación de programa con un nivel de abstracción más elevado que el código fuente. La Ingeniería inversa es un proceso de recuperación de diseño. Con las herramientas de la ingeniería inversa se extraerá del programa existente información del diseño arquitectónico y de proceso, e información de los datos.
  • 12.  Llevar a cabo esta actividad requiere analizar el código fuente empleando una herramienta de reestructuración, se indican las violaciones de las estructuras de programación estructurada, y entonces se reestructura el código. El código reestructurado resultante se revisa y se comprueba para asegurar que no se hayan introducido anomalías. Se actualiza la documentación interna del código.
  • 13. La reestructuración de datos es una actividad de reingeniería a gran escala. En la mayoría de los casos, comienza con una actividad de ingeniería inversa. La arquitectura de datos actual se analiza con minuciosidad y se define los modelos de datos necesarios, se identifican los objetivos de datos y los atributos, y después se revisa la calidad de las estructuras de datos existentes. Dado que la arquitectura de datos tiene una gran influencia sobre la arquitectura del programa, y también sobre los algoritmos que lo pueblan , los cambios datos darán lugar invariablemente a cambios o bien de arquitectura o bien de código.
  • 14. La ingeniería directa no sólo recupera la información de diseño a partir del software existente, también utiliza esta información para alterar o reconstruir el sistema existente con la finalidad de mejorar su calidad global. En la mayoría de los casos el software sometido a reingeniería vuelve a implementar la función del sistema existente y también añade nuevas funciones o mejoras.
  • 15.  Acceder al código fuente de un programa significa acceder a los algoritmos desarrollados por sus creadores. Es la única manera de modificar eficaz y eficientemente un programa.  Liberar un código fuente significa compartir ese texto con cualquier persona que lo desee, esto implica que cualquiera puede analizarlo, copiarlo o modificarlo.  Y también implica ciertos riesgos en cuanto a la seguridad del mismo, pues su funcionamiento exacto queda expuesto.
  • 16.
  • 17. Glosario determinar los valores de las variables que intervienen en un proceso o sistema para que el resultado que se obtiene sea el mejor posible. Acción y efecto de reestructurar o reestructurarse. Que no puede ser justificado o razonado de ningún modo Reunir leyes o normas en un código. Aplicar máquinas o procedimientos automáticos en la realización de un proceso o en una industria Hacer un análisis de determinada cosa Activar.
  • 18. Bibliografía  www.sincows.com  www.cnx.org  www.angelfire.com  www.alegsa.com.are