Please enable JavaScript.
Coggle requires JavaScript to display documents.
Reutilización de software Código fuente, image, Emelyn, image, Emelyn,…
Reutilización de software
Código fuente
Unidades de software que se reutilizan.
Reutilización de sistemas de aplicacion
La totalidad del un sistemas de aplicación reutilizable puede ser incrorporada sin ningún cambio en otros sistemas configurando la aplicación para diferentes clientes o desarrollando familias de aplicaciones que tiene una arquitectura común pero que son adaptadas a clientes particulares.
Reutilización de componentes
La reutilización de componentes de una aplicación varía en tamaño desde subsistemas hasta objetos simples
Por ejemplo un sistemas de emparejamiento de patrones desarrollado como parte de un sistema de procesamiento de texto puede ser reutilizado en un sistemas de gestión de base de datos.
Reutilización de objetos y funciones
Se pueden reutilizar ccomponentes software que implementan una única funcion, por ejemplo una función matemática o una clase de objetos
Tipos de reutilización
Oportunista
El ingeniero de software reutiliza piezas que él sabe que se ajustan al problema
Sistemática
Esfuerzo a nivel organizacional y planificado de antemano
Implica inversiones iniciales para recoger frutos en el futuro
Bottom-up
Se desarrollan pequeños componentes para una determinada aplicación
:top- down
Se determinan las piezas necesarias que encajan unas con otras
: :Requiere alta inversión a comienzo
Se recogerán beneficios en el futuro : :
Análisis de escenario para la reutilizacion
El proyecto es similar a un anterior (reutilización de un proyecto existente).
Mismo proyecto con configuración diferente (reutilizan productos actuales)
Características de uso basados en productos existentes
Nueva Arquitectura con capacidades o elementos existentes
Ventajas
Reducir el tiempo de desarrollo
Reducir los costos.
Incrementar la productividad
No tener que reinventar las soluciones
Facilitar la comparación de productos del ciclo de vida
Mayor eficiencia (Aunque al principio pueda parecer que no)
Consistencia y la familiaridad, los patrones dentro del software serán más consistentes, tendiendo a facilitar el mantenimiento del producto.
Desventajas
Necesidad de invertir antes de obtener resultados.
Carencia de métodos adecuados.
Necesidad de formar al personal.
Dificultad para institucionalizar los procesos.
Concepto
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
Especificaciones de requerimientos
Diseños previamente definidos
Código probado y depurado
Planes y casos de prueba
Personal cualificado
Paquetes de software de
propósito general
Conceptos básicos
Objetivo
reutilizar lo existente sin tener que
volver a rediseñarlo desde el principio.
Idea Principal
Producir componentes de software
como si de componentes eléctricos se tratara.
Alternativa
Para desarrollar aplicaciones y sistemas
SW de un manera más eficiente, productiva y rápida.
Dificultades
no existe plan de reutilización
Escasa formación
Resistencia del personal
Pobre soporte metodológico
Uso de métodos que no
promueven la reutilización
Necesario métodos para:
§ Desarrollo para reutilización
§ Desarrollo con reutilización
Gastos adicionales de la reutilización
Patrones de Diseño
Los patrones y los lenguajes de patrones son formas de describir las mejores practicas,buenos diseños y encapsulan la experiencia.
Elementos Esenciales de un Patrón de Diseño:
Nombre
Descripción del área
Declaración
Descripción de las partes
Tipos de Patrones
Patrones de creación:
Permite que el sistema sea independiente de como se crean , encapsulan el conocimiento sobre las clases concretas que se van a utilizar
Patrones estructurales
: Facilita y mejora las relaciones entre objetos y la manera que las instancias se comunican entre si.
Patrones de comportamiento:
Se relacionan con el flujo de control del sistema y con ciertas formas de organizar el control en un sistema
:
Niveles de Reutilización
Reutilización de Códigos: Librerías de funciones, editores, Fichero
Reutilización de Diseños:No volver a inventar arquitecturas
Reutilización de Especificaciones: Debe de estar asociada a la generación semiautomática de los elementos de diseño de implementación.
Aspectos para la Reutilización de Software existentes
:
Si los componentes ya desarrollados cumplen los requisitos del proyecto se deben adquirir.
Si se dispone de componentes ya experimentados, los riesgos asociados a la modificación y a la integración generalmente se aceptan.
Si se dispone de componentes de experiencia parcial para el proyecto actual, su uso se debe analizar con detalle.
El coste de modificar los componentes de experiencia parcial algunas veces puede ser mayor que el coste de desarrollar componentes nuevos.
Emelyn
Emelyn
Kasandra
Kasandra
Kasandra
Emelyn
Hermelinda
Hermelinda
Hermelinda
Yodelis
Yodelis
Krisbel
Krisbel