Reutilizacion del software

Solo disponible en BuenasTareas
  • Páginas : 6 (1412 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de junio de 2011
Leer documento completo
Vista previa del texto
Fundamentos de Ingeniería del Software

Capítulo 11. Reutilización del software

Reutilización del software. Estructura
Reutilización del software Beneficios de la reutilización Dificultades para la reutilización Desarrollo basado en componentes
Concepto de componente Cuestiones técnicas Estándares para el sw. de componentes Cuestiones metodológicas

Assets
Caracterización de los assetsTipos de assets

Niveles de reutilización Modelo de procesos con reutilización Ingeniería de dominios
Análisis del dominio Fases del Análisis del dominio

Clasificación y recuperación de assets o componentes
Clasificación enumerada Clasificación por facetas Clasificación de atributos y valores

Reutilización del software. Bibliografía
(Pressman 98) Roger S. Pressman. “Ingeniería delSoftware – Un enfoque práctico”. 4ª Edición. Ed. Mc Graw-Hill. 1998. Capítulo 26.
(García et al. 97) F. J. García, J.M. Marqués, J. M. Maudes. “Mecano: una propuesta de componente software reutilizable”. II Jornadas de Ingeniería del Software. San Sebastián. 3-5 septiembre de 1997.

Reutilización del software
Idea vieja (reutilización ad hoc).
“Cualquier procedimiento que produce o ayuda aproducir un sistema mediante el nuevo uso de algún elemento procedente de un esfuerzo de desarrollo anterior” (Freeman 87) ≠ (Meyer 98)

Inicialmente, simple combinación de componentes de código almacenados en una biblioteca
(reutilización del código, sin método) ⇒ enfoque muy simple

¿Qué se reutiliza? ¿Cómo?

Beneficios de la reutilización
“La reutilización es la única aproximación realistapara llegar a los índices de productividad y calidad que la industria del sw. necesita” (Mili et al. 95).

Mejora de la productividad:
Disminución tiempo de desarrollo:
⇒ mejor adaptación requisitos cambiantes ¡Los requisitos no son estables!

Disminución de costes

Mejora de la calidad del sw.:
Mayor fiabilidad Mayor eficiencia (aunque al principio pueda parecer que no)

Dificultadespara la reutilización
En muchas empresas no existe plan de reutilización (no se considera prioritario) Escasa formación Resistencia del personal Pobre soporte metodológico
uso de métodos que no promueven la reutilización

(estructurados)

Necesarios métodos para:

desarrollo para reutilización desarrollo con reutilización

¿Quién soporta los gastos adicionales de la reutilización? Assets
Se puede reutilizar mucho más que código fuente:
beneficios mayores al reutilizar diseños y documentación asociada al código fuente reutilizable.

Asset o “elemento sw. reutilizable”:
cualquier producto sw. obtenido en el ciclo de vida del software, con independencia de su nivel de abstracción:
especificaciones, diseños, código, pruebas, documentación, etc.

Caracterización de losassets (García et al. 97)
Atributos:
Identificador. Nombre. Versión. Fecha creación. Fecha modificación.

Subsistemas:
Descriptor:
implementar el mecanismo de clasificación.

Cualificación:
métricas de calidad
• Complejidad • Cohesión • Acoplamiento

Administrativo:
autores, accesos, etc.

Técnico:
herramienta, formato, etc.

Documentación. Pruebas.

Niveles de reutilizaciónde código
librerías de funciones, editores, inclusión de ficheros, mecanismos de herencia en POO, componentes, etc.

de diseños
no volver a inventar arquitecturas
p.ej. patrones de diseño p.ej. patrones arquitectónicos (C/S, pipeline, OO, etc.)

de especificaciones
reutilización de las abstracciones del dominio debe estar asociada a la generación (semi)automática de los elementos de diseñoe implementación.

Elevar el nivel de abstracción ⇒ reutilización ↑↑
Asset como subsistema agregación de varios componentes atómicos a distintos niveles de abstracción (mecano).

Tipos de assets o artefactos reutilizables (Jones 94)
Un asset puede encapsular cualquier abstracción útil producida durante el desarrollo de software
Planes de proyecto. Estimaciones de coste. Arquitectura....
tracking img