Desarrollo Basado En Componentes
Desarrollo de Software Basado en Componentes
Lidia Fuentes, Jos´e M. Troya y Antonio Vallecillo
Dept. Lenguajes y Ciencias de la Computaci´on. Universidad de M´alaga.
ETSI Inform´atica. Campus Teatinos, s/n. 29071 M´alaga, Spain.
flff,troya,avg@lcc.uma.es
Resumen
Esta lecci´on presenta los modelos, conceptos y mecanismos fundamentales sobre los que se apoya
actualmente eldesarrollo de aplicaciones software basado en componentes reutilizables. En primer
lugar, las arquitecturas software y los marcos de trabajo intentan ofrecer soluciones de dise˜no desde
el punto de vista estructural de las aplicaciones, y de las relaciones entre sus componentes. A
otro nivel se encuentra la programaci´on orientada a componentes, un paradigma que propugna la
construcci´on decomponentes reutilizables en entornos abiertos y distribuidos, con el objetivo de
lograr un mercado global de software. Basados en ellos, los modelos y plataformas de componentes
proporcionan los mecanismos adecuados para tratar la complejidad de los problemas que aparecen
en los sistemas abiertos y distribuidos. Finalmente, se describen las dificultades que encuentran las
metodolog´ıas tradicionalespara construir aplicaciones en estos nuevos ambientes, y los retos a los
que se enfrenta la Ingenier´ıa del Software para poder hablar realmente de “Ingenier´ıa del Software
Basada en Componentes”.
1 Introducci´on
Los continuos avances en la Inform´atica y las Telecomunicaciones est´an haciendo cambiar la forma en
la que se desarrollan actualmente las aplicaciones software. En particular, elincesante aumento de la
potencia de los ordenadores personales, el abaratamiento de los costes del hardware y las comunicaciones,
y la aparici´on de redes de datos de cobertura global han disparado el uso de los sistemas abiertos y
distribuidos. Esto ha provocado, entre otras cosas, que los modelos de programaci´on existentes se vean
desbordados, siendo incapaces de manejar de forma naturalla complejidad de los requisitos que se les
exigen para ese tipo de sistemas. Comienzan a aparecer por tanto nuevos paradigmas de programaci´on,
como pueden ser la coordinaci´on, la programaci´on orientada a componentes, o la movilidad, que persiguen
una mejora en los procesos de construcci´on de aplicaciones software. En ellos se trabaja tanto en
extensiones de los modelos existentes como ennuevos modelos, en la estandarizaci´on de sus interfaces y
servicios, y la pertinaz b´usqueda del cada vez m´as necesario mercado global de componentes software.
Estos son parte de los nuevos retos con los que se enfrenta actualmente la ingenier´ıa del software.
Uno de los enfoques en los que actualmente se trabaja constituye lo que se conoce como Desarrollo
de Software Basado en Componentes(DSBC), que trata de sentar las bases para el dise˜no y desarrollo
de aplicaciones distribuidas basadas en componentes software reutilizables. Dicha disciplina cuenta
actualmente con un creciente inter´es, tanto desde el punto de vista acad´emico como desde el industrial,
en donde la demanda de estos temas es cada d´ıa mayor.
La presente lecci´on pretende servir como una breve introducci´on aalgunos de los conceptos y m´etodos
fundamentales sobre los que se apoya el DSBC. En particular, nos centraremos en las arquitecturas
software y los marcos de trabajo, la programaci´on orientada a componentes, y en las plataformas de
componentes distribuidas. Asimismo, discutiremos sobre lo que deber´ıa constituir una metodolog´ıa
para el DSBC. Por supuesto, a´un queda mucho trabajo por hacerpara poder hablar realmente de una
Ingenier´ıa del Software Basada en Componentes, pero sin duda las bases se est´an sentando para hacer
de esta disciplina una realidad en un futuro cercano.
1
2 Conceptos B´asicos
Comenzaremos con algunas definiciones b´asicas, que van a sentar las bases de los conceptos que manejaremos
a lo largo de esta lecci´on.
En primer lugar, entendemos por sistema a...
Regístrate para leer el documento completo.