Reuso y Reingeniera - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Reuso y Reingeniera

Description:

El reuso en software nos ayuda a mejorar la producci n y calidad del software al ' ... El reuso nos permite afrontar los grandes proyectos de software sin ... – PowerPoint PPT presentation

Number of Views:31
Avg rating:3.0/5.0
Slides: 17
Provided by: juancarlos83
Category:

less

Transcript and Presenter's Notes

Title: Reuso y Reingeniera


1
Reuso y Reingeniería
  • M.C. Juan Carlos Olivares Rojas

2
Reutilización
  • El reuso es una de las técnicas de resolución de
    problemas que más utilizamos los humanos. De
    hecho es lo primero que verifica nuestro cerebro.
  • El reuso en software nos ayuda a mejorar la
    producción y calidad del software al no
    reiventar la rueda.

3
Reuso
  • El reuso nos permite afrontar los grandes
    proyectos de software sin mayores complicaciones.
    Desafortunadamente no todo se puede reutilizar.
  • La reutilizacion es la propiedad de utilizar
    conocimiento, procesos, metodologías o
    componentes de software ya existente para
    adaptarlo a una nueva necesidad, incrementando
    significativamente la calidad y productividad del
    desarrollo.

4
Reutilización
  • La reutilización puede ser composicional y
    generativa.
  • Es composicional cuando se orienta al reuso del
    producto. Puede ser de caja blanca (si nos
    interesa modificar el comportamiento), caja negra
    (cuando no se puede modificar el comportamiento)
    y adaptativo cuando es una mezcla de ambos.

5
Reutilización
  • La reutilización por generación se da cuando se
    utilizan esfuerzos previos del desarrollo de
    software.
  • Para que un objeto pueda ser reusable se necesita
    de un alto nivel de abstracción. Entre mayor es
    su nivel de abstracción, mayor es su nivel de
    reuso.

6
Reuso
  • Tipos de reuso
  • Código reciclado utilizar parte del código
    definido en otros proyectos.
  • Componentes de código consiste en utilizar
    módulos, clases, APIs, etc.
  • Esquemas DFD, Diagramas UML.

7
Reuso
  • Frameworks Solución integrada para la resolución
    de problemas en un contexto particular. Se pueden
    utilizar patrones de diseño. Un ejemplo de
    Framework es .NET
  • Las etapas del proceso de reuso son
  • Adquisición del requerimiento.

8
Reuso
  • Búsqueda y Recuperación
  • Recuperación por Palabras Claves
  • Recuperación Basada en la Estructura
  • Recuperación Enumerada
  • Identificación
  • Adecuación

9
Reingeniería del Software
  • Sucede que si una aplicación necesita ser
    modificada constantemente y no tiene una
    metodología de seguimiento del desarrollo del
    proyecto, la modificación del software se vuelve
    sumamente complicada.
  • El mantenimiento de software en algunos casos
    puede llegar a ser del 60 del total de costos
    del proyecto.

10
Reingeniería del Software
  • Aún cuando un software se haya desarrollado con
    la mejor metodología de software tendrá que ser
    modificado en un futuro por algún motivo, debido
    a que lo único constante es el cambio.
  • Los tipos de mantenimiento de Software son
    correctivo, adaptativo, mejoras o mantenimiento
    de perfeccionamiento, mantenimiento preventivo o
    reingeniería.

11
Reingeniería del Software
  • El 80 del tiempo del desarrollo del software se
    ocupa en la adaptación del software a su ambiente
    externo.
  • La reingeniería de software es costosa y
    consumidora de tiempo.
  • La reingeniería es una actividad de
    reconstrucción, preferible de realizar antes de
    que se derrumbe la obra.

12
Reingeniería de Software
  • Antes de derribar una casa, quizás se necesita
    corroborar que está mal.
  • La reingeniería es un proceso que altera los
    elementos internos de toda obra, no es una sola
    remodelación de la fallada.
  • Generalmente se siguen los siguientes pasos para
    aplicar reingeniería

13
Reingeniería de Software
  • Análisis de Inventario
  • Reestructuración de Documentos
  • INGENIERÍA INVERSA
  • Reestructuración de Códigos
  • Reestructuración de Datos
  • Ingeniería directa

14
Ingeniería Inversa
  • Se aplica para obtener un modelo detallado de
    análisis, ingeniería de requerimientos, diseño y
    en algunos casos implementación teniendo una
    solución es una actividad consumidora de tiempo.
  • Tanto la Ingeniería Inversa como la Reingeniería
    en la mayoría de las licencias de Software se
    encuentran penadas por la ley.

15
Actividad
  • Realizar el proceso de Ingeniería inversa de los
    siguientes modelos de avión.
  • Se debe obtener como resultado un prototipo
    idéntico al dado así como su manual de diseño.

16
Preguntas, dudas y comentarios?
Write a Comment
User Comments (0)
About PowerShow.com