Isbc

Solo disponible en BuenasTareas
  • Páginas : 21 (5131 palabras )
  • Descarga(s) : 0
  • Publicado : 30 de agosto de 2010
Leer documento completo
Vista previa del texto
1

Desarrollo de Software Basado en Componentes
Jonás A. Montilva C.1, Nelson Arapé2 y Juan Andrés Colmenares2
2 Universidad de Los Andes Universidad del Zulia Facultad de Ingeniería Facultad de Ingeniería Escuela de Ingeniería de Sistemas Instituto de Cálculo Aplicado Departamento de Computación Maracaibo - Venezuela Mérida – Venezuela +58-274-2403811 jonas@ing.ula.ve, narape@ica.luz.ve,juancol@ica.luz.ve 1

Resumen-- La Orientación a Objetos introdujo, durante la década pasada, un cambio radical en el proceso de desarrollo de software. De un proceso caracterizado por su énfasis en la descripción algorítmica de la solución del problema, se pasó a un proceso orientado a la representación y manipulación de los objetos que caracterizan el problema. Este paradigma abrió, también,nuevas posibilidades para desarrollar software basado en la noción de reutilización de componentes. La Orientación a Objetos creó un rumbo diferente en el proceso de reutilización a través de la producción de componentes genéricos, fáciles de integrar, distribuidos e independientes de las plataformas de desarrollo. En este artículo, de carácter tutorial, se discuten los conceptos fundamentales de lareutilización de software, así como los modelos de procesos y los aspectos metodológicos que caracterizan esta nueva manera de producir software, denominada Desarrollo de Software basado en Componentes. Palabras clave—desarrollo de software, reutilización de software, componentes de software.

I. INTRODUCCIÓN La reutilización de componentes de software es un proceso inspirado en la manera en quese producen y ensamblan componentes en la ingeniería de sistemas físicos. La aplicación de este concepto al desarrollo de software no es nueva. Las librerías de subrutinas especializadas, comúnmente utilizadas desde la década de los setenta, representan uno de los primeros intentos por reutilizar software.

Existen variadas definiciones del término Reutilización de Software. Algunas de estasdefiniciones son las siguientes: • Según Somerville [1], la reutilización es un enfoque de desarrollo [de software] que trata de maximizar el uso recurrente de componentes de software existentes. • Según Sametinger [2], la reutilización de software es el proceso de crear sistemas de software a partir de software existente, en lugar de desarrollarlo desde el comienzo. • Según Sodhi et al. [3], lareutilización de software es el proceso de implementar o actualizar sistemas de software usando activos de software existentes. Estas tres definiciones consideran la reutilización como un enfoque o proceso de desarrollo de software. Su principal diferencia radica en el objeto de reutilización (componente, software y activo). Tal como lo plantean Sodhi et al. [3], la reutilización de software va másallá de la reutilización de piezas de software. Ella involucra el uso de otros elementos de software, tales como algoritmos, diseños, arquitecturas de software, documentación y especificaciones de requerimientos. Con base en el análisis de estas definiciones podemos establecer nuestra propia definición en los siguientes términos: La reutilización de software es un proceso de la Ingeniería deSoftware que conlleva al uso recurrente de activos de software en la especificación, análisis, diseño, implementación y pruebas de una aplicación o sistema de software. Varios estudios han demostrado la efectividad de la reutilización del software. Sametinger [2], en particular, describe algunos de estos indicadores: • Entre el 40 y 60% del código fuente de una aplicación es reutilizable en otra similar.* Publicado en las Actas del IV Congreso de Automatización y Control (CAC03), Mérida, Noviembre, 2003.

2 •

Aproximadamente el 60% del diseño y del código de aplicaciones administrativas es reutilizable. • Aproximadamente el 75% de las funciones son comunes a más de un programa. • Sólo el 15% del código encontrado en muchos sistemas es único y novedoso a una aplicación específica. El...
tracking img