Читать книгу Despliegue y puesta en funcionamiento de componentes software. IFCT0609 - Rafael Luis Granados La Paz - Страница 10
Composición de componentes
ОглавлениеSegún Sommerville, la composición es “el proceso de ensamblar componentes para crear un sistema”. Como se ha dicho, un componente presenta interfaces bien definidas, manifestadas a través de puertos. Pues bien, la composición, básicamente, se lleva a cabo enlazando estos puertos. Este proceso, en una situación teórica ideal, puede tener lugar durante tres fases diferentes del ciclo de vida de los componentes:
Fase de diseño: en esta fase los componentes son diseñados, definidos y codificados. Los componentes resultantes son almacenados en un repositorio, al igual que los componentes resultantes de una composición.
Fase de despliegue: los componentes son adquiridos del repositorio y desplegados en forma de binarios dentro del entorno de ejecución del sistema en construcción.
Fase de ejecución: los componentes son instanciados y ejecutados dentro del sistema.
En la siguiente imagen se muestra con un mayor grado de detalle un ciclo de vida estándar de una serie de componentes. Se presupone que la composición va a tener lugar en la fase de diseño. Hay una estructura de tres bloques, cada una de ellas representando una fase (diseño, despliegue y ejecución). En la fase de diseño los componentes se encuentran en un repositorio. Como se puede apreciar, el componente A es introducido en el repositorio, mientras que B y C son retirados para dar lugar a la composición BC (que será también almacenada en el repositorio). Esta composición es indicada por un círculo.
En la fase de despliegue se retiran los componentes requeridos, incluido el previamente compuesto por B y C, generándose sus binarios. Una vez ya en la fase de ejecución se procede a la instanciación y ejecución dentro del sistema.
La diferenciación entre una fase y otra y, sobre todo, el concepto de repositorio, permitirá establecer cuatro diferentes categorías de modelos de composición de componentes. Estas categorías se enumeran a continuación:
Diseño sin repositorio.
Diseño con repositorio solo para el depósito de componentes.
Despliegue con repositorio.
Diseño de repositorio.