MODELO BASADO EN COMPONENTES
CBSE es el proceso de definir, implementar e integrar o componer en sistemas
independientes débilmente acoplados. Se ha convertido en una importante
aproximación de desarrollo del software debido a que los sistemas software son
cada vez más grandes y más complejos y los clientes demandan software más
confiable que sea desarrollado más rápidamente. La única forma en la que
podemos tratar con la complejidad y entregar mejor software rápidamente es
reutilizar componentes software en vez de reimplementarlos.
Un componente es una pieza de código pre elaborado que encapsula alguna
funcionalidad expuesta a través de interfaces estándar. Cada componente de
aquel aparato ha sido diseñado para acoplarse perfectamente con sus pares, las
conexiones son estándar y el protocolo de comunicación está ya preestablecido.
El paradigma de ensamblar componentes y escribir código para hacer que estos
componentes funcionen se conoce como Desarrollo de Software Basado en
Componentes.
El modelo de desarrollo basado en componentes incorpora muchas de las
características del modelo espiral. Es evolutivo por naturaleza y exige un enfoque
interactivo para la creación del software. Sin embargo, el modelo de desarrollo
basado en componentes configura aplicaciones desde componentes preparados
de software (clases).
Conclusión: Tenemos la fortuna de presenciar el nacimiento de una nueva forma
de hacer software, que traerá beneficios inmensos para todos. El desarrollo de
software basado en componentes desde siempre fue la idea revolucionaria que
nos llevó a pensar que sí era posible el construir software de calidad en corto
tiempo y con la misma calidad que la mayoría de las industrias de nuestro tiempo.
Al mirar hacia atrás, vemos los increíbles avances que hemos logrado en la
comprensión de la forma correcta de reutilizar el software y el conocimiento
existente, y nos asombramos cada vez más al darnos cuenta de que este solo es
el inicio.
ETAPAS DEL MODELO BASADO EN COMPONENTES
Se realiza el estudio de procesos de
desarrollo basado en componentes, en
1.- Análisis y comparación de Procesos especial de los que utilizan técnicas de
De Desarrollo de Software Basado en Componentes. modelado. Con extensiones específicas
para componentes, a los fines de definir
adaptaciones y/o extensiones apropiadas
de los mismos
Durante esta etapa se realiza el estudio y comparación de diferentes
estilos y patrones arquitecturales, analizando ventajas y desventajas de
2.- Análisis arquitectural su utilización para el desarrollo de este tipo de sistemas, así como de
arquitecturas existentes y estándares más utilizados en la actualidad.
Esta etapa comprende la identificación de interfaces del
sistema, de interfaces del Negocio, la identificación de
3.- Identificación de componentes componentes y la descripción inicial de las especificaciones
de componentes, así como la especificación de la
arquitectura inicial de componentes.
Se trabajará en la especificación de
interfaces y de componentes, definiendo
4.- Especificación de los principales componentes
Contratos de uso y Contratos de realización.
Se realizan en esta etapa, los Modelos de
Información de Interfaces.
EJEMPLO
Un ejemplo es la Web, en donde es posible incluir en páginas HTML multitud de
objetos distintos, como por ejemplo los Applets de Java. Aunque más reciente que
OLE, supone un paso atrás en cuanto al concepto que estamos tratando, pues los
objetos que forman parte de las páginas Web no pueden ser a su vez
contenedores, es decir, estamos frente a una tecnología similar a la que ofrecía
Visual Basic con sus formularios y controles (aunque ya es posible en la última
versión de Visual Basic definir controles que sean componentes ActiveX, que sı
son contenedores de otros componentes).
En OLE se define el concepto de contenedor y se extiende el concepto de control,
que pasa a denominar cualquier tipo de servidor de documentos. De esta forma
los componentes pueden ser tanto contenedores como servidores de documentos
simultáneamente, y es posible que, por ejemplo, un documento Word se incluya
en una hoja de cálculo Excel, que a su vez forme parte de otro documento Word.
FUENTES DE INFORMACION
Lidia Fuentes, José M. Troya y Antonio Vallecillo
Depto. Lenguajes y Ciencias de la Computación. Universidad de Málaga.
ETSI Informática. Campus Teatinos, s/n. 29071 Malaga, Spain.
flff,troya,avg@lcc.uma.es
Ingeniería del Software
Séptima edición
JAN SOMMERVJLLE
José Pascual Trigueros Jover
Departamento Ciencia de la Computación e Inteligencia Artificial
Universidad de Alicante