Please enable JavaScript.
Coggle requires JavaScript to display documents.
Reutilizacion del Software - Coggle Diagram
Reutilizacion del Software
¿Qué es?
Es el proceso de creación de sistemas de software a partir de un software existente, en lugar de tener que rediseñar desde el principio.
Elementos que intervienen en la reutilización
.
:check: Especificaciones de requerimientos previamente concebidas
:check: Diseños previamente definidos (Estructuras de datos, algoritmos, etc.)
:check: Código probado y depurado con anterioridad
:check: Planes y casos de prueba previamente utilizados
:check: Personal cualificado (aprovechamiento de la experiencia de los ingenieros de un proyecto a otro)
:check: Paquetes de software de propósito general
Conceptos de reutilización de software
:check: La reutilización de software aparece como una alternativa para desarrollar aplicaciones y sistemas SW de un manera más eficiente, productiva y rápida.
:check: La idea es reutilizar elementos y componentes SW en lugar de tener que desarrollarlos desde un principio.
:check: Surge formalmente de 1968
:check: La idea principal era producir componentes de software como si de componentes eléctricos se tratara.
:check: objetivo es reutilizar lo existente sin tener que volver a rediseñarlo desde el principio
Dificultades de la reutilización
:check: En muchas empresas no existe plan de reutilización (No se considera prioritario)
:check: Escasa formación
:check: Resistencia del personal
:check: Pobre soporte metodológico
:check: Uso de métodos que no promueven la reutilización (Estructurados)
:check: Necesario métodos para:
:check: Desarrollo para reutilización
:check: Desarrollo con reutilización
Ventajas
:check: Reducir el tiempo de desarrollo.
:check: Reducir los costos.
:check: Incrementar la productividad.
:check: No tener que reinventar las soluciones.
:check: Facilitar la compartición de productos del ciclo de vida.
:check: Mayor fiabilidad
:check: Mayor eficiencia (Aunque al principio pueda parecer que no)
:check: Consistencia y la familiaridad, los patrones dentro del software serán más consistentes, tendiendo a facilitar el mantenimiento del producto.
Desventajas
:check: Necesidad de invertir antes de obtener resultados.
:check:Carencia de métodos adecuados.
:check: Necesidad de formar al personal.
:check: Convencer a los “manager”
:check: Dificultad para institucionalizar los procesos.
Categorías de recurso de software
:check: Componentes ya desarrollados
:check: Componentes ya experimentados
:check: Componentes con experiencia parcial
:check: Componentes nuevos
Tipos de reutilización
:check:
Oportunista:
El ingeniero de software reutiliza piezas que él sabe que se ajustan al problema
:check:
Sistemática
Esfuerzo a nivel organizacional y planificado de antemano
Todo componente reutilizado ha de ser ideado, a priori, para ser reutilizado
:check:
Bottom-Up
Se desarrollan pequeños componentes para una determinada aplicación
Se incorpora a un repositorio
:check:
Top-Down
§ Se determinan las piezas necesarias que encajan unas con otras